From 9f8643647e9372032a03095ff05fd546ccd00ba8 Mon Sep 17 00:00:00 2001 From: Ycarus Date: Tue, 23 Jan 2018 15:36:03 +0100 Subject: [PATCH] Add macvlan support --- luci-base/Makefile | 48 + luci-base/htdocs/cgi-bin/luci | 5 + luci-base/htdocs/luci-static/resources/cbi.js | 1540 ++++++ .../htdocs/luci-static/resources/cbi/add.gif | Bin 0 -> 378 bytes .../luci-static/resources/cbi/apply.gif | Bin 0 -> 268 bytes .../luci-static/resources/cbi/arrow.gif | Bin 0 -> 135 bytes .../htdocs/luci-static/resources/cbi/down.gif | Bin 0 -> 131 bytes .../luci-static/resources/cbi/download.gif | Bin 0 -> 189 bytes .../htdocs/luci-static/resources/cbi/edit.gif | Bin 0 -> 272 bytes .../luci-static/resources/cbi/fieldadd.gif | Bin 0 -> 371 bytes .../htdocs/luci-static/resources/cbi/file.gif | Bin 0 -> 267 bytes .../htdocs/luci-static/resources/cbi/find.gif | Bin 0 -> 273 bytes .../luci-static/resources/cbi/folder.gif | Bin 0 -> 698 bytes .../htdocs/luci-static/resources/cbi/help.gif | Bin 0 -> 266 bytes .../htdocs/luci-static/resources/cbi/key.gif | Bin 0 -> 230 bytes .../htdocs/luci-static/resources/cbi/link.gif | Bin 0 -> 279 bytes .../luci-static/resources/cbi/reload.gif | Bin 0 -> 248 bytes .../luci-static/resources/cbi/remove.gif | Bin 0 -> 385 bytes .../luci-static/resources/cbi/reset.gif | Bin 0 -> 258 bytes .../htdocs/luci-static/resources/cbi/save.gif | Bin 0 -> 263 bytes .../htdocs/luci-static/resources/cbi/up.gif | Bin 0 -> 130 bytes .../htdocs/luci-static/resources/cbi/user.gif | Bin 0 -> 246 bytes .../luci-static/resources/icons/bridge.png | Bin 0 -> 681 bytes .../resources/icons/bridge_disabled.png | Bin 0 -> 405 bytes .../resources/icons/encryption.png | Bin 0 -> 920 bytes .../resources/icons/encryption_disabled.png | Bin 0 -> 888 bytes .../luci-static/resources/icons/ethernet.png | Bin 0 -> 701 bytes .../resources/icons/ethernet_disabled.png | Bin 0 -> 399 bytes .../luci-static/resources/icons/loading.gif | Bin 0 -> 1786 bytes .../luci-static/resources/icons/port_down.png | Bin 0 -> 769 bytes .../luci-static/resources/icons/port_up.png | Bin 0 -> 1151 bytes .../resources/icons/signal-0-25.png | Bin 0 -> 462 bytes .../luci-static/resources/icons/signal-0.png | Bin 0 -> 439 bytes .../resources/icons/signal-25-50.png | Bin 0 -> 465 bytes .../resources/icons/signal-50-75.png | Bin 0 -> 467 bytes .../resources/icons/signal-75-100.png | Bin 0 -> 457 bytes .../resources/icons/signal-none.png | Bin 0 -> 639 bytes .../luci-static/resources/icons/switch.png | Bin 0 -> 680 bytes .../resources/icons/switch_disabled.png | Bin 0 -> 398 bytes .../luci-static/resources/icons/tunnel.png | Bin 0 -> 343 bytes .../resources/icons/tunnel_disabled.png | Bin 0 -> 235 bytes .../luci-static/resources/icons/vlan.png | Bin 0 -> 680 bytes .../resources/icons/vlan_disabled.png | Bin 0 -> 398 bytes .../luci-static/resources/icons/wifi.png | Bin 0 -> 767 bytes .../luci-static/resources/icons/wifi_big.png | Bin 0 -> 2276 bytes .../resources/icons/wifi_big_disabled.png | Bin 0 -> 1512 bytes .../resources/icons/wifi_disabled.png | Bin 0 -> 494 bytes luci-base/htdocs/luci-static/resources/xhr.js | 241 + luci-base/luasrc/cacheloader.lua | 12 + luci-base/luasrc/cbi.lua | 1942 ++++++++ luci-base/luasrc/cbi/datatypes.lua | 471 ++ luci-base/luasrc/ccache.lua | 76 + luci-base/luasrc/config.lua | 18 + .../luasrc/controller/admin/servicectl.lua | 49 + luci-base/luasrc/debug.lua | 37 + luci-base/luasrc/dispatcher.lua | 918 ++++ luci-base/luasrc/dispatcher.luadoc | 220 + luci-base/luasrc/http.lua | 268 ++ luci-base/luasrc/http.luadoc | 165 + luci-base/luasrc/http/protocol.lua | 649 +++ luci-base/luasrc/http/protocol.luadoc | 142 + .../luasrc/http/protocol/conditionals.lua | 110 + .../luasrc/http/protocol/conditionals.luadoc | 85 + luci-base/luasrc/http/protocol/date.lua | 87 + luci-base/luasrc/http/protocol/date.luadoc | 46 + luci-base/luasrc/http/protocol/mime.lua | 78 + luci-base/luasrc/http/protocol/mime.luadoc | 34 + luci-base/luasrc/i18n.lua | 55 + luci-base/luasrc/i18n.luadoc | 84 + luci-base/luasrc/ltn12.lua | 316 ++ .../model/cbi/admin_network/proto_dhcp.lua | 67 + .../model/cbi/admin_network/proto_none.lua | 4 + .../model/cbi/admin_network/proto_static.lua | 97 + luci-base/luasrc/model/firewall.lua | 566 +++ luci-base/luasrc/model/ipkg.lua | 242 + luci-base/luasrc/model/ipkg.luadoc | 125 + luci-base/luasrc/model/network.lua | 1707 +++++++ luci-base/luasrc/model/uci.lua | 236 + luci-base/luasrc/model/uci.luadoc | 299 ++ luci-base/luasrc/sgi/cgi.lua | 73 + luci-base/luasrc/sgi/uhttpd.lua | 89 + luci-base/luasrc/store.lua | 6 + luci-base/luasrc/sys.lua | 688 +++ luci-base/luasrc/sys.luadoc | 405 ++ luci-base/luasrc/sys/iptparser.lua | 374 ++ luci-base/luasrc/sys/iptparser.luadoc | 69 + luci-base/luasrc/sys/zoneinfo.lua | 19 + luci-base/luasrc/sys/zoneinfo/tzdata.lua | 457 ++ luci-base/luasrc/sys/zoneinfo/tzoffset.lua | 45 + luci-base/luasrc/template.lua | 100 + luci-base/luasrc/tools/proto.lua | 36 + luci-base/luasrc/tools/status.lua | 230 + luci-base/luasrc/tools/webadmin.lua | 105 + luci-base/luasrc/util.lua | 739 +++ luci-base/luasrc/util.luadoc | 378 ++ luci-base/luasrc/version.lua | 9 + luci-base/luasrc/view/cbi/apply_xhr.htm | 43 + luci-base/luasrc/view/cbi/browser.htm | 7 + luci-base/luasrc/view/cbi/button.htm | 7 + .../luasrc/view/cbi/cell_valuefooter.htm | 2 + .../luasrc/view/cbi/cell_valueheader.htm | 2 + luci-base/luasrc/view/cbi/compound.htm | 1 + luci-base/luasrc/view/cbi/delegator.htm | 24 + luci-base/luasrc/view/cbi/dvalue.htm | 13 + luci-base/luasrc/view/cbi/dynlist.htm | 27 + luci-base/luasrc/view/cbi/error.htm | 19 + luci-base/luasrc/view/cbi/filebrowser.htm | 108 + .../luasrc/view/cbi/firewall_zoneforwards.htm | 59 + .../luasrc/view/cbi/firewall_zonelist.htm | 93 + luci-base/luasrc/view/cbi/footer.htm | 27 + .../luasrc/view/cbi/full_valuefooter.htm | 13 + .../luasrc/view/cbi/full_valueheader.htm | 9 + luci-base/luasrc/view/cbi/fvalue.htm | 10 + luci-base/luasrc/view/cbi/header.htm | 19 + luci-base/luasrc/view/cbi/lvalue.htm | 43 + luci-base/luasrc/view/cbi/map.htm | 47 + luci-base/luasrc/view/cbi/mvalue.htm | 43 + .../luasrc/view/cbi/network_ifacelist.htm | 89 + luci-base/luasrc/view/cbi/network_netinfo.htm | 27 + luci-base/luasrc/view/cbi/network_netlist.htm | 85 + luci-base/luasrc/view/cbi/nsection.htm | 31 + luci-base/luasrc/view/cbi/nullsection.htm | 38 + luci-base/luasrc/view/cbi/simpleform.htm | 58 + luci-base/luasrc/view/cbi/tabcontainer.htm | 7 + luci-base/luasrc/view/cbi/tabmenu.htm | 12 + luci-base/luasrc/view/cbi/tblsection.htm | 145 + luci-base/luasrc/view/cbi/tsection.htm | 49 + luci-base/luasrc/view/cbi/tvalue.htm | 5 + luci-base/luasrc/view/cbi/ucisection.htm | 56 + luci-base/luasrc/view/cbi/upload.htm | 24 + luci-base/luasrc/view/cbi/value.htm | 18 + luci-base/luasrc/view/cbi/valuefooter.htm | 1 + luci-base/luasrc/view/cbi/valueheader.htm | 1 + luci-base/luasrc/view/csrftoken.htm | 24 + luci-base/luasrc/view/error404.htm | 11 + luci-base/luasrc/view/error500.htm | 11 + luci-base/luasrc/view/footer.htm | 7 + luci-base/luasrc/view/header.htm | 12 + luci-base/luasrc/view/indexer.htm | 7 + luci-base/luasrc/view/sysauth.htm | 73 + luci-base/po/ca/base.po | 3880 +++++++++++++++ luci-base/po/cs/base.po | 3949 ++++++++++++++++ luci-base/po/de/base.po | 4124 ++++++++++++++++ luci-base/po/el/base.po | 3896 +++++++++++++++ luci-base/po/en/base.po | 3849 +++++++++++++++ luci-base/po/es/base.po | 3980 ++++++++++++++++ luci-base/po/fr/base.po | 3998 ++++++++++++++++ luci-base/po/he/base.po | 3795 +++++++++++++++ luci-base/po/hu/base.po | 3983 ++++++++++++++++ luci-base/po/it/base.po | 3936 ++++++++++++++++ luci-base/po/ja/base.po | 3970 ++++++++++++++++ luci-base/po/ko/base.po | 3849 +++++++++++++++ luci-base/po/ms/base.po | 3814 +++++++++++++++ luci-base/po/no/base.po | 3949 ++++++++++++++++ luci-base/po/pl/base.po | 4016 ++++++++++++++++ luci-base/po/pt-br/base.po | 4171 +++++++++++++++++ luci-base/po/pt/base.po | 3946 ++++++++++++++++ luci-base/po/ro/base.po | 3794 +++++++++++++++ luci-base/po/ru/base.po | 3991 ++++++++++++++++ luci-base/po/sk/base.po | 3749 +++++++++++++++ luci-base/po/sv/base.po | 3755 +++++++++++++++ luci-base/po/templates/base.pot | 3742 +++++++++++++++ luci-base/po/tr/base.po | 3764 +++++++++++++++ luci-base/po/uk/base.po | 4002 ++++++++++++++++ luci-base/po/vi/base.po | 3817 +++++++++++++++ luci-base/po/zh-cn/base.po | 3916 ++++++++++++++++ luci-base/po/zh-tw/base.po | 3868 +++++++++++++++ luci-base/root/etc/config/luci | 24 + luci-base/root/etc/config/ucitrack | 54 + luci-base/root/etc/luci-uploads/.placeholder | 0 luci-base/root/sbin/luci-reload | 45 + luci-base/root/usr/share/acl.d/luci-base.json | 8 + luci-base/root/www/index.html | 11 + luci-base/src/Makefile | 21 + luci-base/src/mkversion.sh | 24 + luci-base/src/po2lmo | Bin 0 -> 18472 bytes luci-base/src/po2lmo.c | 247 + luci-base/src/po2lmo.o | Bin 0 -> 6336 bytes luci-base/src/template_lmo.c | 328 ++ luci-base/src/template_lmo.h | 92 + luci-base/src/template_lmo.o | Bin 0 -> 7136 bytes luci-base/src/template_lualib.c | 179 + luci-base/src/template_lualib.h | 30 + luci-base/src/template_parser.c | 419 ++ luci-base/src/template_parser.h | 80 + luci-base/src/template_utils.c | 484 ++ luci-base/src/template_utils.h | 49 + luci-mod-admin-full/Makefile | 18 + .../luci-static/resources/bandwidth.svg | 16 + .../luci-static/resources/connections.svg | 17 + .../htdocs/luci-static/resources/load.svg | 17 + .../htdocs/luci-static/resources/wifirate.svg | 15 + .../htdocs/luci-static/resources/wireless.svg | 16 + .../luasrc/controller/admin/filebrowser.lua | 9 + .../luasrc/controller/admin/index.lua | 42 + .../luasrc/controller/admin/network.lua | 429 ++ .../luasrc/controller/admin/status.lua | 152 + .../luasrc/controller/admin/system.lua | 439 ++ .../luasrc/controller/admin/uci.lua | 64 + .../luasrc/model/cbi/admin_network/dhcp.lua | 317 ++ .../luasrc/model/cbi/admin_network/hosts.lua | 28 + .../model/cbi/admin_network/iface_add.lua | 113 + .../luasrc/model/cbi/admin_network/ifaces.lua | 547 +++ .../model/cbi/admin_network/network.lua | 134 + .../model/cbi/admin_network/proto_ahcp.lua | 67 + .../luasrc/model/cbi/admin_network/routes.lua | 102 + .../luasrc/model/cbi/admin_network/vlan.lua | 363 ++ .../luasrc/model/cbi/admin_network/wifi.lua | 1192 +++++ .../model/cbi/admin_network/wifi_add.lua | 173 + .../model/cbi/admin_status/processes.lua | 34 + .../luasrc/model/cbi/admin_system/admin.lua | 121 + .../model/cbi/admin_system/backupfiles.lua | 80 + .../luasrc/model/cbi/admin_system/buttons.lua | 27 + .../luasrc/model/cbi/admin_system/crontab.lua | 32 + .../luasrc/model/cbi/admin_system/fstab.lua | 270 ++ .../model/cbi/admin_system/fstab/mount.lua | 151 + .../model/cbi/admin_system/fstab/swap.lua | 54 + .../luasrc/model/cbi/admin_system/ipkg.lua | 64 + .../luasrc/model/cbi/admin_system/leds.lua | 155 + .../luasrc/model/cbi/admin_system/startup.lua | 97 + .../luasrc/model/cbi/admin_system/system.lua | 224 + .../luasrc/view/admin_network/diagnostics.htm | 115 + .../view/admin_network/iface_overview.htm | 254 + .../view/admin_network/iface_status.htm | 87 + .../view/admin_network/lease_status.htm | 138 + .../view/admin_network/switch_status.htm | 44 + .../luasrc/view/admin_network/wifi_join.htm | 149 + .../view/admin_network/wifi_overview.htm | 470 ++ .../luasrc/view/admin_network/wifi_status.htm | 78 + .../luasrc/view/admin_status/bandwidth.htm | 301 ++ .../luasrc/view/admin_status/connections.htm | 376 ++ .../luasrc/view/admin_status/dmesg.htm | 12 + .../luasrc/view/admin_status/index.htm | 827 ++++ .../luasrc/view/admin_status/iptables.htm | 156 + .../luasrc/view/admin_status/load.htm | 284 ++ .../luasrc/view/admin_status/routes.htm | 162 + .../luasrc/view/admin_status/syslog.htm | 12 + .../luasrc/view/admin_status/wireless.htm | 370 ++ .../luasrc/view/admin_system/applyreboot.htm | 41 + .../luasrc/view/admin_system/backupfiles.htm | 10 + .../luasrc/view/admin_system/clock_status.htm | 36 + .../luasrc/view/admin_system/flashops.htm | 93 + .../luasrc/view/admin_system/ipkg.htm | 10 + .../luasrc/view/admin_system/packages.htm | 212 + .../luasrc/view/admin_system/reboot.htm | 59 + .../luasrc/view/admin_system/upgrade.htm | 59 + .../luasrc/view/admin_uci/apply.htm | 23 + .../luasrc/view/admin_uci/changelog.htm | 79 + .../luasrc/view/admin_uci/changes.htm | 46 + .../luasrc/view/admin_uci/revert.htm | 27 + .../luasrc/view/cbi/wireless_modefreq.htm | 168 + .../root/etc/hotplug.d/iface/03-macvlan | 41 + .../etc/uci-defaults/50_luci-mod-admin-full | 22 + luci-mod-admin-full/src/Makefile | 14 + luci-mod-admin-full/src/luci-bwc.c | 778 +++ 255 files changed, 134998 insertions(+) create mode 100644 luci-base/Makefile create mode 100755 luci-base/htdocs/cgi-bin/luci create mode 100644 luci-base/htdocs/luci-static/resources/cbi.js create mode 100644 luci-base/htdocs/luci-static/resources/cbi/add.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/apply.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/arrow.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/down.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/download.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/edit.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/fieldadd.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/file.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/find.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/folder.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/help.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/key.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/link.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/reload.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/remove.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/reset.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/save.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/up.gif create mode 100644 luci-base/htdocs/luci-static/resources/cbi/user.gif create mode 100644 luci-base/htdocs/luci-static/resources/icons/bridge.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/bridge_disabled.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/encryption.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/encryption_disabled.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/ethernet.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/ethernet_disabled.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/loading.gif create mode 100644 luci-base/htdocs/luci-static/resources/icons/port_down.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/port_up.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/signal-0-25.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/signal-0.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/signal-25-50.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/signal-50-75.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/signal-75-100.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/signal-none.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/switch.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/switch_disabled.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/tunnel.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/tunnel_disabled.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/vlan.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/vlan_disabled.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/wifi.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/wifi_big.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/wifi_big_disabled.png create mode 100644 luci-base/htdocs/luci-static/resources/icons/wifi_disabled.png create mode 100644 luci-base/htdocs/luci-static/resources/xhr.js create mode 100644 luci-base/luasrc/cacheloader.lua create mode 100644 luci-base/luasrc/cbi.lua create mode 100644 luci-base/luasrc/cbi/datatypes.lua create mode 100644 luci-base/luasrc/ccache.lua create mode 100644 luci-base/luasrc/config.lua create mode 100644 luci-base/luasrc/controller/admin/servicectl.lua create mode 100644 luci-base/luasrc/debug.lua create mode 100644 luci-base/luasrc/dispatcher.lua create mode 100644 luci-base/luasrc/dispatcher.luadoc create mode 100644 luci-base/luasrc/http.lua create mode 100644 luci-base/luasrc/http.luadoc create mode 100644 luci-base/luasrc/http/protocol.lua create mode 100644 luci-base/luasrc/http/protocol.luadoc create mode 100644 luci-base/luasrc/http/protocol/conditionals.lua create mode 100644 luci-base/luasrc/http/protocol/conditionals.luadoc create mode 100644 luci-base/luasrc/http/protocol/date.lua create mode 100644 luci-base/luasrc/http/protocol/date.luadoc create mode 100644 luci-base/luasrc/http/protocol/mime.lua create mode 100644 luci-base/luasrc/http/protocol/mime.luadoc create mode 100644 luci-base/luasrc/i18n.lua create mode 100644 luci-base/luasrc/i18n.luadoc create mode 100644 luci-base/luasrc/ltn12.lua create mode 100644 luci-base/luasrc/model/cbi/admin_network/proto_dhcp.lua create mode 100644 luci-base/luasrc/model/cbi/admin_network/proto_none.lua create mode 100644 luci-base/luasrc/model/cbi/admin_network/proto_static.lua create mode 100644 luci-base/luasrc/model/firewall.lua create mode 100644 luci-base/luasrc/model/ipkg.lua create mode 100644 luci-base/luasrc/model/ipkg.luadoc create mode 100644 luci-base/luasrc/model/network.lua create mode 100644 luci-base/luasrc/model/uci.lua create mode 100644 luci-base/luasrc/model/uci.luadoc create mode 100644 luci-base/luasrc/sgi/cgi.lua create mode 100644 luci-base/luasrc/sgi/uhttpd.lua create mode 100644 luci-base/luasrc/store.lua create mode 100644 luci-base/luasrc/sys.lua create mode 100644 luci-base/luasrc/sys.luadoc create mode 100644 luci-base/luasrc/sys/iptparser.lua create mode 100644 luci-base/luasrc/sys/iptparser.luadoc create mode 100644 luci-base/luasrc/sys/zoneinfo.lua create mode 100644 luci-base/luasrc/sys/zoneinfo/tzdata.lua create mode 100644 luci-base/luasrc/sys/zoneinfo/tzoffset.lua create mode 100644 luci-base/luasrc/template.lua create mode 100644 luci-base/luasrc/tools/proto.lua create mode 100644 luci-base/luasrc/tools/status.lua create mode 100644 luci-base/luasrc/tools/webadmin.lua create mode 100644 luci-base/luasrc/util.lua create mode 100644 luci-base/luasrc/util.luadoc create mode 100644 luci-base/luasrc/version.lua create mode 100644 luci-base/luasrc/view/cbi/apply_xhr.htm create mode 100644 luci-base/luasrc/view/cbi/browser.htm create mode 100644 luci-base/luasrc/view/cbi/button.htm create mode 100644 luci-base/luasrc/view/cbi/cell_valuefooter.htm create mode 100644 luci-base/luasrc/view/cbi/cell_valueheader.htm create mode 100644 luci-base/luasrc/view/cbi/compound.htm create mode 100644 luci-base/luasrc/view/cbi/delegator.htm create mode 100644 luci-base/luasrc/view/cbi/dvalue.htm create mode 100644 luci-base/luasrc/view/cbi/dynlist.htm create mode 100644 luci-base/luasrc/view/cbi/error.htm create mode 100644 luci-base/luasrc/view/cbi/filebrowser.htm create mode 100644 luci-base/luasrc/view/cbi/firewall_zoneforwards.htm create mode 100644 luci-base/luasrc/view/cbi/firewall_zonelist.htm create mode 100644 luci-base/luasrc/view/cbi/footer.htm create mode 100644 luci-base/luasrc/view/cbi/full_valuefooter.htm create mode 100644 luci-base/luasrc/view/cbi/full_valueheader.htm create mode 100644 luci-base/luasrc/view/cbi/fvalue.htm create mode 100644 luci-base/luasrc/view/cbi/header.htm create mode 100644 luci-base/luasrc/view/cbi/lvalue.htm create mode 100644 luci-base/luasrc/view/cbi/map.htm create mode 100644 luci-base/luasrc/view/cbi/mvalue.htm create mode 100644 luci-base/luasrc/view/cbi/network_ifacelist.htm create mode 100644 luci-base/luasrc/view/cbi/network_netinfo.htm create mode 100644 luci-base/luasrc/view/cbi/network_netlist.htm create mode 100644 luci-base/luasrc/view/cbi/nsection.htm create mode 100644 luci-base/luasrc/view/cbi/nullsection.htm create mode 100644 luci-base/luasrc/view/cbi/simpleform.htm create mode 100644 luci-base/luasrc/view/cbi/tabcontainer.htm create mode 100644 luci-base/luasrc/view/cbi/tabmenu.htm create mode 100644 luci-base/luasrc/view/cbi/tblsection.htm create mode 100644 luci-base/luasrc/view/cbi/tsection.htm create mode 100644 luci-base/luasrc/view/cbi/tvalue.htm create mode 100644 luci-base/luasrc/view/cbi/ucisection.htm create mode 100644 luci-base/luasrc/view/cbi/upload.htm create mode 100644 luci-base/luasrc/view/cbi/value.htm create mode 100644 luci-base/luasrc/view/cbi/valuefooter.htm create mode 100644 luci-base/luasrc/view/cbi/valueheader.htm create mode 100644 luci-base/luasrc/view/csrftoken.htm create mode 100644 luci-base/luasrc/view/error404.htm create mode 100644 luci-base/luasrc/view/error500.htm create mode 100644 luci-base/luasrc/view/footer.htm create mode 100644 luci-base/luasrc/view/header.htm create mode 100644 luci-base/luasrc/view/indexer.htm create mode 100644 luci-base/luasrc/view/sysauth.htm create mode 100644 luci-base/po/ca/base.po create mode 100644 luci-base/po/cs/base.po create mode 100644 luci-base/po/de/base.po create mode 100644 luci-base/po/el/base.po create mode 100644 luci-base/po/en/base.po create mode 100644 luci-base/po/es/base.po create mode 100644 luci-base/po/fr/base.po create mode 100644 luci-base/po/he/base.po create mode 100644 luci-base/po/hu/base.po create mode 100644 luci-base/po/it/base.po create mode 100644 luci-base/po/ja/base.po create mode 100644 luci-base/po/ko/base.po create mode 100644 luci-base/po/ms/base.po create mode 100644 luci-base/po/no/base.po create mode 100644 luci-base/po/pl/base.po create mode 100644 luci-base/po/pt-br/base.po create mode 100644 luci-base/po/pt/base.po create mode 100644 luci-base/po/ro/base.po create mode 100644 luci-base/po/ru/base.po create mode 100644 luci-base/po/sk/base.po create mode 100644 luci-base/po/sv/base.po create mode 100644 luci-base/po/templates/base.pot create mode 100644 luci-base/po/tr/base.po create mode 100644 luci-base/po/uk/base.po create mode 100644 luci-base/po/vi/base.po create mode 100644 luci-base/po/zh-cn/base.po create mode 100644 luci-base/po/zh-tw/base.po create mode 100644 luci-base/root/etc/config/luci create mode 100644 luci-base/root/etc/config/ucitrack create mode 100644 luci-base/root/etc/luci-uploads/.placeholder create mode 100755 luci-base/root/sbin/luci-reload create mode 100644 luci-base/root/usr/share/acl.d/luci-base.json create mode 100644 luci-base/root/www/index.html create mode 100644 luci-base/src/Makefile create mode 100755 luci-base/src/mkversion.sh create mode 100755 luci-base/src/po2lmo create mode 100644 luci-base/src/po2lmo.c create mode 100644 luci-base/src/po2lmo.o create mode 100644 luci-base/src/template_lmo.c create mode 100644 luci-base/src/template_lmo.h create mode 100644 luci-base/src/template_lmo.o create mode 100644 luci-base/src/template_lualib.c create mode 100644 luci-base/src/template_lualib.h create mode 100644 luci-base/src/template_parser.c create mode 100644 luci-base/src/template_parser.h create mode 100644 luci-base/src/template_utils.c create mode 100644 luci-base/src/template_utils.h create mode 100644 luci-mod-admin-full/Makefile create mode 100644 luci-mod-admin-full/htdocs/luci-static/resources/bandwidth.svg create mode 100644 luci-mod-admin-full/htdocs/luci-static/resources/connections.svg create mode 100644 luci-mod-admin-full/htdocs/luci-static/resources/load.svg create mode 100644 luci-mod-admin-full/htdocs/luci-static/resources/wifirate.svg create mode 100644 luci-mod-admin-full/htdocs/luci-static/resources/wireless.svg create mode 100644 luci-mod-admin-full/luasrc/controller/admin/filebrowser.lua create mode 100644 luci-mod-admin-full/luasrc/controller/admin/index.lua create mode 100644 luci-mod-admin-full/luasrc/controller/admin/network.lua create mode 100644 luci-mod-admin-full/luasrc/controller/admin/status.lua create mode 100644 luci-mod-admin-full/luasrc/controller/admin/system.lua create mode 100644 luci-mod-admin-full/luasrc/controller/admin/uci.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_network/dhcp.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_network/hosts.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_network/iface_add.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_network/ifaces.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_network/network.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_network/proto_ahcp.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_network/routes.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_network/vlan.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi_add.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_status/processes.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_system/admin.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_system/backupfiles.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_system/buttons.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_system/crontab.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab/mount.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab/swap.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_system/ipkg.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_system/leds.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_system/startup.lua create mode 100644 luci-mod-admin-full/luasrc/model/cbi/admin_system/system.lua create mode 100644 luci-mod-admin-full/luasrc/view/admin_network/diagnostics.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_network/iface_overview.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_network/iface_status.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_network/lease_status.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_network/switch_status.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_network/wifi_join.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_network/wifi_overview.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_network/wifi_status.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_status/bandwidth.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_status/connections.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_status/dmesg.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_status/index.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_status/iptables.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_status/load.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_status/routes.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_status/syslog.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_status/wireless.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_system/applyreboot.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_system/backupfiles.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_system/clock_status.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_system/flashops.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_system/ipkg.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_system/packages.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_system/reboot.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_system/upgrade.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_uci/apply.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_uci/changelog.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_uci/changes.htm create mode 100644 luci-mod-admin-full/luasrc/view/admin_uci/revert.htm create mode 100644 luci-mod-admin-full/luasrc/view/cbi/wireless_modefreq.htm create mode 100755 luci-mod-admin-full/root/etc/hotplug.d/iface/03-macvlan create mode 100755 luci-mod-admin-full/root/etc/uci-defaults/50_luci-mod-admin-full create mode 100644 luci-mod-admin-full/src/Makefile create mode 100644 luci-mod-admin-full/src/luci-bwc.c diff --git a/luci-base/Makefile b/luci-base/Makefile new file mode 100644 index 000000000..7d2166ba8 --- /dev/null +++ b/luci-base/Makefile @@ -0,0 +1,48 @@ +# +# Copyright (C) 2008-2015 The LuCI Team +# +# This is free software, licensed under the Apache License, Version 2.0 . +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=luci-base + +LUCI_TYPE:=mod +LUCI_BASENAME:=base + +LUCI_TITLE:=LuCI core libraries +LUCI_DEPENDS:=+lua +libuci-lua +luci-lib-nixio +luci-lib-ip +rpcd +libubus-lua +luci-lib-jsonc + +PKG_SOURCE:=LuaSrcDiet-0.12.1.tar.bz2 +PKG_SOURCE_URL:=https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/luasrcdiet +PKG_MD5SUM:=ed7680f2896269ae8633756e7edcf09050812f78c8f49e280e63c30d14f35aea + +HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/LuaSrcDiet-0.12.1 + +include $(INCLUDE_DIR)/host-build.mk + +define Package/luci-base/conffiles +/etc/luci-uploads +/etc/config/luci +endef + +include ../luci/luci.mk + +define Host/Configure +endef + +define Host/Compile + $(MAKE) -C src/ clean po2lmo + $(MAKE) -C $(HOST_BUILD_DIR) bin/LuaSrcDiet.lua +endef + +define Host/Install + $(INSTALL_DIR) $(1)/bin + $(INSTALL_BIN) src/po2lmo $(1)/bin/po2lmo + $(INSTALL_BIN) $(HOST_BUILD_DIR)/bin/LuaSrcDiet.lua $(1)/bin/LuaSrcDiet +endef + +$(eval $(call HostBuild)) + +# call BuildPackage - OpenWrt buildroot signature diff --git a/luci-base/htdocs/cgi-bin/luci b/luci-base/htdocs/cgi-bin/luci new file mode 100755 index 000000000..529d1d0bc --- /dev/null +++ b/luci-base/htdocs/cgi-bin/luci @@ -0,0 +1,5 @@ +#!/usr/bin/lua +require "luci.cacheloader" +require "luci.sgi.cgi" +luci.dispatcher.indexcache = "/tmp/luci-indexcache" +luci.sgi.cgi.run() \ No newline at end of file diff --git a/luci-base/htdocs/luci-static/resources/cbi.js b/luci-base/htdocs/luci-static/resources/cbi.js new file mode 100644 index 000000000..0a362affb --- /dev/null +++ b/luci-base/htdocs/luci-static/resources/cbi.js @@ -0,0 +1,1540 @@ +/* + LuCI - Lua Configuration Interface + + Copyright 2008 Steven Barth + Copyright 2008-2012 Jo-Philipp Wich + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 +*/ + +var cbi_d = []; +var cbi_t = []; +var cbi_strings = { path: {}, label: {} }; + +function Int(x) { + return (/^-?\d+$/.test(x) ? +x : NaN); +} + +function Dec(x) { + return (/^-?\d+(?:\.\d+)?$/.test(x) ? +x : NaN); +} + +var cbi_validators = { + + 'integer': function() + { + return !!Int(this); + }, + + 'uinteger': function() + { + return (Int(this) >= 0); + }, + + 'float': function() + { + return !!Dec(this); + }, + + 'ufloat': function() + { + return (Dec(this) >= 0); + }, + + 'ipaddr': function() + { + return cbi_validators.ip4addr.apply(this) || + cbi_validators.ip6addr.apply(this); + }, + + 'ip4addr': function() + { + if (this.match(/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})(\/(\S+))?$/)) + { + return (RegExp.$1 >= 0) && (RegExp.$1 <= 255) && + (RegExp.$2 >= 0) && (RegExp.$2 <= 255) && + (RegExp.$3 >= 0) && (RegExp.$3 <= 255) && + (RegExp.$4 >= 0) && (RegExp.$4 <= 255) && + ((RegExp.$6.indexOf('.') < 0) + ? ((RegExp.$6 >= 0) && (RegExp.$6 <= 32)) + : (cbi_validators.ip4addr.apply(RegExp.$6))) + ; + } + + return false; + }, + + 'ip6addr': function() + { + if( this.match(/^([a-fA-F0-9:.]+)(\/(\d+))?$/) ) + { + if( !RegExp.$2 || ((RegExp.$3 >= 0) && (RegExp.$3 <= 128)) ) + { + var addr = RegExp.$1; + + if( addr == '::' ) + { + return true; + } + + if( addr.indexOf('.') > 0 ) + { + var off = addr.lastIndexOf(':'); + + if( !(off && cbi_validators.ip4addr.apply(addr.substr(off+1))) ) + return false; + + addr = addr.substr(0, off) + ':0:0'; + } + + if( addr.indexOf('::') >= 0 ) + { + var colons = 0; + var fill = '0'; + + for( var i = 1; i < (addr.length-1); i++ ) + if( addr.charAt(i) == ':' ) + colons++; + + if( colons > 7 ) + return false; + + for( var i = 0; i < (7 - colons); i++ ) + fill += ':0'; + + if (addr.match(/^(.*?)::(.*?)$/)) + addr = (RegExp.$1 ? RegExp.$1 + ':' : '') + fill + + (RegExp.$2 ? ':' + RegExp.$2 : ''); + } + + return (addr.match(/^(?:[a-fA-F0-9]{1,4}:){7}[a-fA-F0-9]{1,4}$/) != null); + } + } + + return false; + }, + + 'ipmask': function() + { + return cbi_validators.ipmask4.apply(this) || + cbi_validators.ipmask6.apply(this); + }, + + 'ipmask4': function() + { + var ip = this, mask = 32; + + if (ip.match(/^(\S+)\/(\S+)$/)) + { + ip = RegExp.$1; + mask = RegExp.$2; + } + + if (!isNaN(mask) && (mask < 0 || mask > 32)) + return false; + + if (isNaN(mask) && !cbi_validators.ip4addr.apply(mask)) + return false; + + return cbi_validators.ip4addr.apply(ip); + }, + + 'ipmask6': function() + { + var ip = this, mask = 128; + + if (ip.match(/^(\S+)\/(\S+)$/)) + { + ip = RegExp.$1; + mask = RegExp.$2; + } + + if (!isNaN(mask) && (mask < 0 || mask > 128)) + return false; + + if (isNaN(mask) && !cbi_validators.ip6addr.apply(mask)) + return false; + + return cbi_validators.ip6addr.apply(ip); + }, + + 'port': function() + { + var p = Int(this); + return (p >= 0 && p <= 65535); + }, + + 'portrange': function() + { + if (this.match(/^(\d+)-(\d+)$/)) + { + var p1 = +RegExp.$1; + var p2 = +RegExp.$2; + return (p1 <= p2 && p2 <= 65535); + } + + return cbi_validators.port.apply(this); + }, + + 'macaddr': function() + { + return (this.match(/^([a-fA-F0-9]{2}:){5}[a-fA-F0-9]{2}$/) != null); + }, + + 'host': function(ipv4only) + { + return cbi_validators.hostname.apply(this) || + ((ipv4only != 1) && cbi_validators.ipaddr.apply(this)) || + ((ipv4only == 1) && cbi_validators.ip4addr.apply(this)); + }, + + 'hostname': function() + { + if (this.length <= 253) + return (this.match(/^[a-zA-Z0-9]+$/) != null || + (this.match(/^[a-zA-Z0-9_][a-zA-Z0-9_\-.]*[a-zA-Z0-9]$/) && + this.match(/[^0-9.]/))); + + return false; + }, + + 'network': function() + { + return cbi_validators.uciname.apply(this) || + cbi_validators.host.apply(this); + }, + + 'hostport': function(ipv4only) + { + var hp = this.split(/:/); + + if (hp.length == 2) + return (cbi_validators.host.apply(hp[0], ipv4only) && + cbi_validators.port.apply(hp[1])); + + return false; + }, + + 'ip4addrport': function() + { + var hp = this.split(/:/); + + if (hp.length == 2) + return (cbi_validators.ipaddr.apply(hp[0]) && + cbi_validators.port.apply(hp[1])); + return false; + }, + + 'ipaddrport': function(bracket) + { + if (this.match(/^([^\[\]:]+):([^:]+)$/)) { + var addr = RegExp.$1 + var port = RegExp.$2 + return (cbi_validators.ip4addr.apply(addr) && + cbi_validators.port.apply(port)); + } else if ((bracket == 1) && (this.match(/^\[(.+)\]:([^:]+)$/))) { + var addr = RegExp.$1 + var port = RegExp.$2 + return (cbi_validators.ip6addr.apply(addr) && + cbi_validators.port.apply(port)); + } else if ((bracket != 1) && (this.match(/^([^\[\]]+):([^:]+)$/))) { + var addr = RegExp.$1 + var port = RegExp.$2 + return (cbi_validators.ip6addr.apply(addr) && + cbi_validators.port.apply(port)); + } else { + return false; + } + }, + + 'wpakey': function() + { + var v = this; + + if( v.length == 64 ) + return (v.match(/^[a-fA-F0-9]{64}$/) != null); + else + return (v.length >= 8) && (v.length <= 63); + }, + + 'wepkey': function() + { + var v = this; + + if ( v.substr(0,2) == 's:' ) + v = v.substr(2); + + if( (v.length == 10) || (v.length == 26) ) + return (v.match(/^[a-fA-F0-9]{10,26}$/) != null); + else + return (v.length == 5) || (v.length == 13); + }, + + 'uciname': function() + { + return (this.match(/^[a-zA-Z0-9_]+$/) != null); + }, + + 'range': function(min, max) + { + var val = Dec(this); + return (val >= +min && val <= +max); + }, + + 'min': function(min) + { + return (Dec(this) >= +min); + }, + + 'max': function(max) + { + return (Dec(this) <= +max); + }, + + 'rangelength': function(min, max) + { + var val = '' + this; + return ((val.length >= +min) && (val.length <= +max)); + }, + + 'minlength': function(min) + { + return ((''+this).length >= +min); + }, + + 'maxlength': function(max) + { + return ((''+this).length <= +max); + }, + + 'or': function() + { + for (var i = 0; i < arguments.length; i += 2) + { + if (typeof arguments[i] != 'function') + { + if (arguments[i] == this) + return true; + i--; + } + else if (arguments[i].apply(this, arguments[i+1])) + { + return true; + } + } + return false; + }, + + 'and': function() + { + for (var i = 0; i < arguments.length; i += 2) + { + if (typeof arguments[i] != 'function') + { + if (arguments[i] != this) + return false; + i--; + } + else if (!arguments[i].apply(this, arguments[i+1])) + { + return false; + } + } + return true; + }, + + 'neg': function() + { + return cbi_validators.or.apply( + this.replace(/^[ \t]*![ \t]*/, ''), arguments); + }, + + 'list': function(subvalidator, subargs) + { + if (typeof subvalidator != 'function') + return false; + + var tokens = this.match(/[^ \t]+/g); + for (var i = 0; i < tokens.length; i++) + if (!subvalidator.apply(tokens[i], subargs)) + return false; + + return true; + }, + 'phonedigit': function() + { + return (this.match(/^[0-9\*#!\.]+$/) != null); + }, + 'timehhmmss': function() + { + return (this.match(/^[0-6][0-9]:[0-6][0-9]:[0-6][0-9]$/) != null); + }, + 'dateyyyymmdd': function() + { + if (this == null) { + return false; + } + if (this.match(/^(\d\d\d\d)-(\d\d)-(\d\d)/)) { + var year = RegExp.$1; + var month = RegExp.$2; + var day = RegExp.$2 + + var days_in_month = [ 31, 28, 31, 30, 31, 30, 31, 31, 30 , 31, 30, 31 ]; + function is_leap_year(year) { + return ((year % 4) == 0) && ((year % 100) != 0) || ((year % 400) == 0); + } + function get_days_in_month(month, year) { + if ((month == 2) && is_leap_year(year)) { + return 29; + } else { + return days_in_month[month]; + } + } + /* Firewall rules in the past don't make sense */ + if (year < 2015) { + return false; + } + if ((month <= 0) || (month > 12)) { + return false; + } + if ((day <= 0) || (day > get_days_in_month(month, year))) { + return false; + } + return true; + + } else { + return false; + } + } +}; + + +function cbi_d_add(field, dep, index) { + var obj = (typeof(field) === 'string') ? document.getElementById(field) : field; + if (obj) { + var entry + for (var i=0; i 0 && (tl[0].type == 'radio' || tl[0].type == 'checkbox')) + for( var i = 0; i < tl.length; i++ ) + if( tl[i].checked ) { + value = tl[i].value; + break; + } + + value = value ? value : ""; + } else if (!t.value) { + value = ""; + } else { + value = t.value; + + if (t.type == "checkbox") { + value = t.checked ? value : ""; + } + } + + return (value == ref) +} + +function cbi_d_check(deps) { + var reverse; + var def = false; + for (var i=0; i entry.index) { + break; + } + } + + if (!next) { + parent.appendChild(entry.node); + } else { + parent.insertBefore(entry.node, next); + } + + state = true; + } + + // hide optionals widget if no choices remaining + if (parent && parent.parentNode && parent.getAttribute('data-optionals')) + parent.parentNode.style.display = (parent.options.length <= 1) ? 'none' : ''; + } + + if (entry && entry.parent) { + if (!cbi_t_update()) + cbi_tag_last(parent); + } + + if (state) { + cbi_d_update(); + } +} + +function cbi_init() { + var nodes; + + nodes = document.querySelectorAll('[data-strings]'); + + for (var i = 0, node; (node = nodes[i]) !== undefined; i++) { + var str = JSON.parse(node.getAttribute('data-strings')); + for (var key in str) { + for (var key2 in str[key]) { + var dst = cbi_strings[key] || (cbi_strings[key] = { }); + dst[key2] = str[key][key2]; + } + } + } + + nodes = document.querySelectorAll('[data-depends]'); + + for (var i = 0, node; (node = nodes[i]) !== undefined; i++) { + var index = parseInt(node.getAttribute('data-index'), 10); + var depends = JSON.parse(node.getAttribute('data-depends')); + if (!isNaN(index) && depends.length > 0) { + for (var alt = 0; alt < depends.length; alt++) { + cbi_d_add(node, depends[alt], index); + } + } + } + + nodes = document.querySelectorAll('[data-update]'); + + for (var i = 0, node; (node = nodes[i]) !== undefined; i++) { + var events = node.getAttribute('data-update').split(' '); + for (var j = 0, event; (event = events[j]) !== undefined; j++) { + cbi_bind(node, event, cbi_d_update); + } + } + + nodes = document.querySelectorAll('[data-choices]'); + + for (var i = 0, node; (node = nodes[i]) !== undefined; i++) { + var choices = JSON.parse(node.getAttribute('data-choices')); + var options = {}; + + for (var j = 0; j < choices[0].length; j++) + options[choices[0][j]] = choices[1][j]; + + var def = (node.getAttribute('data-optional') === 'true') + ? node.placeholder || '' : null; + + cbi_combobox_init(node, options, def, + node.getAttribute('data-manual')); + } + + nodes = document.querySelectorAll('[data-dynlist]'); + + for (var i = 0, node; (node = nodes[i]) !== undefined; i++) { + var choices = JSON.parse(node.getAttribute('data-dynlist')); + var options = null; + + if (choices[0] && choices[0].length) { + options = {}; + + for (var j = 0; j < choices[0].length; j++) + options[choices[0][j]] = choices[1][j]; + } + + cbi_dynlist_init(node, choices[2], choices[3], options); + } + + nodes = document.querySelectorAll('[data-type]'); + + for (var i = 0, node; (node = nodes[i]) !== undefined; i++) { + cbi_validate_field(node, node.getAttribute('data-optional') === 'true', + node.getAttribute('data-type')); + } + + cbi_d_update(); +} + +function cbi_bind(obj, type, callback, mode) { + if (!obj.addEventListener) { + obj.attachEvent('on' + type, + function(){ + var e = window.event; + + if (!e.target && e.srcElement) + e.target = e.srcElement; + + return !!callback(e); + } + ); + } else { + obj.addEventListener(type, callback, !!mode); + } + return obj; +} + +function cbi_combobox(id, values, def, man, focus) { + var selid = "cbi.combobox." + id; + if (document.getElementById(selid)) { + return + } + + var obj = document.getElementById(id) + var sel = document.createElement("select"); + sel.id = selid; + sel.index = obj.index; + sel.className = obj.className.replace(/cbi-input-text/, 'cbi-input-select'); + + if (obj.nextSibling) { + obj.parentNode.insertBefore(sel, obj.nextSibling); + } else { + obj.parentNode.appendChild(sel); + } + + var dt = obj.getAttribute('cbi_datatype'); + var op = obj.getAttribute('cbi_optional'); + + if (dt) + cbi_validate_field(sel, op == 'true', dt); + + if (!values[obj.value]) { + if (obj.value == "") { + var optdef = document.createElement("option"); + optdef.value = ""; + optdef.appendChild(document.createTextNode(typeof(def) === 'string' ? def : cbi_strings.label.choose)); + sel.appendChild(optdef); + } else { + var opt = document.createElement("option"); + opt.value = obj.value; + opt.selected = "selected"; + opt.appendChild(document.createTextNode(obj.value)); + sel.appendChild(opt); + } + } + + for (var i in values) { + var opt = document.createElement("option"); + opt.value = i; + + if (obj.value == i) { + opt.selected = "selected"; + } + + opt.appendChild(document.createTextNode(values[i])); + sel.appendChild(opt); + } + + var optman = document.createElement("option"); + optman.value = ""; + optman.appendChild(document.createTextNode(typeof(man) === 'string' ? man : cbi_strings.label.custom)); + sel.appendChild(optman); + + obj.style.display = "none"; + + cbi_bind(sel, "change", function() { + if (sel.selectedIndex == sel.options.length - 1) { + obj.style.display = "inline"; + sel.blur(); + sel.parentNode.removeChild(sel); + obj.focus(); + } else { + obj.value = sel.options[sel.selectedIndex].value; + } + + try { + cbi_d_update(); + } catch (e) { + //Do nothing + } + }) + + // Retrigger validation in select + if (focus) { + sel.focus(); + sel.blur(); + } +} + +function cbi_combobox_init(id, values, def, man) { + var obj = (typeof(id) === 'string') ? document.getElementById(id) : id; + cbi_bind(obj, "blur", function() { + cbi_combobox(obj.id, values, def, man, true); + }); + cbi_combobox(obj.id, values, def, man, false); +} + +function cbi_filebrowser(id, defpath) { + var field = document.getElementById(id); + var browser = window.open( + cbi_strings.path.browser + ( field.value || defpath || '' ) + '?field=' + id, + "luci_filebrowser", "width=300,height=400,left=100,top=200,scrollbars=yes" + ); + + browser.focus(); +} + +function cbi_browser_init(id, defpath) +{ + function cbi_browser_btnclick(e) { + cbi_filebrowser(id, defpath); + return false; + } + + var field = document.getElementById(id); + + var btn = document.createElement('img'); + btn.className = 'cbi-image-button'; + btn.src = cbi_strings.path.resource + '/cbi/folder.gif'; + field.parentNode.insertBefore(btn, field.nextSibling); + + cbi_bind(btn, 'click', cbi_browser_btnclick); +} + +function cbi_dynlist_init(parent, datatype, optional, choices) +{ + var prefix = parent.getAttribute('data-prefix'); + var holder = parent.getAttribute('data-placeholder'); + + var values; + + function cbi_dynlist_redraw(focus, add, del) + { + values = [ ]; + + while (parent.firstChild) + { + var n = parent.firstChild; + var i = +n.index; + + if (i != del) + { + if (n.nodeName.toLowerCase() == 'input') + values.push(n.value || ''); + else if (n.nodeName.toLowerCase() == 'select') + values[values.length-1] = n.options[n.selectedIndex].value; + } + + parent.removeChild(n); + } + + if (add >= 0) + { + focus = add+1; + values.splice(focus, 0, ''); + } + else if (values.length == 0) + { + focus = 0; + values.push(''); + } + + for (var i = 0; i < values.length; i++) + { + var t = document.createElement('input'); + t.id = prefix + '.' + (i+1); + t.name = prefix; + t.value = values[i]; + t.type = 'text'; + t.index = i; + t.className = 'cbi-input-text'; + + if (i == 0 && holder) + { + t.placeholder = holder; + } + + var b = document.createElement('img'); + b.src = cbi_strings.path.resource + ((i+1) < values.length ? '/cbi/remove.gif' : '/cbi/add.gif'); + b.className = 'cbi-image-button'; + + parent.appendChild(t); + parent.appendChild(b); + if (datatype == 'file') + { + cbi_browser_init(t.id, parent.getAttribute('data-browser-path')); + } + + parent.appendChild(document.createElement('br')); + + if (datatype) + { + cbi_validate_field(t.id, ((i+1) == values.length) || optional, datatype); + } + + if (choices) + { + cbi_combobox_init(t.id, choices, '', cbi_strings.label.custom); + b.index = i; + + cbi_bind(b, 'keydown', cbi_dynlist_keydown); + cbi_bind(b, 'keypress', cbi_dynlist_keypress); + + if (i == focus || -i == focus) + b.focus(); + } + else + { + cbi_bind(t, 'keydown', cbi_dynlist_keydown); + cbi_bind(t, 'keypress', cbi_dynlist_keypress); + + if (i == focus) + { + t.focus(); + } + else if (-i == focus) + { + t.focus(); + + /* force cursor to end */ + var v = t.value; + t.value = ' ' + t.value = v; + } + } + + cbi_bind(b, 'click', cbi_dynlist_btnclick); + } + } + + function cbi_dynlist_keypress(ev) + { + ev = ev ? ev : window.event; + + var se = ev.target ? ev.target : ev.srcElement; + + if (se.nodeType == 3) + se = se.parentNode; + + switch (ev.keyCode) + { + /* backspace, delete */ + case 8: + case 46: + if (se.value.length == 0) + { + if (ev.preventDefault) + ev.preventDefault(); + + return false; + } + + return true; + + /* enter, arrow up, arrow down */ + case 13: + case 38: + case 40: + if (ev.preventDefault) + ev.preventDefault(); + + return false; + } + + return true; + } + + function cbi_dynlist_keydown(ev) + { + ev = ev ? ev : window.event; + + var se = ev.target ? ev.target : ev.srcElement; + + if (se.nodeType == 3) + se = se.parentNode; + + var prev = se.previousSibling; + while (prev && prev.name != prefix) + prev = prev.previousSibling; + + var next = se.nextSibling; + while (next && next.name != prefix) + next = next.nextSibling; + + /* advance one further in combobox case */ + if (next && next.nextSibling.name == prefix) + next = next.nextSibling; + + switch (ev.keyCode) + { + /* backspace, delete */ + case 8: + case 46: + var del = (se.nodeName.toLowerCase() == 'select') + ? true : (se.value.length == 0); + + if (del) + { + if (ev.preventDefault) + ev.preventDefault(); + + var focus = se.index; + if (ev.keyCode == 8) + focus = -focus+1; + + cbi_dynlist_redraw(focus, -1, se.index); + + return false; + } + + break; + + /* enter */ + case 13: + cbi_dynlist_redraw(-1, se.index, -1); + break; + + /* arrow up */ + case 38: + if (prev) + prev.focus(); + + break; + + /* arrow down */ + case 40: + if (next) + next.focus(); + + break; + } + + return true; + } + + function cbi_dynlist_btnclick(ev) + { + ev = ev ? ev : window.event; + + var se = ev.target ? ev.target : ev.srcElement; + var input = se.previousSibling; + while (input && input.name != prefix) { + input = input.previousSibling; + } + + if (se.src.indexOf('remove') > -1) + { + input.value = ''; + + cbi_dynlist_keydown({ + target: input, + keyCode: 8 + }); + } + else + { + cbi_dynlist_keydown({ + target: input, + keyCode: 13 + }); + } + + return false; + } + + cbi_dynlist_redraw(NaN, -1, -1); +} + + +function cbi_t_add(section, tab) { + var t = document.getElementById('tab.' + section + '.' + tab); + var c = document.getElementById('container.' + section + '.' + tab); + + if( t && c ) { + cbi_t[section] = (cbi_t[section] || [ ]); + cbi_t[section][tab] = { 'tab': t, 'container': c, 'cid': c.id }; + } +} + +function cbi_t_switch(section, tab) { + if( cbi_t[section] && cbi_t[section][tab] ) { + var o = cbi_t[section][tab]; + var h = document.getElementById('tab.' + section); + for( var tid in cbi_t[section] ) { + var o2 = cbi_t[section][tid]; + if( o.tab.id != o2.tab.id ) { + o2.tab.className = o2.tab.className.replace(/(^| )cbi-tab( |$)/, " cbi-tab-disabled "); + o2.container.style.display = 'none'; + } + else { + if(h) h.value = tab; + o2.tab.className = o2.tab.className.replace(/(^| )cbi-tab-disabled( |$)/, " cbi-tab "); + o2.container.style.display = 'block'; + } + } + } + return false +} + +function cbi_t_update() { + var hl_tabs = [ ]; + var updated = false; + + for( var sid in cbi_t ) + for( var tid in cbi_t[sid] ) + { + var t = cbi_t[sid][tid].tab; + var c = cbi_t[sid][tid].container; + + if (!c.firstElementChild) { + t.style.display = 'none'; + } + else if (t.style.display == 'none') { + t.style.display = ''; + t.className += ' cbi-tab-highlighted'; + hl_tabs.push(t); + } + + cbi_tag_last(c); + updated = true; + } + + if (hl_tabs.length > 0) + window.setTimeout(function() { + for( var i = 0; i < hl_tabs.length; i++ ) + hl_tabs[i].className = hl_tabs[i].className.replace(/ cbi-tab-highlighted/g, ''); + }, 750); + + return updated; +} + + +function cbi_validate_form(form, errmsg) +{ + /* if triggered by a section removal or addition, don't validate */ + if( form.cbi_state == 'add-section' || form.cbi_state == 'del-section' ) + return true; + + if( form.cbi_validators ) + { + for( var i = 0; i < form.cbi_validators.length; i++ ) + { + var validator = form.cbi_validators[i]; + if( !validator() && errmsg ) + { + alert(errmsg); + return false; + } + } + } + + return true; +} + +function cbi_validate_reset(form) +{ + window.setTimeout( + function() { cbi_validate_form(form, null) }, 100 + ); + + return true; +} + +function cbi_validate_compile(code) +{ + var pos = 0; + var esc = false; + var depth = 0; + var stack = [ ]; + + code += ','; + + for (var i = 0; i < code.length; i++) + { + if (esc) + { + esc = false; + continue; + } + + switch (code.charCodeAt(i)) + { + case 92: + esc = true; + break; + + case 40: + case 44: + if (depth <= 0) + { + if (pos < i) + { + var label = code.substring(pos, i); + label = label.replace(/\\(.)/g, '$1'); + label = label.replace(/^[ \t]+/g, ''); + label = label.replace(/[ \t]+$/g, ''); + + if (label && !isNaN(label)) + { + stack.push(parseFloat(label)); + } + else if (label.match(/^(['"]).*\1$/)) + { + stack.push(label.replace(/^(['"])(.*)\1$/, '$2')); + } + else if (typeof cbi_validators[label] == 'function') + { + stack.push(cbi_validators[label]); + stack.push(null); + } + else + { + throw "Syntax error, unhandled token '"+label+"'"; + } + } + pos = i+1; + } + depth += (code.charCodeAt(i) == 40); + break; + + case 41: + if (--depth <= 0) + { + if (typeof stack[stack.length-2] != 'function') + throw "Syntax error, argument list follows non-function"; + + stack[stack.length-1] = + arguments.callee(code.substring(pos, i)); + + pos = i+1; + } + break; + } + } + + return stack; +} + +function cbi_validate_field(cbid, optional, type) +{ + var field = (typeof cbid == "string") ? document.getElementById(cbid) : cbid; + var vstack; try { vstack = cbi_validate_compile(type); } catch(e) { }; + + if (field && vstack && typeof vstack[0] == "function") + { + var validator = function() + { + // is not detached + if( field.form ) + { + field.className = field.className.replace(/ cbi-input-invalid/g, ''); + + // validate value + var value = (field.options && field.options.selectedIndex > -1) + ? field.options[field.options.selectedIndex].value : field.value; + + if (!(((value.length == 0) && optional) || vstack[0].apply(value, vstack[1]))) + { + // invalid + field.className += ' cbi-input-invalid'; + return false; + } + } + + return true; + }; + + if( ! field.form.cbi_validators ) + field.form.cbi_validators = [ ]; + + field.form.cbi_validators.push(validator); + + cbi_bind(field, "blur", validator); + cbi_bind(field, "keyup", validator); + + if (field.nodeName == 'SELECT') + { + cbi_bind(field, "change", validator); + cbi_bind(field, "click", validator); + } + + field.setAttribute("cbi_validate", validator); + field.setAttribute("cbi_datatype", type); + field.setAttribute("cbi_optional", (!!optional).toString()); + + validator(); + + var fcbox = document.getElementById('cbi.combobox.' + field.id); + if (fcbox) + cbi_validate_field(fcbox, optional, type); + } +} + +function cbi_row_swap(elem, up, store) +{ + var tr = elem.parentNode; + while (tr && tr.nodeName.toLowerCase() != 'tr') + tr = tr.parentNode; + + if (!tr) + return false; + + var table = tr.parentNode; + while (table && table.nodeName.toLowerCase() != 'table') + table = table.parentNode; + + if (!table) + return false; + + var s = up ? 3 : 2; + var e = up ? table.rows.length : table.rows.length - 1; + + for (var idx = s; idx < e; idx++) + { + if (table.rows[idx] == tr) + { + if (up) + tr.parentNode.insertBefore(table.rows[idx], table.rows[idx-1]); + else + tr.parentNode.insertBefore(table.rows[idx+1], table.rows[idx]); + + break; + } + } + + var ids = [ ]; + for (idx = 2; idx < table.rows.length; idx++) + { + table.rows[idx].className = table.rows[idx].className.replace( + /cbi-rowstyle-[12]/, 'cbi-rowstyle-' + (1 + (idx % 2)) + ); + + if (table.rows[idx].id && table.rows[idx].id.match(/-([^\-]+)$/) ) + ids.push(RegExp.$1); + } + + var input = document.getElementById(store); + if (input) + input.value = ids.join(' '); + + return false; +} + +function cbi_tag_last(container) +{ + var last; + + for (var i = 0; i < container.childNodes.length; i++) + { + var c = container.childNodes[i]; + if (c.nodeType == 1 && c.nodeName.toLowerCase() == 'div') + { + c.className = c.className.replace(/ cbi-value-last$/, ''); + last = c; + } + } + + if (last) + { + last.className += ' cbi-value-last'; + } +} + +String.prototype.serialize = function() +{ + var o = this; + switch(typeof(o)) + { + case 'object': + // null + if( o == null ) + { + return 'null'; + } + + // array + else if( o.length ) + { + var i, s = ''; + + for( var i = 0; i < o.length; i++ ) + s += (s ? ', ' : '') + String.serialize(o[i]); + + return '[ ' + s + ' ]'; + } + + // object + else + { + var k, s = ''; + + for( k in o ) + s += (s ? ', ' : '') + k + ': ' + String.serialize(o[k]); + + return '{ ' + s + ' }'; + } + + break; + + case 'string': + // complex string + if( o.match(/[^a-zA-Z0-9_,.: -]/) ) + return 'decodeURIComponent("' + encodeURIComponent(o) + '")'; + + // simple string + else + return '"' + o + '"'; + + break; + + default: + return o.toString(); + } +} + +String.prototype.format = function() +{ + if (!RegExp) + return; + + var html_esc = [/&/g, '&', /"/g, '"', /'/g, ''', //g, '>']; + var quot_esc = [/"/g, '"', /'/g, ''']; + + function esc(s, r) { + if (typeof(s) !== 'string' && !(s instanceof String)) + return ''; + + for( var i = 0; i < r.length; i += 2 ) + s = s.replace(r[i], r[i+1]); + return s; + } + + var str = this; + var out = ''; + var re = /^(([^%]*)%('.|0|\x20)?(-)?(\d+)?(\.\d+)?(%|b|c|d|u|f|o|s|x|X|q|h|j|t|m))/; + var a = b = [], numSubstitutions = 0, numMatches = 0; + + while (a = re.exec(str)) + { + var m = a[1]; + var leftpart = a[2], pPad = a[3], pJustify = a[4], pMinLength = a[5]; + var pPrecision = a[6], pType = a[7]; + + numMatches++; + + if (pType == '%') + { + subst = '%'; + } + else + { + if (numSubstitutions < arguments.length) + { + var param = arguments[numSubstitutions++]; + + var pad = ''; + if (pPad && pPad.substr(0,1) == "'") + pad = leftpart.substr(1,1); + else if (pPad) + pad = pPad; + else + pad = ' '; + + var justifyRight = true; + if (pJustify && pJustify === "-") + justifyRight = false; + + var minLength = -1; + if (pMinLength) + minLength = +pMinLength; + + var precision = -1; + if (pPrecision && pType == 'f') + precision = +pPrecision.substring(1); + + var subst = param; + + switch(pType) + { + case 'b': + subst = (+param || 0).toString(2); + break; + + case 'c': + subst = String.fromCharCode(+param || 0); + break; + + case 'd': + subst = ~~(+param || 0); + break; + + case 'u': + subst = ~~Math.abs(+param || 0); + break; + + case 'f': + subst = (precision > -1) + ? ((+param || 0.0)).toFixed(precision) + : (+param || 0.0); + break; + + case 'o': + subst = (+param || 0).toString(8); + break; + + case 's': + subst = param; + break; + + case 'x': + subst = ('' + (+param || 0).toString(16)).toLowerCase(); + break; + + case 'X': + subst = ('' + (+param || 0).toString(16)).toUpperCase(); + break; + + case 'h': + subst = esc(param, html_esc); + break; + + case 'q': + subst = esc(param, quot_esc); + break; + + case 'j': + subst = String.serialize(param); + break; + + case 't': + var td = 0; + var th = 0; + var tm = 0; + var ts = (param || 0); + + if (ts > 60) { + tm = Math.floor(ts / 60); + ts = (ts % 60); + } + + if (tm > 60) { + th = Math.floor(tm / 60); + tm = (tm % 60); + } + + if (th > 24) { + td = Math.floor(th / 24); + th = (th % 24); + } + + subst = (td > 0) + ? String.format('%dd %dh %dm %ds', td, th, tm, ts) + : String.format('%dh %dm %ds', th, tm, ts); + + break; + + case 'm': + var mf = pMinLength ? +pMinLength : 1000; + var pr = pPrecision ? ~~(10 * +('0' + pPrecision)) : 2; + + var i = 0; + var val = (+param || 0); + var units = [ ' ', ' K', ' M', ' G', ' T', ' P', ' E' ]; + + for (i = 0; (i < units.length) && (val > mf); i++) + val /= mf; + + subst = (i ? val.toFixed(pr) : val) + units[i]; + pMinLength = null; + break; + } + } + } + + if (pMinLength) { + subst = subst.toString(); + for (var i = subst.length; i < pMinLength; i++) + if (pJustify == '-') + subst = subst + ' '; + else + subst = pad + subst; + } + + out += leftpart + subst; + str = str.substr(m.length); + } + + return out + str; +} + +String.prototype.nobr = function() +{ + return this.replace(/[\s\n]+/g, ' '); +} + +String.serialize = function() +{ + var a = [ ]; + for (var i = 1; i < arguments.length; i++) + a.push(arguments[i]); + return ''.serialize.apply(arguments[0], a); +} + +String.format = function() +{ + var a = [ ]; + for (var i = 1; i < arguments.length; i++) + a.push(arguments[i]); + return ''.format.apply(arguments[0], a); +} + +String.nobr = function() +{ + var a = [ ]; + for (var i = 1; i < arguments.length; i++) + a.push(arguments[i]); + return ''.nobr.apply(arguments[0], a); +} diff --git a/luci-base/htdocs/luci-static/resources/cbi/add.gif b/luci-base/htdocs/luci-static/resources/cbi/add.gif new file mode 100644 index 0000000000000000000000000000000000000000..0888abf85ed10d3bdadb25b30b49e8c35b8233d9 GIT binary patch literal 378 zcmZ?wbhEHb6krfwxT?YM=;a5`&}?V#n2z-)rk?s^=Nj6%`^~-Q?==mbXC1h9`pm_a zJ=P67ET*3H=saLQ{j_)8HuL@?E|ZSCPdMs&_4bo#r@XE{|4_Brxch*^ymP;U605@t zCcgRjt!Rzz)3;yCrf*qt@%P5-e?EQtb>RNr-FN=3zVdt9tv~<4fPor7@h1x-1A_*G z4#+T&pBUJtADCR=A+xAY{q)Mqma1&c{a=cmxa4~mroT4KS#`QgUof=)~+&T;I{j*sYXaTd%6BpddF%U0!DD^qC5h za!gM1`zFkilw?>wPi9)j8Wt9I))h*%tJiLm*{Loqq9hZ|aDstdhKpl`^aUv?Mn)zk OR#uKC*E=qb4Aua>fQ#$^ literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/cbi/apply.gif b/luci-base/htdocs/luci-static/resources/cbi/apply.gif new file mode 100644 index 0000000000000000000000000000000000000000..82ae7ed821f7524c0356e40f79a0379fc634d535 GIT binary patch literal 268 zcmV+n0rUPxNk%w1VGsZi0K^{vM3g9B!ajxBR(;h{C|4L|#z9W1FZTQNam`88@5?V| z96pC8chOCN)>Mw(T#DRUiQ8Fv(@#mEENRI^ZOca`PZo5~OEz>Nz2>iuw1BeWp~dOA zBTNzi%BC{z2#%%nWDQ(& zkP#APQYdIRbsbb52orn(e?S)g~J1 z%8r<(-QeVRgO&gP{{R30A^8LW000gEEC2ui01E&M06+vZ(8)=q0AK`A2tAn4V1q?& p9d!Z1mQ}E{1V<7C3PltEGGGP@1A|xv9lPESaCFRSx11yb06WwgHGu#C literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/cbi/down.gif b/luci-base/htdocs/luci-static/resources/cbi/down.gif new file mode 100644 index 0000000000000000000000000000000000000000..f0bb6a4ea640d9b2beda344c7485d260f5761779 GIT binary patch literal 131 zcmZ?wbhEHb6krfw*v!o^>1^DDBbk%W#`m8Mo^~Z-=JluvXG6M=M%Jv0O73_44+acK zK=CIFBLf3BgAPaxWCjC^LBUDS)q5?HkM0ihoS_kK#PIl-D%-2j1P>Oa%ti-AnU~WT VI^xvQF6&qvTT*m#iwgsTH2{W9F7W^W literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/cbi/download.gif b/luci-base/htdocs/luci-static/resources/cbi/download.gif new file mode 100644 index 0000000000000000000000000000000000000000..f99a5383b23fc4270a45048cea54b7d84e4c632b GIT binary patch literal 189 zcmZ?wbhEHb6krfw*v!umwaLqI!OQM5F>k&+Z^fq|bvhXDvcW-zd1eeis_YHo#<8bh&USm7b|HfiTo^1C<- zB2&*9?YY;WqkfgAr7?@)##fnMrp5vd5e9?B>jf-W))_Q3ne(cwV{E9XUS-Jmz%6-U ohKzU%--1K~l{<@Algzi@uNL9X;o>Z>(Bsa^YtS>66lAal0Is`BfB*mh literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/cbi/edit.gif b/luci-base/htdocs/luci-static/resources/cbi/edit.gif new file mode 100644 index 0000000000000000000000000000000000000000..e06e37c7509d07a98a4acc6eeb5d40777fdb912f GIT binary patch literal 272 zcmV+r0q_1tNk%v~VGsZi0Q3L=V0V>>ugJjP{dk$Tr~sLS5q=$-yaxZ#SE11S zRIB!<(fT-LmH+?$EC2ui01yBW000G*;3tk`DMpS%Nm39Du;)pl6A@EB5xm!Np4!Af zBnlcnph84J6a~km2eJG}oCYZJ=Ydc~*KCvvDSSTxgcd_Cm=B`#5u?d;3!M!C{uwM9 zbQu_Bd3p~bei3zpcpDoG6^DHb2?~}900Ru06&HvI2?=-w0|2G~3!WbU5ePdx1QoIi W4i<=*mj?$A4;L2}RVKnBApkpjesy~Q literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/cbi/fieldadd.gif b/luci-base/htdocs/luci-static/resources/cbi/fieldadd.gif new file mode 100644 index 0000000000000000000000000000000000000000..eebe0fffe007105e4ce41a133cd245989df89116 GIT binary patch literal 371 zcmZ?wbh9u|6krfw_{zZW|GeMpEk^&ppZIqp{q-#2*GpypKk@m0DeV7?)PKK@zCNA$ z`dro2lOEGfdA01Zo^;&3Zkzdpqptt|eeXPA|NqbH{v$3`n~kTR_U=C5@c+lT*LU_b z?6CO%>(2l8{r~^I{r|G{^@*_mA7}snwCwdU*P=DL|Gypj|E%Km1>^spH~#;&>;M1% z43q&Kkamz?7}#bwOfB%x;WE_{^4uEG;IQ~&rq>>Ww&uf$2W&Y#d)-qvvCKHjo^RAt z=rCq4kYj3YZC6y3D zr`kV9R$fhWp_cOEnn}ymI22c}?ccD1gH4{*NnLLJyiIJo_iCwg%E_FTWYSo^f@PY2 SKp-O{D=W)wx4SNm4AubY36m`V literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/cbi/file.gif b/luci-base/htdocs/luci-static/resources/cbi/file.gif new file mode 100644 index 0000000000000000000000000000000000000000..342a8463d2912b82b01c3c2deb3ce92e7cf5e4a1 GIT binary patch literal 267 zcmZ?wbhEHb6krfw_#(~l=;a5`&}?V#n2z-)rk?s^=Nj6%`^~-Q?==mbXC1h9`pm_v zx1U^n{$bv^-$9Ah;RO@leEjzG?bovDTb5k>z47{=Pv3qWxc_(eoxiKE{N8r!&;S4b z8Bl@ZPZm}N25ANzkTA$j2G))RYJE?3%#~_R^t9#)(#g~~<{~i9eb2`WQa(qVRO0le zbsbdq3h6qUocb!mZs8H1wxE?+b8d7`YkJwm7Jjr4L_o{y)q5EzYtB;xTCWf;e!643y9FwiJ6z-cH%*eE2C&?LHF520~{Ks*+N*(+Kf z6ATMOGH`g(00>C|cno`e9u*=05rZ2M2z-c&9*lzt8600y!Ov2kE{g|XOkwd;Ab>T|a1bhhkywd#Ad>UFp6cDL<(x9okm?0&fIc)IU+y6}9u?s>cL zfV%E`yz-8@;ex#Gf4%XLy5fSp@qxbce!umEzVU^>^M=3jgu(QP!1I*9=ZV7fhQs%Y z!}W;8`Hsf-i^%(t$N7xO{E^A|kjnj(%lw$n{+-VKn$iE9(f_H_`l{6Xr`i9>)!(q% z|FPQtvD^Q);Q!Lxt%1@HYPm;<{lFCn#%1@HYA^uK7a%Ew3Wn>^? zc_2$=c4=-POmAarWh@{vFflPLFf%PMG$3Ygav)4~LrE?mAW~&)Wnpt=WFTp7bZ;PZ zXk{Q!bz*F3V<1FtZDDC{E&w6<1OW;Fe*i210000G01yBG2gQJYf`f#Ge|UL`iiU%E z4Fdv^0C9|ec>{8Eb8>YId5n1ib8n<>Ks|P;sdtD5UQ)1C8wn8(4i5?li3bZ45)%*> zXk1rRPHh5-0dQtyVqi@~J~=fnVacIvSW!$zKRPxsEGSyo0%}i4K|41xEh!};Rs@Lx zX+u0XGcGD7A|D)}m^+h$#)}mvMu6y$;erx+p~k=%M?p4qk8 z_sQn}X|3gLf|Hfa{4HFBMq+vzJXv+X|6!-#{r&xKvgu!?-l)&;*zNvYc8feuU~I4F zQ<~I5R%ieJ|NsC0A^8LW0018VEC2ui01yBW000Gt;3s}wX?kNyLPFa#5UP3^wk(CC zKe9+;gdm|(VMuts4zO}DT@VOK1m)={2pi9Zf$&VC9jdjm*+RV&K$v9RFu0|I!2+1F z6;Q;%BcIpB1z!^u289U*e{2p3gL?-F2^@(e8U&FXn3w5$p!k!8k%2*+K?fuc zvXg-|`GIQRqSUCAs4#&;3tm~By~MCQ%rwwORo7gy-yy?BWny%m`4$Z=kEQF}JtY=+ zUfLA?(#?Ar^XBeQKBmcC4v)^p`DK_cQ206RTqffIk;3UrB1Hyj7R*hC%3_Rs)g7Jc Jeaeaq)&Qp@T0Z~) literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/cbi/link.gif b/luci-base/htdocs/luci-static/resources/cbi/link.gif new file mode 100644 index 0000000000000000000000000000000000000000..f0bb78da6b1e2cb17aa1a0e21c80e02979f6321a GIT binary patch literal 279 zcmV+y0qFimNk%w1VGsZi0K^{vm&^Qekgn|U_T}yMiLlDm+vLaN{=MG)S8$O@RcrG0 z`m5CYWS!x)+5Dr>`-!{kQek_q(&TBN;zLVZ)#vbFn&Fzj)~L(g-skTrF+)B@RpROJ ze4)L|%+de<|NsC0A^8LW0018VEC2ui01yBW000G)peK&x_?;dVMVDm}1jhw|hep&O z==8z~GHrORSgnM6@HQ4;4*@!6xGR+fIw4vg zByI*g?ikQL90EyhXA2I80}~>FNeyv^hX5Oj9sz=0a*zN37#bo03T1_nn*yF52n7l~ d8?74{0v#Ej2(=Ip2?-Mu8X6f_CBY>j06X7qcdP&a literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/cbi/reload.gif b/luci-base/htdocs/luci-static/resources/cbi/reload.gif new file mode 100644 index 0000000000000000000000000000000000000000..8268958a19e016741fffb8309b1174e548f5ce19 GIT binary patch literal 248 zcmV51h?dP)!|<#Vc>gJ1)O z9Y&Xm98YHe08|T}nE5Daq{Qc(Rx3cM5 zjz9kQ*3j_j+pnL#{d)WH+j&{p|6ssC8=&};g^__li9rWsJjhQBZ1WCGDDaT!>RZ^( zEEK83!O|Nd>|`Z3*C*`uOEs;l0!ub)PUp?=f27@0VfU<`vGKzV%|l1oS?<>Z^@_<= zC~_&t)O6G|iMKeh$aQzhi;0Q%F-^$to;pK9LUxv-l;q?Z@dd)N%uel7=1K?)Gp=1y z$56M4m6eCxNh-frev|MX$^D9=LUJ*T=NWksPtC-3SYNk)IzaCG{5wQd4hOTmQRpBi`QrZFzZjOw5(w z;B+Ua|6ri_lZBCiL7qW}0SG{LGO*S^P_K*2tV;HB^Xpa+Tva9QCeXgnd6P%76fc9p zOamsHcy;@YDln|Vuw<0nl$s8=rCxw48uw_56lMa6}$ zEFa1XibC1A+uFH>WUA~WrMhG$PUPgWRp}FBoy96PRn(YYfNQZp@O&*5b=4JX)+#bs F0{{l~XioqD literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/cbi/save.gif b/luci-base/htdocs/luci-static/resources/cbi/save.gif new file mode 100644 index 0000000000000000000000000000000000000000..35e949963e4b7a5f04fd1c8932a980901e3d4385 GIT binary patch literal 263 zcmV+i0r>t$Nk%w1VGsZi0K^{vcEd+Ya4xgmmXXkDk(iA6{P)e~xr@?RgUwTMzeLpS z#Wqhu{H$s5p4O4v<)^3=A2^0_EulhRp%QGjIf`R%Ru$RUj;1k~O1%3=|$g0$`b{ z1p`T8E1%cF0ssJ7eF+Hu(2Z{06R}5X@39! literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/cbi/up.gif b/luci-base/htdocs/luci-static/resources/cbi/up.gif new file mode 100644 index 0000000000000000000000000000000000000000..e8234178efaea626368f6bb5fffaa716e862b596 GIT binary patch literal 130 zcmZ?wbhEHb6krfw*v!o^>1^DDBbk%W#`m8Mo^~Z-=JluvXG6M=M%Jv0O73_44+acK zK=CIFBLf3BgAPaxWCjC^e!)r4)q5>o$4-6JJxOK08WYFNxvd2&rdbFb5VArX{>gpqy}ZQ3xBIb z?{>Ooo8TtXQxO=NV3P1sT@;64^wK0*F2cjwY|!s`db?4bMa4uk*E7&^V9Dyc zWMgh=vYP%x-%#5Lzo6VH2U**iyVgo-P*q)tn%ZherM0YH!Rl3rPl$o4x=;vkIC|^| zw(QuBZoPXUD<=z2pFig03K>Y3T?fn??iKbO*bfhHFYq2bx(}&L0+H%=F_^H3a7>&! z4RaPO#Hg|3z`TVQ)bM-=^TdU&KDOJ=Ht$t+qiP=GM>G71}`5^Jb(H0!xPM{ zOsw+qbC8vlj>O~?gocO1%Ekt7@rG?s18rSR^}t|%+`N4WckbOlZb2sJ;pqyVg8#%t zOBPriIeHkkZr#AK6Nhm2+$p$uxZvKy+Z_J~YT~sW1A~LmYWOO|r5ABBMHRm(j7;-D^$<|pC8a`tf5)uos+eaaEy_4FOA8!W>Tvz&)h=PtGzKVhW(go$Ij6Ek4Y z0D5n_PI|dX)E>+gIwL151@jipDI%u%Jnv3gfl^G>NVrc#4d^TL7tE#4HoKJZr>E1T zV6Vzw9mu1 zt${s>86`@fKdIkozQe+?f{28^8zM})EplAS_Yt!|KZ$;;%cLFuHTKCnlMK4D)%383 P00000NkvXXu0mjfn6E|q literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/icons/bridge_disabled.png b/luci-base/htdocs/luci-static/resources/icons/bridge_disabled.png new file mode 100644 index 0000000000000000000000000000000000000000..b3e620b3a13f5cca1337f191465c02d38b5e0286 GIT binary patch literal 405 zcmV;G0c!qXgfdHy`b=G@5WUE}34>!TN1&;yD{=B@v35{pF6sd@);$7(esk@z{29 z=b&k7I+(gf%qyb-PB9Wg12Q3Kz>i#Hq8dQV5lT>y{D8uZ+YDwaM=3+7C{m`!keRLo z;Eo^^PvImrNy`IqkS3KTaF(5v-8Qs=d1D?^QQs- zdno3Hi-2>1bwCcN0yW?P;CsNZ2;8&RUV9BZ_0&@`Ffbs4gM;$**I&ys&pcySuU;Ji zw*rmRiS?No-Irf}`K>R!@WQe>3B_WOFbr9~d^v4xZR*fN56z8@jh)=n)3XBjbiPi` zIO?dQg2~BA`RS*hqO;FFdk4@146RwSX8hV~uhl>Q{Ik6J>Z@|fDW`)pd2Ymx<25tmS1+J;P__aIID3kAuNtyo%vIh0L~hmjuIiht{>oVU=t8d8IckQ$9GX4-i5Uq8`p@F2x|-|@RWy$V2s8l0j4@h5|nTV z88!ghrzLRCBGzOZAPN*fdUMYM<)Or(lmeA*tNQ5Up~&C^is?%hLG#Am``iMj$AB<>Tk_tZeN>Clz!Y zr-dUzMj%L9u&z-Z9zvYZ*s>DnnFE0{I31yr8pV-u!YCvO1FX?$nUGT`CuwB3I3VXc zoU{0a#<_OjA$}guYhYD-SJpv{a|ZB00U~MsSRGOs>Zj1yh}I2rBfwe&i&#xis*uFt z@6Wt3e?G1NPRE!yK;`l@HZP|#UYyhapyjB&n@?y~HL9aMgyl(s$^=n51toM?NpFfX zF_OeMQ3xJkwZzBYY~kCT!NESZ1ONhhU-hK6MM^5qlV z-QA0TC{tkPHP>7dEnT`)KK}S)nLBsxSfX$ie6)T0c3Hc2tsHmUaqj|u0%rhc)zsAd za_zO(rY3bg{q)l@@D?*A<9N8Ir$>JO{r3rA18^=-3Mk;Dj*gC<+qP|!$!vfX%#=e8 zIV9Y?d9!@=)mP)dN}vu<^0&pkP#Tm%sQ{geFDM`{f{1_!;rJ*v9w&+;thHzWtq}nir7%%QQQ&aK;JlE9yakjF z(Alr7X=x#jLu^KqH!*@nG~hknlqdQ|d-fmzis===JFK(VIA)}855}a4(qR%RN+)VW zz{VkdvV#IZK|xLoI=>)Apn{CZLTXz(sm*jz-`Yl9Yb&+Q&Do`ihUUi1xq9$|c%h`c zc6uF%w|JAr#1jnn4iKh8;xL7?CJB=Qh4PXp^HGX|z~j9mC@Pt51{w(p(Ylzr_O5IO z5#C!sg91bn|IUPr?cGIDNeRXjPcsAO5FFwRsgW__C?xsktwrU+Oa_^aQmBl|lCo;X z28O3q;DPVIc>lTs+AEpp+le)X*rahL!ih(t&_R+9i6%6niWnam;@1W10e%FW;$H~h z6bF|8moamG1il2mQ$U^?)B$Zk3sA`PaX=riQ<0wlC#dv%Ty38%Bo=6^tD}viZON)Y&0P5~{-( zLtK1pTJxqY4dhWlK|z6QNN_0f3vvknBf>A}djygsQ6B(gsD$y z6Q{$$-U;vC$Kuw_8vqEu&PN^Y8oZHDF~tpL{S8<5MbpiXxg+fI2mK2 zOim6mnT!t-PX23PVm}dvHd7E5>c#tqD2e4O=-#s{RxV!+?#0VjG3(Z?L1tDa{;%^N zBBT645`p7Y@eeVS55ONDJ$B@orj48ZZe?YOyn;N^(b8cn*Q`W~mMtKP0zkhmlBldg zR&EBLVq+7Pl;t2uMO0W=h>suNQ&B+?d-wYNw|V?b%gTKG^Z^|FyKVvZN3`#RQFAww zOH6wyHug20ICYdfyxqH?29KZJXMEz|Lc6X$J8I*78o%Ws#l?Q0sF;YosD)pLmEiE# zkiBn4Z@f!x4JPcW^QZ5q@NmE0_{O~9GDnv->xTR`aL>-xQ%`>AJm+j-!?8zRdUn|0 z2rjbk&Lg8Y+#yxJp1onwS=*)Ew*Q>lZk*U~?BUxz7G9)2i!W2(C6}q=tW(MV4%@rl zxAW%RV>aF%?bmtp|KQqAKSd+f-lRTDu2ApAm#E*;E5!dd8+Rblsp0e;)_;%e1IQTy zfOm(@hV@1tsuS94djtSA3^Qa$cQ)lvOhkBD{*#AFvsGe_I9$CHI*!i%#Z8Zt# jw$;|P%{mR>=K?+hqBApH$C)si00000NkvXXu0mjfvW!xT literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/icons/ethernet_disabled.png b/luci-base/htdocs/luci-static/resources/icons/ethernet_disabled.png new file mode 100644 index 0000000000000000000000000000000000000000..d8792df54b1afe3286b9b8c1ca2d4bb404b5b6b1 GIT binary patch literal 399 zcmV;A0dW3_P)0Z>pUB%SGvNf`}Zp(Gfz!=yVwOyMTEC?wFqAe#*DnM@inpbc#k zIVcmxB^Qf5&j5C;I~zSspi z1Y`xSe*qmi32@iOHgfm#Ek{=E1lT$1=z&{L-`Rh2dv1AhByjDmP1xLBLwg-xboA8o zzrUmYMf?l@?DF9Lndi1g&nyN$23Yz03;rANKk8rf3+LTWH|?e$oa*;v$>o{wA7)P9 tdS}P^Z3pKqrUycQ8gPF2u^s^Ds0Tsmea{@!+>HPL002ovPDHLkV1n(dt;_%b literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/icons/loading.gif b/luci-base/htdocs/luci-static/resources/icons/loading.gif new file mode 100644 index 0000000000000000000000000000000000000000..715431483265b3427e1fb8f74df570a11e5c9435 GIT binary patch literal 1786 zcmZXUdsLI>9mk)%ByVmI6GFHrBot#n64OX#lwk?TC4pdolmdpDpq4;E13@H+B?$?a zfR&p-5nW(l!{w|hN&$Z~%g9tB!2H8Qqwn78e?m(!jz&i4HKJm>j*e&_pq zp9D#~XsenDm|&R*Mn*XXo zXOYBCv@#bQe?5P0uNUD^c|uecaLe-o)rS&uYv^Sdaa0Q*%20MI>mnf>9^Kd9{kzEi z!4rvgYwytT$q{-dfAm7>`sPGkeM3psZxgF{M(T9^=k3s?mfSC?+5Wj-?~Kda20E(} zvT}HisJr3^J5#%LHIIl-mAPMOcw3)E>GD>pPVH%2-nT$U-wyLUHe2%n*s|k)X7>d? z$m}J^>@Jkhm6bBE<6Qksb(%%3nSSq7S}&t8GMUY#hxM%IVo33wMc!8L(9dyp_deOT z(+ay%2F=$v)ArWQL=Sl+LYQmK5VIETk~tO|4qP#x`M3T4>mMOEP;IUvn#`6eV|{ha zv8Lvh)`W_~l>bJsng<<_e%08(5xOQ7seTUGWjT%0ANVzgVixsuqR*`0sF%B?nD!*W z?UyBEJt3&gTn!QBVxGYL2KD3SIF*r&u4b`-dj<7_yR%a3fI+rF zJg{&Bf*Pe({{rJ|^oCs_3hUk6>tWnn&s);aF^P?s{YVSsWSNI;E>O2FH&0f)J>>X_ zf3_`H0>;Zktd6DELfB}+zH`J>3s({AVDlO}GCuGGz6gCEzwgZ8q;JR<@WZ6w_wi!G zd?w}*-n#1+iKF!3c3oL~{xL`&ZsB;zaVAGE-@ArsUA7M;)6NgB3@lcBdAzzj`PR|z zYQtX1fngH8yF;tluOY#_RM=0 zN8D+40jlpWR$@&1qXpifkF2BUApw&Nop$h55hazT9j%6C*|F_J=O@$d7v~Dq$r+XJ z{8TC)&M-glz8YC9a=2EUTL&CL_tB4{l>$9FJ%t^1sn5 z4C%?e%570*dj!QS{mlMh+pA~WP?i{{A8F&MhfYqhjdOJmVO}fRdF81^y{RW?8{;rc zE!F#(sF>2X>dXzbl~lqp-=kax7A{J`!^KH!d~nG7^hE*!=)%>iK%#Z(*VpFe^vuzt z8Y>iLC7W+&Yw6e8nr`k8xLJM(cC>QIaLlK2ySvI6cUdJ5CuQPCwo2t5fzQM(s_ZE2 z;6J*Kb2_*C9}K6YkDffw`qSy1opgorU=g*F7D>Zkt3^Q{g{={Q5cn@8DMti`a^`Q? z&U=8S9J89t5SkrKxkKF*YB>XfX(Opm80h&67(OL=b}?WR{P1p{W4{l({^#gRFYYg96bnnSK)2shuMFKyudSlG1c>~SVI;74b(f`tz!cOnAULT7 z#-wl`(_>E?C-bvUhBD%N_K)BA8%f9{lYei}FP=zfGi~q%BgZRJwWl z?)0fs0QkOt{N(Ym{3huu((X`D`dajA?&Fx=bG{MK5p-+hMYqL}bM}DdWqyHXCE^w9<&7 z?XKtMvO%}Y^SQ9&x%o_R>e{4_yiBtL;LHgx(>pb{%s~K(vx!BBDaE2w=|aSpd3Nb^JD@j+yipOgeimV!19i zn-8(NgJb7<}BxUtji%NWy-e@); zf2PUOx0>wx`q!U9yCdz|{##4m@3T4w{+d1mA)xGcVF)?q00000NkvXXu0mjfT&#A= literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/icons/port_up.png b/luci-base/htdocs/luci-static/resources/icons/port_up.png new file mode 100644 index 0000000000000000000000000000000000000000..8105e77d0878e1bd4a4f4953365ca1cab3a80ab5 GIT binary patch literal 1151 zcmV-_1c3XAP)SZE8N{(H@L3ZuW(pBwz#`XdY;Sp#FL4>q`mmNa~e(rhZ`&X za{HFBO`A5M|3?fyXPtd!TRZ>5x+VTc{qMi`A+tL=PbQdv5a#Vr_%aNggZ{uZ{~a>M zm{P(q6iIWt^=%DMRi)KW6S|E{2r!As;QY%kJ{RZ37IO}Vb8c>KWO!5%9MGldnmvFw zxkk;?C=*PsB}G;DEbO`c);kEH1U{4kqFgEGH*(8MOMoUAg9Az&imK>_(H2OPUo!-$ zUVrz!cazD4rfK)x^8lDq6s1@yW-^I#rP9c1+xBhncDr4N9CYZxha3v_b-8Z)Zgb7e zIn3kodfmS1$=NF|y9zvJvnjwya$S-nRn=ga+vPrB|AWssb#85aC6!8i^zp}o!@~pp z0gQ=Z8Sk96u4}nmZed|za&j`8%@TqQ&KaXjW7HIjga>D5_7#{APpmC1FUYbCv&!X4 zU;xmzXWl?Jvn%D&)@@sLUC-oFP#qr|kAx#Y1gg{F8XXz$>+Og3WGW8aTt4gb`k+dw z89BGq*)>?mW%Cnb6EMf+ad895s$8j=;S$Dbb)#4=RcmE}@ao!XCYy%#28$7f0B*6` z_chWqRgsl?U5Z3Qflxrz)oRs*YPyOnb^C~JD7u0m&{R5!KsFj%wmD?iy7{cS4l;Ce z95FL>2u?9JpU>wNRgV|BZr}r^2ah^rx?uv@G8(P{jj+wNALZAQZV3v+V#D`aZ@%@} zS3l;}UWN@~$Xu5mdi0SC&N@m_D6-Xvo)U14xzUz&i@-8uhY9wFX4SAi>fmms`CMdW zEwN*{=yJNTeeQ#Sa9?kqb;``6YapWqZRceP3IdQRef^U?AFuV#>=*3yQooP>7~3T= z&Ee?+bmO^UBL@RPfLU&YhHD#Z1!5OD6Bt#gnGDCzy!_oKvG{PHYkV}|^Lak`c2}JS z2BO|G4+}GpzzVLHR z=F`LdQxoBMy7Zm63{lP0Ebk*SyYI4=)wFQzl z{fdf;riKR~2a_9Hf+5$QIeu_h5k(O-YiJ}wE!i~QLj4W>$P1#T1X=l3%jX%go|` za_rc?@dpp@T^jA!v7>u){6~8C8L*(Hsy;DwHH}HDHZA71#DBz5axRCZMT-`&{IP*m z{I>GD_pf_MMD*7KRoD#jirdl71f0Z`o)1Eg9ojxuB=PUpaFv`MM4TZy^r--Owi8*!Dkh8?+;e{Y#DR&KQa&`fe)B_nM+cKT zf^wi3&=vI~OY;vY`SeW+^ZZ>3QXmP&?fi-iO`_t!$IK~ng87sQ9`LaN$#77C!UhH7Uo&zwJb-|X4H z>&e**r|ezWdvMpC_&#^>)V(b`H_iq^IsxeXpE?4-XJUD)9OopkBLDyZ07*qoM6N<$ Ef`h@~g#Z8m literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/icons/signal-0.png b/luci-base/htdocs/luci-static/resources/icons/signal-0.png new file mode 100644 index 0000000000000000000000000000000000000000..333b1557ba5d9b5df28ec13542337b338eec48fb GIT binary patch literal 439 zcmV;o0Z9IdP)VB?C7)^Q+7`6roe)<)}%aT%9QkNX%H1Fm4E;F zv4n&a+7?8`p~2Ck1O3B^1@jlJqoWi=AZ;hWS^Haj?1^pPg8zCde5ZIon;t2Cgq6$TK*3AK+y z|2LBXD-j_aDwG)nDsCZ9Shjr4?*87Pqk;55zWw+%+rmo3SO{nX$iPPZLcT_0H2$l< z5>fh}konY6wqpVynG|w?HktuRXdRlx6@y$v0W-`SBmy8GqSA(?Kp7>>su`CjkjOae zY7OMl)$`XLKfC|>(bM~H9zTEZ_Uxt8pJI+&x_aT`<7W?2j$FQe;bqBBoiqHT h<@V+U=6A{5fOuw`u$Hg{&b9ym002ovPDHLkV1i~b$#MVy literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/icons/signal-25-50.png b/luci-base/htdocs/luci-static/resources/icons/signal-25-50.png new file mode 100644 index 0000000000000000000000000000000000000000..b465de3f575fdf90a7919b23b77a1dd10da9cd29 GIT binary patch literal 465 zcmV;?0WSWDP)s)cFn?^oilHvOefO%C znIib>1z2&^$g$Cg;iD<4R<%ZJb3*_q{yITLpsHX@)y)h{iTq)|YA|~3xjAFjURpsn zAC>Q}rU)d*3k0xVT%cFm1{=l>Y7zZ3^aHoO!rA zV=f3280CZsYp(WZ-5^fWlA;DubywC6+>K2Fa6*^1wHJ*U*gB%=L)u5rUVf-3>Yy~I zCOIvrfb|2W}>*Zo>UOtNxxEMldqVPA5yXW35rwWi5@0o!WlU$Sg`@5 zs^Er_as2fHA5v}u#JnKJ3B_h|@gEyt+^W-urmeqmciQ^v_hxOpaew&oGf()LCapdD z`23|a_s(5B{mK5rdv1r%7cQTz$u^5N&ZZ}00000NkvXX Hu0mjfM=so5 literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/icons/signal-50-75.png b/luci-base/htdocs/luci-static/resources/icons/signal-50-75.png new file mode 100644 index 0000000000000000000000000000000000000000..cd7bcaf9a6da38490231f92e4045cfc1a2c96a4d GIT binary patch literal 467 zcmV;^0WAKBP)}w+VA|N6-#pf^H==)aw1TZRQM6G74 z^x)BprvT7u^-8@wJ=G8l#0RR?>i!K`M#d_y35ah1;r~zo&5yoh9~{uUK_mbG002ov JPDHLkV1k;>+e!cc literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/icons/signal-75-100.png b/luci-base/htdocs/luci-static/resources/icons/signal-75-100.png new file mode 100644 index 0000000000000000000000000000000000000000..f7a3658df8d05f8fa037d84cf8e920308980ff0e GIT binary patch literal 457 zcmV;)0XF`LP)i&y2E2m%z1ujWC~8`U6E(u`Fsh0%BnP z1;NFKFK-#Bt=B#?9YT_j7g@k{f#f$4j_%m@c;mX28?`?&HoJhtfuJH5=HNgjekSPT z#M7?Q3uPrszI8wZp$6(k9sKw>3TqQpRS>dh->Zrk4rKls_wQKSvvJ+3>pED{tigv* zU*=b@UI_~8)I$X1SOZUxl|&QsWmmmTfD#XATPcA+j1X$z2y%C^J%MOF*n6qaIdj8IyS|#sT~3kQ%j6VJ88XdU~E`7rD<6& zZ8hu<-`+qP}nXZvp5?Pb?D^ZfSPzX<+=ZQIs0=TbMr zC-QRmatHrG*>aVpmMdGK4**z}g+2Rrvc`J?$~wy7ru{l!D>qs~7P~D;S6-0Oa3OkU~I834@YSf0hvts9!~}e$)C9 z7EuuZptP~1o91fPxEhz z;*@e_%lG{}9Oo{a%@k4~?b>w+LJ-iRDNG$wcJG7ljobcK+mBK;gj{l!i7D zc-N@~n^N+A_5!#UuR<0?LOQg|G~(i}g+Wso)NS8fOn4r;A62(buBOiFUYL&F#Vq^G31 z!Dr62XPk)A0#^00F-{CiwYP-B6*z1ap}CPw)Kz Z-~-xuDw_#&s%ZcK002ovPDHLkV1j6fDJB2_ literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/icons/switch.png b/luci-base/htdocs/luci-static/resources/icons/switch.png new file mode 100644 index 0000000000000000000000000000000000000000..be99b19badcd389e58cad6e04d067890a58943d8 GIT binary patch literal 680 zcmV;Z0$2TsP)lj+qP|YS0=WfgCF%C7XB6|J~7(z@#DwC0kHTJ zo40JDzrh6vM~)pKXLmOY7&-)V=g$QT2GeKFK)=C*;qK*$6Q_>9Zt!Izm>>YQZreN$WHc=56sz~O({2;Y~%XIU1C@?zM!EnPU|;opD$#cLxZ1$gn|8D73* zASp2t8~|JSuNyA7Ts{B>V`Zwr*}8Qzb?em)ty;Fi-Me?NaN#1neDM-Q1YJEHv~Jx7 z49fsS;BvSC2m}ro<|X(%KKMtE9}xyD4jwwdh>J?_Y^`na2UmvnEOP$CMP*GJSKkv4O4bxFI+f5 zOP4Jo1!Z|p{0tG{H5vEXRWX7+lsIu8UA%CX6qV&?;U}cLCgTl_uvsT#1-od3QPOlh zb&(i3IZD?^Mkr}ov1_5*mGAvD%$LT7{6`Fb)wQ{*A!nzIJz zFv?J-pI&P1AcK^wfx7YG9YpMP0knL#tq;UJCUq0{nACr`T|=u+7w`(`j$~?zc=-ST O0000xV zN&JuNb{n-C0>J26Gy2V*IcF3A6T6-JzV<4W04BGcHf__6Lmv(s2h}5&&u*VL z8srh%Ttj{TZdhBpN3|BDAVm89eGzZt^|#OHmO%+-z{2gvz8re9>-qYV<2DQ#Po3<` sdatcDr6y$ETn-6={HN7|8A8^HX`u0bX&RxdKL7v#07*qoM6N<$f`KlvegFUf literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/icons/tunnel.png b/luci-base/htdocs/luci-static/resources/icons/tunnel.png new file mode 100644 index 0000000000000000000000000000000000000000..63eabfef5901b6cfc80a4fabfce7aad6d24f8174 GIT binary patch literal 343 zcmV-d0jU0oP)gwjjB8mkP8rPB1zJ>Iz9b|Ry zBB^y#EbtB00#Wtrh;QCTUR4*2@*)%nDp^KI-4@L7qR4?MUX;3-;-#{(W=_7JoR_fL zbp#YG!jd&D7AUVQO&MuCj#7jieE???mfr_e9Z0~L`8Ec!%e9dvd z0@laWS5Sh;i~3=lP3G|B1Avgxt(PoL4ZuN(m#_DPFYX_2K|ka8TY~HSyx|d{uS&eE ptS|7z`nP^?xWjd!H~}3-&pYTsqv2#^;dcN4002ovPDHLkV1jqApAP^4 literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/icons/tunnel_disabled.png b/luci-base/htdocs/luci-static/resources/icons/tunnel_disabled.png new file mode 100644 index 0000000000000000000000000000000000000000..ca79d81707c1a9476ce729e4cb88b3aa32ef0cc7 GIT binary patch literal 235 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6HhH=@hE&9r_HX1pWFX)gYrwiF z!GufeR!NA?0lqC41kCMN8x@k;R6HCU*>xu9@heOADLl8Id#7gZeM!O7_DXKanHkFu zPO9cR9net8y`ks#WXC?S6E`+~&v8EZV++?IHpMhyF3r9jy;cI-FKWNoAh_I~O9 zY<`n>*Dt@5yjxEeEV<7+N7FK}%#x#VowiBV;tu2E+>5hLO}KYm?M(Bcvd)u<-{u_+ j&Rz8(PO#35!!WKUd)o0e{wc9Q*E4v!`njxgN@xNAZp&FF literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/icons/vlan.png b/luci-base/htdocs/luci-static/resources/icons/vlan.png new file mode 100644 index 0000000000000000000000000000000000000000..be99b19badcd389e58cad6e04d067890a58943d8 GIT binary patch literal 680 zcmV;Z0$2TsP)lj+qP|YS0=WfgCF%C7XB6|J~7(z@#DwC0kHTJ zo40JDzrh6vM~)pKXLmOY7&-)V=g$QT2GeKFK)=C*;qK*$6Q_>9Zt!Izm>>YQZreN$WHc=56sz~O({2;Y~%XIU1C@?zM!EnPU|;opD$#cLxZ1$gn|8D73* zASp2t8~|JSuNyA7Ts{B>V`Zwr*}8Qzb?em)ty;Fi-Me?NaN#1neDM-Q1YJEHv~Jx7 z49fsS;BvSC2m}ro<|X(%KKMtE9}xyD4jwwdh>J?_Y^`na2UmvnEOP$CMP*GJSKkv4O4bxFI+f5 zOP4Jo1!Z|p{0tG{H5vEXRWX7+lsIu8UA%CX6qV&?;U}cLCgTl_uvsT#1-od3QPOlh zb&(i3IZD?^Mkr}ov1_5*mGAvD%$LT7{6`Fb)wQ{*A!nzIJz zFv?J-pI&P1AcK^wfx7YG9YpMP0knL#tq;UJCUq0{nACr`T|=u+7w`(`j$~?zc=-ST O0000xV zN&JuNb{n-C0>J26Gy2V*IcF3A6T6-JzV<4W04BGcHf__6Lmv(s2h}5&&u*VL z8srh%Ttj{TZdhBpN3|BDAVm89eGzZt^|#OHmO%+-z{2gvz8re9>-qYV<2DQ#Po3<` sdatcDr6y$ETn-6={HN7|8A8^HX`u0bX&RxdKL7v#07*qoM6N<$f`KlvegFUf literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/icons/wifi.png b/luci-base/htdocs/luci-static/resources/icons/wifi.png new file mode 100644 index 0000000000000000000000000000000000000000..80a23e8e9a740f8f69e1ad82f3bcdede9f05953b GIT binary patch literal 767 zcmVRjrQ2KZQGt{_t>^=+q1U!ukG4oe3Hto)cL*!S;#?C?#6}P zJQaRam(=}b5Zbl@2Y0-!Wfu-AyxsU-Hm&~Ujzj)6ljyF~dWoGZ{rF~G9Nh7S9Wsl~ zLJld%pTzf~dA5U@u#>J4QlFp~)l_N}*U^ZBJKnHEX1PQ5$ny_u(dGX4z&@YFbS-z& z32Vtz45*ni;`Ytb^jzOE4BX!uaeHU+h8;4i5GmMW80(QtCOBS+Afln|ymBjz=RTIrc z@KWX~DodfbyquaE>xWpL2-H0!<4uiK5W!8JLk8I;7iCU3!CYY~?H?H(f{xC1$~Vv- zIJPnKH$5AxZ#Y&os91PYQo>37AcWw5+#;QQ(m5cV{kY$!-?NB{2?u8v xhqe{6tDEC@WNq*!Bc1PMWbj!TH+QFR&R6-E(9NL9xs?C_002ovPDHLkV1lfHa5w+} literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/icons/wifi_big.png b/luci-base/htdocs/luci-static/resources/icons/wifi_big.png new file mode 100644 index 0000000000000000000000000000000000000000..9e466aebf41d819f6bfbf5dd70c5b193fb2a7295 GIT binary patch literal 2276 zcmZuzdpHve7sqlNBbN|!soZjJxvXiv$el9Rj4-!kHuEAhZM`Zgxvbn0D@+q6cZ!&j zOGJs>2~(NIu#wcutM7fjo}Taf&hwme{`)=Wch2ve=iEe`wgCa3)3x3e^Ni{pKt&5!WL$#m2%?^-hk8?(5)Y>(7b>OiyoXbG7~Gu1gZ z)lJPJN>*V{1j`caNzEUSvrazNU-O=}Gl-vm^b=qbaC&E?Ed57d+D@UZrLt@bMuL#f zSQwe9 zZSbSRYeG|jN@*{S;76|tc*P|_+V&{yuLRF1w~kSEK9N_~3p3L9`GMP*4@E;4N z1Rpb@b{|!&mA>@KVpWe5Ae}bQu4MT31%UllTi6)lo1NO{mv)vOGKn%A=qjq+`%F>(99P1SVjTc_>fv-om)yX^2EgyMWiTg6eP$f#XaW{ajd$Xpc5n}X25!I zarQFDY|8;x`|V5IpVaW<_Zm?XAB$0BE4AS)Wo`=Ht=9TN$Kg*)eJ<0>(qSB*`{qEe zmY99I-qo4I{M|zT#k3m?o~iVu8a|`2?6xcD2>2g0(dm5-KE=R3ot_M#h9CTs%7)#rFSs*#U+ z=KUOnrL0;LMRwL&!*`eI@k2+lH+22#^S8c#7cOs}u&M_&3ja@SYe3-j6%y*jUUFcc z+^dAN6O;?|A%ycmM#cKz!L)Tjg$g)JbV~ASFlwwPcxVG@ zuHofpP@uBZ5gdoS7eC6(34eMpIHawgdZClb0JN5>g(sre8M!ooZ?b0cxRTXJ_n4aO zthd=%@1KB-ytDI3g1!cAd{USo6_H$JBH&rnTDCQLxC{t$q^Y-*Jt zsBWcAM8FeuB~>)&0HR@l+6DMEdjWj}B-9|)*p3NF`wY7xERMU;jV2Cwm!pq%c zzjxV-A_y246KX{jX0-P7fz)c&m?2g%ydt73~O5o~tC`;=ugHXVrI7T!1%*oQqc> z8$!Q>Ny6#dO~jmlXq4{}sie7hC5*x6)C_RMn<;!x-!wMIvg){d2{nWB_?EGTa?#kD zqdX(5XrPtv6bM2Zp&GJo!_-m>5`T@sfqQ3tb=C}-lOKx;D7yP@U-!f2N;$wyC$ zNib9LTT)W!uhtcfRLuI0g;IXRnta!gU2~!6dZQ!33`zbo!R~7H4GoAow1#dn?C4%; zdXAwN9EtIWY@QmLd}mq8d^I#VX}fzI|1Fb-1?+GYsQHcP2hzyXb6tsnkv>dwIBxUJ z7zaOIUSzw8Lpw8(`OgviHM=B>#7RIDp^L*&6{N8%Hwe!@k^ z@r=C2a73Uhz_eXet5WAA&->wNYBW}>Lrs0KvyMUDgclebvv*tEQ-*tVDDLNi4}7Ps zCa9NA2W>i`d_eto6DnPS3PJHj=Tr`^+t$8B=?6R*wK&Fpa!`u)xv>nS2d})EJ;Q&J z+Zq;s$?+7(bg*H=L#tAgl4&RdmOXXA`5uwI@LEv2;lU%MbQBdW7W-o(rRorf0*E!W z!E`U)bnh5kx|c@_myl!cdpvNyRf7c?aQ*69R@!1U1)mxk8L@%0aIR5Oxw_|I#5FnL zW{6#GK_N+ePJpjHpqU_@r)Sw^-S8!4KbOmtYIq~%$-a{s%N?w)zFh%g@wOvpXsh?b z)|t_)mlBY?Tf%3k<>eV?^<)Lw*?ed;TD82-qRR=amVqkxVp6tpoaD0qJ#g9k;i1XF zLCzcGv0U!vt3b#K40ucEqCwR1>%i9S>C{61WSb+^w*h~Yd5T(_#&kL-nPrJ7o7yIJ ze2cSw)IN4vT-mG*TVRu}?CjBSf=DFNFHamWt4K*-LWhP@7ZtLKQ_>6B1a`bIjh^VP zS}rHO$a%1HiS;_yRey79%kVl*v>gRl#TdlJsA{ghMj#W(_ww>qKC%U~WF6}fcbC|`SfYQJ>-_e_&d2(& xku*L*e)UmY&*gGKE`9x5q0#8|PdlN1iO81h2~bp%`T4`}*jb&nd~AWb@;B83P-p-E literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/icons/wifi_big_disabled.png b/luci-base/htdocs/luci-static/resources/icons/wifi_big_disabled.png new file mode 100644 index 0000000000000000000000000000000000000000..6f9fff3813e2e051a7429f042ebf8c23d7b42378 GIT binary patch literal 1512 zcmVP)kdg000HANkl%|aRV$s=WH#g7$s%iA``+cVZ5=$@wr$(C?YFiywrA35Rn^PMTF3X-#`m3H zH3;W;tya~(6;CLfV;lXAz;Xms732nW+l4CydYYNb-k+h4hB{ld3A=snZ2bLfftK=a zvUy4Y0h!WOxA=zAMNjrx2~4O$((h~y|5&f!sI$pW!;cG~K+g#%CzxrZCO0%g8ba4~ zL(4S9NBNY!);twg@i(UD@EbBMr#rHkwu&~@Dr=Lf?WL`14uC27rVTEq2nW71q&+=chG3&|Drw zl!Zos5e={c>idm;)X3VMimb&a%ka1kJ1HD}+-xaD(6#bM`UDS=n$ z@xzMhzz74R+ms9#c|C6Tgz0I1WvN35sQKjM-?;E=?DMQ#I{A2NM&M9ospgxWC*tyf7UI1CmZD8lnldMwa+5HbG26mI#uX1;#B~EXG0`kZGOKT@Q*rQO|5Rzt3G>U1 z4Y(=0DcgYMMwp*-rb@+r)Phr;R-a^&YN?5OLDE-g7fjINo=R(M6X~Mm`04dw=~gGb-RM1vy4$q@B7p_sbLNLAL<@fK7NsYA{C zT8H)1cngXhDnr^;j;VA=C|z}}7JDxI&ig0V-b7J8`L97pQXvb%)ut+4P+a0~$=34>sQ`>3{KLmuR$C++#n4 zIDU$Dw6O7C=8wvxietBD|Nh2t;F1Dh-{AUSk)Uk$-iDVw&HDD- zw)LMog-g(I8H+aEXN{wRFJYGAKdW672`4cVW6n+W6-lpkuQj>}r-17ie8LQdo)q+< z875*(%3(Ro$K#RVnd8yk>~D=Ln&0*`=lfGrEiZ|$Wk8_H3m)b6;zuwlj%>4=d4YAp zv~rzM=j5ibmkb&s)P?)p?>!$Mhq~H;Jtx1p|FQ0O!V@1o{MYv7UfElxmu0gayP_pu zSfi;;~d>% zZ?OAbjQ3q-@HWq$eh$7ZhClkAw?l!Sn^=7!5Li*WXVJP>`kNlje}v3??d%l>_LB6= zpPyFL^&Z3^WcAQF>bh!F{^X3et^DS10lr?w?h6Lj;#{0AEr7!P!T$mN&5K^5InvMo O0000ABo4#s3j+s?ntq}eo0cF9c^Zo0%oo$PkVPH#^MSR{H+VTPPnk0{#U)|srwX;)H35X4p3;r3=}AkO>7wGLvL9WPGSib5T{EQ{dK%z>rS0#6 z!u1F4mVyZ$OG-i;jPSr-q4&G6w2eLfz9UwV9`7jgapCkex<@Z5(qqKR-xvS518@`Z z2p*icMbqD2(%{qN>;)Q}@CbGj*}HJXKQHM%)&2+zk2@ZFHu2UQ0st@kM*zk<9?~Mc zqZf3Srk_qW-J;13paKUZ-cjrb%+LD;R3?q|yuV0S=p{k?@aL2dzCWP~4q_08IC$Wk kL*Lu{GVCeDQHlWk0fb(%J{%wa-T(jq07*qoM6N<$f_$*)IsgCw literal 0 HcmV?d00001 diff --git a/luci-base/htdocs/luci-static/resources/xhr.js b/luci-base/htdocs/luci-static/resources/xhr.js new file mode 100644 index 000000000..701c12ac1 --- /dev/null +++ b/luci-base/htdocs/luci-static/resources/xhr.js @@ -0,0 +1,241 @@ +/* + * xhr.js - XMLHttpRequest helper class + * (c) 2008-2010 Jo-Philipp Wich + */ + +XHR = function() +{ + this.reinit = function() + { + if (window.XMLHttpRequest) { + this._xmlHttp = new XMLHttpRequest(); + } + else if (window.ActiveXObject) { + this._xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); + } + else { + alert("xhr.js: XMLHttpRequest is not supported by this browser!"); + } + } + + this.busy = function() { + if (!this._xmlHttp) + return false; + + switch (this._xmlHttp.readyState) + { + case 1: + case 2: + case 3: + return true; + + default: + return false; + } + } + + this.abort = function() { + if (this.busy()) + this._xmlHttp.abort(); + } + + this.get = function(url,data,callback) + { + this.reinit(); + + var xhr = this._xmlHttp; + var code = this._encode(data); + + url = location.protocol + '//' + location.host + url; + + if (code) + if (url.substr(url.length-1,1) == '&') + url += code; + else + url += '?' + code; + + xhr.open('GET', url, true); + + xhr.onreadystatechange = function() + { + if (xhr.readyState == 4) { + var json = null; + if (xhr.getResponseHeader("Content-Type") == "application/json") { + try { + json = eval('(' + xhr.responseText + ')'); + } + catch(e) { + json = null; + } + } + + callback(xhr, json); + } + } + + xhr.send(null); + } + + this.post = function(url,data,callback) + { + this.reinit(); + + var xhr = this._xmlHttp; + var code = this._encode(data); + + xhr.onreadystatechange = function() + { + if (xhr.readyState == 4) + callback(xhr); + } + + xhr.open('POST', url, true); + xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded'); + xhr.setRequestHeader('Content-length', code.length); + xhr.setRequestHeader('Connection', 'close'); + xhr.send(code); + } + + this.cancel = function() + { + this._xmlHttp.onreadystatechange = function(){}; + this._xmlHttp.abort(); + } + + this.send_form = function(form,callback,extra_values) + { + var code = ''; + + for (var i = 0; i < form.elements.length; i++) + { + var e = form.elements[i]; + + if (e.options) + { + code += (code ? '&' : '') + + form.elements[i].name + '=' + encodeURIComponent( + e.options[e.selectedIndex].value + ); + } + else if (e.length) + { + for (var j = 0; j < e.length; j++) + if (e[j].name) { + code += (code ? '&' : '') + + e[j].name + '=' + encodeURIComponent(e[j].value); + } + } + else + { + code += (code ? '&' : '') + + e.name + '=' + encodeURIComponent(e.value); + } + } + + if (typeof extra_values == 'object') + for (var key in extra_values) + code += (code ? '&' : '') + + key + '=' + encodeURIComponent(extra_values[key]); + + return( + (form.method == 'get') + ? this.get(form.getAttribute('action'), code, callback) + : this.post(form.getAttribute('action'), code, callback) + ); + } + + this._encode = function(obj) + { + obj = obj ? obj : { }; + obj['_'] = Math.random(); + + if (typeof obj == 'object') + { + var code = ''; + var self = this; + + for (var k in obj) + code += (code ? '&' : '') + + k + '=' + encodeURIComponent(obj[k]); + + return code; + } + + return obj; + } +} + +XHR.get = function(url, data, callback) +{ + (new XHR()).get(url, data, callback); +} + +XHR.poll = function(interval, url, data, callback) +{ + if (isNaN(interval) || interval < 1) + interval = 5; + + if (!XHR._q) + { + XHR._t = 0; + XHR._q = [ ]; + XHR._r = function() { + for (var i = 0, e = XHR._q[0]; i < XHR._q.length; e = XHR._q[++i]) + { + if (!(XHR._t % e.interval) && !e.xhr.busy()) + e.xhr.get(e.url, e.data, e.callback); + } + + XHR._t++; + }; + } + + XHR._q.push({ + interval: interval, + callback: callback, + url: url, + data: data, + xhr: new XHR() + }); + + XHR.run(); +} + +XHR.halt = function() +{ + if (XHR._i) + { + /* show & set poll indicator */ + try { + document.getElementById('xhr_poll_status').style.display = ''; + document.getElementById('xhr_poll_status_on').style.display = 'none'; + document.getElementById('xhr_poll_status_off').style.display = ''; + } catch(e) { } + + window.clearInterval(XHR._i); + XHR._i = null; + } +} + +XHR.run = function() +{ + if (XHR._r && !XHR._i) + { + /* show & set poll indicator */ + try { + document.getElementById('xhr_poll_status').style.display = ''; + document.getElementById('xhr_poll_status_on').style.display = ''; + document.getElementById('xhr_poll_status_off').style.display = 'none'; + } catch(e) { } + + /* kick first round manually to prevent one second lag when setting up + * the poll interval */ + XHR._r(); + XHR._i = window.setInterval(XHR._r, 1000); + } +} + +XHR.running = function() +{ + return !!(XHR._r && XHR._i); +} diff --git a/luci-base/luasrc/cacheloader.lua b/luci-base/luasrc/cacheloader.lua new file mode 100644 index 000000000..11e5f6900 --- /dev/null +++ b/luci-base/luasrc/cacheloader.lua @@ -0,0 +1,12 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2008 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local config = require "luci.config" +local ccache = require "luci.ccache" + +module "luci.cacheloader" + +if config.ccache and config.ccache.enable == "1" then + ccache.cache_ondemand() +end \ No newline at end of file diff --git a/luci-base/luasrc/cbi.lua b/luci-base/luasrc/cbi.lua new file mode 100644 index 000000000..218439503 --- /dev/null +++ b/luci-base/luasrc/cbi.lua @@ -0,0 +1,1942 @@ +-- Copyright 2008 Steven Barth +-- Licensed to the public under the Apache License 2.0. + +module("luci.cbi", package.seeall) + +require("luci.template") +local util = require("luci.util") +require("luci.http") + + +--local event = require "luci.sys.event" +local fs = require("nixio.fs") +local uci = require("luci.model.uci") +local datatypes = require("luci.cbi.datatypes") +local dispatcher = require("luci.dispatcher") +local class = util.class +local instanceof = util.instanceof + +FORM_NODATA = 0 +FORM_PROCEED = 0 +FORM_VALID = 1 +FORM_DONE = 1 +FORM_INVALID = -1 +FORM_CHANGED = 2 +FORM_SKIP = 4 + +AUTO = true + +CREATE_PREFIX = "cbi.cts." +REMOVE_PREFIX = "cbi.rts." +RESORT_PREFIX = "cbi.sts." +FEXIST_PREFIX = "cbi.cbe." + +-- Loads a CBI map from given file, creating an environment and returns it +function load(cbimap, ...) + local fs = require "nixio.fs" + local i18n = require "luci.i18n" + require("luci.config") + require("luci.util") + + local upldir = "/etc/luci-uploads/" + local cbidir = luci.util.libpath() .. "/model/cbi/" + local func, err + + if fs.access(cbidir..cbimap..".lua") then + func, err = loadfile(cbidir..cbimap..".lua") + elseif fs.access(cbimap) then + func, err = loadfile(cbimap) + else + func, err = nil, "Model '" .. cbimap .. "' not found!" + end + + assert(func, err) + + local env = { + translate=i18n.translate, + translatef=i18n.translatef, + arg={...} + } + + setfenv(func, setmetatable(env, {__index = + function(tbl, key) + return rawget(tbl, key) or _M[key] or _G[key] + end})) + + local maps = { func() } + local uploads = { } + local has_upload = false + + for i, map in ipairs(maps) do + if not instanceof(map, Node) then + error("CBI map returns no valid map object!") + return nil + else + map:prepare() + if map.upload_fields then + has_upload = true + for _, field in ipairs(map.upload_fields) do + uploads[ + field.config .. '.' .. + (field.section.sectiontype or '1') .. '.' .. + field.option + ] = true + end + end + end + end + + if has_upload then + local uci = luci.model.uci.cursor() + local prm = luci.http.context.request.message.params + local fd, cbid + + luci.http.setfilehandler( + function( field, chunk, eof ) + if not field then return end + if field.name and not cbid then + local c, s, o = field.name:gmatch( + "cbid%.([^%.]+)%.([^%.]+)%.([^%.]+)" + )() + + if c and s and o then + local t = uci:get( c, s ) or s + if uploads[c.."."..t.."."..o] then + local path = upldir .. field.name + fd = io.open(path, "w") + if fd then + cbid = field.name + prm[cbid] = path + end + end + end + end + + if field.name == cbid and fd then + fd:write(chunk) + end + + if eof and fd then + fd:close() + fd = nil + cbid = nil + end + end + ) + end + + return maps +end + +-- +-- Compile a datatype specification into a parse tree for evaluation later on +-- +local cdt_cache = { } + +function compile_datatype(code) + local i + local pos = 0 + local esc = false + local depth = 0 + local stack = { } + + for i = 1, #code+1 do + local byte = code:byte(i) or 44 + if esc then + esc = false + elseif byte == 92 then + esc = true + elseif byte == 40 or byte == 44 then + if depth <= 0 then + if pos < i then + local label = code:sub(pos, i-1) + :gsub("\\(.)", "%1") + :gsub("^%s+", "") + :gsub("%s+$", "") + + if #label > 0 and tonumber(label) then + stack[#stack+1] = tonumber(label) + elseif label:match("^'.*'$") or label:match('^".*"$') then + stack[#stack+1] = label:gsub("[\"'](.*)[\"']", "%1") + elseif type(datatypes[label]) == "function" then + stack[#stack+1] = datatypes[label] + stack[#stack+1] = { } + else + error("Datatype error, bad token %q" % label) + end + end + pos = i + 1 + end + depth = depth + (byte == 40 and 1 or 0) + elseif byte == 41 then + depth = depth - 1 + if depth <= 0 then + if type(stack[#stack-1]) ~= "function" then + error("Datatype error, argument list follows non-function") + end + stack[#stack] = compile_datatype(code:sub(pos, i-1)) + pos = i + 1 + end + end + end + + return stack +end + +function verify_datatype(dt, value) + if dt and #dt > 0 then + if not cdt_cache[dt] then + local c = compile_datatype(dt) + if c and type(c[1]) == "function" then + cdt_cache[dt] = c + else + error("Datatype error, not a function expression") + end + end + if cdt_cache[dt] then + return cdt_cache[dt][1](value, unpack(cdt_cache[dt][2])) + end + end + return true +end + + +-- Node pseudo abstract class +Node = class() + +function Node.__init__(self, title, description) + self.children = {} + self.title = title or "" + self.description = description or "" + self.template = "cbi/node" +end + +-- hook helper +function Node._run_hook(self, hook) + if type(self[hook]) == "function" then + return self[hook](self) + end +end + +function Node._run_hooks(self, ...) + local f + local r = false + for _, f in ipairs(arg) do + if type(self[f]) == "function" then + self[f](self) + r = true + end + end + return r +end + +-- Prepare nodes +function Node.prepare(self, ...) + for k, child in ipairs(self.children) do + child:prepare(...) + end +end + +-- Append child nodes +function Node.append(self, obj) + table.insert(self.children, obj) +end + +-- Parse this node and its children +function Node.parse(self, ...) + for k, child in ipairs(self.children) do + child:parse(...) + end +end + +-- Render this node +function Node.render(self, scope) + scope = scope or {} + scope.self = self + + luci.template.render(self.template, scope) +end + +-- Render the children +function Node.render_children(self, ...) + local k, node + for k, node in ipairs(self.children) do + node.last_child = (k == #self.children) + node.index = k + node:render(...) + end +end + + +--[[ +A simple template element +]]-- +Template = class(Node) + +function Template.__init__(self, template) + Node.__init__(self) + self.template = template +end + +function Template.render(self) + luci.template.render(self.template, {self=self}) +end + +function Template.parse(self, readinput) + self.readinput = (readinput ~= false) + return Map.formvalue(self, "cbi.submit") and FORM_DONE or FORM_NODATA +end + + +--[[ +Map - A map describing a configuration file +]]-- +Map = class(Node) + +function Map.__init__(self, config, ...) + Node.__init__(self, ...) + + self.config = config + self.parsechain = {self.config} + self.template = "cbi/map" + self.apply_on_parse = nil + self.readinput = true + self.proceed = false + self.flow = {} + + self.uci = uci.cursor() + self.save = true + + self.changed = false + + local path = "%s/%s" %{ self.uci:get_confdir(), self.config } + if fs.stat(path, "type") ~= "reg" then + fs.writefile(path, "") + end + + local ok, err = self.uci:load(self.config) + if not ok then + local url = dispatcher.build_url(unpack(dispatcher.context.request)) + local source = self:formvalue("cbi.source") + if type(source) == "string" then + fs.writefile(path, source:gsub("\r\n", "\n")) + ok, err = self.uci:load(self.config) + if ok then + luci.http.redirect(url) + end + end + self.save = false + end + + if not ok then + self.template = "cbi/error" + self.error = err + self.source = fs.readfile(path) or "" + self.pageaction = false + end +end + +function Map.formvalue(self, key) + return self.readinput and luci.http.formvalue(key) or nil +end + +function Map.formvaluetable(self, key) + return self.readinput and luci.http.formvaluetable(key) or {} +end + +function Map.get_scheme(self, sectiontype, option) + if not option then + return self.scheme and self.scheme.sections[sectiontype] + else + return self.scheme and self.scheme.variables[sectiontype] + and self.scheme.variables[sectiontype][option] + end +end + +function Map.submitstate(self) + return self:formvalue("cbi.submit") +end + +-- Chain foreign config +function Map.chain(self, config) + table.insert(self.parsechain, config) +end + +function Map.state_handler(self, state) + return state +end + +-- Use optimized UCI writing +function Map.parse(self, readinput, ...) + if self:formvalue("cbi.skip") then + self.state = FORM_SKIP + elseif not self.save then + self.state = FORM_INVALID + elseif not self:submitstate() then + self.state = FORM_NODATA + end + + -- Back out early to prevent unauthorized changes on the subsequent parse + if self.state ~= nil then + return self:state_handler(self.state) + end + + self.readinput = (readinput ~= false) + self:_run_hooks("on_parse") + + Node.parse(self, ...) + + if self.save then + self:_run_hooks("on_save", "on_before_save") + for i, config in ipairs(self.parsechain) do + self.uci:save(config) + end + self:_run_hooks("on_after_save") + if (not self.proceed and self.flow.autoapply) or luci.http.formvalue("cbi.apply") then + self:_run_hooks("on_before_commit") + for i, config in ipairs(self.parsechain) do + self.uci:commit(config) + + -- Refresh data because commit changes section names + self.uci:load(config) + end + self:_run_hooks("on_commit", "on_after_commit", "on_before_apply") + if self.apply_on_parse then + self.uci:apply(self.parsechain) + self:_run_hooks("on_apply", "on_after_apply") + else + -- This is evaluated by the dispatcher and delegated to the + -- template which in turn fires XHR to perform the actual + -- apply actions. + self.apply_needed = true + end + + -- Reparse sections + Node.parse(self, true) + end + for i, config in ipairs(self.parsechain) do + self.uci:unload(config) + end + if type(self.commit_handler) == "function" then + self:commit_handler(self:submitstate()) + end + end + + if not self.save then + self.state = FORM_INVALID + elseif self.proceed then + self.state = FORM_PROCEED + elseif self.changed then + self.state = FORM_CHANGED + else + self.state = FORM_VALID + end + + return self:state_handler(self.state) +end + +function Map.render(self, ...) + self:_run_hooks("on_init") + Node.render(self, ...) +end + +-- Creates a child section +function Map.section(self, class, ...) + if instanceof(class, AbstractSection) then + local obj = class(self, ...) + self:append(obj) + return obj + else + error("class must be a descendent of AbstractSection") + end +end + +-- UCI add +function Map.add(self, sectiontype) + return self.uci:add(self.config, sectiontype) +end + +-- UCI set +function Map.set(self, section, option, value) + if type(value) ~= "table" or #value > 0 then + if option then + return self.uci:set(self.config, section, option, value) + else + return self.uci:set(self.config, section, value) + end + else + return Map.del(self, section, option) + end +end + +-- UCI del +function Map.del(self, section, option) + if option then + return self.uci:delete(self.config, section, option) + else + return self.uci:delete(self.config, section) + end +end + +-- UCI get +function Map.get(self, section, option) + if not section then + return self.uci:get_all(self.config) + elseif option then + return self.uci:get(self.config, section, option) + else + return self.uci:get_all(self.config, section) + end +end + +--[[ +Compound - Container +]]-- +Compound = class(Node) + +function Compound.__init__(self, ...) + Node.__init__(self) + self.template = "cbi/compound" + self.children = {...} +end + +function Compound.populate_delegator(self, delegator) + for _, v in ipairs(self.children) do + v.delegator = delegator + end +end + +function Compound.parse(self, ...) + local cstate, state = 0 + + for k, child in ipairs(self.children) do + cstate = child:parse(...) + state = (not state or cstate < state) and cstate or state + end + + return state +end + + +--[[ +Delegator - Node controller +]]-- +Delegator = class(Node) +function Delegator.__init__(self, ...) + Node.__init__(self, ...) + self.nodes = {} + self.defaultpath = {} + self.pageaction = false + self.readinput = true + self.allow_reset = false + self.allow_cancel = false + self.allow_back = false + self.allow_finish = false + self.template = "cbi/delegator" +end + +function Delegator.set(self, name, node) + assert(not self.nodes[name], "Duplicate entry") + + self.nodes[name] = node +end + +function Delegator.add(self, name, node) + node = self:set(name, node) + self.defaultpath[#self.defaultpath+1] = name +end + +function Delegator.insert_after(self, name, after) + local n = #self.chain + 1 + for k, v in ipairs(self.chain) do + if v == after then + n = k + 1 + break + end + end + table.insert(self.chain, n, name) +end + +function Delegator.set_route(self, ...) + local n, chain, route = 0, self.chain, {...} + for i = 1, #chain do + if chain[i] == self.current then + n = i + break + end + end + for i = 1, #route do + n = n + 1 + chain[n] = route[i] + end + for i = n + 1, #chain do + chain[i] = nil + end +end + +function Delegator.get(self, name) + local node = self.nodes[name] + + if type(node) == "string" then + node = load(node, name) + end + + if type(node) == "table" and getmetatable(node) == nil then + node = Compound(unpack(node)) + end + + return node +end + +function Delegator.parse(self, ...) + if self.allow_cancel and Map.formvalue(self, "cbi.cancel") then + if self:_run_hooks("on_cancel") then + return FORM_DONE + end + end + + if not Map.formvalue(self, "cbi.delg.current") then + self:_run_hooks("on_init") + end + + local newcurrent + self.chain = self.chain or self:get_chain() + self.current = self.current or self:get_active() + self.active = self.active or self:get(self.current) + assert(self.active, "Invalid state") + + local stat = FORM_DONE + if type(self.active) ~= "function" then + self.active:populate_delegator(self) + stat = self.active:parse() + else + self:active() + end + + if stat > FORM_PROCEED then + if Map.formvalue(self, "cbi.delg.back") then + newcurrent = self:get_prev(self.current) + else + newcurrent = self:get_next(self.current) + end + elseif stat < FORM_PROCEED then + return stat + end + + + if not Map.formvalue(self, "cbi.submit") then + return FORM_NODATA + elseif stat > FORM_PROCEED + and (not newcurrent or not self:get(newcurrent)) then + return self:_run_hook("on_done") or FORM_DONE + else + self.current = newcurrent or self.current + self.active = self:get(self.current) + if type(self.active) ~= "function" then + self.active:populate_delegator(self) + local stat = self.active:parse(false) + if stat == FORM_SKIP then + return self:parse(...) + else + return FORM_PROCEED + end + else + return self:parse(...) + end + end +end + +function Delegator.get_next(self, state) + for k, v in ipairs(self.chain) do + if v == state then + return self.chain[k+1] + end + end +end + +function Delegator.get_prev(self, state) + for k, v in ipairs(self.chain) do + if v == state then + return self.chain[k-1] + end + end +end + +function Delegator.get_chain(self) + local x = Map.formvalue(self, "cbi.delg.path") or self.defaultpath + return type(x) == "table" and x or {x} +end + +function Delegator.get_active(self) + return Map.formvalue(self, "cbi.delg.current") or self.chain[1] +end + +--[[ +Page - A simple node +]]-- + +Page = class(Node) +Page.__init__ = Node.__init__ +Page.parse = function() end + + +--[[ +SimpleForm - A Simple non-UCI form +]]-- +SimpleForm = class(Node) + +function SimpleForm.__init__(self, config, title, description, data) + Node.__init__(self, title, description) + self.config = config + self.data = data or {} + self.template = "cbi/simpleform" + self.dorender = true + self.pageaction = false + self.readinput = true +end + +SimpleForm.formvalue = Map.formvalue +SimpleForm.formvaluetable = Map.formvaluetable + +function SimpleForm.parse(self, readinput, ...) + self.readinput = (readinput ~= false) + + if self:formvalue("cbi.skip") then + return FORM_SKIP + end + + if self:formvalue("cbi.cancel") and self:_run_hooks("on_cancel") then + return FORM_DONE + end + + if self:submitstate() then + Node.parse(self, 1, ...) + end + + local valid = true + for k, j in ipairs(self.children) do + for i, v in ipairs(j.children) do + valid = valid + and (not v.tag_missing or not v.tag_missing[1]) + and (not v.tag_invalid or not v.tag_invalid[1]) + and (not v.error) + end + end + + local state = + not self:submitstate() and FORM_NODATA + or valid and FORM_VALID + or FORM_INVALID + + self.dorender = not self.handle + if self.handle then + local nrender, nstate = self:handle(state, self.data) + self.dorender = self.dorender or (nrender ~= false) + state = nstate or state + end + return state +end + +function SimpleForm.render(self, ...) + if self.dorender then + Node.render(self, ...) + end +end + +function SimpleForm.submitstate(self) + return self:formvalue("cbi.submit") +end + +function SimpleForm.section(self, class, ...) + if instanceof(class, AbstractSection) then + local obj = class(self, ...) + self:append(obj) + return obj + else + error("class must be a descendent of AbstractSection") + end +end + +-- Creates a child field +function SimpleForm.field(self, class, ...) + local section + for k, v in ipairs(self.children) do + if instanceof(v, SimpleSection) then + section = v + break + end + end + if not section then + section = self:section(SimpleSection) + end + + if instanceof(class, AbstractValue) then + local obj = class(self, section, ...) + obj.track_missing = true + section:append(obj) + return obj + else + error("class must be a descendent of AbstractValue") + end +end + +function SimpleForm.set(self, section, option, value) + self.data[option] = value +end + + +function SimpleForm.del(self, section, option) + self.data[option] = nil +end + + +function SimpleForm.get(self, section, option) + return self.data[option] +end + + +function SimpleForm.get_scheme() + return nil +end + + +Form = class(SimpleForm) + +function Form.__init__(self, ...) + SimpleForm.__init__(self, ...) + self.embedded = true +end + + +--[[ +AbstractSection +]]-- +AbstractSection = class(Node) + +function AbstractSection.__init__(self, map, sectiontype, ...) + Node.__init__(self, ...) + self.sectiontype = sectiontype + self.map = map + self.config = map.config + self.optionals = {} + self.defaults = {} + self.fields = {} + self.tag_error = {} + self.tag_invalid = {} + self.tag_deperror = {} + self.changed = false + + self.optional = true + self.addremove = false + self.dynamic = false +end + +-- Define a tab for the section +function AbstractSection.tab(self, tab, title, desc) + self.tabs = self.tabs or { } + self.tab_names = self.tab_names or { } + + self.tab_names[#self.tab_names+1] = tab + self.tabs[tab] = { + title = title, + description = desc, + childs = { } + } +end + +-- Check whether the section has tabs +function AbstractSection.has_tabs(self) + return (self.tabs ~= nil) and (next(self.tabs) ~= nil) +end + +-- Appends a new option +function AbstractSection.option(self, class, option, ...) + if instanceof(class, AbstractValue) then + local obj = class(self.map, self, option, ...) + self:append(obj) + self.fields[option] = obj + return obj + elseif class == true then + error("No valid class was given and autodetection failed.") + else + error("class must be a descendant of AbstractValue") + end +end + +-- Appends a new tabbed option +function AbstractSection.taboption(self, tab, ...) + + assert(tab and self.tabs and self.tabs[tab], + "Cannot assign option to not existing tab %q" % tostring(tab)) + + local l = self.tabs[tab].childs + local o = AbstractSection.option(self, ...) + + if o then l[#l+1] = o end + + return o +end + +-- Render a single tab +function AbstractSection.render_tab(self, tab, ...) + + assert(tab and self.tabs and self.tabs[tab], + "Cannot render not existing tab %q" % tostring(tab)) + + local k, node + for k, node in ipairs(self.tabs[tab].childs) do + node.last_child = (k == #self.tabs[tab].childs) + node.index = k + node:render(...) + end +end + +-- Parse optional options +function AbstractSection.parse_optionals(self, section, noparse) + if not self.optional then + return + end + + self.optionals[section] = {} + + local field = nil + if not noparse then + field = self.map:formvalue("cbi.opt."..self.config.."."..section) + end + + for k,v in ipairs(self.children) do + if v.optional and not v:cfgvalue(section) and not self:has_tabs() then + if field == v.option then + field = nil + self.map.proceed = true + else + table.insert(self.optionals[section], v) + end + end + end + + if field and #field > 0 and self.dynamic then + self:add_dynamic(field) + end +end + +-- Add a dynamic option +function AbstractSection.add_dynamic(self, field, optional) + local o = self:option(Value, field, field) + o.optional = optional +end + +-- Parse all dynamic options +function AbstractSection.parse_dynamic(self, section) + if not self.dynamic then + return + end + + local arr = luci.util.clone(self:cfgvalue(section)) + local form = self.map:formvaluetable("cbid."..self.config.."."..section) + for k, v in pairs(form) do + arr[k] = v + end + + for key,val in pairs(arr) do + local create = true + + for i,c in ipairs(self.children) do + if c.option == key then + create = false + end + end + + if create and key:sub(1, 1) ~= "." then + self.map.proceed = true + self:add_dynamic(key, true) + end + end +end + +-- Returns the section's UCI table +function AbstractSection.cfgvalue(self, section) + return self.map:get(section) +end + +-- Push events +function AbstractSection.push_events(self) + --luci.util.append(self.map.events, self.events) + self.map.changed = true +end + +-- Removes the section +function AbstractSection.remove(self, section) + self.map.proceed = true + return self.map:del(section) +end + +-- Creates the section +function AbstractSection.create(self, section) + local stat + + if section then + stat = section:match("^[%w_]+$") and self.map:set(section, nil, self.sectiontype) + else + section = self.map:add(self.sectiontype) + stat = section + end + + if stat then + for k,v in pairs(self.children) do + if v.default then + self.map:set(section, v.option, v.default) + end + end + + for k,v in pairs(self.defaults) do + self.map:set(section, k, v) + end + end + + self.map.proceed = true + + return stat +end + + +SimpleSection = class(AbstractSection) + +function SimpleSection.__init__(self, form, ...) + AbstractSection.__init__(self, form, nil, ...) + self.template = "cbi/nullsection" +end + + +Table = class(AbstractSection) + +function Table.__init__(self, form, data, ...) + local datasource = {} + local tself = self + datasource.config = "table" + self.data = data or {} + + datasource.formvalue = Map.formvalue + datasource.formvaluetable = Map.formvaluetable + datasource.readinput = true + + function datasource.get(self, section, option) + return tself.data[section] and tself.data[section][option] + end + + function datasource.submitstate(self) + return Map.formvalue(self, "cbi.submit") + end + + function datasource.del(...) + return true + end + + function datasource.get_scheme() + return nil + end + + AbstractSection.__init__(self, datasource, "table", ...) + self.template = "cbi/tblsection" + self.rowcolors = true + self.anonymous = true +end + +function Table.parse(self, readinput) + self.map.readinput = (readinput ~= false) + for i, k in ipairs(self:cfgsections()) do + if self.map:submitstate() then + Node.parse(self, k) + end + end +end + +function Table.cfgsections(self) + local sections = {} + + for i, v in luci.util.kspairs(self.data) do + table.insert(sections, i) + end + + return sections +end + +function Table.update(self, data) + self.data = data +end + + + +--[[ +NamedSection - A fixed configuration section defined by its name +]]-- +NamedSection = class(AbstractSection) + +function NamedSection.__init__(self, map, section, stype, ...) + AbstractSection.__init__(self, map, stype, ...) + + -- Defaults + self.addremove = false + self.template = "cbi/nsection" + self.section = section +end + +function NamedSection.prepare(self) + AbstractSection.prepare(self) + AbstractSection.parse_optionals(self, self.section, true) +end + +function NamedSection.parse(self, novld) + local s = self.section + local active = self:cfgvalue(s) + + if self.addremove then + local path = self.config.."."..s + if active then -- Remove the section + if self.map:formvalue("cbi.rns."..path) and self:remove(s) then + self:push_events() + return + end + else -- Create and apply default values + if self.map:formvalue("cbi.cns."..path) then + self:create(s) + return + end + end + end + + if active then + AbstractSection.parse_dynamic(self, s) + if self.map:submitstate() then + Node.parse(self, s) + end + AbstractSection.parse_optionals(self, s) + + if self.changed then + self:push_events() + end + end +end + + +--[[ +TypedSection - A (set of) configuration section(s) defined by the type + addremove: Defines whether the user can add/remove sections of this type + anonymous: Allow creating anonymous sections + validate: a validation function returning nil if the section is invalid +]]-- +TypedSection = class(AbstractSection) + +function TypedSection.__init__(self, map, type, ...) + AbstractSection.__init__(self, map, type, ...) + + self.template = "cbi/tsection" + self.deps = {} + self.anonymous = false +end + +function TypedSection.prepare(self) + AbstractSection.prepare(self) + + local i, s + for i, s in ipairs(self:cfgsections()) do + AbstractSection.parse_optionals(self, s, true) + end +end + +-- Return all matching UCI sections for this TypedSection +function TypedSection.cfgsections(self) + local sections = {} + self.map.uci:foreach(self.map.config, self.sectiontype, + function (section) + if self:checkscope(section[".name"]) then + table.insert(sections, section[".name"]) + end + end) + + return sections +end + +-- Limits scope to sections that have certain option => value pairs +function TypedSection.depends(self, option, value) + table.insert(self.deps, {option=option, value=value}) +end + +function TypedSection.parse(self, novld) + if self.addremove then + -- Remove + local crval = REMOVE_PREFIX .. self.config + local name = self.map:formvaluetable(crval) + for k,v in pairs(name) do + if k:sub(-2) == ".x" then + k = k:sub(1, #k - 2) + end + if self:cfgvalue(k) and self:checkscope(k) then + self:remove(k) + end + end + end + + local co + for i, k in ipairs(self:cfgsections()) do + AbstractSection.parse_dynamic(self, k) + if self.map:submitstate() then + Node.parse(self, k, novld) + end + AbstractSection.parse_optionals(self, k) + end + + if self.addremove then + -- Create + local created + local crval = CREATE_PREFIX .. self.config .. "." .. self.sectiontype + local origin, name = next(self.map:formvaluetable(crval)) + if self.anonymous then + if name then + created = self:create(nil, origin) + end + else + if name then + -- Ignore if it already exists + if self:cfgvalue(name) then + name = nil; + end + + name = self:checkscope(name) + + if not name then + self.err_invalid = true + end + + if name and #name > 0 then + created = self:create(name, origin) and name + if not created then + self.invalid_cts = true + end + end + end + end + + if created then + AbstractSection.parse_optionals(self, created) + end + end + + if self.sortable then + local stval = RESORT_PREFIX .. self.config .. "." .. self.sectiontype + local order = self.map:formvalue(stval) + if order and #order > 0 then + local sid + local num = 0 + for sid in util.imatch(order) do + self.map.uci:reorder(self.config, sid, num) + num = num + 1 + end + self.changed = (num > 0) + end + end + + if created or self.changed then + self:push_events() + end +end + +-- Verifies scope of sections +function TypedSection.checkscope(self, section) + -- Check if we are not excluded + if self.filter and not self:filter(section) then + return nil + end + + -- Check if at least one dependency is met + if #self.deps > 0 and self:cfgvalue(section) then + local stat = false + + for k, v in ipairs(self.deps) do + if self:cfgvalue(section)[v.option] == v.value then + stat = true + end + end + + if not stat then + return nil + end + end + + return self:validate(section) +end + + +-- Dummy validate function +function TypedSection.validate(self, section) + return section +end + + +--[[ +AbstractValue - An abstract Value Type + null: Value can be empty + valid: A function returning the value if it is valid otherwise nil + depends: A table of option => value pairs of which one must be true + default: The default value + size: The size of the input fields + rmempty: Unset value if empty + optional: This value is optional (see AbstractSection.optionals) +]]-- +AbstractValue = class(Node) + +function AbstractValue.__init__(self, map, section, option, ...) + Node.__init__(self, ...) + self.section = section + self.option = option + self.map = map + self.config = map.config + self.tag_invalid = {} + self.tag_missing = {} + self.tag_reqerror = {} + self.tag_error = {} + self.deps = {} + --self.cast = "string" + + self.track_missing = false + self.rmempty = true + self.default = nil + self.size = nil + self.optional = false +end + +function AbstractValue.prepare(self) + self.cast = self.cast or "string" +end + +-- Add a dependencie to another section field +function AbstractValue.depends(self, field, value) + local deps + if type(field) == "string" then + deps = {} + deps[field] = value + else + deps = field + end + + table.insert(self.deps, deps) +end + +-- Serialize dependencies +function AbstractValue.deplist2json(self, section, deplist) + local deps, i, d = { } + + if type(self.deps) == "table" then + for i, d in ipairs(deplist or self.deps) do + local a, k, v = { } + for k, v in pairs(d) do + if k:find("!", 1, true) then + a[k] = v + elseif k:find(".", 1, true) then + a['cbid.%s' % k] = v + else + a['cbid.%s.%s.%s' %{ self.config, section, k }] = v + end + end + deps[#deps+1] = a + end + end + + return util.serialize_json(deps) +end + +-- Generates the unique CBID +function AbstractValue.cbid(self, section) + return "cbid."..self.map.config.."."..section.."."..self.option +end + +-- Return whether this object should be created +function AbstractValue.formcreated(self, section) + local key = "cbi.opt."..self.config.."."..section + return (self.map:formvalue(key) == self.option) +end + +-- Returns the formvalue for this object +function AbstractValue.formvalue(self, section) + return self.map:formvalue(self:cbid(section)) +end + +function AbstractValue.additional(self, value) + self.optional = value +end + +function AbstractValue.mandatory(self, value) + self.rmempty = not value +end + +function AbstractValue.add_error(self, section, type, msg) + self.error = self.error or { } + self.error[section] = msg or type + + self.section.error = self.section.error or { } + self.section.error[section] = self.section.error[section] or { } + table.insert(self.section.error[section], msg or type) + + if type == "invalid" then + self.tag_invalid[section] = true + elseif type == "missing" then + self.tag_missing[section] = true + end + + self.tag_error[section] = true + self.map.save = false +end + +function AbstractValue.parse(self, section, novld) + local fvalue = self:formvalue(section) + local cvalue = self:cfgvalue(section) + + -- If favlue and cvalue are both tables and have the same content + -- make them identical + if type(fvalue) == "table" and type(cvalue) == "table" then + local equal = #fvalue == #cvalue + if equal then + for i=1, #fvalue do + if cvalue[i] ~= fvalue[i] then + equal = false + end + end + end + if equal then + fvalue = cvalue + end + end + + if fvalue and #fvalue > 0 then -- If we have a form value, write it to UCI + local val_err + fvalue, val_err = self:validate(fvalue, section) + fvalue = self:transform(fvalue) + + if not fvalue and not novld then + self:add_error(section, "invalid", val_err) + end + + if fvalue and (self.forcewrite or not (fvalue == cvalue)) then + if self:write(section, fvalue) then + -- Push events + self.section.changed = true + --luci.util.append(self.map.events, self.events) + end + end + else -- Unset the UCI or error + if self.rmempty or self.optional then + if self:remove(section) then + -- Push events + self.section.changed = true + --luci.util.append(self.map.events, self.events) + end + elseif cvalue ~= fvalue and not novld then + -- trigger validator with nil value to get custom user error msg. + local _, val_err = self:validate(nil, section) + self:add_error(section, "missing", val_err) + end + end +end + +-- Render if this value exists or if it is mandatory +function AbstractValue.render(self, s, scope) + if not self.optional or self.section:has_tabs() or self:cfgvalue(s) or self:formcreated(s) then + scope = scope or {} + scope.section = s + scope.cbid = self:cbid(s) + Node.render(self, scope) + end +end + +-- Return the UCI value of this object +function AbstractValue.cfgvalue(self, section) + local value + if self.tag_error[section] then + value = self:formvalue(section) + else + value = self.map:get(section, self.option) + end + + if not value then + return nil + elseif not self.cast or self.cast == type(value) then + return value + elseif self.cast == "string" then + if type(value) == "table" then + return value[1] + end + elseif self.cast == "table" then + return { value } + end +end + +-- Validate the form value +function AbstractValue.validate(self, value) + if self.datatype and value then + if type(value) == "table" then + local v + for _, v in ipairs(value) do + if v and #v > 0 and not verify_datatype(self.datatype, v) then + return nil + end + end + else + if not verify_datatype(self.datatype, value) then + return nil + end + end + end + + return value +end + +AbstractValue.transform = AbstractValue.validate + + +-- Write to UCI +function AbstractValue.write(self, section, value) + return self.map:set(section, self.option, value) +end + +-- Remove from UCI +function AbstractValue.remove(self, section) + return self.map:del(section, self.option) +end + + + + +--[[ +Value - A one-line value + maxlength: The maximum length +]]-- +Value = class(AbstractValue) + +function Value.__init__(self, ...) + AbstractValue.__init__(self, ...) + self.template = "cbi/value" + self.keylist = {} + self.vallist = {} + self.readonly = nil +end + +function Value.reset_values(self) + self.keylist = {} + self.vallist = {} +end + +function Value.value(self, key, val) + val = val or key + table.insert(self.keylist, tostring(key)) + table.insert(self.vallist, tostring(val)) +end + +function Value.parse(self, section, novld) + if self.readonly then return end + AbstractValue.parse(self, section, novld) +end + +-- DummyValue - This does nothing except being there +DummyValue = class(AbstractValue) + +function DummyValue.__init__(self, ...) + AbstractValue.__init__(self, ...) + self.template = "cbi/dvalue" + self.value = nil +end + +function DummyValue.cfgvalue(self, section) + local value + if self.value then + if type(self.value) == "function" then + value = self:value(section) + else + value = self.value + end + else + value = AbstractValue.cfgvalue(self, section) + end + return value +end + +function DummyValue.parse(self) + +end + + +--[[ +Flag - A flag being enabled or disabled +]]-- +Flag = class(AbstractValue) + +function Flag.__init__(self, ...) + AbstractValue.__init__(self, ...) + self.template = "cbi/fvalue" + + self.enabled = "1" + self.disabled = "0" + self.default = self.disabled +end + +-- A flag can only have two states: set or unset +function Flag.parse(self, section, novld) + local fexists = self.map:formvalue( + FEXIST_PREFIX .. self.config .. "." .. section .. "." .. self.option) + + if fexists then + local fvalue = self:formvalue(section) and self.enabled or self.disabled + local cvalue = self:cfgvalue(section) + local val_err + fvalue, val_err = self:validate(fvalue, section) + if not fvalue then + if not novld then + self:add_error(section, "invalid", val_err) + end + return + end + if fvalue == self.default and (self.optional or self.rmempty) then + self:remove(section) + else + self:write(section, fvalue) + end + if (fvalue ~= cvalue) then self.section.changed = true end + else + self:remove(section) + self.section.changed = true + end +end + +function Flag.cfgvalue(self, section) + return AbstractValue.cfgvalue(self, section) or self.default +end +function Flag.validate(self, value) + return value +end + +--[[ +ListValue - A one-line value predefined in a list + widget: The widget that will be used (select, radio) +]]-- +ListValue = class(AbstractValue) + +function ListValue.__init__(self, ...) + AbstractValue.__init__(self, ...) + self.template = "cbi/lvalue" + + self.size = 1 + self.widget = "select" + + self:reset_values() +end + +function ListValue.reset_values(self) + self.keylist = {} + self.vallist = {} + self.deplist = {} +end + +function ListValue.value(self, key, val, ...) + if luci.util.contains(self.keylist, key) then + return + end + + val = val or key + table.insert(self.keylist, tostring(key)) + table.insert(self.vallist, tostring(val)) + table.insert(self.deplist, {...}) +end + +function ListValue.validate(self, val) + if luci.util.contains(self.keylist, val) then + return val + else + return nil + end +end + + + +--[[ +MultiValue - Multiple delimited values + widget: The widget that will be used (select, checkbox) + delimiter: The delimiter that will separate the values (default: " ") +]]-- +MultiValue = class(AbstractValue) + +function MultiValue.__init__(self, ...) + AbstractValue.__init__(self, ...) + self.template = "cbi/mvalue" + + self.widget = "checkbox" + self.delimiter = " " + + self:reset_values() +end + +function MultiValue.render(self, ...) + if self.widget == "select" and not self.size then + self.size = #self.vallist + end + + AbstractValue.render(self, ...) +end + +function MultiValue.reset_values(self) + self.keylist = {} + self.vallist = {} + self.deplist = {} +end + +function MultiValue.value(self, key, val) + if luci.util.contains(self.keylist, key) then + return + end + + val = val or key + table.insert(self.keylist, tostring(key)) + table.insert(self.vallist, tostring(val)) +end + +function MultiValue.valuelist(self, section) + local val = self:cfgvalue(section) + + if not(type(val) == "string") then + return {} + end + + return luci.util.split(val, self.delimiter) +end + +function MultiValue.validate(self, val) + val = (type(val) == "table") and val or {val} + + local result + + for i, value in ipairs(val) do + if luci.util.contains(self.keylist, value) then + result = result and (result .. self.delimiter .. value) or value + end + end + + return result +end + + +StaticList = class(MultiValue) + +function StaticList.__init__(self, ...) + MultiValue.__init__(self, ...) + self.cast = "table" + self.valuelist = self.cfgvalue + + if not self.override_scheme + and self.map:get_scheme(self.section.sectiontype, self.option) then + local vs = self.map:get_scheme(self.section.sectiontype, self.option) + if self.value and vs.values and not self.override_values then + for k, v in pairs(vs.values) do + self:value(k, v) + end + end + end +end + +function StaticList.validate(self, value) + value = (type(value) == "table") and value or {value} + + local valid = {} + for i, v in ipairs(value) do + if luci.util.contains(self.keylist, v) then + table.insert(valid, v) + end + end + return valid +end + + +DynamicList = class(AbstractValue) + +function DynamicList.__init__(self, ...) + AbstractValue.__init__(self, ...) + self.template = "cbi/dynlist" + self.cast = "table" + self:reset_values() +end + +function DynamicList.reset_values(self) + self.keylist = {} + self.vallist = {} +end + +function DynamicList.value(self, key, val) + val = val or key + table.insert(self.keylist, tostring(key)) + table.insert(self.vallist, tostring(val)) +end + +function DynamicList.write(self, section, value) + local t = { } + + if type(value) == "table" then + local x + for _, x in ipairs(value) do + if x and #x > 0 then + t[#t+1] = x + end + end + else + t = { value } + end + + if self.cast == "string" then + value = table.concat(t, " ") + else + value = t + end + + return AbstractValue.write(self, section, value) +end + +function DynamicList.cfgvalue(self, section) + local value = AbstractValue.cfgvalue(self, section) + + if type(value) == "string" then + local x + local t = { } + for x in value:gmatch("%S+") do + if #x > 0 then + t[#t+1] = x + end + end + value = t + end + + return value +end + +function DynamicList.formvalue(self, section) + local value = AbstractValue.formvalue(self, section) + + if type(value) == "string" then + if self.cast == "string" then + local x + local t = { } + for x in value:gmatch("%S+") do + t[#t+1] = x + end + value = t + else + value = { value } + end + end + + return value +end + + +--[[ +TextValue - A multi-line value + rows: Rows +]]-- +TextValue = class(AbstractValue) + +function TextValue.__init__(self, ...) + AbstractValue.__init__(self, ...) + self.template = "cbi/tvalue" +end + +--[[ +Button +]]-- +Button = class(AbstractValue) + +function Button.__init__(self, ...) + AbstractValue.__init__(self, ...) + self.template = "cbi/button" + self.inputstyle = nil + self.rmempty = true + self.unsafeupload = false +end + + +FileUpload = class(AbstractValue) + +function FileUpload.__init__(self, ...) + AbstractValue.__init__(self, ...) + self.template = "cbi/upload" + if not self.map.upload_fields then + self.map.upload_fields = { self } + else + self.map.upload_fields[#self.map.upload_fields+1] = self + end +end + +function FileUpload.formcreated(self, section) + if self.unsafeupload then + return AbstractValue.formcreated(self, section) or + self.map:formvalue("cbi.rlf."..section.."."..self.option) or + self.map:formvalue("cbi.rlf."..section.."."..self.option..".x") or + self.map:formvalue("cbid."..self.map.config.."."..section.."."..self.option..".textbox") + else + return AbstractValue.formcreated(self, section) or + self.map:formvalue("cbid."..self.map.config.."."..section.."."..self.option..".textbox") + end +end + +function FileUpload.cfgvalue(self, section) + local val = AbstractValue.cfgvalue(self, section) + if val and fs.access(val) then + return val + end + return nil +end + +-- If we have a new value, use it +-- otherwise use old value +-- deletion should be managed by a separate button object +-- unless self.unsafeupload is set in which case if the user +-- choose to remove the old file we do so. +-- Also, allow to specify (via textbox) a file already on router +function FileUpload.formvalue(self, section) + local val = AbstractValue.formvalue(self, section) + if val then + if self.unsafeupload then + if not self.map:formvalue("cbi.rlf."..section.."."..self.option) and + not self.map:formvalue("cbi.rlf."..section.."."..self.option..".x") + then + return val + end + fs.unlink(val) + self.value = nil + return nil + elseif val ~= "" then + return val + end + end + val = luci.http.formvalue("cbid."..self.map.config.."."..section.."."..self.option..".textbox") + if val == "" then + val = nil + end + if not self.unsafeupload then + if not val then + val = self.map:formvalue("cbi.rlf."..section.."."..self.option) + end + end + return val +end + +function FileUpload.remove(self, section) + if self.unsafeupload then + local val = AbstractValue.formvalue(self, section) + if val and fs.access(val) then fs.unlink(val) end + return AbstractValue.remove(self, section) + else + return nil + end +end + +FileBrowser = class(AbstractValue) + +function FileBrowser.__init__(self, ...) + AbstractValue.__init__(self, ...) + self.template = "cbi/browser" +end diff --git a/luci-base/luasrc/cbi/datatypes.lua b/luci-base/luasrc/cbi/datatypes.lua new file mode 100644 index 000000000..036d6ff5e --- /dev/null +++ b/luci-base/luasrc/cbi/datatypes.lua @@ -0,0 +1,471 @@ +-- Copyright 2010 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local fs = require "nixio.fs" +local ip = require "luci.ip" +local math = require "math" +local util = require "luci.util" +local tonumber, tostring, type, unpack, select = tonumber, tostring, type, unpack, select + + +module "luci.cbi.datatypes" + + +_M['or'] = function(v, ...) + local i + for i = 1, select('#', ...), 2 do + local f = select(i, ...) + local a = select(i+1, ...) + if type(f) ~= "function" then + if f == v then + return true + end + i = i - 1 + elseif f(v, unpack(a)) then + return true + end + end + return false +end + +_M['and'] = function(v, ...) + local i + for i = 1, select('#', ...), 2 do + local f = select(i, ...) + local a = select(i+1, ...) + if type(f) ~= "function" then + if f ~= v then + return false + end + i = i - 1 + elseif not f(v, unpack(a)) then + return false + end + end + return true +end + +function neg(v, ...) + return _M['or'](v:gsub("^%s*!%s*", ""), ...) +end + +function list(v, subvalidator, subargs) + if type(subvalidator) ~= "function" then + return false + end + local token + for token in v:gmatch("%S+") do + if not subvalidator(token, unpack(subargs)) then + return false + end + end + return true +end + +function bool(val) + if val == "1" or val == "yes" or val == "on" or val == "true" then + return true + elseif val == "0" or val == "no" or val == "off" or val == "false" then + return true + elseif val == "" or val == nil then + return true + end + + return false +end + +function uinteger(val) + local n = tonumber(val) + if n ~= nil and math.floor(n) == n and n >= 0 then + return true + end + + return false +end + +function integer(val) + local n = tonumber(val) + if n ~= nil and math.floor(n) == n then + return true + end + + return false +end + +function ufloat(val) + local n = tonumber(val) + return ( n ~= nil and n >= 0 ) +end + +function float(val) + return ( tonumber(val) ~= nil ) +end + +function ipaddr(val) + return ip4addr(val) or ip6addr(val) +end + +function ip4addr(val) + if val then + return ip.IPv4(val) and true or false + end + + return false +end + +function ip4prefix(val) + val = tonumber(val) + return ( val and val >= 0 and val <= 32 ) +end + +function ip6addr(val) + if val then + return ip.IPv6(val) and true or false + end + + return false +end + +function ip6prefix(val) + val = tonumber(val) + return ( val and val >= 0 and val <= 128 ) +end + +function ipmask(val) + return ipmask4(val) or ipmask6(val) +end + +function ipmask4(val) + local ip, mask = val:match("^([^/]+)/([^/]+)$") + local bits = tonumber(mask) + + if bits and (bits < 0 or bits > 32) then + return false + end + + if not bits and mask and not ip4addr(mask) then + return false + end + + return ip4addr(ip or val) +end + +function ipmask6(val) + local ip, mask = val:match("^([^/]+)/([^/]+)$") + local bits = tonumber(mask) + + if bits and (bits < 0 or bits > 128) then + return false + end + + if not bits and mask and not ip6addr(mask) then + return false + end + + return ip6addr(ip or val) +end + +function ip6hostid(val) + if val and val:match("^[a-fA-F0-9:]+$") and (#val > 2) then + return (ip6addr("2001:db8:0:0" .. val) or ip6addr("2001:db8:0:0:" .. val)) + end + + return false +end + +function port(val) + val = tonumber(val) + return ( val and val >= 0 and val <= 65535 ) +end + +function portrange(val) + local p1, p2 = val:match("^(%d+)%-(%d+)$") + if p1 and p2 and port(p1) and port(p2) then + return true + else + return port(val) + end +end + +function macaddr(val) + if val and val:match( + "^[a-fA-F0-9]+:[a-fA-F0-9]+:[a-fA-F0-9]+:" .. + "[a-fA-F0-9]+:[a-fA-F0-9]+:[a-fA-F0-9]+$" + ) then + local parts = util.split( val, ":" ) + + for i = 1,6 do + parts[i] = tonumber( parts[i], 16 ) + if parts[i] < 0 or parts[i] > 255 then + return false + end + end + + return true + end + + return false +end + +function hostname(val) + if val and (#val < 254) and ( + val:match("^[a-zA-Z_]+$") or + (val:match("^[a-zA-Z0-9_][a-zA-Z0-9_%-%.]*[a-zA-Z0-9]$") and + val:match("[^0-9%.]")) + ) then + return true + end + return false +end + +function host(val, ipv4only) + return hostname(val) or ((ipv4only == 1) and ip4addr(val)) or ((not (ipv4only == 1)) and ipaddr(val)) +end + +function network(val) + return uciname(val) or host(val) +end + +function hostport(val, ipv4only) + local h, p = val:match("^([^:]+):([^:]+)$") + return not not (h and p and host(h, ipv4only) and port(p)) +end + +function ip4addrport(val, bracket) + local h, p = val:match("^([^:]+):([^:]+)$") + return (h and p and ip4addr(h) and port(p)) +end + +function ip4addrport(val) + local h, p = val:match("^([^:]+):([^:]+)$") + return (h and p and ip4addr(h) and port(p)) +end + +function ipaddrport(val, bracket) + local h, p = val:match("^([^%[%]:]+):([^:]+)$") + if (h and p and ip4addr(h) and port(p)) then + return true + elseif (bracket == 1) then + h, p = val:match("^%[(.+)%]:([^:]+)$") + if (h and p and ip6addr(h) and port(p)) then + return true + end + end + h, p = val:match("^([^%[%]]+):([^:]+)$") + return (h and p and ip6addr(h) and port(p)) +end + +function wpakey(val) + if #val == 64 then + return (val:match("^[a-fA-F0-9]+$") ~= nil) + else + return (#val >= 8) and (#val <= 63) + end +end + +function wepkey(val) + if val:sub(1, 2) == "s:" then + val = val:sub(3) + end + + if (#val == 10) or (#val == 26) then + return (val:match("^[a-fA-F0-9]+$") ~= nil) + else + return (#val == 5) or (#val == 13) + end +end + +function hexstring(val) + if val then + return (val:match("^[a-fA-F0-9]+$") ~= nil) + end + return false +end + +function hex(val, maxbytes) + maxbytes = tonumber(maxbytes) + if val and maxbytes ~= nil then + return ((val:match("^0x[a-fA-F0-9]+$") ~= nil) and (#val <= 2 + maxbytes * 2)) + end + return false +end + +function base64(val) + if val then + return (val:match("^[a-zA-Z0-9/+]+=?=?$") ~= nil) and (math.fmod(#val, 4) == 0) + end + return false +end + +function string(val) + return true -- Everything qualifies as valid string +end + +function directory( val, seen ) + local s = fs.stat(val) + seen = seen or { } + + if s and not seen[s.ino] then + seen[s.ino] = true + if s.type == "dir" then + return true + elseif s.type == "lnk" then + return directory( fs.readlink(val), seen ) + end + end + + return false +end + +function file( val, seen ) + local s = fs.stat(val) + seen = seen or { } + + if s and not seen[s.ino] then + seen[s.ino] = true + if s.type == "reg" then + return true + elseif s.type == "lnk" then + return file( fs.readlink(val), seen ) + end + end + + return false +end + +function device( val, seen ) + local s = fs.stat(val) + seen = seen or { } + + if s and not seen[s.ino] then + seen[s.ino] = true + if s.type == "chr" or s.type == "blk" then + return true + elseif s.type == "lnk" then + return device( fs.readlink(val), seen ) + end + end + + return false +end + +function uciname(val) + return (val:match("^[a-zA-Z0-9_]+$") ~= nil) +end + +function range(val, min, max) + val = tonumber(val) + min = tonumber(min) + max = tonumber(max) + + if val ~= nil and min ~= nil and max ~= nil then + return ((val >= min) and (val <= max)) + end + + return false +end + +function min(val, min) + val = tonumber(val) + min = tonumber(min) + + if val ~= nil and min ~= nil then + return (val >= min) + end + + return false +end + +function max(val, max) + val = tonumber(val) + max = tonumber(max) + + if val ~= nil and max ~= nil then + return (val <= max) + end + + return false +end + +function rangelength(val, min, max) + val = tostring(val) + min = tonumber(min) + max = tonumber(max) + + if val ~= nil and min ~= nil and max ~= nil then + return ((#val >= min) and (#val <= max)) + end + + return false +end + +function minlength(val, min) + val = tostring(val) + min = tonumber(min) + + if val ~= nil and min ~= nil then + return (#val >= min) + end + + return false +end + +function maxlength(val, max) + val = tostring(val) + max = tonumber(max) + + if val ~= nil and max ~= nil then + return (#val <= max) + end + + return false +end + +function phonedigit(val) + return (val:match("^[0-9\*#!%.]+$") ~= nil) +end + +function timehhmmss(val) + return (val:match("^[0-6][0-9]:[0-6][0-9]:[0-6][0-9]$") ~= nil) +end + +function dateyyyymmdd(val) + if val ~= nil then + yearstr, monthstr, daystr = val:match("^(%d%d%d%d)-(%d%d)-(%d%d)$") + if (yearstr == nil) or (monthstr == nil) or (daystr == nil) then + return false; + end + year = tonumber(yearstr) + month = tonumber(monthstr) + day = tonumber(daystr) + if (year == nil) or (month == nil) or (day == nil) then + return false; + end + + local days_in_month = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 } + + local function is_leap_year(year) + return (year % 4 == 0) and ((year % 100 ~= 0) or (year % 400 == 0)) + end + + function get_days_in_month(month, year) + if (month == 2) and is_leap_year(year) then + return 29 + else + return days_in_month[month] + end + end + if (year < 2015) then + return false + end + if ((month == 0) or (month > 12)) then + return false + end + if ((day == 0) or (day > get_days_in_month(month, year))) then + return false + end + return true + end + return false +end + diff --git a/luci-base/luasrc/ccache.lua b/luci-base/luasrc/ccache.lua new file mode 100644 index 000000000..bcc76e6a7 --- /dev/null +++ b/luci-base/luasrc/ccache.lua @@ -0,0 +1,76 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2008 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local io = require "io" +local fs = require "nixio.fs" +local util = require "luci.util" +local nixio = require "nixio" +local debug = require "debug" +local string = require "string" +local package = require "package" + +local type, loadfile = type, loadfile + + +module "luci.ccache" + +function cache_ondemand(...) + if debug.getinfo(1, 'S').source ~= "=?" then + cache_enable(...) + end +end + +function cache_enable(cachepath, mode) + cachepath = cachepath or "/tmp/luci-modulecache" + mode = mode or "r--r--r--" + + local loader = package.loaders[2] + local uid = nixio.getuid() + + if not fs.stat(cachepath) then + fs.mkdir(cachepath) + end + + local function _encode_filename(name) + local encoded = "" + for i=1, #name do + encoded = encoded .. ("%2X" % string.byte(name, i)) + end + return encoded + end + + local function _load_sane(file) + local stat = fs.stat(file) + if stat and stat.uid == uid and stat.modestr == mode then + return loadfile(file) + end + end + + local function _write_sane(file, func) + if nixio.getuid() == uid then + local fp = io.open(file, "w") + if fp then + fp:write(util.get_bytecode(func)) + fp:close() + fs.chmod(file, mode) + end + end + end + + package.loaders[2] = function(mod) + local encoded = cachepath .. "/" .. _encode_filename(mod) + local modcons = _load_sane(encoded) + + if modcons then + return modcons + end + + -- No cachefile + modcons = loader(mod) + if type(modcons) == "function" then + _write_sane(encoded, modcons) + end + return modcons + end +end diff --git a/luci-base/luasrc/config.lua b/luci-base/luasrc/config.lua new file mode 100644 index 000000000..d01153f4f --- /dev/null +++ b/luci-base/luasrc/config.lua @@ -0,0 +1,18 @@ +-- Copyright 2008 Steven Barth +-- Licensed to the public under the Apache License 2.0. + +local util = require "luci.util" +module("luci.config", + function(m) + if pcall(require, "luci.model.uci") then + local config = util.threadlocal() + setmetatable(m, { + __index = function(tbl, key) + if not config[key] then + config[key] = luci.model.uci.cursor():get_all("luci", key) + end + return config[key] + end + }) + end + end) diff --git a/luci-base/luasrc/controller/admin/servicectl.lua b/luci-base/luasrc/controller/admin/servicectl.lua new file mode 100644 index 000000000..1d73eb4ec --- /dev/null +++ b/luci-base/luasrc/controller/admin/servicectl.lua @@ -0,0 +1,49 @@ +-- Copyright 2010 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +module("luci.controller.admin.servicectl", package.seeall) + +function index() + entry({"servicectl"}, alias("servicectl", "status")).sysauth = "root" + entry({"servicectl", "status"}, call("action_status")).leaf = true + entry({"servicectl", "restart"}, post("action_restart")).leaf = true +end + +function action_status() + local data = nixio.fs.readfile("/var/run/luci-reload-status") + if data then + luci.http.write("/etc/config/") + luci.http.write(data) + else + luci.http.write("finish") + end +end + +function action_restart(args) + local uci = require "luci.model.uci".cursor() + if args then + local service + local services = { } + + for service in args:gmatch("[%w_-]+") do + services[#services+1] = service + end + + local command = uci:apply(services, true) + if nixio.fork() == 0 then + local i = nixio.open("/dev/null", "r") + local o = nixio.open("/dev/null", "w") + + nixio.dup(i, nixio.stdin) + nixio.dup(o, nixio.stdout) + + i:close() + o:close() + + nixio.exec("/bin/sh", unpack(command)) + else + luci.http.write("OK") + os.exit(0) + end + end +end diff --git a/luci-base/luasrc/debug.lua b/luci-base/luasrc/debug.lua new file mode 100644 index 000000000..8ff1bb698 --- /dev/null +++ b/luci-base/luasrc/debug.lua @@ -0,0 +1,37 @@ +local debug = require "debug" +local io = require "io" +local collectgarbage, floor = collectgarbage, math.floor + +module "luci.debug" +__file__ = debug.getinfo(1, 'S').source:sub(2) + +-- Enables the memory tracer with given flags and returns a function to disable the tracer again +function trap_memtrace(flags, dest) + flags = flags or "clr" + local tracefile = io.open(dest or "/tmp/memtrace", "w") + local peak = 0 + + local function trap(what, line) + local info = debug.getinfo(2, "Sn") + local size = floor(collectgarbage("count")) + if size > peak then + peak = size + end + if tracefile then + tracefile:write( + "[", what, "] ", info.source, ":", (line or "?"), "\t", + (info.namewhat or ""), "\t", + (info.name or ""), "\t", + size, " (", peak, ")\n" + ) + end + end + + debug.sethook(trap, flags) + + return function() + debug.sethook() + tracefile:close() + end +end + diff --git a/luci-base/luasrc/dispatcher.lua b/luci-base/luasrc/dispatcher.lua new file mode 100644 index 000000000..0bd19456f --- /dev/null +++ b/luci-base/luasrc/dispatcher.lua @@ -0,0 +1,918 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2008-2015 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local fs = require "nixio.fs" +local sys = require "luci.sys" +local util = require "luci.util" +local http = require "luci.http" +local nixio = require "nixio", require "nixio.util" + +module("luci.dispatcher", package.seeall) +context = util.threadlocal() +uci = require "luci.model.uci" +i18n = require "luci.i18n" +_M.fs = fs + +authenticator = {} + +-- Index table +local index = nil + +-- Fastindex +local fi + + +function build_url(...) + local path = {...} + local url = { http.getenv("SCRIPT_NAME") or "" } + + local p + for _, p in ipairs(path) do + if p:match("^[a-zA-Z0-9_%-%.%%/,;]+$") then + url[#url+1] = "/" + url[#url+1] = p + end + end + + if #path == 0 then + url[#url+1] = "/" + end + + return table.concat(url, "") +end + +function node_visible(node) + if node then + return not ( + (not node.title or #node.title == 0) or + (not node.target or node.hidden == true) or + (type(node.target) == "table" and node.target.type == "firstchild" and + (type(node.nodes) ~= "table" or not next(node.nodes))) + ) + end + return false +end + +function node_childs(node) + local rv = { } + if node then + local k, v + for k, v in util.spairs(node.nodes, + function(a, b) + return (node.nodes[a].order or 100) + < (node.nodes[b].order or 100) + end) + do + if node_visible(v) then + rv[#rv+1] = k + end + end + end + return rv +end + + +function error404(message) + http.status(404, "Not Found") + message = message or "Not Found" + + require("luci.template") + if not util.copcall(luci.template.render, "error404") then + http.prepare_content("text/plain") + http.write(message) + end + return false +end + +function error500(message) + util.perror(message) + if not context.template_header_sent then + http.status(500, "Internal Server Error") + http.prepare_content("text/plain") + http.write(message) + else + require("luci.template") + if not util.copcall(luci.template.render, "error500", {message=message}) then + http.prepare_content("text/plain") + http.write(message) + end + end + return false +end + +function authenticator.htmlauth(validator, accs, default, template) + local user = http.formvalue("luci_username") + local pass = http.formvalue("luci_password") + + if user and validator(user, pass) then + return user + end + + require("luci.i18n") + require("luci.template") + context.path = {} + http.status(403, "Forbidden") + luci.template.render(template or "sysauth", {duser=default, fuser=user}) + + return false + +end + +function httpdispatch(request, prefix) + http.context.request = request + + local r = {} + context.request = r + + local pathinfo = http.urldecode(request:getenv("PATH_INFO") or "", true) + + if prefix then + for _, node in ipairs(prefix) do + r[#r+1] = node + end + end + + for node in pathinfo:gmatch("[^/]+") do + r[#r+1] = node + end + + local stat, err = util.coxpcall(function() + dispatch(context.request) + end, error500) + + http.close() + + --context._disable_memtrace() +end + +local function require_post_security(target) + if type(target) == "table" then + if type(target.post) == "table" then + local param_name, required_val, request_val + + for param_name, required_val in pairs(target.post) do + request_val = http.formvalue(param_name) + + if (type(required_val) == "string" and + request_val ~= required_val) or + (required_val == true and + (request_val == nil or request_val == "")) + then + return false + end + end + + return true + end + + return (target.post == true) + end + + return false +end + +function test_post_security() + if http.getenv("REQUEST_METHOD") ~= "POST" then + http.status(405, "Method Not Allowed") + http.header("Allow", "POST") + return false + end + + if http.formvalue("token") ~= context.authtoken then + http.status(403, "Forbidden") + luci.template.render("csrftoken") + return false + end + + return true +end + +function dispatch(request) + --context._disable_memtrace = require "luci.debug".trap_memtrace("l") + local ctx = context + ctx.path = request + + local conf = require "luci.config" + assert(conf.main, + "/etc/config/luci seems to be corrupt, unable to find section 'main'") + + local i18n = require "luci.i18n" + local lang = conf.main.lang or "auto" + if lang == "auto" then + local aclang = http.getenv("HTTP_ACCEPT_LANGUAGE") or "" + for lpat in aclang:gmatch("[%w-]+") do + lpat = lpat and lpat:gsub("-", "_") + if conf.languages[lpat] then + lang = lpat + break + end + end + end + if lang == "auto" then + lang = i18n.default + end + i18n.setlanguage(lang) + + local c = ctx.tree + local stat + if not c then + c = createtree() + end + + local track = {} + local args = {} + ctx.args = args + ctx.requestargs = ctx.requestargs or args + local n + local preq = {} + local freq = {} + + for i, s in ipairs(request) do + preq[#preq+1] = s + freq[#freq+1] = s + c = c.nodes[s] + n = i + if not c then + break + end + + util.update(track, c) + + if c.leaf then + break + end + end + + if c and c.leaf then + for j=n+1, #request do + args[#args+1] = request[j] + freq[#freq+1] = request[j] + end + end + + ctx.requestpath = ctx.requestpath or freq + ctx.path = preq + + if track.i18n then + i18n.loadc(track.i18n) + end + + -- Init template engine + if (c and c.index) or not track.notemplate then + local tpl = require("luci.template") + local media = track.mediaurlbase or luci.config.main.mediaurlbase + if not pcall(tpl.Template, "themes/%s/header" % fs.basename(media)) then + media = nil + for name, theme in pairs(luci.config.themes) do + if name:sub(1,1) ~= "." and pcall(tpl.Template, + "themes/%s/header" % fs.basename(theme)) then + media = theme + end + end + assert(media, "No valid theme found") + end + + local function _ifattr(cond, key, val) + if cond then + local env = getfenv(3) + local scope = (type(env.self) == "table") and env.self + if type(val) == "table" then + if not next(val) then + return '' + else + val = util.serialize_json(val) + end + end + return string.format( + ' %s="%s"', tostring(key), + util.pcdata(tostring( val + or (type(env[key]) ~= "function" and env[key]) + or (scope and type(scope[key]) ~= "function" and scope[key]) + or "" )) + ) + else + return '' + end + end + + tpl.context.viewns = setmetatable({ + write = http.write; + include = function(name) tpl.Template(name):render(getfenv(2)) end; + translate = i18n.translate; + translatef = i18n.translatef; + export = function(k, v) if tpl.context.viewns[k] == nil then tpl.context.viewns[k] = v end end; + striptags = util.striptags; + pcdata = util.pcdata; + media = media; + theme = fs.basename(media); + resource = luci.config.main.resourcebase; + ifattr = function(...) return _ifattr(...) end; + attr = function(...) return _ifattr(true, ...) end; + url = build_url; + }, {__index=function(table, key) + if key == "controller" then + return build_url() + elseif key == "REQUEST_URI" then + return build_url(unpack(ctx.requestpath)) + elseif key == "token" then + return ctx.authtoken + else + return rawget(table, key) or _G[key] + end + end}) + end + + track.dependent = (track.dependent ~= false) + assert(not track.dependent or not track.auto, + "Access Violation\nThe page at '" .. table.concat(request, "/") .. "/' " .. + "has no parent node so the access to this location has been denied.\n" .. + "This is a software bug, please report this message at " .. + "https://github.com/openwrt/luci/issues" + ) + + if track.sysauth then + local authen = type(track.sysauth_authenticator) == "function" + and track.sysauth_authenticator + or authenticator[track.sysauth_authenticator] + + local def = (type(track.sysauth) == "string") and track.sysauth + local accs = def and {track.sysauth} or track.sysauth + local sess = ctx.authsession + if not sess then + sess = http.getcookie("sysauth") + sess = sess and sess:match("^[a-f0-9]*$") + end + + local sdat = (util.ubus("session", "get", { ubus_rpc_session = sess }) or { }).values + local user, token + + if sdat then + user = sdat.user + token = sdat.token + else + local eu = http.getenv("HTTP_AUTH_USER") + local ep = http.getenv("HTTP_AUTH_PASS") + if eu and ep and sys.user.checkpasswd(eu, ep) then + authen = function() return eu end + end + end + + if not util.contains(accs, user) then + if authen then + local user, sess = authen(sys.user.checkpasswd, accs, def, track.sysauth_template) + local token + if not user or not util.contains(accs, user) then + return + else + if not sess then + local sdat = util.ubus("session", "create", { timeout = tonumber(luci.config.sauth.sessiontime) }) + if sdat then + token = sys.uniqueid(16) + util.ubus("session", "set", { + ubus_rpc_session = sdat.ubus_rpc_session, + values = { + user = user, + token = token, + section = sys.uniqueid(16) + } + }) + sess = sdat.ubus_rpc_session + end + end + + if sess and token then + http.header("Set-Cookie", 'sysauth=%s; path=%s' %{ sess, build_url() }) + + ctx.authsession = sess + ctx.authtoken = token + ctx.authuser = user + + http.redirect(build_url(unpack(ctx.requestpath))) + end + end + else + http.status(403, "Forbidden") + return + end + else + ctx.authsession = sess + ctx.authtoken = token + ctx.authuser = user + end + end + + if c and require_post_security(c.target) then + if not test_post_security(c) then + return + end + end + + if track.setgroup then + sys.process.setgroup(track.setgroup) + end + + if track.setuser then + sys.process.setuser(track.setuser) + end + + local target = nil + if c then + if type(c.target) == "function" then + target = c.target + elseif type(c.target) == "table" then + target = c.target.target + end + end + + if c and (c.index or type(target) == "function") then + ctx.dispatched = c + ctx.requested = ctx.requested or ctx.dispatched + end + + if c and c.index then + local tpl = require "luci.template" + + if util.copcall(tpl.render, "indexer", {}) then + return true + end + end + + if type(target) == "function" then + util.copcall(function() + local oldenv = getfenv(target) + local module = require(c.module) + local env = setmetatable({}, {__index= + + function(tbl, key) + return rawget(tbl, key) or module[key] or oldenv[key] + end}) + + setfenv(target, env) + end) + + local ok, err + if type(c.target) == "table" then + ok, err = util.copcall(target, c.target, unpack(args)) + else + ok, err = util.copcall(target, unpack(args)) + end + assert(ok, + "Failed to execute " .. (type(c.target) == "function" and "function" or c.target.type or "unknown") .. + " dispatcher target for entry '/" .. table.concat(request, "/") .. "'.\n" .. + "The called action terminated with an exception:\n" .. tostring(err or "(unknown)")) + else + local root = node() + if not root or not root.target then + error404("No root node was registered, this usually happens if no module was installed.\n" .. + "Install luci-mod-admin-full and retry. " .. + "If the module is already installed, try removing the /tmp/luci-indexcache file.") + else + error404("No page is registered at '/" .. table.concat(request, "/") .. "'.\n" .. + "If this url belongs to an extension, make sure it is properly installed.\n" .. + "If the extension was recently installed, try removing the /tmp/luci-indexcache file.") + end + end +end + +function createindex() + local controllers = { } + local base = "%s/controller/" % util.libpath() + local _, path + + for path in (fs.glob("%s*.lua" % base) or function() end) do + controllers[#controllers+1] = path + end + + for path in (fs.glob("%s*/*.lua" % base) or function() end) do + controllers[#controllers+1] = path + end + + if indexcache then + local cachedate = fs.stat(indexcache, "mtime") + if cachedate then + local realdate = 0 + for _, obj in ipairs(controllers) do + local omtime = fs.stat(obj, "mtime") + realdate = (omtime and omtime > realdate) and omtime or realdate + end + + if cachedate > realdate and sys.process.info("uid") == 0 then + assert( + sys.process.info("uid") == fs.stat(indexcache, "uid") + and fs.stat(indexcache, "modestr") == "rw-------", + "Fatal: Indexcache is not sane!" + ) + + index = loadfile(indexcache)() + return index + end + end + end + + index = {} + + for _, path in ipairs(controllers) do + local modname = "luci.controller." .. path:sub(#base+1, #path-4):gsub("/", ".") + local mod = require(modname) + assert(mod ~= true, + "Invalid controller file found\n" .. + "The file '" .. path .. "' contains an invalid module line.\n" .. + "Please verify whether the module name is set to '" .. modname .. + "' - It must correspond to the file path!") + + local idx = mod.index + assert(type(idx) == "function", + "Invalid controller file found\n" .. + "The file '" .. path .. "' contains no index() function.\n" .. + "Please make sure that the controller contains a valid " .. + "index function and verify the spelling!") + + index[modname] = idx + end + + if indexcache then + local f = nixio.open(indexcache, "w", 600) + f:writeall(util.get_bytecode(index)) + f:close() + end +end + +-- Build the index before if it does not exist yet. +function createtree() + if not index then + createindex() + end + + local ctx = context + local tree = {nodes={}, inreq=true} + local modi = {} + + ctx.treecache = setmetatable({}, {__mode="v"}) + ctx.tree = tree + ctx.modifiers = modi + + -- Load default translation + require "luci.i18n".loadc("base") + + local scope = setmetatable({}, {__index = luci.dispatcher}) + + for k, v in pairs(index) do + scope._NAME = k + setfenv(v, scope) + v() + end + + local function modisort(a,b) + return modi[a].order < modi[b].order + end + + for _, v in util.spairs(modi, modisort) do + scope._NAME = v.module + setfenv(v.func, scope) + v.func() + end + + return tree +end + +function modifier(func, order) + context.modifiers[#context.modifiers+1] = { + func = func, + order = order or 0, + module + = getfenv(2)._NAME + } +end + +function assign(path, clone, title, order) + local obj = node(unpack(path)) + obj.nodes = nil + obj.module = nil + + obj.title = title + obj.order = order + + setmetatable(obj, {__index = _create_node(clone)}) + + return obj +end + +function entry(path, target, title, order) + local c = node(unpack(path)) + + c.target = target + c.title = title + c.order = order + c.module = getfenv(2)._NAME + + return c +end + +-- enabling the node. +function get(...) + return _create_node({...}) +end + +function node(...) + local c = _create_node({...}) + + c.module = getfenv(2)._NAME + c.auto = nil + + return c +end + +function _create_node(path) + if #path == 0 then + return context.tree + end + + local name = table.concat(path, ".") + local c = context.treecache[name] + + if not c then + local last = table.remove(path) + local parent = _create_node(path) + + c = {nodes={}, auto=true} + -- the node is "in request" if the request path matches + -- at least up to the length of the node path + if parent.inreq and context.path[#path+1] == last then + c.inreq = true + end + parent.nodes[last] = c + context.treecache[name] = c + end + return c +end + +-- Subdispatchers -- + +function _firstchild() + local path = { unpack(context.path) } + local name = table.concat(path, ".") + local node = context.treecache[name] + + local lowest + if node and node.nodes and next(node.nodes) then + local k, v + for k, v in pairs(node.nodes) do + if not lowest or + (v.order or 100) < (node.nodes[lowest].order or 100) + then + lowest = k + end + end + end + + assert(lowest ~= nil, + "The requested node contains no childs, unable to redispatch") + + path[#path+1] = lowest + dispatch(path) +end + +function firstchild() + return { type = "firstchild", target = _firstchild } +end + +function alias(...) + local req = {...} + return function(...) + for _, r in ipairs({...}) do + req[#req+1] = r + end + + dispatch(req) + end +end + +function rewrite(n, ...) + local req = {...} + return function(...) + local dispatched = util.clone(context.dispatched) + + for i=1,n do + table.remove(dispatched, 1) + end + + for i, r in ipairs(req) do + table.insert(dispatched, i, r) + end + + for _, r in ipairs({...}) do + dispatched[#dispatched+1] = r + end + + dispatch(dispatched) + end +end + + +local function _call(self, ...) + local func = getfenv()[self.name] + assert(func ~= nil, + 'Cannot resolve function "' .. self.name .. '". Is it misspelled or local?') + + assert(type(func) == "function", + 'The symbol "' .. self.name .. '" does not refer to a function but data ' .. + 'of type "' .. type(func) .. '".') + + if #self.argv > 0 then + return func(unpack(self.argv), ...) + else + return func(...) + end +end + +function call(name, ...) + return {type = "call", argv = {...}, name = name, target = _call} +end + +function post_on(params, name, ...) + return { + type = "call", + post = params, + argv = { ... }, + name = name, + target = _call + } +end + +function post(...) + return post_on(true, ...) +end + + +local _template = function(self, ...) + require "luci.template".render(self.view) +end + +function template(name) + return {type = "template", view = name, target = _template} +end + + +local function _cbi(self, ...) + local cbi = require "luci.cbi" + local tpl = require "luci.template" + local http = require "luci.http" + + local config = self.config or {} + local maps = cbi.load(self.model, ...) + + local state = nil + + for i, res in ipairs(maps) do + res.flow = config + local cstate = res:parse() + if cstate and (not state or cstate < state) then + state = cstate + end + end + + local function _resolve_path(path) + return type(path) == "table" and build_url(unpack(path)) or path + end + + if config.on_valid_to and state and state > 0 and state < 2 then + http.redirect(_resolve_path(config.on_valid_to)) + return + end + + if config.on_changed_to and state and state > 1 then + http.redirect(_resolve_path(config.on_changed_to)) + return + end + + if config.on_success_to and state and state > 0 then + http.redirect(_resolve_path(config.on_success_to)) + return + end + + if config.state_handler then + if not config.state_handler(state, maps) then + return + end + end + + http.header("X-CBI-State", state or 0) + + if not config.noheader then + tpl.render("cbi/header", {state = state}) + end + + local redirect + local messages + local applymap = false + local pageaction = true + local parsechain = { } + + for i, res in ipairs(maps) do + if res.apply_needed and res.parsechain then + local c + for _, c in ipairs(res.parsechain) do + parsechain[#parsechain+1] = c + end + applymap = true + end + + if res.redirect then + redirect = redirect or res.redirect + end + + if res.pageaction == false then + pageaction = false + end + + if res.message then + messages = messages or { } + messages[#messages+1] = res.message + end + end + + for i, res in ipairs(maps) do + res:render({ + firstmap = (i == 1), + applymap = applymap, + redirect = redirect, + messages = messages, + pageaction = pageaction, + parsechain = parsechain + }) + end + + if not config.nofooter then + tpl.render("cbi/footer", { + flow = config, + pageaction = pageaction, + redirect = redirect, + state = state, + autoapply = config.autoapply + }) + end +end + +function cbi(model, config) + return { + type = "cbi", + post = { ["cbi.submit"] = "1" }, + config = config, + model = model, + target = _cbi + } +end + + +local function _arcombine(self, ...) + local argv = {...} + local target = #argv > 0 and self.targets[2] or self.targets[1] + setfenv(target.target, self.env) + target:target(unpack(argv)) +end + +function arcombine(trg1, trg2) + return {type = "arcombine", env = getfenv(), target = _arcombine, targets = {trg1, trg2}} +end + + +local function _form(self, ...) + local cbi = require "luci.cbi" + local tpl = require "luci.template" + local http = require "luci.http" + + local maps = luci.cbi.load(self.model, ...) + local state = nil + + for i, res in ipairs(maps) do + local cstate = res:parse() + if cstate and (not state or cstate < state) then + state = cstate + end + end + + http.header("X-CBI-State", state or 0) + tpl.render("header") + for i, res in ipairs(maps) do + res:render() + end + tpl.render("footer") +end + +function form(model) + return { + type = "cbi", + post = { ["cbi.submit"] = "1" }, + model = model, + target = _form + } +end + +translate = i18n.translate + +-- This function does not actually translate the given argument but +-- is used by build/i18n-scan.pl to find translatable entries. +function _(text) + return text +end diff --git a/luci-base/luasrc/dispatcher.luadoc b/luci-base/luasrc/dispatcher.luadoc new file mode 100644 index 000000000..743463c74 --- /dev/null +++ b/luci-base/luasrc/dispatcher.luadoc @@ -0,0 +1,220 @@ +---[[ +LuCI web dispatcher. +]] +module "luci.dispatcher" + +---[[ +Build the URL relative to the server webroot from given virtual path. + +@class function +@name build_url +@param ... Virtual path +@return Relative URL +]] + +---[[ +Check whether a dispatch node shall be visible + +@class function +@name node_visible +@param node Dispatch node +@return Boolean indicating whether the node should be visible +]] + +---[[ +Return a sorted table of visible childs within a given node + +@class function +@name node_childs +@param node Dispatch node +@return Ordered table of child node names +]] + +---[[ +Send a 404 error code and render the "error404" template if available. + +@class function +@name error404 +@param message Custom error message (optional) +@return false +]] + +---[[ +Send a 500 error code and render the "error500" template if available. + +@class function +@name error500 +@param message Custom error message (optional)# +@return false +]] + +---[[ +Dispatch an HTTP request. + +@class function +@name httpdispatch +@param request LuCI HTTP Request object +]] + +---[[ +Dispatches a LuCI virtual path. + +@class function +@name dispatch +@param request Virtual path +]] + +---[[ +Generate the dispatching index using the native file-cache based strategy. + + +@class function +@name createindex +]] + +---[[ +Create the dispatching tree from the index. + +Build the index before if it does not exist yet. + +@class function +@name createtree +]] + +---[[ +Register a tree modifier. + +@class function +@name modifier +@param func Modifier function +@param order Modifier order value (optional) +]] + +---[[ +Clone a node of the dispatching tree to another position. + +@class function +@name assign +@param path Virtual path destination +@param clone Virtual path source +@param title Destination node title (optional) +@param order Destination node order value (optional) +@return Dispatching tree node +]] + +---[[ +Create a new dispatching node and define common parameters. + +@class function +@name entry +@param path Virtual path +@param target Target function to call when dispatched. +@param title Destination node title +@param order Destination node order value (optional) +@return Dispatching tree node +]] + +---[[ +Fetch or create a dispatching node without setting the target module or + +enabling the node. +@class function +@name get +@param ... Virtual path +@return Dispatching tree node +]] + +---[[ +Fetch or create a new dispatching node. + +@class function +@name node +@param ... Virtual path +@return Dispatching tree node +]] + +---[[ +Alias the first (lowest order) page automatically + + +@class function +@name firstchild +]] + +---[[ +Create a redirect to another dispatching node. + +@class function +@name alias +@param ... Virtual path destination +]] + +---[[ +Rewrite the first x path values of the request. + +@class function +@name rewrite +@param n Number of path values to replace +@param ... Virtual path to replace removed path values with +]] + +---[[ +Create a function-call dispatching target. + +@class function +@name call +@param name Target function of local controller +@param ... Additional parameters passed to the function +]] + +---[[ +Create a template render dispatching target. + +@class function +@name template +@param name Template to be rendered +]] + +---[[ +Create a CBI model dispatching target. + +@class function +@name cbi +@param model CBI model to be rendered +]] + +---[[ +Create a combined dispatching target for non argv and argv requests. + +@class function +@name arcombine +@param trg1 Overview Target +@param trg2 Detail Target +]] + +---[[ +Create a CBI form model dispatching target. + +@class function +@name form +@param model CBI form model tpo be rendered +]] + +---[[ +Access the luci.i18n translate() api. + +@class function +@name translate +@param text Text to translate +]] + +---[[ +No-op function used to mark translation entries for menu labels. + +This function does not actually translate the given argument but +is used by build/i18n-scan.pl to find translatable entries. + +@class function +@name _ +]] + diff --git a/luci-base/luasrc/http.lua b/luci-base/luasrc/http.lua new file mode 100644 index 000000000..8795dfc4b --- /dev/null +++ b/luci-base/luasrc/http.lua @@ -0,0 +1,268 @@ +-- Copyright 2008 Steven Barth +-- Licensed to the public under the Apache License 2.0. + +local ltn12 = require "luci.ltn12" +local protocol = require "luci.http.protocol" +local util = require "luci.util" +local string = require "string" +local coroutine = require "coroutine" +local table = require "table" + +local ipairs, pairs, next, type, tostring, error = + ipairs, pairs, next, type, tostring, error + +module "luci.http" + +context = util.threadlocal() + +Request = util.class() +function Request.__init__(self, env, sourcein, sinkerr) + self.input = sourcein + self.error = sinkerr + + + -- File handler nil by default to let .content() work + self.filehandler = nil + + -- HTTP-Message table + self.message = { + env = env, + headers = {}, + params = protocol.urldecode_params(env.QUERY_STRING or ""), + } + + self.parsed_input = false +end + +function Request.formvalue(self, name, noparse) + if not noparse and not self.parsed_input then + self:_parse_input() + end + + if name then + return self.message.params[name] + else + return self.message.params + end +end + +function Request.formvaluetable(self, prefix) + local vals = {} + prefix = prefix and prefix .. "." or "." + + if not self.parsed_input then + self:_parse_input() + end + + local void = self.message.params[nil] + for k, v in pairs(self.message.params) do + if k:find(prefix, 1, true) == 1 then + vals[k:sub(#prefix + 1)] = tostring(v) + end + end + + return vals +end + +function Request.content(self) + if not self.parsed_input then + self:_parse_input() + end + + return self.message.content, self.message.content_length +end + +function Request.getcookie(self, name) + local c = string.gsub(";" .. (self:getenv("HTTP_COOKIE") or "") .. ";", "%s*;%s*", ";") + local p = ";" .. name .. "=(.-);" + local i, j, value = c:find(p) + return value and urldecode(value) +end + +function Request.getenv(self, name) + if name then + return self.message.env[name] + else + return self.message.env + end +end + +function Request.setfilehandler(self, callback) + self.filehandler = callback + + -- If input has already been parsed then any files are either in temporary files + -- or are in self.message.params[key] + if self.parsed_input then + for param, value in pairs(self.message.params) do + repeat + -- We're only interested in files + if (not value["file"]) then break end + -- If we were able to write to temporary file + if (value["fd"]) then + fd = value["fd"] + local eof = false + repeat + filedata = fd:read(1024) + if (filedata:len() < 1024) then + eof = true + end + callback({ name=value["name"], file=value["file"] }, filedata, eof) + until (eof) + fd:close() + value["fd"] = nil + -- We had to read into memory + else + -- There should only be one numbered value in table - the data + for k, v in ipairs(value) do + callback({ name=value["name"], file=value["file"] }, v, true) + end + end + until true + end + end +end + +function Request._parse_input(self) + protocol.parse_message_body( + self.input, + self.message, + self.filehandler + ) + self.parsed_input = true +end + +function close() + if not context.eoh then + context.eoh = true + coroutine.yield(3) + end + + if not context.closed then + context.closed = true + coroutine.yield(5) + end +end + +function content() + return context.request:content() +end + +function formvalue(name, noparse) + return context.request:formvalue(name, noparse) +end + +function formvaluetable(prefix) + return context.request:formvaluetable(prefix) +end + +function getcookie(name) + return context.request:getcookie(name) +end + +-- or the environment table itself. +function getenv(name) + return context.request:getenv(name) +end + +function setfilehandler(callback) + return context.request:setfilehandler(callback) +end + +function header(key, value) + if not context.headers then + context.headers = {} + end + context.headers[key:lower()] = value + coroutine.yield(2, key, value) +end + +function prepare_content(mime) + if not context.headers or not context.headers["content-type"] then + if mime == "application/xhtml+xml" then + if not getenv("HTTP_ACCEPT") or + not getenv("HTTP_ACCEPT"):find("application/xhtml+xml", nil, true) then + mime = "text/html; charset=UTF-8" + end + header("Vary", "Accept") + end + header("Content-Type", mime) + end +end + +function source() + return context.request.input +end + +function status(code, message) + code = code or 200 + message = message or "OK" + context.status = code + coroutine.yield(1, code, message) +end + +-- This function is as a valid LTN12 sink. +-- If the content chunk is nil this function will automatically invoke close. +function write(content, src_err) + if not content then + if src_err then + error(src_err) + else + close() + end + return true + elseif #content == 0 then + return true + else + if not context.eoh then + if not context.status then + status() + end + if not context.headers or not context.headers["content-type"] then + header("Content-Type", "text/html; charset=utf-8") + end + if not context.headers["cache-control"] then + header("Cache-Control", "no-cache") + header("Expires", "0") + end + + + context.eoh = true + coroutine.yield(3) + end + coroutine.yield(4, content) + return true + end +end + +function splice(fd, size) + coroutine.yield(6, fd, size) +end + +function redirect(url) + if url == "" then url = "/" end + status(302, "Found") + header("Location", url) + close() +end + +function build_querystring(q) + local s = { "?" } + + for k, v in pairs(q) do + if #s > 1 then s[#s+1] = "&" end + + s[#s+1] = urldecode(k) + s[#s+1] = "=" + s[#s+1] = urldecode(v) + end + + return table.concat(s, "") +end + +urldecode = protocol.urldecode + +urlencode = protocol.urlencode + +function write_json(x) + util.serialize_json(x, write) +end diff --git a/luci-base/luasrc/http.luadoc b/luci-base/luasrc/http.luadoc new file mode 100644 index 000000000..8a325db21 --- /dev/null +++ b/luci-base/luasrc/http.luadoc @@ -0,0 +1,165 @@ +---[[ +LuCI Web Framework high-level HTTP functions. +]] +module "luci.http" + +---[[ +Close the HTTP-Connection. + + +@class function +@name close +]] + +---[[ +Return the request content if the request was of unknown type. + +@class function +@name content +@return HTTP request body +@return HTTP request body length +]] + +---[[ +Get a certain HTTP input value or a table of all input values. + +@class function +@name formvalue +@param name Name of the GET or POST variable to fetch +@param noparse Don't parse POST data before getting the value +@return HTTP input value or table of all input value +]] + +---[[ +Get a table of all HTTP input values with a certain prefix. + +@class function +@name formvaluetable +@param prefix Prefix +@return Table of all HTTP input values with given prefix +]] + +---[[ +Get the value of a certain HTTP-Cookie. + +@class function +@name getcookie +@param name Cookie Name +@return String containing cookie data +]] + +---[[ +Get the value of a certain HTTP environment variable + +or the environment table itself. +@class function +@name getenv +@param name Environment variable +@return HTTP environment value or environment table +]] + +---[[ +Set a handler function for incoming user file uploads. + +@class function +@name setfilehandler +@param callback Handler function +]] + +---[[ +Send a HTTP-Header. + +@class function +@name header +@param key Header key +@param value Header value +]] + +---[[ +Set the mime type of following content data. + +@class function +@name prepare_content +@param mime Mimetype of following content +]] + +---[[ +Get the RAW HTTP input source + +@class function +@name source +@return HTTP LTN12 source +]] + +---[[ +Set the HTTP status code and status message. + +@class function +@name status +@param code Status code +@param message Status message +]] + +---[[ +Send a chunk of content data to the client. + +This function is as a valid LTN12 sink. +If the content chunk is nil this function will automatically invoke close. +@class function +@name write +@param content Content chunk +@param src_err Error object from source (optional) +@see close +]] + +---[[ +Splice data from a filedescriptor to the client. + +@class function +@name splice +@param fp File descriptor +@param size Bytes to splice (optional) +]] + +---[[ +Redirects the client to a new URL and closes the connection. + +@class function +@name redirect +@param url Target URL +]] + +---[[ +Create a querystring out of a table of key - value pairs. + +@class function +@name build_querystring +@param table Query string source table +@return Encoded HTTP query string +]] + +---[[ +Return the URL-decoded equivalent of a string. + +@param str URL-encoded string +@param no_plus Don't decode + to " " +@return URL-decoded string +@see urlencode +]] + +---[[ +Return the URL-encoded equivalent of a string. + +@param str Source string +@return URL-encoded string +@see urldecode +]] + +---[[ +Send the given data as JSON encoded string. + +@class function +@name write_json +@param data Data to send +]] + diff --git a/luci-base/luasrc/http/protocol.lua b/luci-base/luasrc/http/protocol.lua new file mode 100644 index 000000000..061c6ad54 --- /dev/null +++ b/luci-base/luasrc/http/protocol.lua @@ -0,0 +1,649 @@ +-- Copyright 2008 Freifunk Leipzig / Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +-- This class contains several functions useful for http message- and content +-- decoding and to retrive form data from raw http messages. +module("luci.http.protocol", package.seeall) + +local ltn12 = require("luci.ltn12") + +HTTP_MAX_CONTENT = 1024*8 -- 8 kB maximum content size + +-- the "+" sign to " " - and return the decoded string. +function urldecode( str, no_plus ) + + local function __chrdec( hex ) + return string.char( tonumber( hex, 16 ) ) + end + + if type(str) == "string" then + if not no_plus then + str = str:gsub( "+", " " ) + end + + str = str:gsub( "%%([a-fA-F0-9][a-fA-F0-9])", __chrdec ) + end + + return str +end + +-- from given url or string. Returns a table with urldecoded values. +-- Simple parameters are stored as string values associated with the parameter +-- name within the table. Parameters with multiple values are stored as array +-- containing the corresponding values. +function urldecode_params( url, tbl ) + + local params = tbl or { } + + if url:find("?") then + url = url:gsub( "^.+%?([^?]+)", "%1" ) + end + + for pair in url:gmatch( "[^&;]+" ) do + + -- find key and value + local key = urldecode( pair:match("^([^=]+)") ) + local val = urldecode( pair:match("^[^=]+=(.+)$") ) + + -- store + if type(key) == "string" and key:len() > 0 then + if type(val) ~= "string" then val = "" end + + if not params[key] then + params[key] = val + elseif type(params[key]) ~= "table" then + params[key] = { params[key], val } + else + table.insert( params[key], val ) + end + end + end + + return params +end + +function urlencode( str ) + + local function __chrenc( chr ) + return string.format( + "%%%02x", string.byte( chr ) + ) + end + + if type(str) == "string" then + str = str:gsub( + "([^a-zA-Z0-9$_%-%.%~])", + __chrenc + ) + end + + return str +end + +-- separated by "&". Tables are encoded as parameters with multiple values by +-- repeating the parameter name with each value. +function urlencode_params( tbl ) + local enc = "" + + for k, v in pairs(tbl) do + if type(v) == "table" then + for i, v2 in ipairs(v) do + enc = enc .. ( #enc > 0 and "&" or "" ) .. + urlencode(k) .. "=" .. urlencode(v2) + end + else + enc = enc .. ( #enc > 0 and "&" or "" ) .. + urlencode(k) .. "=" .. urlencode(v) + end + end + + return enc +end + +-- (Internal function) +-- Initialize given parameter and coerce string into table when the parameter +-- already exists. +local function __initval( tbl, key ) + if tbl[key] == nil then + tbl[key] = "" + elseif type(tbl[key]) == "string" then + tbl[key] = { tbl[key], "" } + else + table.insert( tbl[key], "" ) + end +end + +-- (Internal function) +-- Initialize given file parameter. +local function __initfileval( tbl, key, filename, fd ) + if tbl[key] == nil then + tbl[key] = { file=filename, fd=fd, name=key, "" } + else + table.insert( tbl[key], "" ) + end +end + +-- (Internal function) +-- Append given data to given parameter, either by extending the string value +-- or by appending it to the last string in the parameter's value table. +local function __appendval( tbl, key, chunk ) + if type(tbl[key]) == "table" then + tbl[key][#tbl[key]] = tbl[key][#tbl[key]] .. chunk + else + tbl[key] = tbl[key] .. chunk + end +end + +-- (Internal function) +-- Finish the value of given parameter, either by transforming the string value +-- or - in the case of multi value parameters - the last element in the +-- associated values table. +local function __finishval( tbl, key, handler ) + if handler then + if type(tbl[key]) == "table" then + tbl[key][#tbl[key]] = handler( tbl[key][#tbl[key]] ) + else + tbl[key] = handler( tbl[key] ) + end + end +end + + +-- Table of our process states +local process_states = { } + +-- Extract "magic", the first line of a http message. +-- Extracts the message type ("get", "post" or "response"), the requested uri +-- or the status code if the line descripes a http response. +process_states['magic'] = function( msg, chunk, err ) + + if chunk ~= nil then + -- ignore empty lines before request + if #chunk == 0 then + return true, nil + end + + -- Is it a request? + local method, uri, http_ver = chunk:match("^([A-Z]+) ([^ ]+) HTTP/([01]%.[019])$") + + -- Yup, it is + if method then + + msg.type = "request" + msg.request_method = method:lower() + msg.request_uri = uri + msg.http_version = tonumber( http_ver ) + msg.headers = { } + + -- We're done, next state is header parsing + return true, function( chunk ) + return process_states['headers']( msg, chunk ) + end + + -- Is it a response? + else + + local http_ver, code, message = chunk:match("^HTTP/([01]%.[019]) ([0-9]+) ([^\r\n]+)$") + + -- Is a response + if code then + + msg.type = "response" + msg.status_code = code + msg.status_message = message + msg.http_version = tonumber( http_ver ) + msg.headers = { } + + -- We're done, next state is header parsing + return true, function( chunk ) + return process_states['headers']( msg, chunk ) + end + end + end + end + + -- Can't handle it + return nil, "Invalid HTTP message magic" +end + + +-- Extract headers from given string. +process_states['headers'] = function( msg, chunk ) + + if chunk ~= nil then + + -- Look for a valid header format + local hdr, val = chunk:match( "^([A-Za-z][A-Za-z0-9%-_]+): +(.+)$" ) + + if type(hdr) == "string" and hdr:len() > 0 and + type(val) == "string" and val:len() > 0 + then + msg.headers[hdr] = val + + -- Valid header line, proceed + return true, nil + + elseif #chunk == 0 then + -- Empty line, we won't accept data anymore + return false, nil + else + -- Junk data + return nil, "Invalid HTTP header received" + end + else + return nil, "Unexpected EOF" + end +end + + +-- data line by line with the trailing \r\n stripped of. +function header_source( sock ) + return ltn12.source.simplify( function() + + local chunk, err, part = sock:receive("*l") + + -- Line too long + if chunk == nil then + if err ~= "timeout" then + return nil, part + and "Line exceeds maximum allowed length" + or "Unexpected EOF" + else + return nil, err + end + + -- Line ok + elseif chunk ~= nil then + + -- Strip trailing CR + chunk = chunk:gsub("\r$","") + + return chunk, nil + end + end ) +end + +-- Content-Type. Stores all extracted data associated with its parameter name +-- in the params table withing the given message object. Multiple parameter +-- values are stored as tables, ordinary ones as strings. +-- If an optional file callback function is given then it is feeded with the +-- file contents chunk by chunk and only the extracted file name is stored +-- within the params table. The callback function will be called subsequently +-- with three arguments: +-- o Table containing decoded (name, file) and raw (headers) mime header data +-- o String value containing a chunk of the file data +-- o Boolean which indicates wheather the current chunk is the last one (eof) +function mimedecode_message_body( src, msg, filecb ) + + if msg and msg.env.CONTENT_TYPE then + msg.mime_boundary = msg.env.CONTENT_TYPE:match("^multipart/form%-data; boundary=(.+)$") + end + + if not msg.mime_boundary then + return nil, "Invalid Content-Type found" + end + + + local tlen = 0 + local inhdr = false + local field = nil + local store = nil + local lchunk = nil + + local function parse_headers( chunk, field ) + + local stat + repeat + chunk, stat = chunk:gsub( + "^([A-Z][A-Za-z0-9%-_]+): +([^\r\n]+)\r\n", + function(k,v) + field.headers[k] = v + return "" + end + ) + until stat == 0 + + chunk, stat = chunk:gsub("^\r\n","") + + -- End of headers + if stat > 0 then + if field.headers["Content-Disposition"] then + if field.headers["Content-Disposition"]:match("^form%-data; ") then + field.name = field.headers["Content-Disposition"]:match('name="(.-)"') + field.file = field.headers["Content-Disposition"]:match('filename="(.+)"$') + end + end + + if not field.headers["Content-Type"] then + field.headers["Content-Type"] = "text/plain" + end + + if field.name and field.file and filecb then + __initval( msg.params, field.name ) + __appendval( msg.params, field.name, field.file ) + + store = filecb + elseif field.name and field.file then + local nxf = require "nixio" + local fd = nxf.mkstemp(field.name) + __initfileval ( msg.params, field.name, field.file, fd ) + if fd then + store = function(hdr, buf, eof) + fd:write(buf) + if (eof) then + fd:seek(0, "set") + end + end + else + store = function( hdr, buf, eof ) + __appendval( msg.params, field.name, buf ) + end + end + elseif field.name then + __initval( msg.params, field.name ) + + store = function( hdr, buf, eof ) + __appendval( msg.params, field.name, buf ) + end + else + store = nil + end + + return chunk, true + end + + return chunk, false + end + + local function snk( chunk ) + + tlen = tlen + ( chunk and #chunk or 0 ) + + if msg.env.CONTENT_LENGTH and tlen > tonumber(msg.env.CONTENT_LENGTH) + 2 then + return nil, "Message body size exceeds Content-Length" + end + + if chunk and not lchunk then + lchunk = "\r\n" .. chunk + + elseif lchunk then + local data = lchunk .. ( chunk or "" ) + local spos, epos, found + + repeat + spos, epos = data:find( "\r\n--" .. msg.mime_boundary .. "\r\n", 1, true ) + + if not spos then + spos, epos = data:find( "\r\n--" .. msg.mime_boundary .. "--\r\n", 1, true ) + end + + + if spos then + local predata = data:sub( 1, spos - 1 ) + + if inhdr then + predata, eof = parse_headers( predata, field ) + + if not eof then + return nil, "Invalid MIME section header" + elseif not field.name then + return nil, "Invalid Content-Disposition header" + end + end + + if store then + store( field, predata, true ) + end + + + field = { headers = { } } + found = found or true + + data, eof = parse_headers( data:sub( epos + 1, #data ), field ) + inhdr = not eof + end + until not spos + + if found then + -- We found at least some boundary. Save + -- the unparsed remaining data for the + -- next chunk. + lchunk, data = data, nil + else + -- There was a complete chunk without a boundary. Parse it as headers or + -- append it as data, depending on our current state. + if inhdr then + lchunk, eof = parse_headers( data, field ) + inhdr = not eof + else + -- We're inside data, so append the data. Note that we only append + -- lchunk, not all of data, since there is a chance that chunk + -- contains half a boundary. Assuming that each chunk is at least the + -- boundary in size, this should prevent problems + store( field, lchunk, false ) + lchunk, chunk = chunk, nil + end + end + end + + return true + end + + return ltn12.pump.all( src, snk ) +end + +-- Content-Type. Stores all extracted data associated with its parameter name +-- in the params table withing the given message object. Multiple parameter +-- values are stored as tables, ordinary ones as strings. +function urldecode_message_body( src, msg ) + + local tlen = 0 + local lchunk = nil + + local function snk( chunk ) + + tlen = tlen + ( chunk and #chunk or 0 ) + + if msg.env.CONTENT_LENGTH and tlen > tonumber(msg.env.CONTENT_LENGTH) + 2 then + return nil, "Message body size exceeds Content-Length" + elseif tlen > HTTP_MAX_CONTENT then + return nil, "Message body size exceeds maximum allowed length" + end + + if not lchunk and chunk then + lchunk = chunk + + elseif lchunk then + local data = lchunk .. ( chunk or "&" ) + local spos, epos + + repeat + spos, epos = data:find("^.-[;&]") + + if spos then + local pair = data:sub( spos, epos - 1 ) + local key = pair:match("^(.-)=") + local val = pair:match("=([^%s]*)%s*$") + + if key and #key > 0 then + __initval( msg.params, key ) + __appendval( msg.params, key, val ) + __finishval( msg.params, key, urldecode ) + end + + data = data:sub( epos + 1, #data ) + end + until not spos + + lchunk = data + end + + return true + end + + return ltn12.pump.all( src, snk ) +end + +-- version, message headers and resulting CGI environment variables from the +-- given ltn12 source. +function parse_message_header( src ) + + local ok = true + local msg = { } + + local sink = ltn12.sink.simplify( + function( chunk ) + return process_states['magic']( msg, chunk ) + end + ) + + -- Pump input data... + while ok do + + -- get data + ok, err = ltn12.pump.step( src, sink ) + + -- error + if not ok and err then + return nil, err + + -- eof + elseif not ok then + + -- Process get parameters + if ( msg.request_method == "get" or msg.request_method == "post" ) and + msg.request_uri:match("?") + then + msg.params = urldecode_params( msg.request_uri ) + else + msg.params = { } + end + + -- Populate common environment variables + msg.env = { + CONTENT_LENGTH = msg.headers['Content-Length']; + CONTENT_TYPE = msg.headers['Content-Type'] or msg.headers['Content-type']; + REQUEST_METHOD = msg.request_method:upper(); + REQUEST_URI = msg.request_uri; + SCRIPT_NAME = msg.request_uri:gsub("?.+$",""); + SCRIPT_FILENAME = ""; -- XXX implement me + SERVER_PROTOCOL = "HTTP/" .. string.format("%.1f", msg.http_version); + QUERY_STRING = msg.request_uri:match("?") + and msg.request_uri:gsub("^.+?","") or "" + } + + -- Populate HTTP_* environment variables + for i, hdr in ipairs( { + 'Accept', + 'Accept-Charset', + 'Accept-Encoding', + 'Accept-Language', + 'Connection', + 'Cookie', + 'Host', + 'Referer', + 'User-Agent', + } ) do + local var = 'HTTP_' .. hdr:upper():gsub("%-","_") + local val = msg.headers[hdr] + + msg.env[var] = val + end + end + end + + return msg +end + +-- This function will examine the Content-Type within the given message object +-- to select the appropriate content decoder. +-- Currently the application/x-www-urlencoded and application/form-data +-- mime types are supported. If the encountered content encoding can't be +-- handled then the whole message body will be stored unaltered as "content" +-- property within the given message object. +function parse_message_body( src, msg, filecb ) + -- Is it multipart/mime ? + if msg.env.REQUEST_METHOD == "POST" and msg.env.CONTENT_TYPE and + msg.env.CONTENT_TYPE:match("^multipart/form%-data") + then + + return mimedecode_message_body( src, msg, filecb ) + + -- Is it application/x-www-form-urlencoded ? + elseif msg.env.REQUEST_METHOD == "POST" and msg.env.CONTENT_TYPE and + msg.env.CONTENT_TYPE:match("^application/x%-www%-form%-urlencoded") + then + return urldecode_message_body( src, msg, filecb ) + + + -- Unhandled encoding + -- If a file callback is given then feed it chunk by chunk, else + -- store whole buffer in message.content + else + + local sink + + -- If we have a file callback then feed it + if type(filecb) == "function" then + local meta = { + name = "raw", + encoding = msg.env.CONTENT_TYPE + } + sink = function( chunk ) + if chunk then + return filecb(meta, chunk, false) + else + return filecb(meta, nil, true) + end + end + -- ... else append to .content + else + msg.content = "" + msg.content_length = 0 + + sink = function( chunk ) + if chunk then + if ( msg.content_length + #chunk ) <= HTTP_MAX_CONTENT then + msg.content = msg.content .. chunk + msg.content_length = msg.content_length + #chunk + return true + else + return nil, "POST data exceeds maximum allowed length" + end + end + return true + end + end + + -- Pump data... + while true do + local ok, err = ltn12.pump.step( src, sink ) + + if not ok and err then + return nil, err + elseif not ok then -- eof + return true + end + end + + return true + end +end + +statusmsg = { + [200] = "OK", + [206] = "Partial Content", + [301] = "Moved Permanently", + [302] = "Found", + [304] = "Not Modified", + [400] = "Bad Request", + [403] = "Forbidden", + [404] = "Not Found", + [405] = "Method Not Allowed", + [408] = "Request Time-out", + [411] = "Length Required", + [412] = "Precondition Failed", + [416] = "Requested range not satisfiable", + [500] = "Internal Server Error", + [503] = "Server Unavailable", +} diff --git a/luci-base/luasrc/http/protocol.luadoc b/luci-base/luasrc/http/protocol.luadoc new file mode 100644 index 000000000..67a60d9e7 --- /dev/null +++ b/luci-base/luasrc/http/protocol.luadoc @@ -0,0 +1,142 @@ +---[[ +LuCI http protocol class. + +This class contains several functions useful for http message- and content +decoding and to retrive form data from raw http messages. +]] +module "luci.http.protocol" + +---[[ +Decode an urlencoded string - optionally without decoding + +the "+" sign to " " - and return the decoded string. +@class function +@name urldecode +@param str Input string in x-www-urlencoded format +@param no_plus Don't decode "+" signs to spaces +@return The decoded string +@see urlencode +]] + +---[[ +Extract and split urlencoded data pairs, separated bei either "&" or ";" + +from given url or string. Returns a table with urldecoded values. +Simple parameters are stored as string values associated with the parameter +name within the table. Parameters with multiple values are stored as array +containing the corresponding values. +@class function +@name urldecode_params +@param url The url or string which contains x-www-urlencoded form data +@param tbl Use the given table for storing values (optional) +@return Table containing the urldecoded parameters +@see urlencode_params +]] + +---[[ +Encode given string to x-www-urlencoded format. + +@class function +@name urlencode +@param str String to encode +@return String containing the encoded data +@see urldecode +]] + +---[[ +Encode each key-value-pair in given table to x-www-urlencoded format, + +separated by "&". Tables are encoded as parameters with multiple values by +repeating the parameter name with each value. +@class function +@name urlencode_params +@param tbl Table with the values +@return String containing encoded values +@see urldecode_params +]] + +---[[ +Creates a ltn12 source from the given socket. The source will return it's + +data line by line with the trailing \r\n stripped of. +@class function +@name header_source +@param sock Readable network socket +@return Ltn12 source function +]] + +---[[ +Decode a mime encoded http message body with multipart/form-data + +Content-Type. Stores all extracted data associated with its parameter name +in the params table withing the given message object. Multiple parameter +values are stored as tables, ordinary ones as strings. +If an optional file callback function is given then it is feeded with the +file contents chunk by chunk and only the extracted file name is stored +within the params table. The callback function will be called subsequently +with three arguments: + o Table containing decoded (name, file) and raw (headers) mime header data + o String value containing a chunk of the file data + o Boolean which indicates wheather the current chunk is the last one (eof) +@class function +@name mimedecode_message_body +@param src Ltn12 source function +@param msg HTTP message object +@param filecb File callback function (optional) +@return Value indicating successful operation (not nil means "ok") +@return String containing the error if unsuccessful +@see parse_message_header +]] + +---[[ +Decode an urlencoded http message body with application/x-www-urlencoded + +Content-Type. Stores all extracted data associated with its parameter name +in the params table withing the given message object. Multiple parameter +values are stored as tables, ordinary ones as strings. +@class function +@name urldecode_message_body +@param src Ltn12 source function +@param msg HTTP message object +@return Value indicating successful operation (not nil means "ok") +@return String containing the error if unsuccessful +@see parse_message_header +]] + +---[[ +Try to extract an http message header including information like protocol + +version, message headers and resulting CGI environment variables from the +given ltn12 source. +@class function +@name parse_message_header +@param src Ltn12 source function +@return HTTP message object +@see parse_message_body +]] + +---[[ +Try to extract and decode a http message body from the given ltn12 source. + +This function will examine the Content-Type within the given message object +to select the appropriate content decoder. +Currently the application/x-www-urlencoded and application/form-data +mime types are supported. If the encountered content encoding can't be +handled then the whole message body will be stored unaltered as "content" +property within the given message object. +@class function +@name parse_message_body +@param src Ltn12 source function +@param msg HTTP message object +@param filecb File data callback (optional, see mimedecode_message_body()) +@return Value indicating successful operation (not nil means "ok") +@return String containing the error if unsuccessful +@see parse_message_header +]] + +---[[ +Table containing human readable messages for several http status codes. + +@class table +]] + diff --git a/luci-base/luasrc/http/protocol/conditionals.lua b/luci-base/luasrc/http/protocol/conditionals.lua new file mode 100644 index 000000000..d31a4e38a --- /dev/null +++ b/luci-base/luasrc/http/protocol/conditionals.lua @@ -0,0 +1,110 @@ +-- Copyright 2008 Freifunk Leipzig / Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +-- This class provides basic ETag handling and implements most of the +-- conditional HTTP/1.1 headers specified in RFC2616 Sct. 14.24 - 14.28 . +module("luci.http.protocol.conditionals", package.seeall) + +local date = require("luci.http.protocol.date") + + +function mk_etag( stat ) + if stat ~= nil then + return string.format( '"%x-%x-%x"', stat.ino, stat.size, stat.mtime ) + end +end + +-- Test whether the given message object contains an "If-Match" header and +-- compare it against the given stat object. +function if_match( req, stat ) + local h = req.headers + local etag = mk_etag( stat ) + + -- Check for matching resource + if type(h['If-Match']) == "string" then + for ent in h['If-Match']:gmatch("([^, ]+)") do + if ( ent == '*' or ent == etag ) and stat ~= nil then + return true + end + end + + return false, 412 + end + + return true +end + +-- Test whether the given message object contains an "If-Modified-Since" header +-- and compare it against the given stat object. +function if_modified_since( req, stat ) + local h = req.headers + + -- Compare mtimes + if type(h['If-Modified-Since']) == "string" then + local since = date.to_unix( h['If-Modified-Since'] ) + + if stat == nil or since < stat.mtime then + return true + end + + return false, 304, { + ["ETag"] = mk_etag( stat ); + ["Date"] = date.to_http( os.time() ); + ["Last-Modified"] = date.to_http( stat.mtime ) + } + end + + return true +end + +-- Test whether the given message object contains an "If-None-Match" header and +-- compare it against the given stat object. +function if_none_match( req, stat ) + local h = req.headers + local etag = mk_etag( stat ) + local method = req.env and req.env.REQUEST_METHOD or "GET" + + -- Check for matching resource + if type(h['If-None-Match']) == "string" then + for ent in h['If-None-Match']:gmatch("([^, ]+)") do + if ( ent == '*' or ent == etag ) and stat ~= nil then + if method == "GET" or method == "HEAD" then + return false, 304, { + ["ETag"] = etag; + ["Date"] = date.to_http( os.time() ); + ["Last-Modified"] = date.to_http( stat.mtime ) + } + else + return false, 412 + end + end + end + end + + return true +end + +-- The If-Range header is currently not implemented due to the lack of general +-- byte range stuff in luci.http.protocol . This function will always return +-- false, 412 to indicate a failed precondition. +function if_range( req, stat ) + -- Sorry, no subranges (yet) + return false, 412 +end + +-- Test whether the given message object contains an "If-Unmodified-Since" +-- header and compare it against the given stat object. +function if_unmodified_since( req, stat ) + local h = req.headers + + -- Compare mtimes + if type(h['If-Unmodified-Since']) == "string" then + local since = date.to_unix( h['If-Unmodified-Since'] ) + + if stat ~= nil and since <= stat.mtime then + return false, 412 + end + end + + return true +end diff --git a/luci-base/luasrc/http/protocol/conditionals.luadoc b/luci-base/luasrc/http/protocol/conditionals.luadoc new file mode 100644 index 000000000..9cfe02dd5 --- /dev/null +++ b/luci-base/luasrc/http/protocol/conditionals.luadoc @@ -0,0 +1,85 @@ +---[[ +LuCI http protocol implementation - HTTP/1.1 bits. + +This class provides basic ETag handling and implements most of the +conditional HTTP/1.1 headers specified in RFC2616 Sct. 14.24 - 14.28 . +]] +module "luci.http.protocol.conditionals" + +---[[ +Implement 14.19 / ETag. + +@class function +@name mk_etag +@param stat A file.stat structure +@return String containing the generated tag suitable for ETag headers +]] + +---[[ +14.24 / If-Match + +Test whether the given message object contains an "If-Match" header and +compare it against the given stat object. +@class function +@name if_match +@param req HTTP request message object +@param stat A file.stat object +@return Boolean indicating whether the precondition is ok +@return Alternative status code if the precondition failed +]] + +---[[ +14.25 / If-Modified-Since + +Test whether the given message object contains an "If-Modified-Since" header +and compare it against the given stat object. +@class function +@name if_modified_since +@param req HTTP request message object +@param stat A file.stat object +@return Boolean indicating whether the precondition is ok +@return Alternative status code if the precondition failed +@return Table containing extra HTTP headers if the precondition failed +]] + +---[[ +14.26 / If-None-Match + +Test whether the given message object contains an "If-None-Match" header and +compare it against the given stat object. +@class function +@name if_none_match +@param req HTTP request message object +@param stat A file.stat object +@return Boolean indicating whether the precondition is ok +@return Alternative status code if the precondition failed +@return Table containing extra HTTP headers if the precondition failed +]] + +---[[ +14.27 / If-Range + +The If-Range header is currently not implemented due to the lack of general +byte range stuff in luci.http.protocol . This function will always return +false, 412 to indicate a failed precondition. +@class function +@name if_range +@param req HTTP request message object +@param stat A file.stat object +@return Boolean indicating whether the precondition is ok +@return Alternative status code if the precondition failed +]] + +---[[ +14.28 / If-Unmodified-Since + +Test whether the given message object contains an "If-Unmodified-Since" +header and compare it against the given stat object. +@class function +@name if_unmodified_since +@param req HTTP request message object +@param stat A file.stat object +@return Boolean indicating whether the precondition is ok +@return Alternative status code if the precondition failed +]] + diff --git a/luci-base/luasrc/http/protocol/date.lua b/luci-base/luasrc/http/protocol/date.lua new file mode 100644 index 000000000..e440219a9 --- /dev/null +++ b/luci-base/luasrc/http/protocol/date.lua @@ -0,0 +1,87 @@ +-- Copyright 2008 Freifunk Leipzig / Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +-- This class contains functions to parse, compare and format http dates. +module("luci.http.protocol.date", package.seeall) + +require("luci.sys.zoneinfo") + + +MONTHS = { + "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", + "Sep", "Oct", "Nov", "Dec" +} + +function tz_offset(tz) + + if type(tz) == "string" then + + -- check for a numeric identifier + local s, v = tz:match("([%+%-])([0-9]+)") + if s == '+' then s = 1 else s = -1 end + if v then v = tonumber(v) end + + if s and v then + return s * 60 * ( math.floor( v / 100 ) * 60 + ( v % 100 ) ) + + -- lookup symbolic tz + elseif luci.sys.zoneinfo.OFFSET[tz:lower()] then + return luci.sys.zoneinfo.OFFSET[tz:lower()] + end + + end + + -- bad luck + return 0 +end + +function to_unix(date) + + local wd, day, mon, yr, hr, min, sec, tz = date:match( + "([A-Z][a-z][a-z]), ([0-9]+) " .. + "([A-Z][a-z][a-z]) ([0-9]+) " .. + "([0-9]+):([0-9]+):([0-9]+) " .. + "([A-Z0-9%+%-]+)" + ) + + if day and mon and yr and hr and min and sec then + -- find month + local month = 1 + for i = 1, 12 do + if MONTHS[i] == mon then + month = i + break + end + end + + -- convert to epoch time + return tz_offset(tz) + os.time( { + year = yr, + month = month, + day = day, + hour = hr, + min = min, + sec = sec + } ) + end + + return 0 +end + +function to_http(time) + return os.date( "%a, %d %b %Y %H:%M:%S GMT", time ) +end + +function compare(d1, d2) + + if d1:match("[^0-9]") then d1 = to_unix(d1) end + if d2:match("[^0-9]") then d2 = to_unix(d2) end + + if d1 == d2 then + return 0 + elseif d1 < d2 then + return -1 + else + return 1 + end +end diff --git a/luci-base/luasrc/http/protocol/date.luadoc b/luci-base/luasrc/http/protocol/date.luadoc new file mode 100644 index 000000000..d6f1c8d65 --- /dev/null +++ b/luci-base/luasrc/http/protocol/date.luadoc @@ -0,0 +1,46 @@ +---[[ +LuCI http protocol implementation - date helper class. + +This class contains functions to parse, compare and format http dates. +]] +module "luci.http.protocol.date" + +---[[ +Return the time offset in seconds between the UTC and given time zone. + +@class function +@name tz_offset +@param tz Symbolic or numeric timezone specifier +@return Time offset to UTC in seconds +]] + +---[[ +Parse given HTTP date string and convert it to unix epoch time. + +@class function +@name to_unix +@param data String containing the date +@return Unix epoch time +]] + +---[[ +Convert the given unix epoch time to valid HTTP date string. + +@class function +@name to_http +@param time Unix epoch time +@return String containing the formatted date +]] + +---[[ +Compare two dates which can either be unix epoch times or HTTP date strings. + +@class function +@name compare +@param d1 The first date or epoch time to compare +@param d2 The first date or epoch time to compare +@return -1 - if d1 is lower then d2 +@return 0 - if both dates are equal +@return 1 - if d1 is higher then d2 +]] + diff --git a/luci-base/luasrc/http/protocol/mime.lua b/luci-base/luasrc/http/protocol/mime.lua new file mode 100644 index 000000000..2b99d8e74 --- /dev/null +++ b/luci-base/luasrc/http/protocol/mime.lua @@ -0,0 +1,78 @@ +-- Copyright 2008 Freifunk Leipzig / Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +-- This class provides functions to guess mime types from file extensions and +-- vice versa. +module("luci.http.protocol.mime", package.seeall) + +require("luci.util") + +MIME_TYPES = { + ["txt"] = "text/plain"; + ["js"] = "text/javascript"; + ["css"] = "text/css"; + ["htm"] = "text/html"; + ["html"] = "text/html"; + ["patch"] = "text/x-patch"; + ["c"] = "text/x-csrc"; + ["h"] = "text/x-chdr"; + ["o"] = "text/x-object"; + ["ko"] = "text/x-object"; + + ["bmp"] = "image/bmp"; + ["gif"] = "image/gif"; + ["png"] = "image/png"; + ["jpg"] = "image/jpeg"; + ["jpeg"] = "image/jpeg"; + ["svg"] = "image/svg+xml"; + + ["zip"] = "application/zip"; + ["pdf"] = "application/pdf"; + ["xml"] = "application/xml"; + ["xsl"] = "application/xml"; + ["doc"] = "application/msword"; + ["ppt"] = "application/vnd.ms-powerpoint"; + ["xls"] = "application/vnd.ms-excel"; + ["odt"] = "application/vnd.oasis.opendocument.text"; + ["odp"] = "application/vnd.oasis.opendocument.presentation"; + ["pl"] = "application/x-perl"; + ["sh"] = "application/x-shellscript"; + ["php"] = "application/x-php"; + ["deb"] = "application/x-deb"; + ["iso"] = "application/x-cd-image"; + ["tgz"] = "application/x-compressed-tar"; + + ["mp3"] = "audio/mpeg"; + ["ogg"] = "audio/x-vorbis+ogg"; + ["wav"] = "audio/x-wav"; + + ["mpg"] = "video/mpeg"; + ["mpeg"] = "video/mpeg"; + ["avi"] = "video/x-msvideo"; +} + +-- "application/octet-stream" if the extension is unknown. +function to_mime(filename) + if type(filename) == "string" then + local ext = filename:match("[^%.]+$") + + if ext and MIME_TYPES[ext:lower()] then + return MIME_TYPES[ext:lower()] + end + end + + return "application/octet-stream" +end + +-- given mime-type is unknown. +function to_ext(mimetype) + if type(mimetype) == "string" then + for ext, type in luci.util.kspairs( MIME_TYPES ) do + if type == mimetype then + return ext + end + end + end + + return nil +end diff --git a/luci-base/luasrc/http/protocol/mime.luadoc b/luci-base/luasrc/http/protocol/mime.luadoc new file mode 100644 index 000000000..195b5fcc8 --- /dev/null +++ b/luci-base/luasrc/http/protocol/mime.luadoc @@ -0,0 +1,34 @@ +---[[ +LuCI http protocol implementation - mime helper class. + +This class provides functions to guess mime types from file extensions and +vice versa. +]] +module "luci.http.protocol.mime" + +---[[ +MIME mapping table containg extension - mimetype relations. + +@class table +]] + +---[[ +Extract extension from a filename and return corresponding mime-type or + +"application/octet-stream" if the extension is unknown. +@class function +@name to_mime +@param filename The filename for which the mime type is guessed +@return String containign the determined mime type +]] + +---[[ +Return corresponding extension for a given mime type or nil if the + +given mime-type is unknown. +@class function +@name to_ext +@param mimetype The mimetype to retrieve the extension from +@return String with the extension or nil for unknown type +]] + diff --git a/luci-base/luasrc/i18n.lua b/luci-base/luasrc/i18n.lua new file mode 100644 index 000000000..bcb16d5c0 --- /dev/null +++ b/luci-base/luasrc/i18n.lua @@ -0,0 +1,55 @@ +-- Copyright 2008 Steven Barth +-- Licensed to the public under the Apache License 2.0. + +module("luci.i18n", package.seeall) +require("luci.util") + +local tparser = require "luci.template.parser" + +table = {} +i18ndir = luci.util.libpath() .. "/i18n/" +loaded = {} +context = luci.util.threadlocal() +default = "en" + +function clear() +end + +function load(file, lang, force) +end + +-- Alternatively load the translation of the fallback language. +function loadc(file, force) +end + +function setlanguage(lang) + context.lang = lang:gsub("_", "-") + context.parent = (context.lang:match("^([a-z][a-z])_")) + if not tparser.load_catalog(context.lang, i18ndir) then + if context.parent then + tparser.load_catalog(context.parent, i18ndir) + return context.parent + end + end + return context.lang +end + +function translate(key) + return tparser.translate(key) or key +end + +function translatef(key, ...) + return tostring(translate(key)):format(...) +end + +-- and ensure that the returned value is a Lua string value. +-- This is the same as calling tostring(translate(...)) +function string(key) + return tostring(translate(key)) +end + +-- Ensure that the returned value is a Lua string value. +-- This is the same as calling tostring(translatef(...)) +function stringf(key, ...) + return tostring(translate(key)):format(...) +end diff --git a/luci-base/luasrc/i18n.luadoc b/luci-base/luasrc/i18n.luadoc new file mode 100644 index 000000000..aa38841e1 --- /dev/null +++ b/luci-base/luasrc/i18n.luadoc @@ -0,0 +1,84 @@ +---[[ +LuCI translation library. +]] +module "luci.i18n" + +---[[ +Clear the translation table. + + +@class function +@name clear +]] + +---[[ +Load a translation and copy its data into the translation table. + +@class function +@name load +@param file Language file +@param lang Two-letter language code +@param force Force reload even if already loaded (optional) +@return Success status +]] + +---[[ +Load a translation file using the default translation language. + +Alternatively load the translation of the fallback language. +@class function +@name loadc +@param file Language file +@param force Force reload even if already loaded (optional) +]] + +---[[ +Set the context default translation language. + +@class function +@name setlanguage +@param lang Two-letter language code +]] + +---[[ +Return the translated value for a specific translation key. + +@class function +@name translate +@param key Default translation text +@return Translated string +]] + +---[[ +Return the translated value for a specific translation key and use it as sprintf pattern. + +@class function +@name translatef +@param key Default translation text +@param ... Format parameters +@return Translated and formatted string +]] + +---[[ +Return the translated value for a specific translation key + +and ensure that the returned value is a Lua string value. +This is the same as calling tostring(translate(...)) +@class function +@name string +@param key Default translation text +@return Translated string +]] + +---[[ +Return the translated value for a specific translation key and use it as sprintf pattern. + +Ensure that the returned value is a Lua string value. +This is the same as calling tostring(translatef(...)) +@class function +@name stringf +@param key Default translation text +@param ... Format parameters +@return Translated and formatted string +]] + diff --git a/luci-base/luasrc/ltn12.lua b/luci-base/luasrc/ltn12.lua new file mode 100644 index 000000000..3a7268cca --- /dev/null +++ b/luci-base/luasrc/ltn12.lua @@ -0,0 +1,316 @@ +--[[ +LuaSocket 2.0.2 license +Copyright � 2004-2007 Diego Nehab + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the "Software"), +to deal in the Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. +]]-- +--[[ + Changes made by LuCI project: + * Renamed to luci.ltn12 to avoid collisions with luasocket + * Added inline documentation +]]-- +----------------------------------------------------------------------------- +-- LTN12 - Filters, sources, sinks and pumps. +-- LuaSocket toolkit. +-- Author: Diego Nehab +-- RCS ID: $Id$ +----------------------------------------------------------------------------- + +----------------------------------------------------------------------------- +-- Declare module +----------------------------------------------------------------------------- +local string = require("string") +local table = require("table") +local base = _G + +-- See http://lua-users.org/wiki/FiltersSourcesAndSinks for design concepts +module("luci.ltn12") + +filter = {} +source = {} +sink = {} +pump = {} + +-- 2048 seems to be better in windows... +BLOCKSIZE = 2048 +_VERSION = "LTN12 1.0.1" + +----------------------------------------------------------------------------- +-- Filter stuff +----------------------------------------------------------------------------- + + +-- by passing it each chunk and updating a context between calls. +function filter.cycle(low, ctx, extra) + base.assert(low) + return function(chunk) + local ret + ret, ctx = low(ctx, chunk, extra) + return ret + end +end + +-- (thanks to Wim Couwenberg) +function filter.chain(...) + local n = table.getn(arg) + local top, index = 1, 1 + local retry = "" + return function(chunk) + retry = chunk and retry + while true do + if index == top then + chunk = arg[index](chunk) + if chunk == "" or top == n then return chunk + elseif chunk then index = index + 1 + else + top = top+1 + index = top + end + else + chunk = arg[index](chunk or "") + if chunk == "" then + index = index - 1 + chunk = retry + elseif chunk then + if index == n then return chunk + else index = index + 1 end + else base.error("filter returned inappropriate nil") end + end + end + end +end + +----------------------------------------------------------------------------- +-- Source stuff +----------------------------------------------------------------------------- + + +-- create an empty source +local function empty() + return nil +end + +function source.empty() + return empty +end + +function source.error(err) + return function() + return nil, err + end +end + +function source.file(handle, io_err) + if handle then + return function() + local chunk = handle:read(BLOCKSIZE) + if chunk and chunk:len() == 0 then chunk = nil end + if not chunk then handle:close() end + return chunk + end + else return source.error(io_err or "unable to open file") end +end + +function source.simplify(src) + base.assert(src) + return function() + local chunk, err_or_new = src() + src = err_or_new or src + if not chunk then return nil, err_or_new + else return chunk end + end +end + +function source.string(s) + if s then + local i = 1 + return function() + local chunk = string.sub(s, i, i+BLOCKSIZE-1) + i = i + BLOCKSIZE + if chunk ~= "" then return chunk + else return nil end + end + else return source.empty() end +end + +function source.rewind(src) + base.assert(src) + local t = {} + return function(chunk) + if not chunk then + chunk = table.remove(t) + if not chunk then return src() + else return chunk end + else + t[#t+1] = chunk + end + end +end + +function source.chain(src, f) + base.assert(src and f) + local last_in, last_out = "", "" + local state = "feeding" + local err + return function() + if not last_out then + base.error('source is empty!', 2) + end + while true do + if state == "feeding" then + last_in, err = src() + if err then return nil, err end + last_out = f(last_in) + if not last_out then + if last_in then + base.error('filter returned inappropriate nil') + else + return nil + end + elseif last_out ~= "" then + state = "eating" + if last_in then last_in = "" end + return last_out + end + else + last_out = f(last_in) + if last_out == "" then + if last_in == "" then + state = "feeding" + else + base.error('filter returned ""') + end + elseif not last_out then + if last_in then + base.error('filter returned inappropriate nil') + else + return nil + end + else + return last_out + end + end + end + end +end + +-- Sources will be used one after the other, as if they were concatenated +-- (thanks to Wim Couwenberg) +function source.cat(...) + local src = table.remove(arg, 1) + return function() + while src do + local chunk, err = src() + if chunk then return chunk end + if err then return nil, err end + src = table.remove(arg, 1) + end + end +end + +----------------------------------------------------------------------------- +-- Sink stuff +----------------------------------------------------------------------------- + + +function sink.table(t) + t = t or {} + local f = function(chunk, err) + if chunk then t[#t+1] = chunk end + return 1 + end + return f, t +end + +function sink.simplify(snk) + base.assert(snk) + return function(chunk, err) + local ret, err_or_new = snk(chunk, err) + if not ret then return nil, err_or_new end + snk = err_or_new or snk + return 1 + end +end + +function sink.file(handle, io_err) + if handle then + return function(chunk, err) + if not chunk then + handle:close() + return 1 + else return handle:write(chunk) end + end + else return sink.error(io_err or "unable to open file") end +end + +-- creates a sink that discards data +local function null() + return 1 +end + +function sink.null() + return null +end + +function sink.error(err) + return function() + return nil, err + end +end + +function sink.chain(f, snk) + base.assert(f and snk) + return function(chunk, err) + if chunk ~= "" then + local filtered = f(chunk) + local done = chunk and "" + while true do + local ret, snkerr = snk(filtered, err) + if not ret then return nil, snkerr end + if filtered == done then return 1 end + filtered = f(done) + end + else return 1 end + end +end + +----------------------------------------------------------------------------- +-- Pump stuff +----------------------------------------------------------------------------- + + +function pump.step(src, snk) + local chunk, src_err = src() + local ret, snk_err = snk(chunk, src_err) + if chunk and ret then return 1 + else return nil, src_err or snk_err end +end + +function pump.all(src, snk, step) + base.assert(src and snk) + step = step or pump.step + while true do + local ret, err = step(src, snk) + if not ret then + if err then return nil, err + else return 1 end + end + end +end + diff --git a/luci-base/luasrc/model/cbi/admin_network/proto_dhcp.lua b/luci-base/luasrc/model/cbi/admin_network/proto_dhcp.lua new file mode 100644 index 000000000..dc702e4a9 --- /dev/null +++ b/luci-base/luasrc/model/cbi/admin_network/proto_dhcp.lua @@ -0,0 +1,67 @@ +-- Copyright 2011-2012 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local map, section, net = ... +local ifc = net:get_interface() + +local hostname, accept_ra, send_rs +local bcast, defaultroute, peerdns, dns, metric, clientid, vendorclass + + +hostname = section:taboption("general", Value, "hostname", + translate("Hostname to send when requesting DHCP")) + +hostname.placeholder = luci.sys.hostname() +hostname.datatype = "hostname" + + +bcast = section:taboption("advanced", Flag, "broadcast", + translate("Use broadcast flag"), + translate("Required for certain ISPs, e.g. Charter with DOCSIS 3")) + +bcast.default = bcast.disabled + + +defaultroute = section:taboption("advanced", Flag, "defaultroute", + translate("Use default gateway"), + translate("If unchecked, no default route is configured")) + +defaultroute.default = defaultroute.enabled + + +peerdns = section:taboption("advanced", Flag, "peerdns", + translate("Use DNS servers advertised by peer"), + translate("If unchecked, the advertised DNS server addresses are ignored")) + +peerdns.default = peerdns.enabled + + +dns = section:taboption("advanced", DynamicList, "dns", + translate("Use custom DNS servers")) + +dns:depends("peerdns", "") +dns.datatype = "ipaddr" +dns.cast = "string" + + +metric = section:taboption("advanced", Value, "metric", + translate("Use gateway metric")) + +metric.placeholder = "0" +metric.datatype = "uinteger" + + +clientid = section:taboption("advanced", Value, "clientid", + translate("Client ID to send when requesting DHCP")) + + +vendorclass = section:taboption("advanced", Value, "vendorid", + translate("Vendor Class to send when requesting DHCP")) + + +luci.tools.proto.opt_macaddr(section, ifc, translate("Override MAC address")) + + +mtu = section:taboption("advanced", Value, "mtu", translate("Override MTU")) +mtu.placeholder = "1500" +mtu.datatype = "max(9200)" diff --git a/luci-base/luasrc/model/cbi/admin_network/proto_none.lua b/luci-base/luasrc/model/cbi/admin_network/proto_none.lua new file mode 100644 index 000000000..6fdded9ad --- /dev/null +++ b/luci-base/luasrc/model/cbi/admin_network/proto_none.lua @@ -0,0 +1,4 @@ +-- Copyright 2011 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local map, section, net = ... diff --git a/luci-base/luasrc/model/cbi/admin_network/proto_static.lua b/luci-base/luasrc/model/cbi/admin_network/proto_static.lua new file mode 100644 index 000000000..e5aa6b193 --- /dev/null +++ b/luci-base/luasrc/model/cbi/admin_network/proto_static.lua @@ -0,0 +1,97 @@ +-- Copyright 2011 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local map, section, net = ... +local ifc = net:get_interface() + +local ipaddr, netmask, gateway, broadcast, dns, accept_ra, send_rs, ip6addr, ip6gw +local mtu, metric + + +ipaddr = section:taboption("general", Value, "ipaddr", translate("IPv4 address")) +ipaddr.datatype = "ip4addr" + + +netmask = section:taboption("general", Value, "netmask", + translate("IPv4 netmask")) + +netmask.datatype = "ip4addr" +netmask:value("255.255.255.0") +netmask:value("255.255.0.0") +netmask:value("255.0.0.0") + + +gateway = section:taboption("general", Value, "gateway", translate("IPv4 gateway")) +gateway.datatype = "ip4addr" + + +broadcast = section:taboption("general", Value, "broadcast", translate("IPv4 broadcast")) +broadcast.datatype = "ip4addr" + + +dns = section:taboption("general", DynamicList, "dns", + translate("Use custom DNS servers")) + +dns.datatype = "ipaddr" +dns.cast = "string" + + +if luci.model.network:has_ipv6() then + + local ip6assign = section:taboption("general", Value, "ip6assign", translate("IPv6 assignment length"), + translate("Assign a part of given length of every public IPv6-prefix to this interface")) + ip6assign:value("", translate("disabled")) + ip6assign:value("64") + ip6assign.datatype = "max(64)" + + local ip6hint = section:taboption("general", Value, "ip6hint", translate("IPv6 assignment hint"), + translate("Assign prefix parts using this hexadecimal subprefix ID for this interface.")) + for i=33,64 do ip6hint:depends("ip6assign", i) end + + ip6addr = section:taboption("general", Value, "ip6addr", translate("IPv6 address")) + ip6addr.datatype = "ip6addr" + ip6addr:depends("ip6assign", "") + + + ip6gw = section:taboption("general", Value, "ip6gw", translate("IPv6 gateway")) + ip6gw.datatype = "ip6addr" + ip6gw:depends("ip6assign", "") + + + local ip6prefix = s:taboption("general", Value, "ip6prefix", translate("IPv6 routed prefix"), + translate("Public prefix routed to this device for distribution to clients.")) + ip6prefix.datatype = "ip6addr" + ip6prefix:depends("ip6assign", "") + + local ip6ifaceid = s:taboption("general", Value, "ip6ifaceid", translate("IPv6 suffix"), + translate("Optional. Allowed values: 'eui64', 'random', fixed value like '::1' " .. + "or '::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a " .. + "delegating server, use the suffix (like '::1') to form the IPv6 address " .. + "('a:b:c:d::1') for the interface.")) + ip6ifaceid.datatype = "ip6hostid" + ip6ifaceid.placeholder = "::1" + ip6ifaceid.rmempty = true + +end + + +luci.tools.proto.opt_macaddr(section, ifc, translate("Override MAC address")) + + +mtu = section:taboption("advanced", Value, "mtu", translate("Override MTU")) +mtu.placeholder = "1500" +mtu.datatype = "max(9200)" + + +metric = section:taboption("advanced", Value, "metric", + translate("Use gateway metric")) + +metric.default = "1" +metric.datatype = "uinteger" + +local nw = require "luci.model.network".init() +for _, network in ipairs(nw:get_networks()) do + if network:proto() == "static" and network:type() == "macvlan" and tonumber(network:metric()) >= tonumber(metric.default) then + metric.default = network:metric() + 1 + end +end diff --git a/luci-base/luasrc/model/firewall.lua b/luci-base/luasrc/model/firewall.lua new file mode 100644 index 000000000..5573a9b86 --- /dev/null +++ b/luci-base/luasrc/model/firewall.lua @@ -0,0 +1,566 @@ +-- Copyright 2009 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local type, pairs, ipairs, table, luci, math + = type, pairs, ipairs, table, luci, math + +local tpl = require "luci.template.parser" +local utl = require "luci.util" +local uci = require "luci.model.uci" + +module "luci.model.firewall" + + +local uci_r, uci_s + +function _valid_id(x) + return (x and #x > 0 and x:match("^[a-zA-Z0-9_]+$")) +end + +function _get(c, s, o) + return uci_r:get(c, s, o) +end + +function _set(c, s, o, v) + if v ~= nil then + if type(v) == "boolean" then v = v and "1" or "0" end + return uci_r:set(c, s, o, v) + else + return uci_r:delete(c, s, o) + end +end + + +function init(cursor) + uci_r = cursor or uci_r or uci.cursor() + uci_s = uci_r:substate() + + return _M +end + +function save(self, ...) + uci_r:save(...) + uci_r:load(...) +end + +function commit(self, ...) + uci_r:commit(...) + uci_r:load(...) +end + +function get_defaults() + return defaults() +end + +function new_zone(self) + local name = "newzone" + local count = 1 + + while self:get_zone(name) do + count = count + 1 + name = "newzone%d" % count + end + + return self:add_zone(name) +end + +function add_zone(self, n) + if _valid_id(n) and not self:get_zone(n) then + local d = defaults() + local z = uci_r:section("firewall", "zone", nil, { + name = n, + network = " ", + input = d:input() or "DROP", + forward = d:forward() or "DROP", + output = d:output() or "DROP" + }) + + return z and zone(z) + end +end + +function get_zone(self, n) + if uci_r:get("firewall", n) == "zone" then + return zone(n) + else + local z + uci_r:foreach("firewall", "zone", + function(s) + if n and s.name == n then + z = s['.name'] + return false + end + end) + return z and zone(z) + end +end + +function get_zones(self) + local zones = { } + local znl = { } + + uci_r:foreach("firewall", "zone", + function(s) + if s.name then + znl[s.name] = zone(s['.name']) + end + end) + + local z + for z in utl.kspairs(znl) do + zones[#zones+1] = znl[z] + end + + return zones +end + +function get_zone_by_network(self, net) + local z + + uci_r:foreach("firewall", "zone", + function(s) + if s.name and net then + local n + for n in utl.imatch(s.network or s.name) do + if n == net then + z = s['.name'] + return false + end + end + end + end) + + return z and zone(z) +end + +function del_zone(self, n) + local r = false + + if uci_r:get("firewall", n) == "zone" then + local z = uci_r:get("firewall", n, "name") + r = uci_r:delete("firewall", n) + n = z + else + uci_r:foreach("firewall", "zone", + function(s) + if n and s.name == n then + r = uci_r:delete("firewall", s['.name']) + return false + end + end) + end + + if r then + uci_r:foreach("firewall", "rule", + function(s) + if s.src == n or s.dest == n then + uci_r:delete("firewall", s['.name']) + end + end) + + uci_r:foreach("firewall", "redirect", + function(s) + if s.src == n or s.dest == n then + uci_r:delete("firewall", s['.name']) + end + end) + + uci_r:foreach("firewall", "forwarding", + function(s) + if s.src == n or s.dest == n then + uci_r:delete("firewall", s['.name']) + end + end) + end + + return r +end + +function rename_zone(self, old, new) + local r = false + + if _valid_id(new) and not self:get_zone(new) then + uci_r:foreach("firewall", "zone", + function(s) + if old and s.name == old then + if not s.network then + uci_r:set("firewall", s['.name'], "network", old) + end + uci_r:set("firewall", s['.name'], "name", new) + r = true + return false + end + end) + + if r then + uci_r:foreach("firewall", "rule", + function(s) + if s.src == old then + uci_r:set("firewall", s['.name'], "src", new) + end + if s.dest == old then + uci_r:set("firewall", s['.name'], "dest", new) + end + end) + + uci_r:foreach("firewall", "redirect", + function(s) + if s.src == old then + uci_r:set("firewall", s['.name'], "src", new) + end + if s.dest == old then + uci_r:set("firewall", s['.name'], "dest", new) + end + end) + + uci_r:foreach("firewall", "forwarding", + function(s) + if s.src == old then + uci_r:set("firewall", s['.name'], "src", new) + end + if s.dest == old then + uci_r:set("firewall", s['.name'], "dest", new) + end + end) + end + end + + return r +end + +function del_network(self, net) + local z + if net then + for _, z in ipairs(self:get_zones()) do + z:del_network(net) + end + end +end + + +defaults = utl.class() +function defaults.__init__(self) + uci_r:foreach("firewall", "defaults", + function(s) + self.sid = s['.name'] + return false + end) + + self.sid = self.sid or uci_r:section("firewall", "defaults", nil, { }) +end + +function defaults.get(self, opt) + return _get("firewall", self.sid, opt) +end + +function defaults.set(self, opt, val) + return _set("firewall", self.sid, opt, val) +end + +function defaults.syn_flood(self) + return (self:get("syn_flood") == "1") +end + +function defaults.drop_invalid(self) + return (self:get("drop_invalid") == "1") +end + +function defaults.input(self) + return self:get("input") or "DROP" +end + +function defaults.forward(self) + return self:get("forward") or "DROP" +end + +function defaults.output(self) + return self:get("output") or "DROP" +end + + +zone = utl.class() +function zone.__init__(self, z) + if uci_r:get("firewall", z) == "zone" then + self.sid = z + self.data = uci_r:get_all("firewall", z) + else + uci_r:foreach("firewall", "zone", + function(s) + if s.name == z then + self.sid = s['.name'] + self.data = s + return false + end + end) + end +end + +function zone.get(self, opt) + return _get("firewall", self.sid, opt) +end + +function zone.set(self, opt, val) + return _set("firewall", self.sid, opt, val) +end + +function zone.masq(self) + return (self:get("masq") == "1") +end + +function zone.name(self) + return self:get("name") +end + +function zone.network(self) + return self:get("network") +end + +function zone.input(self) + return self:get("input") or defaults():input() or "DROP" +end + +function zone.forward(self) + return self:get("forward") or defaults():forward() or "DROP" +end + +function zone.output(self) + return self:get("output") or defaults():output() or "DROP" +end + +function zone.add_network(self, net) + if uci_r:get("network", net) == "interface" then + local nets = { } + + local n + for n in utl.imatch(self:get("network") or self:get("name")) do + if n ~= net then + nets[#nets+1] = n + end + end + + nets[#nets+1] = net + + _M:del_network(net) + self:set("network", table.concat(nets, " ")) + end +end + +function zone.del_network(self, net) + local nets = { } + + local n + for n in utl.imatch(self:get("network") or self:get("name")) do + if n ~= net then + nets[#nets+1] = n + end + end + + if #nets > 0 then + self:set("network", table.concat(nets, " ")) + else + self:set("network", " ") + end +end + +function zone.get_networks(self) + local nets = { } + + local n + for n in utl.imatch(self:get("network") or self:get("name")) do + nets[#nets+1] = n + end + + return nets +end + +function zone.clear_networks(self) + self:set("network", " ") +end + +function zone.get_forwardings_by(self, what) + local name = self:name() + local forwards = { } + + uci_r:foreach("firewall", "forwarding", + function(s) + if s.src and s.dest and s[what] == name then + forwards[#forwards+1] = forwarding(s['.name']) + end + end) + + return forwards +end + +function zone.add_forwarding_to(self, dest) + local exist, forward + + for _, forward in ipairs(self:get_forwardings_by('src')) do + if forward:dest() == dest then + exist = true + break + end + end + + if not exist and dest ~= self:name() and _valid_id(dest) then + local s = uci_r:section("firewall", "forwarding", nil, { + src = self:name(), + dest = dest + }) + + return s and forwarding(s) + end +end + +function zone.add_forwarding_from(self, src) + local exist, forward + + for _, forward in ipairs(self:get_forwardings_by('dest')) do + if forward:src() == src then + exist = true + break + end + end + + if not exist and src ~= self:name() and _valid_id(src) then + local s = uci_r:section("firewall", "forwarding", nil, { + src = src, + dest = self:name() + }) + + return s and forwarding(s) + end +end + +function zone.del_forwardings_by(self, what) + local name = self:name() + + uci_r:delete_all("firewall", "forwarding", + function(s) + return (s.src and s.dest and s[what] == name) + end) +end + +function zone.add_redirect(self, options) + options = options or { } + options.src = self:name() + + local s = uci_r:section("firewall", "redirect", nil, options) + return s and redirect(s) +end + +function zone.add_rule(self, options) + options = options or { } + options.src = self:name() + + local s = uci_r:section("firewall", "rule", nil, options) + return s and rule(s) +end + +function zone.get_color(self) + if self and self:name() == "lan" then + return "#90f090" + elseif self and self:name() == "wan" then + return "#f09090" + elseif self then + math.randomseed(tpl.hash(self:name())) + + local r = math.random(128) + local g = math.random(128) + local min = 0 + local max = 128 + + if ( r + g ) < 128 then + min = 128 - r - g + else + max = 255 - r - g + end + + local b = min + math.floor( math.random() * ( max - min ) ) + + return "#%02x%02x%02x" % { 0xFF - r, 0xFF - g, 0xFF - b } + else + return "#eeeeee" + end +end + + +forwarding = utl.class() +function forwarding.__init__(self, f) + self.sid = f +end + +function forwarding.src(self) + return uci_r:get("firewall", self.sid, "src") +end + +function forwarding.dest(self) + return uci_r:get("firewall", self.sid, "dest") +end + +function forwarding.src_zone(self) + return zone(self:src()) +end + +function forwarding.dest_zone(self) + return zone(self:dest()) +end + + +rule = utl.class() +function rule.__init__(self, f) + self.sid = f +end + +function rule.get(self, opt) + return _get("firewall", self.sid, opt) +end + +function rule.set(self, opt, val) + return _set("firewall", self.sid, opt, val) +end + +function rule.src(self) + return uci_r:get("firewall", self.sid, "src") +end + +function rule.dest(self) + return uci_r:get("firewall", self.sid, "dest") +end + +function rule.src_zone(self) + return zone(self:src()) +end + +function rule.dest_zone(self) + return zone(self:dest()) +end + + +redirect = utl.class() +function redirect.__init__(self, f) + self.sid = f +end + +function redirect.get(self, opt) + return _get("firewall", self.sid, opt) +end + +function redirect.set(self, opt, val) + return _set("firewall", self.sid, opt, val) +end + +function redirect.src(self) + return uci_r:get("firewall", self.sid, "src") +end + +function redirect.dest(self) + return uci_r:get("firewall", self.sid, "dest") +end + +function redirect.src_zone(self) + return zone(self:src()) +end + +function redirect.dest_zone(self) + return zone(self:dest()) +end diff --git a/luci-base/luasrc/model/ipkg.lua b/luci-base/luasrc/model/ipkg.lua new file mode 100644 index 000000000..e653b0346 --- /dev/null +++ b/luci-base/luasrc/model/ipkg.lua @@ -0,0 +1,242 @@ +-- Copyright 2008-2011 Jo-Philipp Wich +-- Copyright 2008 Steven Barth +-- Licensed to the public under the Apache License 2.0. + +local os = require "os" +local io = require "io" +local fs = require "nixio.fs" +local util = require "luci.util" + +local type = type +local pairs = pairs +local error = error +local table = table + +local ipkg = "opkg --force-removal-of-dependent-packages --force-overwrite --nocase" +local icfg = "/etc/opkg.conf" + +module "luci.model.ipkg" + + +-- Internal action function +local function _action(cmd, ...) + local pkg = "" + for k, v in pairs({...}) do + pkg = pkg .. " '" .. v:gsub("'", "") .. "'" + end + + local c = "%s %s %s >/tmp/opkg.stdout 2>/tmp/opkg.stderr" %{ ipkg, cmd, pkg } + local r = os.execute(c) + local e = fs.readfile("/tmp/opkg.stderr") + local o = fs.readfile("/tmp/opkg.stdout") + + fs.unlink("/tmp/opkg.stderr") + fs.unlink("/tmp/opkg.stdout") + + return r, o or "", e or "" +end + +-- Internal parser function +local function _parselist(rawdata) + if type(rawdata) ~= "function" then + error("OPKG: Invalid rawdata given") + end + + local data = {} + local c = {} + local l = nil + + for line in rawdata do + if line:sub(1, 1) ~= " " then + local key, val = line:match("(.-): ?(.*)%s*") + + if key and val then + if key == "Package" then + c = {Package = val} + data[val] = c + elseif key == "Status" then + c.Status = {} + for j in val:gmatch("([^ ]+)") do + c.Status[j] = true + end + else + c[key] = val + end + l = key + end + else + -- Multi-line field + c[l] = c[l] .. "\n" .. line + end + end + + return data +end + +-- Internal lookup function +local function _lookup(act, pkg) + local cmd = ipkg .. " " .. act + if pkg then + cmd = cmd .. " '" .. pkg:gsub("'", "") .. "'" + end + + -- OPKG sometimes kills the whole machine because it sucks + -- Therefore we have to use a sucky approach too and use + -- tmpfiles instead of directly reading the output + local tmpfile = os.tmpname() + os.execute(cmd .. (" >%s 2>/dev/null" % tmpfile)) + + local data = _parselist(io.lines(tmpfile)) + os.remove(tmpfile) + return data +end + + +function info(pkg) + return _lookup("info", pkg) +end + +function status(pkg) + return _lookup("status", pkg) +end + +function install(...) + return _action("install", ...) +end + +function installed(pkg) + local p = status(pkg)[pkg] + return (p and p.Status and p.Status.installed) +end + +function remove(...) + return _action("remove", ...) +end + +function update() + return _action("update") +end + +function upgrade() + return _action("upgrade") +end + +-- List helper +local function _list(action, pat, cb) + local fd = io.popen(ipkg .. " " .. action .. + (pat and (" '%s'" % pat:gsub("'", "")) or "")) + + if fd then + local name, version, sz, desc + while true do + local line = fd:read("*l") + if not line then break end + + name, version, sz, desc = line:match("^(.-) %- (.-) %- (.-) %- (.+)") + + if not name then + name, version, sz = line:match("^(.-) %- (.-) %- (.+)") + desc = "" + end + + if name and version then + if #version > 26 then + version = version:sub(1,21) .. ".." .. version:sub(-3,-1) + end + + cb(name, version, sz, desc) + end + + name = nil + version = nil + sz = nil + desc = nil + end + + fd:close() + end +end + +function list_all(pat, cb) + _list("list --size", pat, cb) +end + +function list_installed(pat, cb) + _list("list_installed --size", pat, cb) +end + +function find(pat, cb) + _list("find --size", pat, cb) +end + + +function overlay_root() + local od = "/" + local fd = io.open(icfg, "r") + + if fd then + local ln + + repeat + ln = fd:read("*l") + if ln and ln:match("^%s*option%s+overlay_root%s+") then + od = ln:match("^%s*option%s+overlay_root%s+(%S+)") + + local s = fs.stat(od) + if not s or s.type ~= "dir" then + od = "/" + end + + break + end + until not ln + + fd:close() + end + + return od +end + +function compare_versions(ver1, comp, ver2) + if not ver1 or not ver2 + or not comp or not (#comp > 0) then + error("Invalid parameters") + return nil + end + -- correct compare string + if comp == "<>" or comp == "><" or comp == "!=" or comp == "~=" then comp = "~=" + elseif comp == "<=" or comp == "<" or comp == "=<" then comp = "<=" + elseif comp == ">=" or comp == ">" or comp == "=>" then comp = ">=" + elseif comp == "=" or comp == "==" then comp = "==" + elseif comp == "<<" then comp = "<" + elseif comp == ">>" then comp = ">" + else + error("Invalid compare string") + return nil + end + + local av1 = util.split(ver1, "[%.%-]", nil, true) + local av2 = util.split(ver2, "[%.%-]", nil, true) + + local max = table.getn(av1) + if (table.getn(av1) < table.getn(av2)) then + max = table.getn(av2) + end + + for i = 1, max, 1 do + local s1 = av1[i] or "" + local s2 = av2[i] or "" + + -- first "not equal" found return true + if comp == "~=" and (s1 ~= s2) then return true end + -- first "lower" found return true + if (comp == "<" or comp == "<=") and (s1 < s2) then return true end + -- first "greater" found return true + if (comp == ">" or comp == ">=") and (s1 > s2) then return true end + -- not equal then return false + if (s1 ~= s2) then return false end + end + + -- all equal and not compare greater or lower then true + return not (comp == "<" or comp == ">") +end diff --git a/luci-base/luasrc/model/ipkg.luadoc b/luci-base/luasrc/model/ipkg.luadoc new file mode 100644 index 000000000..4e1548dda --- /dev/null +++ b/luci-base/luasrc/model/ipkg.luadoc @@ -0,0 +1,125 @@ +---[[ +LuCI OPKG call abstraction library +]] +module "luci.model.ipkg" + +---[[ +Return information about installed and available packages. + +@class function +@name info +@param pkg Limit output to a (set of) packages +@return Table containing package information +]] + +---[[ +Return the package status of one or more packages. + +@class function +@name status +@param pkg Limit output to a (set of) packages +@return Table containing package status information +]] + +---[[ +Install one or more packages. + +@class function +@name install +@param ... List of packages to install +@return Boolean indicating the status of the action +@return OPKG return code, STDOUT and STDERR +]] + +---[[ +Determine whether a given package is installed. + +@class function +@name installed +@param pkg Package +@return Boolean +]] + +---[[ +Remove one or more packages. + +@class function +@name remove +@param ... List of packages to install +@return Boolean indicating the status of the action +@return OPKG return code, STDOUT and STDERR +]] + +---[[ +Update package lists. + +@class function +@name update +@return Boolean indicating the status of the action +@return OPKG return code, STDOUT and STDERR +]] + +---[[ +Upgrades all installed packages. + +@class function +@name upgrade +@return Boolean indicating the status of the action +@return OPKG return code, STDOUT and STDERR +]] + +---[[ +List all packages known to opkg. + +@class function +@name list_all +@param pat Only find packages matching this pattern, nil lists all packages +@param cb Callback function invoked for each package, receives name, version and description as arguments +@return nothing +]] + +---[[ +List installed packages. + +@class function +@name list_installed +@param pat Only find packages matching this pattern, nil lists all packages +@param cb Callback function invoked for each package, receives name, version and description as arguments +@return nothing +]] + +---[[ +Find packages that match the given pattern. + +@class function +@name find +@param pat Find packages whose names or descriptions match this pattern, nil results in zero results +@param cb Callback function invoked for each patckage, receives name, version and description as arguments +@return nothing +]] + +---[[ +Determines the overlay root used by opkg. + +@class function +@name overlay_root +@return String containing the directory path of the overlay root. +]] + +---[[ +lua version of opkg compare-versions + +@class function +@name compare_versions +@param ver1 string version 1 +@param ver2 string version 2 +@param comp string compare versions using + "<=" or "<" lower-equal + ">" or ">=" greater-equal + "=" equal + "<<" lower + ">>" greater + "~=" not equal +@return Boolean indicating the status of the compare +]] + diff --git a/luci-base/luasrc/model/network.lua b/luci-base/luasrc/model/network.lua new file mode 100644 index 000000000..49d91b875 --- /dev/null +++ b/luci-base/luasrc/model/network.lua @@ -0,0 +1,1707 @@ +-- Copyright 2009-2015 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local type, next, pairs, ipairs, loadfile, table, select + = type, next, pairs, ipairs, loadfile, table, select + +local tonumber, tostring, math = tonumber, tostring, math + +local require = require + +local nxo = require "nixio" +local nfs = require "nixio.fs" +local ipc = require "luci.ip" +local sys = require "luci.sys" +local utl = require "luci.util" +local dsp = require "luci.dispatcher" +local uci = require "luci.model.uci" +local lng = require "luci.i18n" +local jsc = require "luci.jsonc" + +module "luci.model.network" + + +IFACE_PATTERNS_VIRTUAL = { } +IFACE_PATTERNS_IGNORE = { "^wmaster%d", "^wifi%d", "^hwsim%d", "^imq%d", "^ifb%d", "^mon%.wlan%d", "^sit%d", "^gre%d", "^gretap%d", "^ip6gre%d", "^ip6tnl%d", "^tunl%d", "^lo$" } +IFACE_PATTERNS_WIRELESS = { "^wlan%d", "^wl%d", "^ath%d", "^%w+%.network%d" } + + +protocol = utl.class() + +local _protocols = { } + +local _interfaces, _bridge, _switch, _tunnel, _swtopo +local _ubusnetcache, _ubusdevcache, _ubuswificache +local _uci + +function _filter(c, s, o, r) + local val = _uci:get(c, s, o) + if val then + local l = { } + if type(val) == "string" then + for val in val:gmatch("%S+") do + if val ~= r then + l[#l+1] = val + end + end + if #l > 0 then + _uci:set(c, s, o, table.concat(l, " ")) + else + _uci:delete(c, s, o) + end + elseif type(val) == "table" then + for _, val in ipairs(val) do + if val ~= r then + l[#l+1] = val + end + end + if #l > 0 then + _uci:set(c, s, o, l) + else + _uci:delete(c, s, o) + end + end + end +end + +function _append(c, s, o, a) + local val = _uci:get(c, s, o) or "" + if type(val) == "string" then + local l = { } + for val in val:gmatch("%S+") do + if val ~= a then + l[#l+1] = val + end + end + l[#l+1] = a + _uci:set(c, s, o, table.concat(l, " ")) + elseif type(val) == "table" then + local l = { } + for _, val in ipairs(val) do + if val ~= a then + l[#l+1] = val + end + end + l[#l+1] = a + _uci:set(c, s, o, l) + end +end + +function _stror(s1, s2) + if not s1 or #s1 == 0 then + return s2 and #s2 > 0 and s2 + else + return s1 + end +end + +function _get(c, s, o) + return _uci:get(c, s, o) +end + +function _set(c, s, o, v) + if v ~= nil then + if type(v) == "boolean" then v = v and "1" or "0" end + return _uci:set(c, s, o, v) + else + return _uci:delete(c, s, o) + end +end + +function _wifi_iface(x) + local _, p + for _, p in ipairs(IFACE_PATTERNS_WIRELESS) do + if x:match(p) then + return true + end + end + return false +end + +function _wifi_state(key, val, field) + local radio, radiostate, ifc, ifcstate + + if not next(_ubuswificache) then + _ubuswificache = utl.ubus("network.wireless", "status", {}) or {} + + -- workaround extended section format + for radio, radiostate in pairs(_ubuswificache) do + for ifc, ifcstate in pairs(radiostate.interfaces) do + if ifcstate.section and ifcstate.section:sub(1, 1) == '@' then + local s = _uci:get_all('wireless.%s' % ifcstate.section) + if s then + ifcstate.section = s['.name'] + end + end + end + end + end + + for radio, radiostate in pairs(_ubuswificache) do + for ifc, ifcstate in pairs(radiostate.interfaces) do + if ifcstate[key] == val then + return ifcstate[field] + end + end + end +end + +function _wifi_lookup(ifn) + -- got a radio#.network# pseudo iface, locate the corresponding section + local radio, ifnidx = ifn:match("^(%w+)%.network(%d+)$") + if radio and ifnidx then + local sid = nil + local num = 0 + + ifnidx = tonumber(ifnidx) + _uci:foreach("wireless", "wifi-iface", + function(s) + if s.device == radio then + num = num + 1 + if num == ifnidx then + sid = s['.name'] + return false + end + end + end) + + return sid + + -- looks like wifi, try to locate the section via ubus state + elseif _wifi_iface(ifn) then + return _wifi_state("ifname", ifn, "section") + end +end + +function _iface_virtual(x) + local _, p + for _, p in ipairs(IFACE_PATTERNS_VIRTUAL) do + if x:match(p) then + return true + end + end + return false +end + +function _iface_ignore(x) + local _, p + for _, p in ipairs(IFACE_PATTERNS_IGNORE) do + if x:match(p) then + return true + end + end + return false +end + +function init(cursor) + _uci = cursor or _uci or uci.cursor() + + _interfaces = { } + _bridge = { } + _switch = { } + _tunnel = { } + _swtopo = { } + + _ubusnetcache = { } + _ubusdevcache = { } + _ubuswificache = { } + + -- read interface information + local n, i + for n, i in ipairs(nxo.getifaddrs()) do + local name = i.name:match("[^:]+") + + if _iface_virtual(name) then + _tunnel[name] = true + end + + if _tunnel[name] or not (_iface_ignore(name) or _iface_virtual(name)) then + _interfaces[name] = _interfaces[name] or { + idx = i.ifindex or n, + name = name, + rawname = i.name, + flags = { }, + ipaddrs = { }, + ip6addrs = { } + } + + if i.family == "packet" then + _interfaces[name].flags = i.flags + _interfaces[name].stats = i.data + _interfaces[name].macaddr = i.addr + elseif i.family == "inet" then + _interfaces[name].ipaddrs[#_interfaces[name].ipaddrs+1] = ipc.IPv4(i.addr, i.netmask) + elseif i.family == "inet6" then + _interfaces[name].ip6addrs[#_interfaces[name].ip6addrs+1] = ipc.IPv6(i.addr, i.netmask) + end + end + end + + -- read bridge informaton + local b, l + for l in utl.execi("brctl show") do + if not l:match("STP") then + local r = utl.split(l, "%s+", nil, true) + if #r == 4 then + b = { + name = r[1], + id = r[2], + stp = r[3] == "yes", + ifnames = { _interfaces[r[4]] } + } + if b.ifnames[1] then + b.ifnames[1].bridge = b + end + _bridge[r[1]] = b + elseif b then + b.ifnames[#b.ifnames+1] = _interfaces[r[2]] + b.ifnames[#b.ifnames].bridge = b + end + end + end + + -- read switch topology + local boardinfo = jsc.parse(nfs.readfile("/etc/board.json") or "") + if type(boardinfo) == "table" and type(boardinfo.switch) == "table" then + local switch, layout + for switch, layout in pairs(boardinfo.switch) do + if type(layout) == "table" and type(layout.ports) == "table" then + local _, port + local ports = { } + local nports = { } + local netdevs = { } + + for _, port in ipairs(layout.ports) do + if type(port) == "table" and + type(port.num) == "number" and + (type(port.role) == "string" or + type(port.device) == "string") + then + local spec = { + num = port.num, + role = port.role or "cpu", + index = port.index or port.num + } + + if port.device then + spec.device = port.device + spec.tagged = port.need_tag + netdevs[tostring(port.num)] = port.device + end + + ports[#ports+1] = spec + + if port.role then + nports[port.role] = (nports[port.role] or 0) + 1 + end + end + end + + table.sort(ports, function(a, b) + if a.role ~= b.role then + return (a.role < b.role) + end + + return (a.index < b.index) + end) + + local pnum, role + for _, port in ipairs(ports) do + if port.role ~= role then + role = port.role + pnum = 1 + end + + if role == "cpu" then + port.label = "CPU (%s)" % port.device + elseif nports[role] > 1 then + port.label = "%s %d" %{ role:upper(), pnum } + pnum = pnum + 1 + else + port.label = role:upper() + end + + port.role = nil + port.index = nil + end + + _swtopo[switch] = { + ports = ports, + netdevs = netdevs + } + end + end + end + + return _M +end + +function save(self, ...) + _uci:save(...) + _uci:load(...) +end + +function commit(self, ...) + _uci:commit(...) + _uci:load(...) +end + +function ifnameof(self, x) + if utl.instanceof(x, interface) then + return x:name() + elseif utl.instanceof(x, protocol) then + return x:ifname() + elseif type(x) == "string" then + return x:match("^[^:]+") + end +end + +function get_protocol(self, protoname, netname) + local v = _protocols[protoname] + if v then + return v(netname or "__dummy__") + end +end + +function get_protocols(self) + local p = { } + local _, v + for _, v in ipairs(_protocols) do + p[#p+1] = v("__dummy__") + end + return p +end + +function register_protocol(self, protoname) + local proto = utl.class(protocol) + + function proto.__init__(self, name) + self.sid = name + end + + function proto.proto(self) + return protoname + end + + _protocols[#_protocols+1] = proto + _protocols[protoname] = proto + + return proto +end + +function register_pattern_virtual(self, pat) + IFACE_PATTERNS_VIRTUAL[#IFACE_PATTERNS_VIRTUAL+1] = pat +end + + +function has_ipv6(self) + return nfs.access("/proc/net/ipv6_route") +end + +function add_network(self, n, options) + local oldnet = self:get_network(n) + if n and #n > 0 and n:match("^[a-zA-Z0-9_]+$") and not oldnet then + if _uci:section("network", "interface", n, options) then + return network(n) + end + elseif oldnet and oldnet:is_empty() then + if options then + local k, v + for k, v in pairs(options) do + oldnet:set(k, v) + end + end + return oldnet + end +end + +function get_network(self, n) + if n and _uci:get("network", n) == "interface" then + return network(n) + end +end + +function get_networks(self) + local nets = { } + local nls = { } + + _uci:foreach("network", "interface", + function(s) + nls[s['.name']] = network(s['.name']) + end) + + local n + for n in utl.kspairs(nls) do + nets[#nets+1] = nls[n] + end + + return nets +end + +function del_network(self, n) + local r = _uci:delete("network", n) + if r then + _uci:delete_all("network", "alias", + function(s) return (s.interface == n) end) + + _uci:delete_all("network", "route", + function(s) return (s.interface == n) end) + + _uci:delete_all("network", "route6", + function(s) return (s.interface == n) end) + + _uci:foreach("wireless", "wifi-iface", + function(s) + local net + local rest = { } + for net in utl.imatch(s.network) do + if net ~= n then + rest[#rest+1] = net + end + end + if #rest > 0 then + _uci:set("wireless", s['.name'], "network", + table.concat(rest, " ")) + else + _uci:delete("wireless", s['.name'], "network") + end + end) + end + return r +end + +function rename_network(self, old, new) + local r + if new and #new > 0 and new:match("^[a-zA-Z0-9_]+$") and not self:get_network(new) then + r = _uci:section("network", "interface", new, _uci:get_all("network", old)) + + if r then + _uci:foreach("network", "alias", + function(s) + if s.interface == old then + _uci:set("network", s['.name'], "interface", new) + end + end) + + _uci:foreach("network", "route", + function(s) + if s.interface == old then + _uci:set("network", s['.name'], "interface", new) + end + end) + + _uci:foreach("network", "route6", + function(s) + if s.interface == old then + _uci:set("network", s['.name'], "interface", new) + end + end) + + _uci:foreach("wireless", "wifi-iface", + function(s) + local net + local list = { } + for net in utl.imatch(s.network) do + if net == old then + list[#list+1] = new + else + list[#list+1] = net + end + end + if #list > 0 then + _uci:set("wireless", s['.name'], "network", + table.concat(list, " ")) + end + end) + + _uci:delete("network", old) + end + end + return r or false +end + +function get_interface(self, i) + if _interfaces[i] or _wifi_iface(i) then + return interface(i) + else + local ifc + local num = { } + _uci:foreach("wireless", "wifi-iface", + function(s) + if s.device then + num[s.device] = num[s.device] and num[s.device] + 1 or 1 + if s['.name'] == i then + ifc = interface( + "%s.network%d" %{s.device, num[s.device] }) + return false + end + end + end) + return ifc + end +end + +function get_interfaces(self) + local iface + local ifaces = { } + local nfs = { } + + -- find normal interfaces + _uci:foreach("network", "interface", + function(s) + for iface in utl.imatch(s.ifname) do + if not _iface_ignore(iface) and not _iface_virtual(iface) and not _wifi_iface(iface) then + nfs[iface] = interface(iface) + end + end + end) + + for iface in utl.kspairs(_interfaces) do + if not (nfs[iface] or _iface_ignore(iface) or _iface_virtual(iface) or _wifi_iface(iface)) then + nfs[iface] = interface(iface) + end + end + + -- find vlan interfaces + _uci:foreach("network", "switch_vlan", + function(s) + if type(s.ports) ~= "string" or + type(s.device) ~= "string" or + type(_swtopo[s.device]) ~= "table" + then + return + end + + local pnum, ptag + for pnum, ptag in s.ports:gmatch("(%d+)([tu]?)") do + local netdev = _swtopo[s.device].netdevs[pnum] + if netdev then + if not nfs[netdev] then + nfs[netdev] = interface(netdev) + end + _switch[netdev] = true + + if ptag == "t" then + local vid = tonumber(s.vid or s.vlan) + if vid ~= nil and vid >= 0 and vid <= 4095 then + local iface = "%s.%d" %{ netdev, vid } + if not nfs[iface] then + nfs[iface] = interface(iface) + end + _switch[iface] = true + end + end + end + end + end) + + for iface in utl.kspairs(nfs) do + ifaces[#ifaces+1] = nfs[iface] + end + + -- find wifi interfaces + local num = { } + local wfs = { } + _uci:foreach("wireless", "wifi-iface", + function(s) + if s.device then + num[s.device] = num[s.device] and num[s.device] + 1 or 1 + local i = "%s.network%d" %{ s.device, num[s.device] } + wfs[i] = interface(i) + end + end) + + for iface in utl.kspairs(wfs) do + ifaces[#ifaces+1] = wfs[iface] + end + + return ifaces +end + +function ignore_interface(self, x) + return _iface_ignore(x) +end + +function get_wifidev(self, dev) + if _uci:get("wireless", dev) == "wifi-device" then + return wifidev(dev) + end +end + +function get_wifidevs(self) + local devs = { } + local wfd = { } + + _uci:foreach("wireless", "wifi-device", + function(s) wfd[#wfd+1] = s['.name'] end) + + local dev + for _, dev in utl.vspairs(wfd) do + devs[#devs+1] = wifidev(dev) + end + + return devs +end + +function get_wifinet(self, net) + local wnet = _wifi_lookup(net) + if wnet then + return wifinet(wnet) + end +end + +function add_wifinet(self, net, options) + if type(options) == "table" and options.device and + _uci:get("wireless", options.device) == "wifi-device" + then + local wnet = _uci:section("wireless", "wifi-iface", nil, options) + return wifinet(wnet) + end +end + +function del_wifinet(self, net) + local wnet = _wifi_lookup(net) + if wnet then + _uci:delete("wireless", wnet) + return true + end + return false +end + +function get_status_by_route(self, addr, mask) + local _, object + for _, object in ipairs(utl.ubus()) do + local net = object:match("^network%.interface%.(.+)") + if net then + local s = utl.ubus(object, "status", {}) + if s and s.route then + local rt + for _, rt in ipairs(s.route) do + if not rt.table and rt.target == addr and rt.mask == mask then + return net, s + end + end + end + end + end +end + +function get_status_by_address(self, addr) + local _, object + for _, object in ipairs(utl.ubus()) do + local net = object:match("^network%.interface%.(.+)") + if net then + local s = utl.ubus(object, "status", {}) + if s and s['ipv4-address'] then + local a + for _, a in ipairs(s['ipv4-address']) do + if a.address == addr then + return net, s + end + end + end + if s and s['ipv6-address'] then + local a + for _, a in ipairs(s['ipv6-address']) do + if a.address == addr then + return net, s + end + end + end + end + end +end + +function get_wannet(self) + local net, stat = self:get_status_by_route("0.0.0.0", 0) + return net and network(net, stat.proto) +end + +function get_wandev(self) + local _, stat = self:get_status_by_route("0.0.0.0", 0) + return stat and interface(stat.l3_device or stat.device) +end + +function get_wan6net(self) + local net, stat = self:get_status_by_route("::", 0) + return net and network(net, stat.proto) +end + +function get_wan6dev(self) + local _, stat = self:get_status_by_route("::", 0) + return stat and interface(stat.l3_device or stat.device) +end + +function get_switch_topologies(self) + return _swtopo +end + + +function network(name, proto) + if name then + local p = proto or _uci:get("network", name, "proto") + local c = p and _protocols[p] or protocol + return c(name) + end +end + +function protocol.__init__(self, name) + self.sid = name +end + +function protocol._get(self, opt) + local v = _uci:get("network", self.sid, opt) + if type(v) == "table" then + return table.concat(v, " ") + end + return v or "" +end + +function protocol._ubus(self, field) + if not _ubusnetcache[self.sid] then + _ubusnetcache[self.sid] = utl.ubus("network.interface.%s" % self.sid, + "status", { }) + end + if _ubusnetcache[self.sid] and field then + return _ubusnetcache[self.sid][field] + end + return _ubusnetcache[self.sid] +end + +function protocol.get(self, opt) + return _get("network", self.sid, opt) +end + +function protocol.set(self, opt, val) + return _set("network", self.sid, opt, val) +end + +function protocol.ifname(self) + local ifname + if self:is_floating() then + ifname = self:_ubus("l3_device") + else + ifname = self:_ubus("device") + end + if not ifname then + local num = { } + _uci:foreach("wireless", "wifi-iface", + function(s) + if s.device then + num[s.device] = num[s.device] + and num[s.device] + 1 or 1 + + local net + for net in utl.imatch(s.network) do + if net == self.sid then + ifname = "%s.network%d" %{ s.device, num[s.device] } + return false + end + end + end + end) + end + return ifname +end + +function protocol.proto(self) + return "none" +end + +function protocol.get_i18n(self) + local p = self:proto() + if p == "none" then + return lng.translate("Unmanaged") + elseif p == "static" then + return lng.translate("Static address") + elseif p == "dhcp" then + return lng.translate("DHCP client") + else + return lng.translate("Unknown") + end +end + +function protocol.type(self) + return self:_get("type") +end + +function protocol.name(self) + return self.sid +end + +function protocol.uptime(self) + return self:_ubus("uptime") or 0 +end + +function protocol.expires(self) + local u = self:_ubus("uptime") + local d = self:_ubus("data") + + if type(u) == "number" and type(d) == "table" and + type(d.leasetime) == "number" + then + local r = (d.leasetime - (u % d.leasetime)) + return r > 0 and r or 0 + end + + return -1 +end + +function protocol.metric(self) + return self:_ubus("metric") or 0 +end + +function protocol.ipaddr(self) + local addrs = self:_ubus("ipv4-address") + return addrs and #addrs > 0 and addrs[1].address +end + +function protocol.ipaddrs(self) + local addrs = self:_ubus("ipv4-address") + local rv = { } + + if type(addrs) == "table" then + local n, addr + for n, addr in ipairs(addrs) do + rv[#rv+1] = "%s/%d" %{ addr.address, addr.mask } + end + end + + return rv +end + +function protocol.netmask(self) + local addrs = self:_ubus("ipv4-address") + return addrs and #addrs > 0 and + ipc.IPv4("0.0.0.0/%d" % addrs[1].mask):mask():string() +end + +function protocol.gwaddr(self) + local _, route + for _, route in ipairs(self:_ubus("route") or { }) do + if route.target == "0.0.0.0" and route.mask == 0 then + return route.nexthop + end + end +end + +function protocol.dnsaddrs(self) + local dns = { } + local _, addr + for _, addr in ipairs(self:_ubus("dns-server") or { }) do + if not addr:match(":") then + dns[#dns+1] = addr + end + end + return dns +end + +function protocol.ip6addr(self) + local addrs = self:_ubus("ipv6-address") + if addrs and #addrs > 0 then + return "%s/%d" %{ addrs[1].address, addrs[1].mask } + else + addrs = self:_ubus("ipv6-prefix-assignment") + if addrs and #addrs > 0 then + return "%s/%d" %{ addrs[1].address, addrs[1].mask } + end + end +end + +function protocol.ip6addrs(self) + local addrs = self:_ubus("ipv6-address") + local rv = { } + local n, addr + + if type(addrs) == "table" then + for n, addr in ipairs(addrs) do + rv[#rv+1] = "%s/%d" %{ addr.address, addr.mask } + end + end + + addrs = self:_ubus("ipv6-prefix-assignment") + + if type(addrs) == "table" then + for n, addr in ipairs(addrs) do + rv[#rv+1] = "%s1/%d" %{ addr.address, addr.mask } + end + end + + return rv +end + +function protocol.gw6addr(self) + local _, route + for _, route in ipairs(self:_ubus("route") or { }) do + if route.target == "::" and route.mask == 0 then + return ipc.IPv6(route.nexthop):string() + end + end +end + +function protocol.dns6addrs(self) + local dns = { } + local _, addr + for _, addr in ipairs(self:_ubus("dns-server") or { }) do + if addr:match(":") then + dns[#dns+1] = addr + end + end + return dns +end + +function protocol.ip6prefix(self) + local prefix = self:_ubus("ipv6-prefix") + if prefix and #prefix > 0 then + return "%s/%d" %{ prefix[1].address, prefix[1].mask } + end +end + +function protocol.is_bridge(self) + return (not self:is_virtual() and self:type() == "bridge") +end + +function protocol.opkg_package(self) + return nil +end + +function protocol.is_installed(self) + return true +end + +function protocol.is_virtual(self) + return false +end + +function protocol.is_floating(self) + return false +end + +function protocol.is_empty(self) + if self:is_floating() then + return false + else + local rv = true + + if (self:_get("ifname") or ""):match("%S+") then + rv = false + end + + _uci:foreach("wireless", "wifi-iface", + function(s) + local n + for n in utl.imatch(s.network) do + if n == self.sid then + rv = false + return false + end + end + end) + + return rv + end +end + +function protocol.add_interface(self, ifname) + ifname = _M:ifnameof(ifname) + if ifname and not self:is_floating() then + -- if its a wifi interface, change its network option + local wif = _wifi_lookup(ifname) + if wif then + _append("wireless", wif, "network", self.sid) + + -- add iface to our iface list + else + _append("network", self.sid, "ifname", ifname) + end + end +end + +function protocol.del_interface(self, ifname) + ifname = _M:ifnameof(ifname) + if ifname and not self:is_floating() then + -- if its a wireless interface, clear its network option + local wif = _wifi_lookup(ifname) + if wif then _filter("wireless", wif, "network", self.sid) end + + -- remove the interface + _filter("network", self.sid, "ifname", ifname) + end +end + +function protocol.get_interface(self) + if self:is_virtual() then + _tunnel[self:proto() .. "-" .. self.sid] = true + return interface(self:proto() .. "-" .. self.sid, self) + elseif self:is_bridge() then + _bridge["br-" .. self.sid] = true + return interface("br-" .. self.sid, self) + else + local ifn = nil + local num = { } + for ifn in utl.imatch(_uci:get("network", self.sid, "ifname")) do + ifn = ifn:match("^[^:/]+") + return ifn and interface(ifn, self) + end + ifn = nil + _uci:foreach("wireless", "wifi-iface", + function(s) + if s.device then + num[s.device] = num[s.device] and num[s.device] + 1 or 1 + + local net + for net in utl.imatch(s.network) do + if net == self.sid then + ifn = "%s.network%d" %{ s.device, num[s.device] } + return false + end + end + end + end) + return ifn and interface(ifn, self) + end +end + +function protocol.get_interfaces(self) + if self:is_bridge() or (self:is_virtual() and not self:is_floating()) then + local ifaces = { } + + local ifn + local nfs = { } + for ifn in utl.imatch(self:get("ifname")) do + ifn = ifn:match("^[^:/]+") + nfs[ifn] = interface(ifn, self) + end + + for ifn in utl.kspairs(nfs) do + ifaces[#ifaces+1] = nfs[ifn] + end + + local num = { } + local wfs = { } + _uci:foreach("wireless", "wifi-iface", + function(s) + if s.device then + num[s.device] = num[s.device] and num[s.device] + 1 or 1 + + local net + for net in utl.imatch(s.network) do + if net == self.sid then + ifn = "%s.network%d" %{ s.device, num[s.device] } + wfs[ifn] = interface(ifn, self) + end + end + end + end) + + for ifn in utl.kspairs(wfs) do + ifaces[#ifaces+1] = wfs[ifn] + end + + return ifaces + end +end + +function protocol.contains_interface(self, ifname) + ifname = _M:ifnameof(ifname) + if not ifname then + return false + elseif self:is_virtual() and self:proto() .. "-" .. self.sid == ifname then + return true + elseif self:is_bridge() and "br-" .. self.sid == ifname then + return true + else + local ifn + for ifn in utl.imatch(self:get("ifname")) do + ifn = ifn:match("[^:]+") + if ifn == ifname then + return true + end + end + + local wif = _wifi_lookup(ifname) + if wif then + local n + for n in utl.imatch(_uci:get("wireless", wif, "network")) do + if n == self.sid then + return true + end + end + end + end + + return false +end + +function protocol.adminlink(self) + return dsp.build_url("admin", "network", "network", self.sid) +end + + +interface = utl.class() + +function interface.__init__(self, ifname, network) + local wif = _wifi_lookup(ifname) + if wif then + self.wif = wifinet(wif) + self.ifname = _wifi_state("section", wif, "ifname") + end + + self.ifname = self.ifname or ifname + self.dev = _interfaces[self.ifname] + self.network = network +end + +function interface._ubus(self, field) + if not _ubusdevcache[self.ifname] then + _ubusdevcache[self.ifname] = utl.ubus("network.device", "status", + { name = self.ifname }) + end + if _ubusdevcache[self.ifname] and field then + return _ubusdevcache[self.ifname][field] + end + return _ubusdevcache[self.ifname] +end + +function interface.name(self) + return self.wif and self.wif:ifname() or self.ifname +end + +function interface.mac(self) + local mac = self:_ubus("macaddr") + return mac and mac:upper() +end + +function interface.ipaddrs(self) + return self.dev and self.dev.ipaddrs or { } +end + +function interface.ip6addrs(self) + return self.dev and self.dev.ip6addrs or { } +end + +function interface.type(self) + if self.wif or _wifi_iface(self.ifname) then + return "wifi" + elseif _bridge[self.ifname] then + return "bridge" + elseif _tunnel[self.ifname] then + return "tunnel" + elseif self.ifname:match("%.") then + return "vlan" + elseif _switch[self.ifname] then + return "switch" + else + return "ethernet" + end +end + +function interface.shortname(self) + if self.wif then + return self.wif:shortname() + else + return self.ifname + end +end + +function interface.get_i18n(self) + if self.wif then + return "%s: %s %q" %{ + lng.translate("Wireless Network"), + self.wif:active_mode(), + self.wif:active_ssid() or self.wif:active_bssid() or self.wif:id() + } + else + return "%s: %q" %{ self:get_type_i18n(), self:name() } + end +end + +function interface.get_type_i18n(self) + local x = self:type() + if x == "wifi" then + return lng.translate("Wireless Adapter") + elseif x == "bridge" then + return lng.translate("Bridge") + elseif x == "switch" then + return lng.translate("Ethernet Switch") + elseif x == "vlan" then + if _switch[self.ifname] then + return lng.translate("Switch VLAN") + else + return lng.translate("Software VLAN") + end + elseif x == "tunnel" then + return lng.translate("Tunnel Interface") + else + return lng.translate("Ethernet Adapter") + end +end + +function interface.adminlink(self) + if self.wif then + return self.wif:adminlink() + end +end + +function interface.ports(self) + local members = self:_ubus("bridge-members") + if members then + local _, iface + local ifaces = { } + for _, iface in ipairs(members) do + ifaces[#ifaces+1] = interface(iface) + end + end +end + +function interface.bridge_id(self) + if self.br then + return self.br.id + else + return nil + end +end + +function interface.bridge_stp(self) + if self.br then + return self.br.stp + else + return false + end +end + +function interface.is_up(self) + return self:_ubus("up") or false +end + +function interface.is_bridge(self) + return (self:type() == "bridge") +end + +function interface.is_bridgeport(self) + return self.dev and self.dev.bridge and true or false +end + +function interface.tx_bytes(self) + local stat = self:_ubus("statistics") + return stat and stat.tx_bytes or 0 +end + +function interface.rx_bytes(self) + local stat = self:_ubus("statistics") + return stat and stat.rx_bytes or 0 +end + +function interface.tx_packets(self) + local stat = self:_ubus("statistics") + return stat and stat.tx_packets or 0 +end + +function interface.rx_packets(self) + local stat = self:_ubus("statistics") + return stat and stat.rx_packets or 0 +end + +function interface.get_network(self) + return self:get_networks()[1] +end + +function interface.get_networks(self) + if not self.networks then + local nets = { } + local _, net + for _, net in ipairs(_M:get_networks()) do + if net:contains_interface(self.ifname) or + net:ifname() == self.ifname + then + nets[#nets+1] = net + end + end + table.sort(nets, function(a, b) return a.sid < b.sid end) + self.networks = nets + return nets + else + return self.networks + end +end + +function interface.get_wifinet(self) + return self.wif +end + + +wifidev = utl.class() + +function wifidev.__init__(self, dev) + self.sid = dev + self.iwinfo = dev and sys.wifi.getiwinfo(dev) or { } +end + +function wifidev.get(self, opt) + return _get("wireless", self.sid, opt) +end + +function wifidev.set(self, opt, val) + return _set("wireless", self.sid, opt, val) +end + +function wifidev.name(self) + return self.sid +end + +function wifidev.hwmodes(self) + local l = self.iwinfo.hwmodelist + if l and next(l) then + return l + else + return { b = true, g = true } + end +end + +function wifidev.get_i18n(self) + local t = "Generic" + if self.iwinfo.type == "wl" then + t = "Broadcom" + elseif self.iwinfo.type == "madwifi" then + t = "Atheros" + end + + local m = "" + local l = self:hwmodes() + if l.a then m = m .. "a" end + if l.b then m = m .. "b" end + if l.g then m = m .. "g" end + if l.n then m = m .. "n" end + if l.ac then m = "ac" end + + return "%s 802.11%s Wireless Controller (%s)" %{ t, m, self:name() } +end + +function wifidev.is_up(self) + if _ubuswificache[self.sid] then + return (_ubuswificache[self.sid].up == true) + end + + return false +end + +function wifidev.get_wifinet(self, net) + if _uci:get("wireless", net) == "wifi-iface" then + return wifinet(net) + else + local wnet = _wifi_lookup(net) + if wnet then + return wifinet(wnet) + end + end +end + +function wifidev.get_wifinets(self) + local nets = { } + + _uci:foreach("wireless", "wifi-iface", + function(s) + if s.device == self.sid then + nets[#nets+1] = wifinet(s['.name']) + end + end) + + return nets +end + +function wifidev.add_wifinet(self, options) + options = options or { } + options.device = self.sid + + local wnet = _uci:section("wireless", "wifi-iface", nil, options) + if wnet then + return wifinet(wnet, options) + end +end + +function wifidev.del_wifinet(self, net) + if utl.instanceof(net, wifinet) then + net = net.sid + elseif _uci:get("wireless", net) ~= "wifi-iface" then + net = _wifi_lookup(net) + end + + if net and _uci:get("wireless", net, "device") == self.sid then + _uci:delete("wireless", net) + return true + end + + return false +end + + +wifinet = utl.class() + +function wifinet.__init__(self, net, data) + self.sid = net + + local n = 0 + local num = { } + local netid, sid + _uci:foreach("wireless", "wifi-iface", + function(s) + n = n + 1 + if s.device then + num[s.device] = num[s.device] and num[s.device] + 1 or 1 + if s['.name'] == self.sid then + sid = "@wifi-iface[%d]" % n + netid = "%s.network%d" %{ s.device, num[s.device] } + return false + end + end + end) + + if sid then + local _, k, r, i + for k, r in pairs(_ubuswificache) do + if type(r) == "table" and + type(r.interfaces) == "table" + then + for _, i in ipairs(r.interfaces) do + if type(i) == "table" and i.section == sid then + self._ubusdata = { + radio = k, + dev = r, + net = i + } + end + end + end + end + end + + local dev = _wifi_state("section", self.sid, "ifname") or netid + + self.netid = netid + self.wdev = dev + self.iwinfo = dev and sys.wifi.getiwinfo(dev) or { } +end + +function wifinet.ubus(self, ...) + local n, v = self._ubusdata + for n = 1, select('#', ...) do + if type(v) == "table" then + v = v[select(n, ...)] + else + return nil + end + end + return v +end + +function wifinet.get(self, opt) + return _get("wireless", self.sid, opt) +end + +function wifinet.set(self, opt, val) + return _set("wireless", self.sid, opt, val) +end + +function wifinet.mode(self) + return self:ubus("net", "config", "mode") or self:get("mode") or "ap" +end + +function wifinet.ssid(self) + return self:ubus("net", "config", "ssid") or self:get("ssid") +end + +function wifinet.bssid(self) + return self:ubus("net", "config", "bssid") or self:get("bssid") +end + +function wifinet.network(self) + local net, networks = nil, { } + for net in utl.imatch(self:ubus("net", "config", "network") or self:get("network")) do + networks[#networks+1] = net + end + return networks +end + +function wifinet.id(self) + return self.netid +end + +function wifinet.name(self) + return self.sid +end + +function wifinet.ifname(self) + local ifname = self:ubus("net", "ifname") or self.iwinfo.ifname + if not ifname or ifname:match("^wifi%d") or ifname:match("^radio%d") then + ifname = self.wdev + end + return ifname +end + +function wifinet.get_device(self) + local dev = self:ubus("radio") or self:get("device") + return dev and wifidev(dev) or nil +end + +function wifinet.is_up(self) + local ifc = self:get_interface() + return (ifc and ifc:is_up() or false) +end + +function wifinet.active_mode(self) + local m = self.iwinfo.mode or self:ubus("net", "config", "mode") or self:get("mode") or "ap" + + if m == "ap" then m = "Master" + elseif m == "sta" then m = "Client" + elseif m == "adhoc" then m = "Ad-Hoc" + elseif m == "mesh" then m = "Mesh" + elseif m == "monitor" then m = "Monitor" + end + + return m +end + +function wifinet.active_mode_i18n(self) + return lng.translate(self:active_mode()) +end + +function wifinet.active_ssid(self) + return self.iwinfo.ssid or self:ubus("net", "config", "ssid") or self:get("ssid") +end + +function wifinet.active_bssid(self) + return self.iwinfo.bssid or self:ubus("net", "config", "bssid") or self:get("bssid") +end + +function wifinet.active_encryption(self) + local enc = self.iwinfo and self.iwinfo.encryption + return enc and enc.description or "-" +end + +function wifinet.assoclist(self) + return self.iwinfo.assoclist or { } +end + +function wifinet.frequency(self) + local freq = self.iwinfo.frequency + if freq and freq > 0 then + return "%.03f" % (freq / 1000) + end +end + +function wifinet.bitrate(self) + local rate = self.iwinfo.bitrate + if rate and rate > 0 then + return (rate / 1000) + end +end + +function wifinet.channel(self) + return self.iwinfo.channel or self:ubus("dev", "config", "channel") or + tonumber(self:get("channel")) +end + +function wifinet.signal(self) + return self.iwinfo.signal or 0 +end + +function wifinet.noise(self) + return self.iwinfo.noise or 0 +end + +function wifinet.country(self) + return self.iwinfo.country or self:ubus("dev", "config", "country") or "00" +end + +function wifinet.txpower(self) + local pwr = (self.iwinfo.txpower or 0) + return pwr + self:txpower_offset() +end + +function wifinet.txpower_offset(self) + return self.iwinfo.txpower_offset or 0 +end + +function wifinet.signal_level(self, s, n) + if self:active_bssid() ~= "00:00:00:00:00:00" then + local signal = s or self:signal() + local noise = n or self:noise() + + if signal < 0 and noise < 0 then + local snr = -1 * (noise - signal) + return math.floor(snr / 5) + else + return 0 + end + else + return -1 + end +end + +function wifinet.signal_percent(self) + local qc = self.iwinfo.quality or 0 + local qm = self.iwinfo.quality_max or 0 + + if qc > 0 and qm > 0 then + return math.floor((100 / qm) * qc) + else + return 0 + end +end + +function wifinet.shortname(self) + return "%s %q" %{ + lng.translate(self:active_mode()), + self:active_ssid() or self:active_bssid() or self:id() + } +end + +function wifinet.get_i18n(self) + return "%s: %s %q (%s)" %{ + lng.translate("Wireless Network"), + lng.translate(self:active_mode()), + self:active_ssid() or self:active_bssid() or self:id(), + self:ifname() + } +end + +function wifinet.adminlink(self) + return dsp.build_url("admin", "network", "wireless", self.netid) +end + +function wifinet.get_network(self) + return self:get_networks()[1] +end + +function wifinet.get_networks(self) + local nets = { } + local net + for net in utl.imatch(self:ubus("net", "config", "network") or self:get("network")) do + if _uci:get("network", net) == "interface" then + nets[#nets+1] = network(net) + end + end + table.sort(nets, function(a, b) return a.sid < b.sid end) + return nets +end + +function wifinet.get_interface(self) + return interface(self:ifname()) +end + + +-- setup base protocols +_M:register_protocol("static") +_M:register_protocol("dhcp") +_M:register_protocol("none") + +-- load protocol extensions +local exts = nfs.dir(utl.libpath() .. "/model/network") +if exts then + local ext + for ext in exts do + if ext:match("%.lua$") then + require("luci.model.network." .. ext:gsub("%.lua$", "")) + end + end +end diff --git a/luci-base/luasrc/model/uci.lua b/luci-base/luasrc/model/uci.lua new file mode 100644 index 000000000..577c6cde0 --- /dev/null +++ b/luci-base/luasrc/model/uci.lua @@ -0,0 +1,236 @@ +-- Copyright 2008 Steven Barth +-- Licensed to the public under the Apache License 2.0. + +local os = require "os" +local uci = require "uci" +local util = require "luci.util" +local table = require "table" + + +local setmetatable, rawget, rawset = setmetatable, rawget, rawset +local require, getmetatable = require, getmetatable +local error, pairs, ipairs = error, pairs, ipairs +local type, tostring, tonumber, unpack = type, tostring, tonumber, unpack + +-- The typical workflow for UCI is: Get a cursor instance from the +-- cursor factory, modify data (via Cursor.add, Cursor.delete, etc.), +-- save the changes to the staging area via Cursor.save and finally +-- Cursor.commit the data to the actual config files. +-- LuCI then needs to Cursor.apply the changes so deamons etc. are +-- reloaded. +module "luci.model.uci" + +cursor = uci.cursor + +APIVERSION = uci.APIVERSION + +function cursor_state() + return cursor(nil, "/var/state") +end + + +inst = cursor() +inst_state = cursor_state() + +local Cursor = getmetatable(inst) + +function Cursor.apply(self, configlist, command) + configlist = self:_affected(configlist) + if command then + return { "/sbin/luci-reload", unpack(configlist) } + else + return os.execute("/sbin/luci-reload %s >/dev/null 2>&1" + % table.concat(configlist, " ")) + end +end + + +-- returns a boolean whether to delete the current section (optional) +function Cursor.delete_all(self, config, stype, comparator) + local del = {} + + if type(comparator) == "table" then + local tbl = comparator + comparator = function(section) + for k, v in pairs(tbl) do + if section[k] ~= v then + return false + end + end + return true + end + end + + local function helper (section) + + if not comparator or comparator(section) then + del[#del+1] = section[".name"] + end + end + + self:foreach(config, stype, helper) + + for i, j in ipairs(del) do + self:delete(config, j) + end +end + +function Cursor.section(self, config, type, name, values) + local stat = true + if name then + stat = self:set(config, name, type) + else + name = self:add(config, type) + stat = name and true + end + + if stat and values then + stat = self:tset(config, name, values) + end + + return stat and name +end + +function Cursor.tset(self, config, section, values) + local stat = true + for k, v in pairs(values) do + if k:sub(1, 1) ~= "." then + stat = stat and self:set(config, section, k, v) + end + end + return stat +end + +function Cursor.get_bool(self, ...) + local val = self:get(...) + return ( val == "1" or val == "true" or val == "yes" or val == "on" ) +end + +function Cursor.get_list(self, config, section, option) + if config and section and option then + local val = self:get(config, section, option) + return ( type(val) == "table" and val or { val } ) + end + return {} +end + +function Cursor.get_first(self, conf, stype, opt, def) + local rv = def + + self:foreach(conf, stype, + function(s) + local val = not opt and s['.name'] or s[opt] + + if type(def) == "number" then + val = tonumber(val) + elseif type(def) == "boolean" then + val = (val == "1" or val == "true" or + val == "yes" or val == "on") + end + + if val ~= nil then + rv = val + return false + end + end) + + return rv +end + +function Cursor.set_list(self, config, section, option, value) + if config and section and option then + if not value or #value == 0 then + return self:delete(config, section, option) + end + return self:set( + config, section, option, + ( type(value) == "table" and value or { value } ) + ) + end + return false +end + +-- Return a list of initscripts affected by configuration changes. +function Cursor._affected(self, configlist) + configlist = type(configlist) == "table" and configlist or {configlist} + + local c = cursor() + c:load("ucitrack") + + -- Resolve dependencies + local reloadlist = {} + + local function _resolve_deps(name) + local reload = {name} + local deps = {} + + c:foreach("ucitrack", name, + function(section) + if section.affects then + for i, aff in ipairs(section.affects) do + deps[#deps+1] = aff + end + end + end) + + for i, dep in ipairs(deps) do + for j, add in ipairs(_resolve_deps(dep)) do + reload[#reload+1] = add + end + end + + return reload + end + + -- Collect initscripts + for j, config in ipairs(configlist) do + for i, e in ipairs(_resolve_deps(config)) do + if not util.contains(reloadlist, e) then + reloadlist[#reloadlist+1] = e + end + end + end + + return reloadlist +end + +-- curser, means it the parent unloads or loads configs, the sub state will +-- do so as well. +function Cursor.substate(self) + Cursor._substates = Cursor._substates or { } + Cursor._substates[self] = Cursor._substates[self] or cursor_state() + return Cursor._substates[self] +end + +local _load = Cursor.load +function Cursor.load(self, ...) + if Cursor._substates and Cursor._substates[self] then + _load(Cursor._substates[self], ...) + end + return _load(self, ...) +end + +local _unload = Cursor.unload +function Cursor.unload(self, ...) + if Cursor._substates and Cursor._substates[self] then + _unload(Cursor._substates[self], ...) + end + return _unload(self, ...) +end + + + + + + + + + + + + + + + + + diff --git a/luci-base/luasrc/model/uci.luadoc b/luci-base/luasrc/model/uci.luadoc new file mode 100644 index 000000000..49093c793 --- /dev/null +++ b/luci-base/luasrc/model/uci.luadoc @@ -0,0 +1,299 @@ +---[[ +LuCI UCI model library. + +The typical workflow for UCI is: Get a cursor instance from the +cursor factory, modify data (via Cursor.add, Cursor.delete, etc.), +save the changes to the staging area via Cursor.save and finally +Cursor.commit the data to the actual config files. +LuCI then needs to Cursor.apply the changes so deamons etc. are +reloaded. +@cstyle instance +]] +module "luci.model.uci" + +---[[ +Create a new UCI-Cursor. + +@class function +@name cursor +@return UCI-Cursor +]] + +---[[ +Create a new Cursor initialized to the state directory. + +@class function +@name cursor_state +@return UCI cursor +]] + +---[[ +Applies UCI configuration changes + +@class function +@name Cursor.apply +@param configlist List of UCI configurations +@param command Don't apply only return the command +]] + +---[[ +Delete all sections of a given type that match certain criteria. + +@class function +@name Cursor.delete_all +@param config UCI config +@param type UCI section type +@param comparator Function that will be called for each section and +returns a boolean whether to delete the current section (optional) +]] + +---[[ +Create a new section and initialize it with data. + +@class function +@name Cursor.section +@param config UCI config +@param type UCI section type +@param name UCI section name (optional) +@param values Table of key - value pairs to initialize the section with +@return Name of created section +]] + +---[[ +Updated the data of a section using data from a table. + +@class function +@name Cursor.tset +@param config UCI config +@param section UCI section name (optional) +@param values Table of key - value pairs to update the section with +]] + +---[[ +Get a boolean option and return it's value as true or false. + +@class function +@name Cursor.get_bool +@param config UCI config +@param section UCI section name +@param option UCI option +@return Boolean +]] + +---[[ +Get an option or list and return values as table. + +@class function +@name Cursor.get_list +@param config UCI config +@param section UCI section name +@param option UCI option +@return table. If the option was not found, you will simply get +-- an empty table. +]] + +---[[ +Get the given option from the first section with the given type. + +@class function +@name Cursor.get_first +@param config UCI config +@param type UCI section type +@param option UCI option (optional) +@param default Default value (optional) +@return UCI value +]] + +---[[ +Set given values as list. Setting a list option to an empty list +has the same effect as deleting the option. + +@class function +@name Cursor.set_list +@param config UCI config +@param section UCI section name +@param option UCI option +@param value value or table. Raw values will become a single item table. +@return Boolean whether operation succeeded +]] + +---[[ +Create a sub-state of this cursor. The sub-state is tied to the parent + +curser, means it the parent unloads or loads configs, the sub state will +do so as well. +@class function +@name Cursor.substate +@return UCI state cursor tied to the parent cursor +]] + +---[[ +Add an anonymous section. + +@class function +@name Cursor.add +@param config UCI config +@param type UCI section type +@return Name of created section +]] + +---[[ +Get a table of saved but uncommitted changes. + +@class function +@name Cursor.changes +@param config UCI config +@return Table of changes +@see Cursor.save +]] + +---[[ +Commit saved changes. + +@class function +@name Cursor.commit +@param config UCI config +@return Boolean whether operation succeeded +@see Cursor.revert +@see Cursor.save +]] + +---[[ +Deletes a section or an option. + +@class function +@name Cursor.delete +@param config UCI config +@param section UCI section name +@param option UCI option (optional) +@return Boolean whether operation succeeded +]] + +---[[ +Call a function for every section of a certain type. + +@class function +@name Cursor.foreach +@param config UCI config +@param type UCI section type +@param callback Function to be called +@return Boolean whether operation succeeded +]] + +---[[ +Get a section type or an option + +@class function +@name Cursor.get +@param config UCI config +@param section UCI section name +@param option UCI option (optional) +@return UCI value +]] + +---[[ +Get all sections of a config or all values of a section. + +@class function +@name Cursor.get_all +@param config UCI config +@param section UCI section name (optional) +@return Table of UCI sections or table of UCI values +]] + +---[[ +Manually load a config. + +@class function +@name Cursor.load +@param config UCI config +@return Boolean whether operation succeeded +@see Cursor.save +@see Cursor.unload +]] + +---[[ +Revert saved but uncommitted changes. + +@class function +@name Cursor.revert +@param config UCI config +@return Boolean whether operation succeeded +@see Cursor.commit +@see Cursor.save +]] + +---[[ +Saves changes made to a config to make them committable. + +@class function +@name Cursor.save +@param config UCI config +@return Boolean whether operation succeeded +@see Cursor.load +@see Cursor.unload +]] + +---[[ +Set a value or create a named section. + +When invoked with three arguments `config`, `sectionname`, `sectiontype`, +then a named section of the given type is created. + +When invoked with four arguments `config`, `sectionname`, `optionname` and +`optionvalue` then the value of the specified option is set to the given value. + +@class function +@name Cursor.set +@param config UCI config +@param section UCI section name +@param option UCI option or UCI section type +@param value UCI value or nothing if you want to create a section +@return Boolean whether operation succeeded +]] + +---[[ +Get the configuration directory. + +@class function +@name Cursor.get_confdir +@return Configuration directory +]] + +---[[ +Get the directory for uncomitted changes. + +@class function +@name Cursor.get_savedir +@return Save directory +]] + +---[[ +Set the configuration directory. + +@class function +@name Cursor.set_confdir +@param directory UCI configuration directory +@return Boolean whether operation succeeded +]] + +---[[ +Set the directory for uncommited changes. + +@class function +@name Cursor.set_savedir +@param directory UCI changes directory +@return Boolean whether operation succeeded +]] + +---[[ +Discard changes made to a config. + +@class function +@name Cursor.unload +@param config UCI config +@return Boolean whether operation succeeded +@see Cursor.load +@see Cursor.save +]] + diff --git a/luci-base/luasrc/sgi/cgi.lua b/luci-base/luasrc/sgi/cgi.lua new file mode 100644 index 000000000..68ae17a9e --- /dev/null +++ b/luci-base/luasrc/sgi/cgi.lua @@ -0,0 +1,73 @@ +-- Copyright 2008 Steven Barth +-- Licensed to the public under the Apache License 2.0. + +exectime = os.clock() +module("luci.sgi.cgi", package.seeall) +local ltn12 = require("luci.ltn12") +require("nixio.util") +require("luci.http") +require("luci.sys") +require("luci.dispatcher") + +-- Limited source to avoid endless blocking +local function limitsource(handle, limit) + limit = limit or 0 + local BLOCKSIZE = ltn12.BLOCKSIZE + + return function() + if limit < 1 then + handle:close() + return nil + else + local read = (limit > BLOCKSIZE) and BLOCKSIZE or limit + limit = limit - read + + local chunk = handle:read(read) + if not chunk then handle:close() end + return chunk + end + end +end + +function run() + local r = luci.http.Request( + luci.sys.getenv(), + limitsource(io.stdin, tonumber(luci.sys.getenv("CONTENT_LENGTH"))), + ltn12.sink.file(io.stderr) + ) + + local x = coroutine.create(luci.dispatcher.httpdispatch) + local hcache = "" + local active = true + + while coroutine.status(x) ~= "dead" do + local res, id, data1, data2 = coroutine.resume(x, r) + + if not res then + print("Status: 500 Internal Server Error") + print("Content-Type: text/plain\n") + print(id) + break; + end + + if active then + if id == 1 then + io.write("Status: " .. tostring(data1) .. " " .. data2 .. "\r\n") + elseif id == 2 then + hcache = hcache .. data1 .. ": " .. data2 .. "\r\n" + elseif id == 3 then + io.write(hcache) + io.write("\r\n") + elseif id == 4 then + io.write(tostring(data1 or "")) + elseif id == 5 then + io.flush() + io.close() + active = false + elseif id == 6 then + data1:copyz(nixio.stdout, data2) + data1:close() + end + end + end +end diff --git a/luci-base/luasrc/sgi/uhttpd.lua b/luci-base/luasrc/sgi/uhttpd.lua new file mode 100644 index 000000000..2836bf00c --- /dev/null +++ b/luci-base/luasrc/sgi/uhttpd.lua @@ -0,0 +1,89 @@ +-- Copyright 2010 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +require "nixio.util" +require "luci.http" +require "luci.sys" +require "luci.dispatcher" +require "luci.ltn12" + +function handle_request(env) + exectime = os.clock() + local renv = { + CONTENT_LENGTH = env.CONTENT_LENGTH, + CONTENT_TYPE = env.CONTENT_TYPE, + REQUEST_METHOD = env.REQUEST_METHOD, + REQUEST_URI = env.REQUEST_URI, + PATH_INFO = env.PATH_INFO, + SCRIPT_NAME = env.SCRIPT_NAME:gsub("/+$", ""), + SCRIPT_FILENAME = env.SCRIPT_NAME, + SERVER_PROTOCOL = env.SERVER_PROTOCOL, + QUERY_STRING = env.QUERY_STRING + } + + local k, v + for k, v in pairs(env.headers) do + k = k:upper():gsub("%-", "_") + renv["HTTP_" .. k] = v + end + + local len = tonumber(env.CONTENT_LENGTH) or 0 + local function recv() + if len > 0 then + local rlen, rbuf = uhttpd.recv(4096) + if rlen >= 0 then + len = len - rlen + return rbuf + end + end + return nil + end + + local send = uhttpd.send + + local req = luci.http.Request( + renv, recv, luci.ltn12.sink.file(io.stderr) + ) + + + local x = coroutine.create(luci.dispatcher.httpdispatch) + local hcache = { } + local active = true + + while coroutine.status(x) ~= "dead" do + local res, id, data1, data2 = coroutine.resume(x, req) + + if not res then + send("Status: 500 Internal Server Error\r\n") + send("Content-Type: text/plain\r\n\r\n") + send(tostring(id)) + break + end + + if active then + if id == 1 then + send("Status: ") + send(tostring(data1)) + send(" ") + send(tostring(data2)) + send("\r\n") + elseif id == 2 then + hcache[data1] = data2 + elseif id == 3 then + for k, v in pairs(hcache) do + send(tostring(k)) + send(": ") + send(tostring(v)) + send("\r\n") + end + send("\r\n") + elseif id == 4 then + send(tostring(data1 or "")) + elseif id == 5 then + active = false + elseif id == 6 then + data1:copyz(nixio.stdout, data2) + end + end + end +end diff --git a/luci-base/luasrc/store.lua b/luci-base/luasrc/store.lua new file mode 100644 index 000000000..34eb29622 --- /dev/null +++ b/luci-base/luasrc/store.lua @@ -0,0 +1,6 @@ +-- Copyright 2009 Steven Barth +-- Copyright 2009 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local util = require "luci.util" +module("luci.store", util.threadlocal) \ No newline at end of file diff --git a/luci-base/luasrc/sys.lua b/luci-base/luasrc/sys.lua new file mode 100644 index 000000000..a97271732 --- /dev/null +++ b/luci-base/luasrc/sys.lua @@ -0,0 +1,688 @@ +-- Copyright 2008 Steven Barth +-- Licensed to the public under the Apache License 2.0. + +local io = require "io" +local os = require "os" +local table = require "table" +local nixio = require "nixio" +local fs = require "nixio.fs" +local uci = require "luci.model.uci" + +local luci = {} +luci.util = require "luci.util" +luci.ip = require "luci.ip" + +local tonumber, ipairs, pairs, pcall, type, next, setmetatable, require, select = + tonumber, ipairs, pairs, pcall, type, next, setmetatable, require, select + + +module "luci.sys" + +function call(...) + return os.execute(...) / 256 +end + +exec = luci.util.exec + +function mounts() + local data = {} + local k = {"fs", "blocks", "used", "available", "percent", "mountpoint"} + local ps = luci.util.execi("df") + + if not ps then + return + else + ps() + end + + for line in ps do + local row = {} + + local j = 1 + for value in line:gmatch("[^%s]+") do + row[k[j]] = value + j = j + 1 + end + + if row[k[1]] then + + -- this is a rather ugly workaround to cope with wrapped lines in + -- the df output: + -- + -- /dev/scsi/host0/bus0/target0/lun0/part3 + -- 114382024 93566472 15005244 86% /mnt/usb + -- + + if not row[k[2]] then + j = 2 + line = ps() + for value in line:gmatch("[^%s]+") do + row[k[j]] = value + j = j + 1 + end + end + + table.insert(data, row) + end + end + + return data +end + +-- containing the whole environment is returned otherwise this function returns +-- the corresponding string value for the given name or nil if no such variable +-- exists. +getenv = nixio.getenv + +function hostname(newname) + if type(newname) == "string" and #newname > 0 then + fs.writefile( "/proc/sys/kernel/hostname", newname ) + return newname + else + return nixio.uname().nodename + end +end + +function httpget(url, stream, target) + if not target then + local source = stream and io.popen or luci.util.exec + return source("wget -qO- '"..url:gsub("'", "").."'") + else + return os.execute("wget -qO '%s' '%s'" % + {target:gsub("'", ""), url:gsub("'", "")}) + end +end + +function reboot() + return os.execute("reboot >/dev/null 2>&1") +end + +function syslog() + return luci.util.exec("logread") +end + +function dmesg() + return luci.util.exec("dmesg") +end + +function uniqueid(bytes) + local rand = fs.readfile("/dev/urandom", bytes) + return rand and nixio.bin.hexlify(rand) +end + +function uptime() + return nixio.sysinfo().uptime +end + + +net = {} + +-- The following fields are defined for arp entry objects: +-- { "IP address", "HW address", "HW type", "Flags", "Mask", "Device" } +function net.arptable(callback) + local arp = (not callback) and {} or nil + local e, r, v + if fs.access("/proc/net/arp") then + for e in io.lines("/proc/net/arp") do + local r = { }, v + for v in e:gmatch("%S+") do + r[#r+1] = v + end + + if r[1] ~= "IP" then + local x = { + ["IP address"] = r[1], + ["HW type"] = r[2], + ["Flags"] = r[3], + ["HW address"] = r[4], + ["Mask"] = r[5], + ["Device"] = r[6] + } + + if callback then + callback(x) + else + arp = arp or { } + arp[#arp+1] = x + end + end + end + end + return arp +end + +local function _nethints(what, callback) + local _, k, e, mac, ip, name + local cur = uci.cursor() + local ifn = { } + local hosts = { } + + local function _add(i, ...) + local k = select(i, ...) + if k then + if not hosts[k] then hosts[k] = { } end + hosts[k][1] = select(1, ...) or hosts[k][1] + hosts[k][2] = select(2, ...) or hosts[k][2] + hosts[k][3] = select(3, ...) or hosts[k][3] + hosts[k][4] = select(4, ...) or hosts[k][4] + end + end + + luci.ip.neighbors(nil, function(neigh) + if neigh.mac and neigh.family == 4 then + _add(what, neigh.mac:upper(), neigh.dest:string(), nil, nil) + elseif neigh.mac and neigh.family == 6 then + _add(what, neigh.mac:upper(), nil, neigh.dest:string(), nil) + end + end) + + if fs.access("/etc/ethers") then + for e in io.lines("/etc/ethers") do + mac, ip = e:match("^([a-f0-9]%S+) (%S+)") + if mac and ip then + _add(what, mac:upper(), ip, nil, nil) + end + end + end + + cur:foreach("dhcp", "dnsmasq", + function(s) + if s.leasefile and fs.access(s.leasefile) then + for e in io.lines(s.leasefile) do + mac, ip, name = e:match("^%d+ (%S+) (%S+) (%S+)") + if mac and ip then + _add(what, mac:upper(), ip, nil, name ~= "*" and name) + end + end + end + end + ) + + cur:foreach("dhcp", "host", + function(s) + for mac in luci.util.imatch(s.mac) do + _add(what, mac:upper(), s.ip, nil, s.name) + end + end) + + for _, e in ipairs(nixio.getifaddrs()) do + if e.name ~= "lo" then + ifn[e.name] = ifn[e.name] or { } + if e.family == "packet" and e.addr and #e.addr == 17 then + ifn[e.name][1] = e.addr:upper() + elseif e.family == "inet" then + ifn[e.name][2] = e.addr + elseif e.family == "inet6" then + ifn[e.name][3] = e.addr + end + end + end + + for _, e in pairs(ifn) do + if e[what] and (e[2] or e[3]) then + _add(what, e[1], e[2], e[3], e[4]) + end + end + + for _, e in luci.util.kspairs(hosts) do + callback(e[1], e[2], e[3], e[4]) + end +end + +-- Each entry contains the values in the following order: +-- [ "mac", "name" ] +function net.mac_hints(callback) + if callback then + _nethints(1, function(mac, v4, v6, name) + name = name or nixio.getnameinfo(v4 or v6, nil, 100) or v4 + if name and name ~= mac then + callback(mac, name or nixio.getnameinfo(v4 or v6, nil, 100) or v4) + end + end) + else + local rv = { } + _nethints(1, function(mac, v4, v6, name) + name = name or nixio.getnameinfo(v4 or v6, nil, 100) or v4 + if name and name ~= mac then + rv[#rv+1] = { mac, name or nixio.getnameinfo(v4 or v6, nil, 100) or v4 } + end + end) + return rv + end +end + +-- Each entry contains the values in the following order: +-- [ "ip", "name" ] +function net.ipv4_hints(callback) + if callback then + _nethints(2, function(mac, v4, v6, name) + name = name or nixio.getnameinfo(v4, nil, 100) or mac + if name and name ~= v4 then + callback(v4, name) + end + end) + else + local rv = { } + _nethints(2, function(mac, v4, v6, name) + name = name or nixio.getnameinfo(v4, nil, 100) or mac + if name and name ~= v4 then + rv[#rv+1] = { v4, name } + end + end) + return rv + end +end + +-- Each entry contains the values in the following order: +-- [ "ip", "name" ] +function net.ipv6_hints(callback) + if callback then + _nethints(3, function(mac, v4, v6, name) + name = name or nixio.getnameinfo(v6, nil, 100) or mac + if name and name ~= v6 then + callback(v6, name) + end + end) + else + local rv = { } + _nethints(3, function(mac, v4, v6, name) + name = name or nixio.getnameinfo(v6, nil, 100) or mac + if name and name ~= v6 then + rv[#rv+1] = { v6, name } + end + end) + return rv + end +end + +function net.host_hints(callback) + if callback then + _nethints(1, function(mac, v4, v6, name) + if mac and mac ~= "00:00:00:00:00:00" and (v4 or v6 or name) then + callback(mac, v4, v6, name) + end + end) + else + local rv = { } + _nethints(1, function(mac, v4, v6, name) + if mac and mac ~= "00:00:00:00:00:00" and (v4 or v6 or name) then + local e = { } + if v4 then e.ipv4 = v4 end + if v6 then e.ipv6 = v6 end + if name then e.name = name end + rv[mac] = e + end + end) + return rv + end +end + +function net.conntrack(callback) + local ok, nfct = pcall(io.lines, "/proc/net/nf_conntrack") + if not ok or not nfct then + return nil + end + + local line, connt = nil, (not callback) and { } + for line in nfct do + local fam, l3, l4, timeout, tuples = + line:match("^(ipv[46]) +(%d+) +%S+ +(%d+) +(%d+) +(.+)$") + + if fam and l3 and l4 and timeout and not tuples:match("^TIME_WAIT ") then + l4 = nixio.getprotobynumber(l4) + + local entry = { + bytes = 0, + packets = 0, + layer3 = fam, + layer4 = l4 and l4.name or "unknown", + timeout = tonumber(timeout, 10) + } + + local key, val + for key, val in tuples:gmatch("(%w+)=(%S+)") do + if key == "bytes" or key == "packets" then + entry[key] = entry[key] + tonumber(val, 10) + elseif key == "src" or key == "dst" then + if entry[key] == nil then + entry[key] = luci.ip.new(val):string() + end + elseif key == "sport" or key == "dport" then + if entry[key] == nil then + entry[key] = val + end + elseif val then + entry[key] = val + end + end + + if callback then + callback(entry) + else + connt[#connt+1] = entry + end + end + end + + return callback and true or connt +end + +function net.devices() + local devs = {} + for k, v in ipairs(nixio.getifaddrs()) do + if v.family == "packet" then + devs[#devs+1] = v.name + end + end + return devs +end + + +function net.deviceinfo() + local devs = {} + for k, v in ipairs(nixio.getifaddrs()) do + if v.family == "packet" then + local d = v.data + d[1] = d.rx_bytes + d[2] = d.rx_packets + d[3] = d.rx_errors + d[4] = d.rx_dropped + d[5] = 0 + d[6] = 0 + d[7] = 0 + d[8] = d.multicast + d[9] = d.tx_bytes + d[10] = d.tx_packets + d[11] = d.tx_errors + d[12] = d.tx_dropped + d[13] = 0 + d[14] = d.collisions + d[15] = 0 + d[16] = 0 + devs[v.name] = d + end + end + return devs +end + + +-- The following fields are defined for route entry tables: +-- { "dest", "gateway", "metric", "refcount", "usecount", "irtt", +-- "flags", "device" } +function net.routes(callback) + local routes = { } + + for line in io.lines("/proc/net/route") do + + local dev, dst_ip, gateway, flags, refcnt, usecnt, metric, + dst_mask, mtu, win, irtt = line:match( + "([^%s]+)\t([A-F0-9]+)\t([A-F0-9]+)\t([A-F0-9]+)\t" .. + "(%d+)\t(%d+)\t(%d+)\t([A-F0-9]+)\t(%d+)\t(%d+)\t(%d+)" + ) + + if dev then + gateway = luci.ip.Hex( gateway, 32, luci.ip.FAMILY_INET4 ) + dst_mask = luci.ip.Hex( dst_mask, 32, luci.ip.FAMILY_INET4 ) + dst_ip = luci.ip.Hex( + dst_ip, dst_mask:prefix(dst_mask), luci.ip.FAMILY_INET4 + ) + + local rt = { + dest = dst_ip, + gateway = gateway, + metric = tonumber(metric), + refcount = tonumber(refcnt), + usecount = tonumber(usecnt), + mtu = tonumber(mtu), + window = tonumber(window), + irtt = tonumber(irtt), + flags = tonumber(flags, 16), + device = dev + } + + if callback then + callback(rt) + else + routes[#routes+1] = rt + end + end + end + + return routes +end + +-- The following fields are defined for route entry tables: +-- { "source", "dest", "nexthop", "metric", "refcount", "usecount", +-- "flags", "device" } +function net.routes6(callback) + if fs.access("/proc/net/ipv6_route", "r") then + local routes = { } + + for line in io.lines("/proc/net/ipv6_route") do + + local dst_ip, dst_prefix, src_ip, src_prefix, nexthop, + metric, refcnt, usecnt, flags, dev = line:match( + "([a-f0-9]+) ([a-f0-9]+) " .. + "([a-f0-9]+) ([a-f0-9]+) " .. + "([a-f0-9]+) ([a-f0-9]+) " .. + "([a-f0-9]+) ([a-f0-9]+) " .. + "([a-f0-9]+) +([^%s]+)" + ) + + if dst_ip and dst_prefix and + src_ip and src_prefix and + nexthop and metric and + refcnt and usecnt and + flags and dev + then + src_ip = luci.ip.Hex( + src_ip, tonumber(src_prefix, 16), luci.ip.FAMILY_INET6, false + ) + + dst_ip = luci.ip.Hex( + dst_ip, tonumber(dst_prefix, 16), luci.ip.FAMILY_INET6, false + ) + + nexthop = luci.ip.Hex( nexthop, 128, luci.ip.FAMILY_INET6, false ) + + local rt = { + source = src_ip, + dest = dst_ip, + nexthop = nexthop, + metric = tonumber(metric, 16), + refcount = tonumber(refcnt, 16), + usecount = tonumber(usecnt, 16), + flags = tonumber(flags, 16), + device = dev, + + -- lua number is too small for storing the metric + -- add a metric_raw field with the original content + metric_raw = metric + } + + if callback then + callback(rt) + else + routes[#routes+1] = rt + end + end + end + + return routes + end +end + +function net.pingtest(host) + return os.execute("ping -c1 '"..host:gsub("'", '').."' >/dev/null 2>&1") +end + + +process = {} + +function process.info(key) + local s = {uid = nixio.getuid(), gid = nixio.getgid()} + return not key and s or s[key] +end + +function process.list() + local data = {} + local k + local ps = luci.util.execi("/bin/busybox top -bn1") + + if not ps then + return + end + + for line in ps do + local pid, ppid, user, stat, vsz, mem, cpu, cmd = line:match( + "^ *(%d+) +(%d+) +(%S.-%S) +([RSDZTW][W ][/dev/null 2>&1" + ) +end + + +wifi = {} + +function wifi.getiwinfo(ifname) + local stat, iwinfo = pcall(require, "iwinfo") + + if ifname then + local d, n = ifname:match("^(%w+)%.network(%d+)") + local wstate = luci.util.ubus("network.wireless", "status") or { } + + d = d or ifname + n = n and tonumber(n) or 1 + + if type(wstate[d]) == "table" and + type(wstate[d].interfaces) == "table" and + type(wstate[d].interfaces[n]) == "table" and + type(wstate[d].interfaces[n].ifname) == "string" + then + ifname = wstate[d].interfaces[n].ifname + else + ifname = d + end + + local t = stat and iwinfo.type(ifname) + local x = t and iwinfo[t] or { } + return setmetatable({}, { + __index = function(t, k) + if k == "ifname" then + return ifname + elseif x[k] then + return x[k](ifname) + end + end + }) + end +end + + +init = {} +init.dir = "/etc/init.d/" + +function init.names() + local names = { } + for name in fs.glob(init.dir.."*") do + names[#names+1] = fs.basename(name) + end + return names +end + +function init.index(name) + if fs.access(init.dir..name) then + return call("env -i sh -c 'source %s%s enabled; exit ${START:-255}' >/dev/null" + %{ init.dir, name }) + end +end + +local function init_action(action, name) + if fs.access(init.dir..name) then + return call("env -i %s%s %s >/dev/null" %{ init.dir, name, action }) + end +end + +function init.enabled(name) + return (init_action("enabled", name) == 0) +end + +function init.enable(name) + return (init_action("enable", name) == 1) +end + +function init.disable(name) + return (init_action("disable", name) == 0) +end + +function init.start(name) + return (init_action("start", name) == 0) +end + +function init.stop(name) + return (init_action("stop", name) == 0) +end diff --git a/luci-base/luasrc/sys.luadoc b/luci-base/luasrc/sys.luadoc new file mode 100644 index 000000000..1c1fa9260 --- /dev/null +++ b/luci-base/luasrc/sys.luadoc @@ -0,0 +1,405 @@ +---[[ +LuCI Linux and POSIX system utilities. +]] +module "luci.sys" + +---[[ +Execute a given shell command and return the error code + +@class function +@name call +@param ... Command to call +@return Error code of the command +]] + +---[[ +Execute a given shell command and capture its standard output + +@class function +@name exec +@param command Command to call +@return String containg the return the output of the command +]] + +---[[ +Retrieve information about currently mounted file systems. + +@class function +@name mounts +@return Table containing mount information +]] + +---[[ +Retrieve environment variables. If no variable is given then a table + +containing the whole environment is returned otherwise this function returns +the corresponding string value for the given name or nil if no such variable +exists. +@class function +@name getenv +@param var Name of the environment variable to retrieve (optional) +@return String containg the value of the specified variable +@return Table containing all variables if no variable name is given +]] + +---[[ +Get or set the current hostname. + +@class function +@name hostname +@param String containing a new hostname to set (optional) +@return String containing the system hostname +]] + +---[[ +Returns the contents of a documented referred by an URL. + +@class function +@name httpget +@param url The URL to retrieve +@param stream Return a stream instead of a buffer +@param target Directly write to target file name +@return String containing the contents of given the URL +]] + +---[[ +Initiate a system reboot. + +@class function +@name reboot +@return Return value of os.execute() +]] + +---[[ +Retrieves the output of the "logread" command. + +@class function +@name syslog +@return String containing the current log buffer +]] + +---[[ +Retrieves the output of the "dmesg" command. + +@class function +@name dmesg +@return String containing the current log buffer +]] + +---[[ +Generates a random id with specified length. + +@class function +@name uniqueid +@param bytes Number of bytes for the unique id +@return String containing hex encoded id +]] + +---[[ +Returns the current system uptime stats. + +@class function +@name uptime +@return String containing total uptime in seconds +]] + +---[[ +LuCI system utilities / network related functions. + +@class module +@name luci.sys.net +]] + +---[[ +Returns the current arp-table entries as two-dimensional table. + +@class function +@name net.arptable +@return Table of table containing the current arp entries. +-- The following fields are defined for arp entry objects: +-- { "IP address", "HW address", "HW type", "Flags", "Mask", "Device" } +]] + +---[[ +Returns a two-dimensional table of mac address hints. + +@class function +@name net.mac_hints +@return Table of table containing known hosts from various sources. + Each entry contains the values in the following order: + [ "mac", "name" ] +]] + +---[[ +Returns a two-dimensional table of IPv4 address hints. + +@class function +@name net.ipv4_hints +@return Table of table containing known hosts from various sources. + Each entry contains the values in the following order: + [ "ip", "name" ] +]] + +---[[ +Returns a two-dimensional table of IPv6 address hints. + +@class function +@name net.ipv6_hints +@return Table of table containing known hosts from various sources. + Each entry contains the values in the following order: + [ "ip", "name" ] +]] + +---[[ +Returns a two-dimensional table of host hints. + +@class function +@name net.host_hints +@return Table of table containing known hosts from various sources, + indexed by mac address. Each subtable contains at least one + of the fields "name", "ipv4" or "ipv6". +]] + +---[[ +Returns conntrack information + +@class function +@name net.conntrack +@return Table with the currently tracked IP connections +]] + +---[[ +Determine the names of available network interfaces. + +@class function +@name net.devices +@return Table containing all current interface names +]] + +---[[ +Return information about available network interfaces. + +@class function +@name net.deviceinfo +@return Table containing all current interface names and their information +]] + +---[[ +Returns the current kernel routing table entries. + +@class function +@name net.routes +@return Table of tables with properties of the corresponding routes. +-- The following fields are defined for route entry tables: +-- { "dest", "gateway", "metric", "refcount", "usecount", "irtt", +-- "flags", "device" } +]] + +---[[ +Returns the current ipv6 kernel routing table entries. + +@class function +@name net.routes6 +@return Table of tables with properties of the corresponding routes. +-- The following fields are defined for route entry tables: +-- { "source", "dest", "nexthop", "metric", "refcount", "usecount", +-- "flags", "device" } +]] + +---[[ +Tests whether the given host responds to ping probes. + +@class function +@name net.pingtest +@param host String containing a hostname or IPv4 address +@return Number containing 0 on success and >= 1 on error +]] + +---[[ +LuCI system utilities / process related functions. + +@class module +@name luci.sys.process +]] + +---[[ +Get the current process id. + +@class function +@name process.info +@return Number containing the current pid +]] + +---[[ +Retrieve information about currently running processes. + +@class function +@name process.list +@return Table containing process information +]] + +---[[ +Set the gid of a process identified by given pid. + +@class function +@name process.setgroup +@param gid Number containing the Unix group id +@return Boolean indicating successful operation +@return String containing the error message if failed +@return Number containing the error code if failed +]] + +---[[ +Set the uid of a process identified by given pid. + +@class function +@name process.setuser +@param uid Number containing the Unix user id +@return Boolean indicating successful operation +@return String containing the error message if failed +@return Number containing the error code if failed +]] + +---[[ +Send a signal to a process identified by given pid. + +@class function +@name process.signal +@param pid Number containing the process id +@param sig Signal to send (default: 15 [SIGTERM]) +@return Boolean indicating successful operation +@return Number containing the error code if failed +]] + +---[[ +LuCI system utilities / user related functions. + +@class module +@name luci.sys.user +]] + +---[[ +Retrieve user informations for given uid. + +@class function +@name getuser +@param uid Number containing the Unix user id +@return Table containing the following fields: +-- { "uid", "gid", "name", "passwd", "dir", "shell", "gecos" } +]] + +---[[ +Retrieve the current user password hash. + +@class function +@name user.getpasswd +@param username String containing the username to retrieve the password for +@return String containing the hash or nil if no password is set. +@return Password database entry +]] + +---[[ +Test whether given string matches the password of a given system user. + +@class function +@name user.checkpasswd +@param username String containing the Unix user name +@param pass String containing the password to compare +@return Boolean indicating wheather the passwords are equal +]] + +---[[ +Change the password of given user. + +@class function +@name user.setpasswd +@param username String containing the Unix user name +@param password String containing the password to compare +@return Number containing 0 on success and >= 1 on error +]] + +---[[ +LuCI system utilities / wifi related functions. + +@class module +@name luci.sys.wifi +]] + +---[[ +Get wireless information for given interface. + +@class function +@name wifi.getiwinfo +@param ifname String containing the interface name +@return A wrapped iwinfo object instance +]] + +---[[ +LuCI system utilities / init related functions. + +@class module +@name luci.sys.init +]] + +---[[ +Get the names of all installed init scripts + +@class function +@name init.names +@return Table containing the names of all inistalled init scripts +]] + +---[[ +Get the index of he given init script + +@class function +@name init.index +@param name Name of the init script +@return Numeric index value +]] + +---[[ +Test whether the given init script is enabled + +@class function +@name init.enabled +@param name Name of the init script +@return Boolean indicating whether init is enabled +]] + +---[[ +Enable the given init script + +@class function +@name init.enable +@param name Name of the init script +@return Boolean indicating success +]] + +---[[ +Disable the given init script + +@class function +@name init.disable +@param name Name of the init script +@return Boolean indicating success +]] + +---[[ +Start the given init script + +@class function +@name init.start +@param name Name of the init script +@return Boolean indicating success +]] + +---[[ +Stop the given init script + +@class function +@name init.stop +@param name Name of the init script +@return Boolean indicating success +]] + diff --git a/luci-base/luasrc/sys/iptparser.lua b/luci-base/luasrc/sys/iptparser.lua new file mode 100644 index 000000000..7ff665e7a --- /dev/null +++ b/luci-base/luasrc/sys/iptparser.lua @@ -0,0 +1,374 @@ +--[[ + +Iptables parser and query library +(c) 2008-2009 Jo-Philipp Wich +(c) 2008-2009 Steven Barth + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +$Id$ + +]]-- + +local luci = {} +luci.util = require "luci.util" +luci.sys = require "luci.sys" +luci.ip = require "luci.ip" + +local pcall = pcall +local io = require "io" +local tonumber, ipairs, table = tonumber, ipairs, table + +module("luci.sys.iptparser") + +IptParser = luci.util.class() + +function IptParser.__init__( self, family ) + self._family = (tonumber(family) == 6) and 6 or 4 + self._rules = { } + self._chains = { } + self._tables = { } + + local t = self._tables + local s = self:_supported_tables(self._family) + + if s.filter then t[#t+1] = "filter" end + if s.nat then t[#t+1] = "nat" end + if s.mangle then t[#t+1] = "mangle" end + if s.raw then t[#t+1] = "raw" end + + if self._family == 4 then + self._nulladdr = "0.0.0.0/0" + self._command = "iptables -t %s --line-numbers -nxvL" + else + self._nulladdr = "::/0" + self._command = "ip6tables -t %s --line-numbers -nxvL" + end + + self:_parse_rules() +end + +function IptParser._supported_tables( self, family ) + local tables = { } + local ok, lines = pcall(io.lines, + (family == 6) and "/proc/net/ip6_tables_names" + or "/proc/net/ip_tables_names") + + if ok and lines then + local line + for line in lines do + tables[line] = true + end + end + + return tables +end + +-- search criteria as only argument. If args is nil or an empty table then all +-- rules will be returned. +-- +-- The following keys in the args table are recognized: +--
    +--
  • table - Match rules that are located within the given table +--
  • chain - Match rules that are located within the given chain +--
  • target - Match rules with the given target +--
  • protocol - Match rules that match the given protocol, rules with +-- protocol "all" are always matched +--
  • source - Match rules with the given source, rules with source +-- "0.0.0.0/0" (::/0) are always matched +--
  • destination - Match rules with the given destination, rules with +-- destination "0.0.0.0/0" (::/0) are always matched +--
  • inputif - Match rules with the given input interface, rules +-- with input interface "*" (=all) are always matched +--
  • outputif - Match rules with the given output interface, rules +-- with output interface "*" (=all) are always matched +--
  • flags - Match rules that match the given flags, current +-- supported values are "-f" (--fragment) +-- and "!f" (! --fragment) +--
  • options - Match rules containing all given options +--
+-- The return value is a list of tables representing the matched rules. +-- Each rule table contains the following fields: +--
    +--
  • index - The index number of the rule +--
  • table - The table where the rule is located, can be one +-- of "filter", "nat" or "mangle" +--
  • chain - The chain where the rule is located, e.g. "INPUT" +-- or "postrouting_wan" +--
  • target - The rule target, e.g. "REJECT" or "DROP" +--
  • protocol The matching protocols, e.g. "all" or "tcp" +--
  • flags - Special rule options ("--", "-f" or "!f") +--
  • inputif - Input interface of the rule, e.g. "eth0.0" +-- or "*" for all interfaces +--
  • outputif - Output interface of the rule,e.g. "eth0.0" +-- or "*" for all interfaces +--
  • source - The source ip range, e.g. "0.0.0.0/0" (::/0) +--
  • destination - The destination ip range, e.g. "0.0.0.0/0" (::/0) +--
  • options - A list of specific options of the rule, +-- e.g. { "reject-with", "tcp-reset" } +--
  • packets - The number of packets matched by the rule +--
  • bytes - The number of total bytes matched by the rule +--
+-- Example: +--
+-- ip = luci.sys.iptparser.IptParser()
+-- result = ip.find( {
+-- 	target="REJECT",
+-- 	protocol="tcp",
+-- 	options={ "reject-with", "tcp-reset" }
+-- } )
+-- 
+-- This will match all rules with target "-j REJECT", +-- protocol "-p tcp" (or "-p all") +-- and the option "--reject-with tcp-reset". +function IptParser.find( self, args ) + + local args = args or { } + local rv = { } + + args.source = args.source and self:_parse_addr(args.source) + args.destination = args.destination and self:_parse_addr(args.destination) + + for i, rule in ipairs(self._rules) do + local match = true + + -- match table + if not ( not args.table or args.table:lower() == rule.table ) then + match = false + end + + -- match chain + if not ( match == true and ( + not args.chain or args.chain == rule.chain + ) ) then + match = false + end + + -- match target + if not ( match == true and ( + not args.target or args.target == rule.target + ) ) then + match = false + end + + -- match protocol + if not ( match == true and ( + not args.protocol or rule.protocol == "all" or + args.protocol:lower() == rule.protocol + ) ) then + match = false + end + + -- match source + if not ( match == true and ( + not args.source or rule.source == self._nulladdr or + self:_parse_addr(rule.source):contains(args.source) + ) ) then + match = false + end + + -- match destination + if not ( match == true and ( + not args.destination or rule.destination == self._nulladdr or + self:_parse_addr(rule.destination):contains(args.destination) + ) ) then + match = false + end + + -- match input interface + if not ( match == true and ( + not args.inputif or rule.inputif == "*" or + args.inputif == rule.inputif + ) ) then + match = false + end + + -- match output interface + if not ( match == true and ( + not args.outputif or rule.outputif == "*" or + args.outputif == rule.outputif + ) ) then + match = false + end + + -- match flags (the "opt" column) + if not ( match == true and ( + not args.flags or rule.flags == args.flags + ) ) then + match = false + end + + -- match specific options + if not ( match == true and ( + not args.options or + self:_match_options( rule.options, args.options ) + ) ) then + match = false + end + + -- insert match + if match == true then + rv[#rv+1] = rule + end + end + + return rv +end + + +-- through external commands. +function IptParser.resync( self ) + self._rules = { } + self._chain = nil + self:_parse_rules() +end + + +function IptParser.tables( self ) + return self._tables +end + + +function IptParser.chains( self, table ) + local lookup = { } + local chains = { } + for _, r in ipairs(self:find({table=table})) do + if not lookup[r.chain] then + lookup[r.chain] = true + chains[#chains+1] = r.chain + end + end + return chains +end + + +-- and "rules". The "rules" field is a table of rule tables. +function IptParser.chain( self, table, chain ) + return self._chains[table:lower()] and self._chains[table:lower()][chain] +end + + +function IptParser.is_custom_target( self, target ) + for _, r in ipairs(self._rules) do + if r.chain == target then + return true + end + end + return false +end + + +-- [internal] Parse address according to family. +function IptParser._parse_addr( self, addr ) + if self._family == 4 then + return luci.ip.IPv4(addr) + else + return luci.ip.IPv6(addr) + end +end + +-- [internal] Parse iptables output from all tables. +function IptParser._parse_rules( self ) + + for i, tbl in ipairs(self._tables) do + + self._chains[tbl] = { } + + for i, rule in ipairs(luci.util.execl(self._command % tbl)) do + + if rule:find( "^Chain " ) == 1 then + + local crefs + local cname, cpol, cpkt, cbytes = rule:match( + "^Chain ([^%s]*) %(policy (%w+) " .. + "(%d+) packets, (%d+) bytes%)" + ) + + if not cname then + cname, crefs = rule:match( + "^Chain ([^%s]*) %((%d+) references%)" + ) + end + + self._chain = cname + self._chains[tbl][cname] = { + policy = cpol, + packets = tonumber(cpkt or 0), + bytes = tonumber(cbytes or 0), + references = tonumber(crefs or 0), + rules = { } + } + + else + if rule:find("%d") == 1 then + + local rule_parts = luci.util.split( rule, "%s+", nil, true ) + local rule_details = { } + + -- cope with rules that have no target assigned + if rule:match("^%d+%s+%d+%s+%d+%s%s") then + table.insert(rule_parts, 4, nil) + end + + -- ip6tables opt column is usually zero-width + if self._family == 6 then + table.insert(rule_parts, 6, "--") + end + + rule_details["table"] = tbl + rule_details["chain"] = self._chain + rule_details["index"] = tonumber(rule_parts[1]) + rule_details["packets"] = tonumber(rule_parts[2]) + rule_details["bytes"] = tonumber(rule_parts[3]) + rule_details["target"] = rule_parts[4] + rule_details["protocol"] = rule_parts[5] + rule_details["flags"] = rule_parts[6] + rule_details["inputif"] = rule_parts[7] + rule_details["outputif"] = rule_parts[8] + rule_details["source"] = rule_parts[9] + rule_details["destination"] = rule_parts[10] + rule_details["options"] = { } + + for i = 11, #rule_parts do + if #rule_parts[i] > 0 then + rule_details["options"][i-10] = rule_parts[i] + end + end + + self._rules[#self._rules+1] = rule_details + + self._chains[tbl][self._chain].rules[ + #self._chains[tbl][self._chain].rules + 1 + ] = rule_details + end + end + end + end + + self._chain = nil +end + + +-- [internal] Return true if optlist1 contains all elements of optlist 2. +-- Return false in all other cases. +function IptParser._match_options( self, o1, o2 ) + + -- construct a hashtable of first options list to speed up lookups + local oh = { } + for i, opt in ipairs( o1 ) do oh[opt] = true end + + -- iterate over second options list + -- each string in o2 must be also present in o1 + -- if o2 contains a string which is not found in o1 then return false + for i, opt in ipairs( o2 ) do + if not oh[opt] then + return false + end + end + + return true +end diff --git a/luci-base/luasrc/sys/iptparser.luadoc b/luci-base/luasrc/sys/iptparser.luadoc new file mode 100644 index 000000000..071e7d52e --- /dev/null +++ b/luci-base/luasrc/sys/iptparser.luadoc @@ -0,0 +1,69 @@ +---[[ +LuCI iptables parser and query library + +@cstyle instance +]] +module "luci.sys.iptparser" + +---[[ +Create a new iptables parser object. + +@class function +@name IptParser +@param family Number specifying the address family. 4 for IPv4, 6 for IPv6 +@return IptParser instance +]] + +---[[ +Find all firewall rules that match the given criteria. Expects a table with + +search criteria as only argument. If args is nil or an empty table then all +rules will be returned. +]] + +---[[ +Rebuild the internal lookup table, for example when rules have changed + +through external commands. +@class function +@name IptParser.resync +@return nothing +]] + +---[[ +Find the names of all tables. + +@class function +@name IptParser.tables +@return Table of table names. +]] + +---[[ +Find the names of all chains within the given table name. + +@class function +@name IptParser.chains +@param table String containing the table name +@return Table of chain names in the order they occur. +]] + +---[[ +Return the given firewall chain within the given table name. + +@class function +@name IptParser.chain +@param table String containing the table name +@param chain String containing the chain name +@return Table containing the fields "policy", "packets", "bytes" +-- and "rules". The "rules" field is a table of rule tables. +]] + +---[[ +Test whether the given target points to a custom chain. + +@class function +@name IptParser.is_custom_target +@param target String containing the target action +@return Boolean indicating whether target is a custom chain. +]] + diff --git a/luci-base/luasrc/sys/zoneinfo.lua b/luci-base/luasrc/sys/zoneinfo.lua new file mode 100644 index 000000000..aa054a246 --- /dev/null +++ b/luci-base/luasrc/sys/zoneinfo.lua @@ -0,0 +1,19 @@ +-- Licensed to the public under the Apache License 2.0. + +local setmetatable, require, rawget, rawset = setmetatable, require, rawget, rawset + +module "luci.sys.zoneinfo" + +setmetatable(_M, { + __index = function(t, k) + if k == "TZ" and not rawget(t, k) then + local m = require "luci.sys.zoneinfo.tzdata" + rawset(t, k, rawget(m, k)) + elseif k == "OFFSET" and not rawget(t, k) then + local m = require "luci.sys.zoneinfo.tzoffset" + rawset(t, k, rawget(m, k)) + end + + return rawget(t, k) + end +}) diff --git a/luci-base/luasrc/sys/zoneinfo/tzdata.lua b/luci-base/luasrc/sys/zoneinfo/tzdata.lua new file mode 100644 index 000000000..48ae5747c --- /dev/null +++ b/luci-base/luasrc/sys/zoneinfo/tzdata.lua @@ -0,0 +1,457 @@ +-- Licensed to the public under the Apache License 2.0. + +module "luci.sys.zoneinfo.tzdata" + +TZ = { + { 'Africa/Abidjan', 'GMT0' }, + { 'Africa/Accra', 'GMT0' }, + { 'Africa/Addis Ababa', 'EAT-3' }, + { 'Africa/Algiers', 'CET-1' }, + { 'Africa/Asmara', 'EAT-3' }, + { 'Africa/Bamako', 'GMT0' }, + { 'Africa/Bangui', 'WAT-1' }, + { 'Africa/Banjul', 'GMT0' }, + { 'Africa/Bissau', 'GMT0' }, + { 'Africa/Blantyre', 'CAT-2' }, + { 'Africa/Brazzaville', 'WAT-1' }, + { 'Africa/Bujumbura', 'CAT-2' }, + { 'Africa/Cairo', 'EET-2' }, + { 'Africa/Casablanca', 'WET0WEST,M3.5.0,M10.5.0/3' }, + { 'Africa/Ceuta', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Africa/Conakry', 'GMT0' }, + { 'Africa/Dakar', 'GMT0' }, + { 'Africa/Dar es Salaam', 'EAT-3' }, + { 'Africa/Djibouti', 'EAT-3' }, + { 'Africa/Douala', 'WAT-1' }, + { 'Africa/El Aaiun', 'WET0WEST,M3.5.0,M10.5.0/3' }, + { 'Africa/Freetown', 'GMT0' }, + { 'Africa/Gaborone', 'CAT-2' }, + { 'Africa/Harare', 'CAT-2' }, + { 'Africa/Johannesburg', 'SAST-2' }, + { 'Africa/Juba', 'EAT-3' }, + { 'Africa/Kampala', 'EAT-3' }, + { 'Africa/Khartoum', 'CAT-2' }, + { 'Africa/Kigali', 'CAT-2' }, + { 'Africa/Kinshasa', 'WAT-1' }, + { 'Africa/Lagos', 'WAT-1' }, + { 'Africa/Libreville', 'WAT-1' }, + { 'Africa/Lome', 'GMT0' }, + { 'Africa/Luanda', 'WAT-1' }, + { 'Africa/Lubumbashi', 'CAT-2' }, + { 'Africa/Lusaka', 'CAT-2' }, + { 'Africa/Malabo', 'WAT-1' }, + { 'Africa/Maputo', 'CAT-2' }, + { 'Africa/Maseru', 'SAST-2' }, + { 'Africa/Mbabane', 'SAST-2' }, + { 'Africa/Mogadishu', 'EAT-3' }, + { 'Africa/Monrovia', 'GMT0' }, + { 'Africa/Nairobi', 'EAT-3' }, + { 'Africa/Ndjamena', 'WAT-1' }, + { 'Africa/Niamey', 'WAT-1' }, + { 'Africa/Nouakchott', 'GMT0' }, + { 'Africa/Ouagadougou', 'GMT0' }, + { 'Africa/Porto-Novo', 'WAT-1' }, + { 'Africa/Sao Tome', 'GMT0' }, + { 'Africa/Tripoli', 'EET-2' }, + { 'Africa/Tunis', 'CET-1' }, + { 'Africa/Windhoek', 'CAT-2' }, + { 'America/Adak', 'HST10HDT,M3.2.0,M11.1.0' }, + { 'America/Anchorage', 'AKST9AKDT,M3.2.0,M11.1.0' }, + { 'America/Anguilla', 'AST4' }, + { 'America/Antigua', 'AST4' }, + { 'America/Araguaina', '<-03>3' }, + { 'America/Argentina/Buenos Aires', '<-03>3' }, + { 'America/Argentina/Catamarca', '<-03>3' }, + { 'America/Argentina/Cordoba', '<-03>3' }, + { 'America/Argentina/Jujuy', '<-03>3' }, + { 'America/Argentina/La Rioja', '<-03>3' }, + { 'America/Argentina/Mendoza', '<-03>3' }, + { 'America/Argentina/Rio Gallegos', '<-03>3' }, + { 'America/Argentina/Salta', '<-03>3' }, + { 'America/Argentina/San Juan', '<-03>3' }, + { 'America/Argentina/San Luis', '<-03>3' }, + { 'America/Argentina/Tucuman', '<-03>3' }, + { 'America/Argentina/Ushuaia', '<-03>3' }, + { 'America/Aruba', 'AST4' }, + { 'America/Asuncion', '<-04>4<-03>,M10.1.0/0,M3.4.0/0' }, + { 'America/Atikokan', 'EST5' }, + { 'America/Bahia', '<-03>3' }, + { 'America/Bahia Banderas', 'CST6CDT,M4.1.0,M10.5.0' }, + { 'America/Barbados', 'AST4' }, + { 'America/Belem', '<-03>3' }, + { 'America/Belize', 'CST6' }, + { 'America/Blanc-Sablon', 'AST4' }, + { 'America/Boa Vista', '<-04>4' }, + { 'America/Bogota', '<-05>5' }, + { 'America/Boise', 'MST7MDT,M3.2.0,M11.1.0' }, + { 'America/Cambridge Bay', 'MST7MDT,M3.2.0,M11.1.0' }, + { 'America/Campo Grande', '<-04>4<-03>,M10.3.0/0,M2.3.0/0' }, + { 'America/Cancun', 'EST5' }, + { 'America/Caracas', '<-04>4' }, + { 'America/Cayenne', '<-03>3' }, + { 'America/Cayman', 'EST5' }, + { 'America/Chicago', 'CST6CDT,M3.2.0,M11.1.0' }, + { 'America/Chihuahua', 'MST7MDT,M4.1.0,M10.5.0' }, + { 'America/Costa Rica', 'CST6' }, + { 'America/Creston', 'MST7' }, + { 'America/Cuiaba', '<-04>4<-03>,M10.3.0/0,M2.3.0/0' }, + { 'America/Curacao', 'AST4' }, + { 'America/Danmarkshavn', 'GMT0' }, + { 'America/Dawson', 'PST8PDT,M3.2.0,M11.1.0' }, + { 'America/Dawson Creek', 'MST7' }, + { 'America/Denver', 'MST7MDT,M3.2.0,M11.1.0' }, + { 'America/Detroit', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/Dominica', 'AST4' }, + { 'America/Edmonton', 'MST7MDT,M3.2.0,M11.1.0' }, + { 'America/Eirunepe', '<-05>5' }, + { 'America/El Salvador', 'CST6' }, + { 'America/Fort Nelson', 'MST7' }, + { 'America/Fortaleza', '<-03>3' }, + { 'America/Glace Bay', 'AST4ADT,M3.2.0,M11.1.0' }, + { 'America/Godthab', '<-03>3<-02>,M3.5.0/-2,M10.5.0/-1' }, + { 'America/Goose Bay', 'AST4ADT,M3.2.0,M11.1.0' }, + { 'America/Grand Turk', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/Grenada', 'AST4' }, + { 'America/Guadeloupe', 'AST4' }, + { 'America/Guatemala', 'CST6' }, + { 'America/Guayaquil', '<-05>5' }, + { 'America/Guyana', '<-04>4' }, + { 'America/Halifax', 'AST4ADT,M3.2.0,M11.1.0' }, + { 'America/Havana', 'CST5CDT,M3.2.0/0,M11.1.0/1' }, + { 'America/Hermosillo', 'MST7' }, + { 'America/Indiana/Indianapolis', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/Indiana/Knox', 'CST6CDT,M3.2.0,M11.1.0' }, + { 'America/Indiana/Marengo', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/Indiana/Petersburg', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/Indiana/Tell City', 'CST6CDT,M3.2.0,M11.1.0' }, + { 'America/Indiana/Vevay', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/Indiana/Vincennes', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/Indiana/Winamac', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/Inuvik', 'MST7MDT,M3.2.0,M11.1.0' }, + { 'America/Iqaluit', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/Jamaica', 'EST5' }, + { 'America/Juneau', 'AKST9AKDT,M3.2.0,M11.1.0' }, + { 'America/Kentucky/Louisville', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/Kentucky/Monticello', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/Kralendijk', 'AST4' }, + { 'America/La Paz', '<-04>4' }, + { 'America/Lima', '<-05>5' }, + { 'America/Los Angeles', 'PST8PDT,M3.2.0,M11.1.0' }, + { 'America/Lower Princes', 'AST4' }, + { 'America/Maceio', '<-03>3' }, + { 'America/Managua', 'CST6' }, + { 'America/Manaus', '<-04>4' }, + { 'America/Marigot', 'AST4' }, + { 'America/Martinique', 'AST4' }, + { 'America/Matamoros', 'CST6CDT,M3.2.0,M11.1.0' }, + { 'America/Mazatlan', 'MST7MDT,M4.1.0,M10.5.0' }, + { 'America/Menominee', 'CST6CDT,M3.2.0,M11.1.0' }, + { 'America/Merida', 'CST6CDT,M4.1.0,M10.5.0' }, + { 'America/Metlakatla', 'AKST9AKDT,M3.2.0,M11.1.0' }, + { 'America/Mexico City', 'CST6CDT,M4.1.0,M10.5.0' }, + { 'America/Miquelon', '<-03>3<-02>,M3.2.0,M11.1.0' }, + { 'America/Moncton', 'AST4ADT,M3.2.0,M11.1.0' }, + { 'America/Monterrey', 'CST6CDT,M4.1.0,M10.5.0' }, + { 'America/Montevideo', '<-03>3' }, + { 'America/Montserrat', 'AST4' }, + { 'America/Nassau', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/New York', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/Nipigon', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/Nome', 'AKST9AKDT,M3.2.0,M11.1.0' }, + { 'America/Noronha', '<-02>2' }, + { 'America/North Dakota/Beulah', 'CST6CDT,M3.2.0,M11.1.0' }, + { 'America/North Dakota/Center', 'CST6CDT,M3.2.0,M11.1.0' }, + { 'America/North Dakota/New Salem', 'CST6CDT,M3.2.0,M11.1.0' }, + { 'America/Ojinaga', 'MST7MDT,M3.2.0,M11.1.0' }, + { 'America/Panama', 'EST5' }, + { 'America/Pangnirtung', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/Paramaribo', '<-03>3' }, + { 'America/Phoenix', 'MST7' }, + { 'America/Port of Spain', 'AST4' }, + { 'America/Port-au-Prince', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/Porto Velho', '<-04>4' }, + { 'America/Puerto Rico', 'AST4' }, + { 'America/Punta Arenas', '<-03>3' }, + { 'America/Rainy River', 'CST6CDT,M3.2.0,M11.1.0' }, + { 'America/Rankin Inlet', 'CST6CDT,M3.2.0,M11.1.0' }, + { 'America/Recife', '<-03>3' }, + { 'America/Regina', 'CST6' }, + { 'America/Resolute', 'CST6CDT,M3.2.0,M11.1.0' }, + { 'America/Rio Branco', '<-05>5' }, + { 'America/Santarem', '<-03>3' }, + { 'America/Santiago', '<-04>4<-03>,M8.2.6/24,M5.2.6/24' }, + { 'America/Santo Domingo', 'AST4' }, + { 'America/Sao Paulo', '<-03>3<-02>,M10.3.0/0,M2.3.0/0' }, + { 'America/Scoresbysund', '<-01>1<+00>,M3.5.0/0,M10.5.0/1' }, + { 'America/Sitka', 'AKST9AKDT,M3.2.0,M11.1.0' }, + { 'America/St Barthelemy', 'AST4' }, + { 'America/St Johns', 'NST3:30NDT,M3.2.0,M11.1.0' }, + { 'America/St Kitts', 'AST4' }, + { 'America/St Lucia', 'AST4' }, + { 'America/St Thomas', 'AST4' }, + { 'America/St Vincent', 'AST4' }, + { 'America/Swift Current', 'CST6' }, + { 'America/Tegucigalpa', 'CST6' }, + { 'America/Thule', 'AST4ADT,M3.2.0,M11.1.0' }, + { 'America/Thunder Bay', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/Tijuana', 'PST8PDT,M3.2.0,M11.1.0' }, + { 'America/Toronto', 'EST5EDT,M3.2.0,M11.1.0' }, + { 'America/Tortola', 'AST4' }, + { 'America/Vancouver', 'PST8PDT,M3.2.0,M11.1.0' }, + { 'America/Whitehorse', 'PST8PDT,M3.2.0,M11.1.0' }, + { 'America/Winnipeg', 'CST6CDT,M3.2.0,M11.1.0' }, + { 'America/Yakutat', 'AKST9AKDT,M3.2.0,M11.1.0' }, + { 'America/Yellowknife', 'MST7MDT,M3.2.0,M11.1.0' }, + { 'Antarctica/Casey', '<+11>-11' }, + { 'Antarctica/Davis', '<+07>-7' }, + { 'Antarctica/DumontDUrville', '<+10>-10' }, + { 'Antarctica/Macquarie', '<+11>-11' }, + { 'Antarctica/Mawson', '<+05>-5' }, + { 'Antarctica/McMurdo', 'NZST-12NZDT,M9.5.0,M4.1.0/3' }, + { 'Antarctica/Palmer', '<-03>3' }, + { 'Antarctica/Rothera', '<-03>3' }, + { 'Antarctica/Syowa', '<+03>-3' }, + { 'Antarctica/Troll', '<+00>0<+02>-2,M3.5.0/1,M10.5.0/3' }, + { 'Antarctica/Vostok', '<+06>-6' }, + { 'Arctic/Longyearbyen', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Asia/Aden', '<+03>-3' }, + { 'Asia/Almaty', '<+06>-6' }, + { 'Asia/Amman', 'EET-2EEST,M3.5.4/24,M10.5.5/1' }, + { 'Asia/Anadyr', '<+12>-12' }, + { 'Asia/Aqtau', '<+05>-5' }, + { 'Asia/Aqtobe', '<+05>-5' }, + { 'Asia/Ashgabat', '<+05>-5' }, + { 'Asia/Atyrau', '<+05>-5' }, + { 'Asia/Baghdad', '<+03>-3' }, + { 'Asia/Bahrain', '<+03>-3' }, + { 'Asia/Baku', '<+04>-4' }, + { 'Asia/Bangkok', '<+07>-7' }, + { 'Asia/Barnaul', '<+07>-7' }, + { 'Asia/Beirut', 'EET-2EEST,M3.5.0/0,M10.5.0/0' }, + { 'Asia/Bishkek', '<+06>-6' }, + { 'Asia/Brunei', '<+08>-8' }, + { 'Asia/Chita', '<+09>-9' }, + { 'Asia/Choibalsan', '<+08>-8' }, + { 'Asia/Colombo', '<+0530>-5:30' }, + { 'Asia/Damascus', 'EET-2EEST,M3.5.5/0,M10.5.5/0' }, + { 'Asia/Dhaka', '<+06>-6' }, + { 'Asia/Dili', '<+09>-9' }, + { 'Asia/Dubai', '<+04>-4' }, + { 'Asia/Dushanbe', '<+05>-5' }, + { 'Asia/Famagusta', 'EET-2EEST,M3.5.0/3,M10.5.0/4' }, + { 'Asia/Gaza', 'EET-2EEST,M3.5.6/1,M10.5.6/1' }, + { 'Asia/Hebron', 'EET-2EEST,M3.5.6/1,M10.5.6/1' }, + { 'Asia/Ho Chi Minh', '<+07>-7' }, + { 'Asia/Hong Kong', 'HKT-8' }, + { 'Asia/Hovd', '<+07>-7' }, + { 'Asia/Irkutsk', '<+08>-8' }, + { 'Asia/Jakarta', 'WIB-7' }, + { 'Asia/Jayapura', 'WIT-9' }, + { 'Asia/Jerusalem', 'IST-2IDT,M3.4.4/26,M10.5.0' }, + { 'Asia/Kabul', '<+0430>-4:30' }, + { 'Asia/Kamchatka', '<+12>-12' }, + { 'Asia/Karachi', 'PKT-5' }, + { 'Asia/Kathmandu', '<+0545>-5:45' }, + { 'Asia/Khandyga', '<+09>-9' }, + { 'Asia/Kolkata', 'IST-5:30' }, + { 'Asia/Krasnoyarsk', '<+07>-7' }, + { 'Asia/Kuala Lumpur', '<+08>-8' }, + { 'Asia/Kuching', '<+08>-8' }, + { 'Asia/Kuwait', '<+03>-3' }, + { 'Asia/Macau', 'CST-8' }, + { 'Asia/Magadan', '<+11>-11' }, + { 'Asia/Makassar', 'WITA-8' }, + { 'Asia/Manila', '<+08>-8' }, + { 'Asia/Muscat', '<+04>-4' }, + { 'Asia/Nicosia', 'EET-2EEST,M3.5.0/3,M10.5.0/4' }, + { 'Asia/Novokuznetsk', '<+07>-7' }, + { 'Asia/Novosibirsk', '<+07>-7' }, + { 'Asia/Omsk', '<+06>-6' }, + { 'Asia/Oral', '<+05>-5' }, + { 'Asia/Phnom Penh', '<+07>-7' }, + { 'Asia/Pontianak', 'WIB-7' }, + { 'Asia/Pyongyang', 'KST-8:30' }, + { 'Asia/Qatar', '<+03>-3' }, + { 'Asia/Qyzylorda', '<+06>-6' }, + { 'Asia/Riyadh', '<+03>-3' }, + { 'Asia/Sakhalin', '<+11>-11' }, + { 'Asia/Samarkand', '<+05>-5' }, + { 'Asia/Seoul', 'KST-9' }, + { 'Asia/Shanghai', 'CST-8' }, + { 'Asia/Singapore', '<+08>-8' }, + { 'Asia/Srednekolymsk', '<+11>-11' }, + { 'Asia/Taipei', 'CST-8' }, + { 'Asia/Tashkent', '<+05>-5' }, + { 'Asia/Tbilisi', '<+04>-4' }, + { 'Asia/Tehran', '<+0330>-3:30<+0430>,J80/0,J264/0' }, + { 'Asia/Thimphu', '<+06>-6' }, + { 'Asia/Tokyo', 'JST-9' }, + { 'Asia/Tomsk', '<+07>-7' }, + { 'Asia/Ulaanbaatar', '<+08>-8' }, + { 'Asia/Urumqi', '<+06>-6' }, + { 'Asia/Ust-Nera', '<+10>-10' }, + { 'Asia/Vientiane', '<+07>-7' }, + { 'Asia/Vladivostok', '<+10>-10' }, + { 'Asia/Yakutsk', '<+09>-9' }, + { 'Asia/Yangon', '<+0630>-6:30' }, + { 'Asia/Yekaterinburg', '<+05>-5' }, + { 'Asia/Yerevan', '<+04>-4' }, + { 'Atlantic/Azores', '<-01>1<+00>,M3.5.0/0,M10.5.0/1' }, + { 'Atlantic/Bermuda', 'AST4ADT,M3.2.0,M11.1.0' }, + { 'Atlantic/Canary', 'WET0WEST,M3.5.0/1,M10.5.0' }, + { 'Atlantic/Cape Verde', '<-01>1' }, + { 'Atlantic/Faroe', 'WET0WEST,M3.5.0/1,M10.5.0' }, + { 'Atlantic/Madeira', 'WET0WEST,M3.5.0/1,M10.5.0' }, + { 'Atlantic/Reykjavik', 'GMT0' }, + { 'Atlantic/South Georgia', '<-02>2' }, + { 'Atlantic/St Helena', 'GMT0' }, + { 'Atlantic/Stanley', '<-03>3' }, + { 'Australia/Adelaide', 'ACST-9:30ACDT,M10.1.0,M4.1.0/3' }, + { 'Australia/Brisbane', 'AEST-10' }, + { 'Australia/Broken Hill', 'ACST-9:30ACDT,M10.1.0,M4.1.0/3' }, + { 'Australia/Currie', 'AEST-10AEDT,M10.1.0,M4.1.0/3' }, + { 'Australia/Darwin', 'ACST-9:30' }, + { 'Australia/Eucla', '<+0845>-8:45' }, + { 'Australia/Hobart', 'AEST-10AEDT,M10.1.0,M4.1.0/3' }, + { 'Australia/Lindeman', 'AEST-10' }, + { 'Australia/Lord Howe', '<+1030>-10:30<+11>-11,M10.1.0,M4.1.0' }, + { 'Australia/Melbourne', 'AEST-10AEDT,M10.1.0,M4.1.0/3' }, + { 'Australia/Perth', 'AWST-8' }, + { 'Australia/Sydney', 'AEST-10AEDT,M10.1.0,M4.1.0/3' }, + { 'Etc/GMT', 'GMT0' }, + { 'Etc/GMT+1', '<-01>1' }, + { 'Etc/GMT+10', '<-10>10' }, + { 'Etc/GMT+11', '<-11>11' }, + { 'Etc/GMT+12', '<-12>12' }, + { 'Etc/GMT+2', '<-02>2' }, + { 'Etc/GMT+3', '<-03>3' }, + { 'Etc/GMT+4', '<-04>4' }, + { 'Etc/GMT+5', '<-05>5' }, + { 'Etc/GMT+6', '<-06>6' }, + { 'Etc/GMT+7', '<-07>7' }, + { 'Etc/GMT+8', '<-08>8' }, + { 'Etc/GMT+9', '<-09>9' }, + { 'Etc/GMT-1', '<+01>-1' }, + { 'Etc/GMT-10', '<+10>-10' }, + { 'Etc/GMT-11', '<+11>-11' }, + { 'Etc/GMT-12', '<+12>-12' }, + { 'Etc/GMT-13', '<+13>-13' }, + { 'Etc/GMT-14', '<+14>-14' }, + { 'Etc/GMT-2', '<+02>-2' }, + { 'Etc/GMT-3', '<+03>-3' }, + { 'Etc/GMT-4', '<+04>-4' }, + { 'Etc/GMT-5', '<+05>-5' }, + { 'Etc/GMT-6', '<+06>-6' }, + { 'Etc/GMT-7', '<+07>-7' }, + { 'Etc/GMT-8', '<+08>-8' }, + { 'Etc/GMT-9', '<+09>-9' }, + { 'Europe/Amsterdam', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Andorra', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Astrakhan', '<+04>-4' }, + { 'Europe/Athens', 'EET-2EEST,M3.5.0/3,M10.5.0/4' }, + { 'Europe/Belgrade', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Berlin', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Bratislava', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Brussels', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Bucharest', 'EET-2EEST,M3.5.0/3,M10.5.0/4' }, + { 'Europe/Budapest', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Busingen', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Chisinau', 'EET-2EEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Copenhagen', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Dublin', 'GMT0IST,M3.5.0/1,M10.5.0' }, + { 'Europe/Gibraltar', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Guernsey', 'GMT0BST,M3.5.0/1,M10.5.0' }, + { 'Europe/Helsinki', 'EET-2EEST,M3.5.0/3,M10.5.0/4' }, + { 'Europe/Isle of Man', 'GMT0BST,M3.5.0/1,M10.5.0' }, + { 'Europe/Istanbul', '<+03>-3' }, + { 'Europe/Jersey', 'GMT0BST,M3.5.0/1,M10.5.0' }, + { 'Europe/Kaliningrad', 'EET-2' }, + { 'Europe/Kiev', 'EET-2EEST,M3.5.0/3,M10.5.0/4' }, + { 'Europe/Kirov', '<+03>-3' }, + { 'Europe/Lisbon', 'WET0WEST,M3.5.0/1,M10.5.0' }, + { 'Europe/Ljubljana', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/London', 'GMT0BST,M3.5.0/1,M10.5.0' }, + { 'Europe/Luxembourg', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Madrid', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Malta', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Mariehamn', 'EET-2EEST,M3.5.0/3,M10.5.0/4' }, + { 'Europe/Minsk', '<+03>-3' }, + { 'Europe/Monaco', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Moscow', 'MSK-3' }, + { 'Europe/Oslo', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Paris', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Podgorica', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Prague', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Riga', 'EET-2EEST,M3.5.0/3,M10.5.0/4' }, + { 'Europe/Rome', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Samara', '<+04>-4' }, + { 'Europe/San Marino', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Sarajevo', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Saratov', '<+04>-4' }, + { 'Europe/Simferopol', 'MSK-3' }, + { 'Europe/Skopje', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Sofia', 'EET-2EEST,M3.5.0/3,M10.5.0/4' }, + { 'Europe/Stockholm', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Tallinn', 'EET-2EEST,M3.5.0/3,M10.5.0/4' }, + { 'Europe/Tirane', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Ulyanovsk', '<+04>-4' }, + { 'Europe/Uzhgorod', 'EET-2EEST,M3.5.0/3,M10.5.0/4' }, + { 'Europe/Vaduz', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Vatican', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Vienna', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Vilnius', 'EET-2EEST,M3.5.0/3,M10.5.0/4' }, + { 'Europe/Volgograd', '<+03>-3' }, + { 'Europe/Warsaw', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Zagreb', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Europe/Zaporozhye', 'EET-2EEST,M3.5.0/3,M10.5.0/4' }, + { 'Europe/Zurich', 'CET-1CEST,M3.5.0,M10.5.0/3' }, + { 'Indian/Antananarivo', 'EAT-3' }, + { 'Indian/Chagos', '<+06>-6' }, + { 'Indian/Christmas', '<+07>-7' }, + { 'Indian/Cocos', '<+0630>-6:30' }, + { 'Indian/Comoro', 'EAT-3' }, + { 'Indian/Kerguelen', '<+05>-5' }, + { 'Indian/Mahe', '<+04>-4' }, + { 'Indian/Maldives', '<+05>-5' }, + { 'Indian/Mauritius', '<+04>-4' }, + { 'Indian/Mayotte', 'EAT-3' }, + { 'Indian/Reunion', '<+04>-4' }, + { 'Pacific/Apia', '<+13>-13<+14>,M9.5.0/3,M4.1.0/4' }, + { 'Pacific/Auckland', 'NZST-12NZDT,M9.5.0,M4.1.0/3' }, + { 'Pacific/Bougainville', '<+11>-11' }, + { 'Pacific/Chatham', '<+1245>-12:45<+1345>,M9.5.0/2:45,M4.1.0/3:45' }, + { 'Pacific/Chuuk', '<+10>-10' }, + { 'Pacific/Easter', '<-06>6<-05>,M8.2.6/22,M5.2.6/22' }, + { 'Pacific/Efate', '<+11>-11' }, + { 'Pacific/Enderbury', '<+13>-13' }, + { 'Pacific/Fakaofo', '<+13>-13' }, + { 'Pacific/Fiji', '<+12>-12<+13>,M11.1.0,M1.2.1/147' }, + { 'Pacific/Funafuti', '<+12>-12' }, + { 'Pacific/Galapagos', '<-06>6' }, + { 'Pacific/Gambier', '<-09>9' }, + { 'Pacific/Guadalcanal', '<+11>-11' }, + { 'Pacific/Guam', 'ChST-10' }, + { 'Pacific/Honolulu', 'HST10' }, + { 'Pacific/Kiritimati', '<+14>-14' }, + { 'Pacific/Kosrae', '<+11>-11' }, + { 'Pacific/Kwajalein', '<+12>-12' }, + { 'Pacific/Majuro', '<+12>-12' }, + { 'Pacific/Marquesas', '<-0930>9:30' }, + { 'Pacific/Midway', 'SST11' }, + { 'Pacific/Nauru', '<+12>-12' }, + { 'Pacific/Niue', '<-11>11' }, + { 'Pacific/Norfolk', '<+11>-11' }, + { 'Pacific/Noumea', '<+11>-11' }, + { 'Pacific/Pago Pago', 'SST11' }, + { 'Pacific/Palau', '<+09>-9' }, + { 'Pacific/Pitcairn', '<-08>8' }, + { 'Pacific/Pohnpei', '<+11>-11' }, + { 'Pacific/Port Moresby', '<+10>-10' }, + { 'Pacific/Rarotonga', '<-10>10' }, + { 'Pacific/Saipan', 'ChST-10' }, + { 'Pacific/Tahiti', '<-10>10' }, + { 'Pacific/Tarawa', '<+12>-12' }, + { 'Pacific/Tongatapu', '<+13>-13' }, + { 'Pacific/Wake', '<+12>-12' }, + { 'Pacific/Wallis', '<+12>-12' }, +} diff --git a/luci-base/luasrc/sys/zoneinfo/tzoffset.lua b/luci-base/luasrc/sys/zoneinfo/tzoffset.lua new file mode 100644 index 000000000..cf5afeb9d --- /dev/null +++ b/luci-base/luasrc/sys/zoneinfo/tzoffset.lua @@ -0,0 +1,45 @@ +-- Licensed to the public under the Apache License 2.0. + +module "luci.sys.zoneinfo.tzoffset" + +OFFSET = { + gmt = 0, -- GMT + eat = 10800, -- EAT + cet = 3600, -- CET + wat = 3600, -- WAT + cat = 7200, -- CAT + eet = 7200, -- EET + wet = 0, -- WET + sast = 7200, -- SAST + hst = -36000, -- HST + hdt = -32400, -- HDT + akst = -32400, -- AKST + akdt = -28800, -- AKDT + ast = -14400, -- AST + est = -18000, -- EST + cst = -21600, -- CST + cdt = -18000, -- CDT + mst = -25200, -- MST + mdt = -21600, -- MDT + pst = -28800, -- PST + pdt = -25200, -- PDT + nst = -12600, -- NST + ndt = -9000, -- NDT + nzst = 43200, -- NZST + nzdt = 46800, -- NZDT + hkt = 28800, -- HKT + wib = 25200, -- WIB + wit = 32400, -- WIT + ist = 7200, -- IST + idt = 10800, -- IDT + pkt = 18000, -- PKT + wita = 28800, -- WITA + kst = 30600, -- KST + jst = 32400, -- JST + acst = 34200, -- ACST + acdt = 37800, -- ACDT + aest = 36000, -- AEST + awst = 28800, -- AWST + msk = 10800, -- MSK + sst = -39600, -- SST +} diff --git a/luci-base/luasrc/template.lua b/luci-base/luasrc/template.lua new file mode 100644 index 000000000..588028c2e --- /dev/null +++ b/luci-base/luasrc/template.lua @@ -0,0 +1,100 @@ +-- Copyright 2008 Steven Barth +-- Licensed to the public under the Apache License 2.0. + +local util = require "luci.util" +local config = require "luci.config" +local tparser = require "luci.template.parser" + +local tostring, pairs, loadstring = tostring, pairs, loadstring +local setmetatable, loadfile = setmetatable, loadfile +local getfenv, setfenv, rawget = getfenv, setfenv, rawget +local assert, type, error = assert, type, error + +--- LuCI template library. +module "luci.template" + +config.template = config.template or {} +viewdir = config.template.viewdir or util.libpath() .. "/view" + + +-- Define the namespace for template modules +context = util.threadlocal() + +--- Render a certain template. +-- @param name Template name +-- @param scope Scope to assign to template (optional) +function render(name, scope) + return Template(name):render(scope or getfenv(2)) +end + +--- Render a template from a string. +-- @param template Template string +-- @param scope Scope to assign to template (optional) +function render_string(template, scope) + return Template(nil, template):render(scope or getfenv(2)) +end + + +-- Template class +Template = util.class() + +-- Shared template cache to store templates in to avoid unnecessary reloading +Template.cache = setmetatable({}, {__mode = "v"}) + + +-- Constructor - Reads and compiles the template on-demand +function Template.__init__(self, name, template) + if name then + self.template = self.cache[name] + self.name = name + else + self.name = "[string]" + end + + -- Create a new namespace for this template + self.viewns = context.viewns + + -- If we have a cached template, skip compiling and loading + if not self.template then + + -- Compile template + local err + local sourcefile + + if name then + sourcefile = viewdir .. "/" .. name .. ".htm" + self.template, _, err = tparser.parse(sourcefile) + else + sourcefile = "[string]" + self.template, _, err = tparser.parse_string(template) + end + + -- If we have no valid template throw error, otherwise cache the template + if not self.template then + error("Failed to load template '" .. name .. "'.\n" .. + "Error while parsing template '" .. sourcefile .. "':\n" .. + (err or "Unknown syntax error")) + elseif name then + self.cache[name] = self.template + end + end +end + + +-- Renders a template +function Template.render(self, scope) + scope = scope or getfenv(2) + + -- Put our predefined objects in the scope of the template + setfenv(self.template, setmetatable({}, {__index = + function(tbl, key) + return rawget(tbl, key) or self.viewns[key] or scope[key] + end})) + + -- Now finally render the thing + local stat, err = util.copcall(self.template) + if not stat then + error("Failed to execute template '" .. self.name .. "'.\n" .. + "A runtime error occured: " .. tostring(err or "(nil)")) + end +end diff --git a/luci-base/luasrc/tools/proto.lua b/luci-base/luasrc/tools/proto.lua new file mode 100644 index 000000000..147688d2c --- /dev/null +++ b/luci-base/luasrc/tools/proto.lua @@ -0,0 +1,36 @@ +-- Copyright 2012 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +module("luci.tools.proto", package.seeall) + +function opt_macaddr(s, ifc, ...) + local v = luci.cbi.Value + local o = s:taboption("advanced", v, "macaddr", ...) + + o.placeholder = ifc and ifc:mac() + o.datatype = "macaddr" + + function o.cfgvalue(self, section) + local w = ifc and ifc:get_wifinet() + if w then + return w:get("macaddr") + else + return v.cfgvalue(self, section) + end + end + + function o.write(self, section, value) + local w = ifc and ifc:get_wifinet() + if w then + w:set("macaddr", value) + elseif value then + v.write(self, section, value) + else + v.remove(self, section) + end + end + + function o.remove(self, section) + self:write(section, nil) + end +end diff --git a/luci-base/luasrc/tools/status.lua b/luci-base/luasrc/tools/status.lua new file mode 100644 index 000000000..95ff46df1 --- /dev/null +++ b/luci-base/luasrc/tools/status.lua @@ -0,0 +1,230 @@ +-- Copyright 2011 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +module("luci.tools.status", package.seeall) + +local uci = require "luci.model.uci".cursor() + +local function dhcp_leases_common(family) + local rv = { } + local nfs = require "nixio.fs" + local leasefile = "/tmp/dhcp.leases" + + uci:foreach("dhcp", "dnsmasq", + function(s) + if s.leasefile and nfs.access(s.leasefile) then + leasefile = s.leasefile + return false + end + end) + + local fd = io.open(leasefile, "r") + if fd then + while true do + local ln = fd:read("*l") + if not ln then + break + else + local ts, mac, ip, name, duid = ln:match("^(%d+) (%S+) (%S+) (%S+) (%S+)") + local expire = tonumber(ts) or 0 + if ts and mac and ip and name and duid then + if family == 4 and not ip:match(":") then + rv[#rv+1] = { + expires = (expire ~= 0) and os.difftime(expire, os.time()), + macaddr = mac, + ipaddr = ip, + hostname = (name ~= "*") and name + } + elseif family == 6 and ip:match(":") then + rv[#rv+1] = { + expires = (expire ~= 0) and os.difftime(expire, os.time()), + ip6addr = ip, + duid = (duid ~= "*") and duid, + hostname = (name ~= "*") and name + } + end + end + end + end + fd:close() + end + + local lease6file = "/tmp/hosts/odhcpd" + uci:foreach("dhcp", "odhcpd", + function(t) + if t.leasefile and nfs.access(t.leasefile) then + lease6file = t.leasefile + return false + end + end) + local fd = io.open(lease6file, "r") + if fd then + while true do + local ln = fd:read("*l") + if not ln then + break + else + local iface, duid, iaid, name, ts, id, length, ip = ln:match("^# (%S+) (%S+) (%S+) (%S+) (-?%d+) (%S+) (%S+) (.*)") + local expire = tonumber(ts) or 0 + if ip and iaid ~= "ipv4" and family == 6 then + rv[#rv+1] = { + expires = (expire >= 0) and os.difftime(expire, os.time()), + duid = duid, + ip6addr = ip, + hostname = (name ~= "-") and name + } + elseif ip and iaid == "ipv4" and family == 4 then + local mac, mac1, mac2, mac3, mac4, mac5, mac6 + if duid and type(duid) == "string" then + mac1, mac2, mac3, mac4, mac5, mac6 = duid:match("^(%x%x)(%x%x)(%x%x)(%x%x)(%x%x)(%x%x)$") + end + if not (mac1 and mac2 and mac3 and mac4 and mac5 and mac6) then + mac = "FF:FF:FF:FF:FF:FF" + else + mac = mac1..":"..mac2..":"..mac3..":"..mac4..":"..mac5..":"..mac6 + end + rv[#rv+1] = { + expires = (expire >= 0) and os.difftime(expire, os.time()), + macaddr = duid, + macaddr = mac:lower(), + ipaddr = ip, + hostname = (name ~= "-") and name + } + end + end + end + fd:close() + end + + return rv +end + +function dhcp_leases() + return dhcp_leases_common(4) +end + +function dhcp6_leases() + return dhcp_leases_common(6) +end + +function wifi_networks() + local rv = { } + local ntm = require "luci.model.network".init() + + local dev + for _, dev in ipairs(ntm:get_wifidevs()) do + local rd = { + up = dev:is_up(), + device = dev:name(), + name = dev:get_i18n(), + networks = { } + } + + local net + for _, net in ipairs(dev:get_wifinets()) do + rd.networks[#rd.networks+1] = { + name = net:shortname(), + link = net:adminlink(), + up = net:is_up(), + mode = net:active_mode(), + ssid = net:active_ssid(), + bssid = net:active_bssid(), + encryption = net:active_encryption(), + frequency = net:frequency(), + channel = net:channel(), + signal = net:signal(), + quality = net:signal_percent(), + noise = net:noise(), + bitrate = net:bitrate(), + ifname = net:ifname(), + assoclist = net:assoclist(), + country = net:country(), + txpower = net:txpower(), + txpoweroff = net:txpower_offset(), + disabled = (dev:get("disabled") == "1" or + net:get("disabled") == "1") + } + end + + rv[#rv+1] = rd + end + + return rv +end + +function wifi_network(id) + local ntm = require "luci.model.network".init() + local net = ntm:get_wifinet(id) + if net then + local dev = net:get_device() + if dev then + return { + id = id, + name = net:shortname(), + link = net:adminlink(), + up = net:is_up(), + mode = net:active_mode(), + ssid = net:active_ssid(), + bssid = net:active_bssid(), + encryption = net:active_encryption(), + frequency = net:frequency(), + channel = net:channel(), + signal = net:signal(), + quality = net:signal_percent(), + noise = net:noise(), + bitrate = net:bitrate(), + ifname = net:ifname(), + assoclist = net:assoclist(), + country = net:country(), + txpower = net:txpower(), + txpoweroff = net:txpower_offset(), + disabled = (dev:get("disabled") == "1" or + net:get("disabled") == "1"), + device = { + up = dev:is_up(), + device = dev:name(), + name = dev:get_i18n() + } + } + end + end + return { } +end + +function switch_status(devs) + local dev + local switches = { } + for dev in devs:gmatch("[^%s,]+") do + local ports = { } + local swc = io.popen("swconfig dev %q show" % dev, "r") + if swc then + local l + repeat + l = swc:read("*l") + if l then + local port, up = l:match("port:(%d+) link:(%w+)") + if port then + local speed = l:match(" speed:(%d+)") + local duplex = l:match(" (%w+)-duplex") + local txflow = l:match(" (txflow)") + local rxflow = l:match(" (rxflow)") + local auto = l:match(" (auto)") + + ports[#ports+1] = { + port = tonumber(port) or 0, + speed = tonumber(speed) or 0, + link = (up == "up"), + duplex = (duplex == "full"), + rxflow = (not not rxflow), + txflow = (not not txflow), + auto = (not not auto) + } + end + end + until not l + swc:close() + end + switches[dev] = ports + end + return switches +end diff --git a/luci-base/luasrc/tools/webadmin.lua b/luci-base/luasrc/tools/webadmin.lua new file mode 100644 index 000000000..106810aa0 --- /dev/null +++ b/luci-base/luasrc/tools/webadmin.lua @@ -0,0 +1,105 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2008-2015 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +module("luci.tools.webadmin", package.seeall) + +local util = require "luci.util" +local uci = require "luci.model.uci" +local ip = require "luci.ip" + +function byte_format(byte) + local suff = {"B", "KB", "MB", "GB", "TB"} + for i=1, 5 do + if byte > 1024 and i < 5 then + byte = byte / 1024 + else + return string.format("%.2f %s", byte, suff[i]) + end + end +end + +function date_format(secs) + local suff = {"min", "h", "d"} + local mins = 0 + local hour = 0 + local days = 0 + + secs = math.floor(secs) + if secs > 60 then + mins = math.floor(secs / 60) + secs = secs % 60 + end + + if mins > 60 then + hour = math.floor(mins / 60) + mins = mins % 60 + end + + if hour > 24 then + days = math.floor(hour / 24) + hour = hour % 24 + end + + if days > 0 then + return string.format("%.0fd %02.0fh %02.0fmin %02.0fs", days, hour, mins, secs) + else + return string.format("%02.0fh %02.0fmin %02.0fs", hour, mins, secs) + end +end + +function cbi_add_networks(field) + uci.cursor():foreach("network", "interface", + function (section) + if section[".name"] ~= "loopback" then + field:value(section[".name"]) + end + end + ) + field.titleref = luci.dispatcher.build_url("admin", "network", "network") +end + +function cbi_add_knownips(field) + local _, n + for _, n in ipairs(ip.neighbors({ family = 4 })) do + if n.dest then + field:value(n.dest:string()) + end + end +end + +function firewall_find_zone(name) + local find + + luci.model.uci.cursor():foreach("firewall", "zone", + function (section) + if section.name == name then + find = section[".name"] + end + end + ) + + return find +end + +function iface_get_network(iface) + local link = ip.link(tostring(iface)) + if link.master then + iface = link.master + end + + local cur = uci.cursor() + local dump = util.ubus("network.interface", "dump", { }) + if dump then + local _, net + for _, net in ipairs(dump.interface) do + if net.l3_device == iface or net.device == iface then + -- cross check with uci to filter out @name style aliases + local uciname = cur:get("network", net.interface, "ifname") + if type(uciname) == "string" and uciname:sub(1,1) ~= "@" or uciname then + return net.interface + end + end + end + end +end diff --git a/luci-base/luasrc/util.lua b/luci-base/luasrc/util.lua new file mode 100644 index 000000000..0e7334be8 --- /dev/null +++ b/luci-base/luasrc/util.lua @@ -0,0 +1,739 @@ +-- Copyright 2008 Steven Barth +-- Licensed to the public under the Apache License 2.0. + +local io = require "io" +local math = require "math" +local table = require "table" +local debug = require "debug" +local ldebug = require "luci.debug" +local string = require "string" +local coroutine = require "coroutine" +local tparser = require "luci.template.parser" +local json = require "luci.jsonc" + +local _ubus = require "ubus" +local _ubus_connection = nil + +local getmetatable, setmetatable = getmetatable, setmetatable +local rawget, rawset, unpack = rawget, rawset, unpack +local tostring, type, assert, error = tostring, type, assert, error +local ipairs, pairs, next, loadstring = ipairs, pairs, next, loadstring +local require, pcall, xpcall = require, pcall, xpcall +local collectgarbage, get_memory_limit = collectgarbage, get_memory_limit + +module "luci.util" + +-- +-- Pythonic string formatting extension +-- +getmetatable("").__mod = function(a, b) + local ok, res + + if not b then + return a + elseif type(b) == "table" then + local k, _ + for k, _ in pairs(b) do if type(b[k]) == "userdata" then b[k] = tostring(b[k]) end end + + ok, res = pcall(a.format, a, unpack(b)) + if not ok then + error(res, 2) + end + return res + else + if type(b) == "userdata" then b = tostring(b) end + + ok, res = pcall(a.format, a, b) + if not ok then + error(res, 2) + end + return res + end +end + + +-- +-- Class helper routines +-- + +-- Instantiates a class +local function _instantiate(class, ...) + local inst = setmetatable({}, {__index = class}) + + if inst.__init__ then + inst:__init__(...) + end + + return inst +end + +-- The class object can be instantiated by calling itself. +-- Any class functions or shared parameters can be attached to this object. +-- Attaching a table to the class object makes this table shared between +-- all instances of this class. For object parameters use the __init__ function. +-- Classes can inherit member functions and values from a base class. +-- Class can be instantiated by calling them. All parameters will be passed +-- to the __init__ function of this class - if such a function exists. +-- The __init__ function must be used to set any object parameters that are not shared +-- with other objects of this class. Any return values will be ignored. +function class(base) + return setmetatable({}, { + __call = _instantiate, + __index = base + }) +end + +function instanceof(object, class) + local meta = getmetatable(object) + while meta and meta.__index do + if meta.__index == class then + return true + end + meta = getmetatable(meta.__index) + end + return false +end + + +-- +-- Scope manipulation routines +-- + +local tl_meta = { + __mode = "k", + + __index = function(self, key) + local t = rawget(self, coxpt[coroutine.running()] + or coroutine.running() or 0) + return t and t[key] + end, + + __newindex = function(self, key, value) + local c = coxpt[coroutine.running()] or coroutine.running() or 0 + local r = rawget(self, c) + if not r then + rawset(self, c, { [key] = value }) + else + r[key] = value + end + end +} + +-- the current active coroutine. A thread local store is private a table object +-- whose values can't be accessed from outside of the running coroutine. +function threadlocal(tbl) + return setmetatable(tbl or {}, tl_meta) +end + + +-- +-- Debugging routines +-- + +function perror(obj) + return io.stderr:write(tostring(obj) .. "\n") +end + +function dumptable(t, maxdepth, i, seen) + i = i or 0 + seen = seen or setmetatable({}, {__mode="k"}) + + for k,v in pairs(t) do + perror(string.rep("\t", i) .. tostring(k) .. "\t" .. tostring(v)) + if type(v) == "table" and (not maxdepth or i < maxdepth) then + if not seen[v] then + seen[v] = true + dumptable(v, maxdepth, i+1, seen) + else + perror(string.rep("\t", i) .. "*** RECURSION ***") + end + end + end +end + + +-- +-- String and data manipulation routines +-- + +function pcdata(value) + return value and tparser.pcdata(tostring(value)) +end + +function striptags(value) + return value and tparser.striptags(tostring(value)) +end + +-- for bash, ash and similar shells single-quoted strings are taken +-- literally except for single quotes (which terminate the string) +-- (and the exception noted below for dash (-) at the start of a +-- command line parameter). +function shellsqescape(value) + local res + res, _ = string.gsub(value, "'", "'\\''") + return res +end + +-- bash, ash and other similar shells interpret a dash (-) at the start +-- of a command-line parameters as an option indicator regardless of +-- whether it is inside a single-quoted string. It must be backlash +-- escaped to resolve this. This requires in some funky special-case +-- handling. It may actually be a property of the getopt function +-- rather than the shell proper. +function shellstartsqescape(value) + res, _ = string.gsub(value, "^\-", "\\-") + res, _ = string.gsub(res, "^-", "\-") + return shellsqescape(value) +end + +-- containing the resulting substrings. The optional max parameter specifies +-- the number of bytes to process, regardless of the actual length of the given +-- string. The optional last parameter, regex, specifies whether the separator +-- sequence is interpreted as regular expression. +-- pattern as regular expression (optional, default is false) +function split(str, pat, max, regex) + pat = pat or "\n" + max = max or #str + + local t = {} + local c = 1 + + if #str == 0 then + return {""} + end + + if #pat == 0 then + return nil + end + + if max == 0 then + return str + end + + repeat + local s, e = str:find(pat, c, not regex) + max = max - 1 + if s and max < 0 then + t[#t+1] = str:sub(c) + else + t[#t+1] = str:sub(c, s and s - 1) + end + c = e and e + 1 or #str + 1 + until not s or max < 0 + + return t +end + +function trim(str) + return (str:gsub("^%s*(.-)%s*$", "%1")) +end + +function cmatch(str, pat) + local count = 0 + for _ in str:gmatch(pat) do count = count + 1 end + return count +end + +-- one token per invocation, the tokens are separated by whitespace. If the +-- input value is a table, it is transformed into a string first. A nil value +-- will result in a valid interator which aborts with the first invocation. +function imatch(v) + if type(v) == "table" then + local k = nil + return function() + k = next(v, k) + return v[k] + end + + elseif type(v) == "number" or type(v) == "boolean" then + local x = true + return function() + if x then + x = false + return tostring(v) + end + end + + elseif type(v) == "userdata" or type(v) == "string" then + return tostring(v):gmatch("%S+") + end + + return function() end +end + +-- value or 0 if the unit is unknown. Upper- or lower case is irrelevant. +-- Recognized units are: +-- o "y" - one year (60*60*24*366) +-- o "m" - one month (60*60*24*31) +-- o "w" - one week (60*60*24*7) +-- o "d" - one day (60*60*24) +-- o "h" - one hour (60*60) +-- o "min" - one minute (60) +-- o "kb" - one kilobyte (1024) +-- o "mb" - one megabyte (1024*1024) +-- o "gb" - one gigabyte (1024*1024*1024) +-- o "kib" - one si kilobyte (1000) +-- o "mib" - one si megabyte (1000*1000) +-- o "gib" - one si gigabyte (1000*1000*1000) +function parse_units(ustr) + + local val = 0 + + -- unit map + local map = { + -- date stuff + y = 60 * 60 * 24 * 366, + m = 60 * 60 * 24 * 31, + w = 60 * 60 * 24 * 7, + d = 60 * 60 * 24, + h = 60 * 60, + min = 60, + + -- storage sizes + kb = 1024, + mb = 1024 * 1024, + gb = 1024 * 1024 * 1024, + + -- storage sizes (si) + kib = 1000, + mib = 1000 * 1000, + gib = 1000 * 1000 * 1000 + } + + -- parse input string + for spec in ustr:lower():gmatch("[0-9%.]+[a-zA-Z]*") do + + local num = spec:gsub("[^0-9%.]+$","") + local spn = spec:gsub("^[0-9%.]+", "") + + if map[spn] or map[spn:sub(1,1)] then + val = val + num * ( map[spn] or map[spn:sub(1,1)] ) + else + val = val + num + end + end + + + return val +end + +-- also register functions above in the central string class for convenience +string.pcdata = pcdata +string.striptags = striptags +string.split = split +string.trim = trim +string.cmatch = cmatch +string.parse_units = parse_units + + +function append(src, ...) + for i, a in ipairs({...}) do + if type(a) == "table" then + for j, v in ipairs(a) do + src[#src+1] = v + end + else + src[#src+1] = a + end + end + return src +end + +function combine(...) + return append({}, ...) +end + +function contains(table, value) + for k, v in pairs(table) do + if value == v then + return k + end + end + return false +end + +-- Both table are - in fact - merged together. +function update(t, updates) + for k, v in pairs(updates) do + t[k] = v + end +end + +function keys(t) + local keys = { } + if t then + for k, _ in kspairs(t) do + keys[#keys+1] = k + end + end + return keys +end + +function clone(object, deep) + local copy = {} + + for k, v in pairs(object) do + if deep and type(v) == "table" then + v = clone(v, deep) + end + copy[k] = v + end + + return setmetatable(copy, getmetatable(object)) +end + + +function dtable() + return setmetatable({}, { __index = + function(tbl, key) + return rawget(tbl, key) + or rawget(rawset(tbl, key, dtable()), key) + end + }) +end + + +-- Serialize the contents of a table value. +function _serialize_table(t, seen) + assert(not seen[t], "Recursion detected.") + seen[t] = true + + local data = "" + local idata = "" + local ilen = 0 + + for k, v in pairs(t) do + if type(k) ~= "number" or k < 1 or math.floor(k) ~= k or ( k - #t ) > 3 then + k = serialize_data(k, seen) + v = serialize_data(v, seen) + data = data .. ( #data > 0 and ", " or "" ) .. + '[' .. k .. '] = ' .. v + elseif k > ilen then + ilen = k + end + end + + for i = 1, ilen do + local v = serialize_data(t[i], seen) + idata = idata .. ( #idata > 0 and ", " or "" ) .. v + end + + return idata .. ( #data > 0 and #idata > 0 and ", " or "" ) .. data +end + +-- with loadstring(). +function serialize_data(val, seen) + seen = seen or setmetatable({}, {__mode="k"}) + + if val == nil then + return "nil" + elseif type(val) == "number" then + return val + elseif type(val) == "string" then + return "%q" % val + elseif type(val) == "boolean" then + return val and "true" or "false" + elseif type(val) == "function" then + return "loadstring(%q)" % get_bytecode(val) + elseif type(val) == "table" then + return "{ " .. _serialize_table(val, seen) .. " }" + else + return '"[unhandled data type:' .. type(val) .. ']"' + end +end + +function restore_data(str) + return loadstring("return " .. str)() +end + + +-- +-- Byte code manipulation routines +-- + +-- will be stripped before it is returned. +function get_bytecode(val) + local code + + if type(val) == "function" then + code = string.dump(val) + else + code = string.dump( loadstring( "return " .. serialize_data(val) ) ) + end + + return code -- and strip_bytecode(code) +end + +-- numbers and debugging numbers will be discarded. Original version by +-- Peter Cawley (http://lua-users.org/lists/lua-l/2008-02/msg01158.html) +function strip_bytecode(code) + local version, format, endian, int, size, ins, num, lnum = code:byte(5, 12) + local subint + if endian == 1 then + subint = function(code, i, l) + local val = 0 + for n = l, 1, -1 do + val = val * 256 + code:byte(i + n - 1) + end + return val, i + l + end + else + subint = function(code, i, l) + local val = 0 + for n = 1, l, 1 do + val = val * 256 + code:byte(i + n - 1) + end + return val, i + l + end + end + + local function strip_function(code) + local count, offset = subint(code, 1, size) + local stripped = { string.rep("\0", size) } + local dirty = offset + count + offset = offset + count + int * 2 + 4 + offset = offset + int + subint(code, offset, int) * ins + count, offset = subint(code, offset, int) + for n = 1, count do + local t + t, offset = subint(code, offset, 1) + if t == 1 then + offset = offset + 1 + elseif t == 4 then + offset = offset + size + subint(code, offset, size) + elseif t == 3 then + offset = offset + num + elseif t == 254 or t == 9 then + offset = offset + lnum + end + end + count, offset = subint(code, offset, int) + stripped[#stripped+1] = code:sub(dirty, offset - 1) + for n = 1, count do + local proto, off = strip_function(code:sub(offset, -1)) + stripped[#stripped+1] = proto + offset = offset + off - 1 + end + offset = offset + subint(code, offset, int) * int + int + count, offset = subint(code, offset, int) + for n = 1, count do + offset = offset + subint(code, offset, size) + size + int * 2 + end + count, offset = subint(code, offset, int) + for n = 1, count do + offset = offset + subint(code, offset, size) + size + end + stripped[#stripped+1] = string.rep("\0", int * 3) + return table.concat(stripped), offset + end + + return code:sub(1,12) .. strip_function(code:sub(13,-1)) +end + + +-- +-- Sorting iterator functions +-- + +function _sortiter( t, f ) + local keys = { } + + local k, v + for k, v in pairs(t) do + keys[#keys+1] = k + end + + local _pos = 0 + + table.sort( keys, f ) + + return function() + _pos = _pos + 1 + if _pos <= #keys then + return keys[_pos], t[keys[_pos]], _pos + end + end +end + +-- the provided callback function. +function spairs(t,f) + return _sortiter( t, f ) +end + +-- The table pairs are sorted by key. +function kspairs(t) + return _sortiter( t ) +end + +-- The table pairs are sorted by value. +function vspairs(t) + return _sortiter( t, function (a,b) return t[a] < t[b] end ) +end + + +-- +-- System utility functions +-- + +function bigendian() + return string.byte(string.dump(function() end), 7) == 0 +end + +function exec(command) + local pp = io.popen(command) + local data = pp:read("*a") + pp:close() + + return data +end + +function execi(command) + local pp = io.popen(command) + + return pp and function() + local line = pp:read() + + if not line then + pp:close() + end + + return line + end +end + +-- Deprecated +function execl(command) + local pp = io.popen(command) + local line = "" + local data = {} + + while true do + line = pp:read() + if (line == nil) then break end + data[#data+1] = line + end + pp:close() + + return data +end + +function ubus(object, method, data) + if not _ubus_connection then + _ubus_connection = _ubus.connect() + assert(_ubus_connection, "Unable to establish ubus connection") + end + + if object and method then + if type(data) ~= "table" then + data = { } + end + return _ubus_connection:call(object, method, data) + elseif object then + return _ubus_connection:signatures(object) + else + return _ubus_connection:objects() + end +end + +function serialize_json(x, cb) + local js = json.stringify(x) + if type(cb) == "function" then + cb(js) + else + return js + end +end + + +function libpath() + return require "nixio.fs".dirname(ldebug.__file__) +end + +function checklib(fullpathexe, wantedlib) + local fs = require "nixio.fs" + local haveldd = fs.access('/usr/bin/ldd') + if not haveldd then + return false + end + local libs = exec("/usr/bin/ldd " .. fullpathexe) + if not libs then + return false + end + for k, v in ipairs(split(libs)) do + if v:find(wantedlib) then + return true + end + end + return false +end + +-- +-- Coroutine safe xpcall and pcall versions modified for Luci +-- original version: +-- coxpcall 1.13 - Copyright 2005 - Kepler Project (www.keplerproject.org) +-- +-- Copyright © 2005 Kepler Project. +-- Permission is hereby granted, free of charge, to any person obtaining a +-- copy of this software and associated documentation files (the "Software"), +-- to deal in the Software without restriction, including without limitation +-- the rights to use, copy, modify, merge, publish, distribute, sublicense, +-- and/or sell copies of the Software, and to permit persons to whom the +-- Software is furnished to do so, subject to the following conditions: +-- +-- The above copyright notice and this permission notice shall be +-- included in all copies or substantial portions of the Software. +-- +-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +-- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +-- OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +-- IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +-- TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE +-- OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +local performResume, handleReturnValue +local oldpcall, oldxpcall = pcall, xpcall +coxpt = {} +setmetatable(coxpt, {__mode = "kv"}) + +-- Identity function for copcall +local function copcall_id(trace, ...) + return ... +end + +-- values of either the function or the error handler +function coxpcall(f, err, ...) + local res, co = oldpcall(coroutine.create, f) + if not res then + local params = {...} + local newf = function() return f(unpack(params)) end + co = coroutine.create(newf) + end + local c = coroutine.running() + coxpt[co] = coxpt[c] or c or 0 + + return performResume(err, co, ...) +end + +-- values of the function or the error object +function copcall(f, ...) + return coxpcall(f, copcall_id, ...) +end + +-- Handle return value of protected call +function handleReturnValue(err, co, status, ...) + if not status then + return false, err(debug.traceback(co, (...)), ...) + end + + if coroutine.status(co) ~= 'suspended' then + return true, ... + end + + return performResume(err, co, coroutine.yield(...)) +end + +-- Resume execution of protected function call +function performResume(err, co, ...) + return handleReturnValue(err, co, coroutine.resume(co, ...)) +end diff --git a/luci-base/luasrc/util.luadoc b/luci-base/luasrc/util.luadoc new file mode 100644 index 000000000..805eeb7f8 --- /dev/null +++ b/luci-base/luasrc/util.luadoc @@ -0,0 +1,378 @@ +---[[ +LuCI utility functions. +]] +module "luci.util" + +---[[ +Create a Class object (Python-style object model). + +The class object can be instantiated by calling itself. +Any class functions or shared parameters can be attached to this object. +Attaching a table to the class object makes this table shared between +all instances of this class. For object parameters use the __init__ function. +Classes can inherit member functions and values from a base class. +Class can be instantiated by calling them. All parameters will be passed +to the __init__ function of this class - if such a function exists. +The __init__ function must be used to set any object parameters that are not shared +with other objects of this class. Any return values will be ignored. +@class function +@name class +@param base The base class to inherit from (optional) +@return A class object +@see instanceof +@see clone +]] + +---[[ +Test whether the given object is an instance of the given class. + +@class function +@name instanceof +@param object Object instance +@param class Class object to test against +@return Boolean indicating whether the object is an instance +@see class +@see clone +]] + +---[[ +Create a new or get an already existing thread local store associated with + +the current active coroutine. A thread local store is private a table object +whose values can't be accessed from outside of the running coroutine. +@class function +@name threadlocal +@return Table value representing the corresponding thread local store +]] + +---[[ +Write given object to stderr. + +@class function +@name perror +@param obj Value to write to stderr +@return Boolean indicating whether the write operation was successful +]] + +---[[ +Recursively dumps a table to stdout, useful for testing and debugging. + +@class function +@name dumptable +@param t Table value to dump +@param maxdepth Maximum depth +@return Always nil +]] + +---[[ +Create valid XML PCDATA from given string. + +@class function +@name pcdata +@param value String value containing the data to escape +@return String value containing the escaped data +]] + +---[[ +Strip HTML tags from given string. + +@class function +@name striptags +@param value String containing the HTML text +@return String with HTML tags stripped of +]] + +---[[ +Splits given string on a defined separator sequence and return a table + +containing the resulting substrings. The optional max parameter specifies +the number of bytes to process, regardless of the actual length of the given +string. The optional last parameter, regex, specifies whether the separator +sequence is interpreted as regular expression. +@class function +@name split +@param str String value containing the data to split up +@param pat String with separator pattern (optional, defaults to "\n") +@param max Maximum times to split (optional) +@param regex Boolean indicating whether to interpret the separator +-- pattern as regular expression (optional, default is false) +@return Table containing the resulting substrings +]] + +---[[ +Remove leading and trailing whitespace from given string value. + +@class function +@name trim +@param str String value containing whitespace padded data +@return String value with leading and trailing space removed +]] + +---[[ +Count the occurences of given substring in given string. + +@class function +@name cmatch +@param str String to search in +@param pattern String containing pattern to find +@return Number of found occurences +]] + +---[[ +Return a matching iterator for the given value. The iterator will return + +one token per invocation, the tokens are separated by whitespace. If the +input value is a table, it is transformed into a string first. A nil value +will result in a valid interator which aborts with the first invocation. +@class function +@name imatch +@param val The value to scan (table, string or nil) +@return Iterator which returns one token per call +]] + +---[[ +Parse certain units from the given string and return the canonical integer + +value or 0 if the unit is unknown. Upper- or lower case is irrelevant. +Recognized units are: +-- o "y" - one year (60*60*24*366) + o "m" - one month (60*60*24*31) + o "w" - one week (60*60*24*7) + o "d" - one day (60*60*24) + o "h" - one hour (60*60) + o "min" - one minute (60) + o "kb" - one kilobyte (1024) + o "mb" - one megabyte (1024*1024) + o "gb" - one gigabyte (1024*1024*1024) + o "kib" - one si kilobyte (1000) + o "mib" - one si megabyte (1000*1000) + o "gib" - one si gigabyte (1000*1000*1000) +@class function +@name parse_units +@param ustr String containing a numerical value with trailing unit +@return Number containing the canonical value +]] + +---[[ +Appends numerically indexed tables or single objects to a given table. + +@class function +@name append +@param src Target table +@param ... Objects to insert +@return Target table +]] + +---[[ +Combines two or more numerically indexed tables and single objects into one table. + +@class function +@name combine +@param tbl1 Table value to combine +@param tbl2 Table value to combine +@param ... More tables to combine +@return Table value containing all values of given tables +]] + +---[[ +Checks whether the given table contains the given value. + +@class function +@name contains +@param table Table value +@param value Value to search within the given table +@return number indicating the first index at which the given value occurs +-- within table or false. +]] + +---[[ +Update values in given table with the values from the second given table. + +Both table are - in fact - merged together. +@class function +@name update +@param t Table which should be updated +@param updates Table containing the values to update +@return Always nil +]] + +---[[ +Retrieve all keys of given associative table. + +@class function +@name keys +@param t Table to extract keys from +@return Sorted table containing the keys +]] + +---[[ +Clones the given object and return it's copy. + +@class function +@name clone +@param object Table value to clone +@param deep Boolean indicating whether to do recursive cloning +@return Cloned table value +]] + +---[[ +Create a dynamic table which automatically creates subtables. + +@class function +@name dtable +@return Dynamic Table +]] + +---[[ +Recursively serialize given data to lua code, suitable for restoring + +with loadstring(). +@class function +@name serialize_data +@param val Value containing the data to serialize +@return String value containing the serialized code +@see restore_data +@see get_bytecode +]] + +---[[ +Restore data previously serialized with serialize_data(). + +@class function +@name restore_data +@param str String containing the data to restore +@return Value containing the restored data structure +@see serialize_data +@see get_bytecode +]] + +---[[ +Return the current runtime bytecode of the given data. The byte code + +will be stripped before it is returned. +@class function +@name get_bytecode +@param val Value to return as bytecode +@return String value containing the bytecode of the given data +]] + +---[[ +Strips unnescessary lua bytecode from given string. Information like line + +numbers and debugging numbers will be discarded. Original version by +Peter Cawley (http://lua-users.org/lists/lua-l/2008-02/msg01158.html) +@class function +@name strip_bytecode +@param code String value containing the original lua byte code +@return String value containing the stripped lua byte code +]] + +---[[ +Return a key, value iterator which returns the values sorted according to + +the provided callback function. +@class function +@name spairs +@param t The table to iterate +@param f A callback function to decide the order of elements +@return Function value containing the corresponding iterator +]] + +---[[ +Return a key, value iterator for the given table. + +The table pairs are sorted by key. +@class function +@name kspairs +@param t The table to iterate +@return Function value containing the corresponding iterator +]] + +---[[ +Return a key, value iterator for the given table. + +The table pairs are sorted by value. +@class function +@name vspairs +@param t The table to iterate +@return Function value containing the corresponding iterator +]] + +---[[ +Test whether the current system is operating in big endian mode. + +@class function +@name bigendian +@return Boolean value indicating whether system is big endian +]] + +---[[ +Execute given commandline and gather stdout. + +@class function +@name exec +@param command String containing command to execute +@return String containing the command's stdout +]] + +---[[ +Return a line-buffered iterator over the output of given command. + +@class function +@name execi +@param command String containing the command to execute +@return Iterator +]] + +---[[ +Issue an ubus call. + +@class function +@name ubus +@param object String containing the ubus object to call +@param method String containing the ubus method to call +@param values Table containing the values to pass +@return Table containin the ubus result +]] + +---[[ +Convert data structure to JSON + +@class function +@name serialize_json +@param data The data to serialize +@param writer A function to write a chunk of JSON data (optional) +@return String containing the JSON if called without write callback +]] + +---[[ +Returns the absolute path to LuCI base directory. + +@class function +@name libpath +@return String containing the directory path +]] + +---[[ +This is a coroutine-safe drop-in replacement for Lua's "xpcall"-function + +@class function +@name coxpcall +@param f Lua function to be called protected +@param err Custom error handler +@param ... Parameters passed to the function +@return A boolean whether the function call succeeded and the return +-- values of either the function or the error handler +]] + +---[[ +This is a coroutine-safe drop-in replacement for Lua's "pcall"-function + +@class function +@name copcall +@param f Lua function to be called protected +@param ... Parameters passed to the function +@return A boolean whether the function call succeeded and the returns +-- values of the function or the error object +]] + diff --git a/luci-base/luasrc/version.lua b/luci-base/luasrc/version.lua new file mode 100644 index 000000000..8af2e8061 --- /dev/null +++ b/luci-base/luasrc/version.lua @@ -0,0 +1,9 @@ +-- Licensed to the public under the Apache License 2.0. + +module "luci.version" + +distname = "Host System" +distversion = "SDK" + +luciname = "LuCI" +luciversion = "SVN" diff --git a/luci-base/luasrc/view/cbi/apply_xhr.htm b/luci-base/luasrc/view/cbi/apply_xhr.htm new file mode 100644 index 000000000..daa57c1db --- /dev/null +++ b/luci-base/luasrc/view/cbi/apply_xhr.htm @@ -0,0 +1,43 @@ +<% export("cbi_apply_xhr", function(id, configs, redirect) -%> +
+ <%:Applying changes%> + + + <%:Loading%> + <%:Waiting for changes to be applied...%> +
+<%- end) %> diff --git a/luci-base/luasrc/view/cbi/browser.htm b/luci-base/luasrc/view/cbi/browser.htm new file mode 100644 index 000000000..a18120141 --- /dev/null +++ b/luci-base/luasrc/view/cbi/browser.htm @@ -0,0 +1,7 @@ +<% local v = self:cfgvalue(section) -%> +<%+cbi/valueheader%> + /> + +<%+cbi/valuefooter%> diff --git a/luci-base/luasrc/view/cbi/button.htm b/luci-base/luasrc/view/cbi/button.htm new file mode 100644 index 000000000..30f8ddfda --- /dev/null +++ b/luci-base/luasrc/view/cbi/button.htm @@ -0,0 +1,7 @@ +<%+cbi/valueheader%> + <% if self:cfgvalue(section) ~= false then %> + " type="submit"<%= attr("name", cbid) .. attr("id", cbid) .. attr("value", self.inputtitle or self.title)%> /> + <% else %> + - + <% end %> +<%+cbi/valuefooter%> diff --git a/luci-base/luasrc/view/cbi/cell_valuefooter.htm b/luci-base/luasrc/view/cbi/cell_valuefooter.htm new file mode 100644 index 000000000..786ee43d1 --- /dev/null +++ b/luci-base/luasrc/view/cbi/cell_valuefooter.htm @@ -0,0 +1,2 @@ + + diff --git a/luci-base/luasrc/view/cbi/cell_valueheader.htm b/luci-base/luasrc/view/cbi/cell_valueheader.htm new file mode 100644 index 000000000..9c9c21814 --- /dev/null +++ b/luci-base/luasrc/view/cbi/cell_valueheader.htm @@ -0,0 +1,2 @@ + +
" data-index="<%=self.index%>" data-depends="<%=pcdata(self:deplist2json(section))%>"> diff --git a/luci-base/luasrc/view/cbi/compound.htm b/luci-base/luasrc/view/cbi/compound.htm new file mode 100644 index 000000000..12d02bb1d --- /dev/null +++ b/luci-base/luasrc/view/cbi/compound.htm @@ -0,0 +1 @@ +<%- self:render_children() %> diff --git a/luci-base/luasrc/view/cbi/delegator.htm b/luci-base/luasrc/view/cbi/delegator.htm new file mode 100644 index 000000000..4fd19265d --- /dev/null +++ b/luci-base/luasrc/view/cbi/delegator.htm @@ -0,0 +1,24 @@ +<%- self.active:render() %> +
+ +<% for _, x in ipairs(self.chain) do %> + +<% end %> +<% if not self.disallow_pageactions then %> +<% if self.allow_finish and not self:get_next(self.current) then %> + +<% elseif self:get_next(self.current) then %> + +<% end %> +<% if self.allow_cancel then %> + +<% end %> +<% if self.allow_reset then %> + +<% end %> +<% if self.allow_back and self:get_prev(self.current) then %> + +<% end %> +<% end %> + +
diff --git a/luci-base/luasrc/view/cbi/dvalue.htm b/luci-base/luasrc/view/cbi/dvalue.htm new file mode 100644 index 000000000..78e6f323d --- /dev/null +++ b/luci-base/luasrc/view/cbi/dvalue.htm @@ -0,0 +1,13 @@ +<%+cbi/valueheader%> +<% if self.href then %><% end -%> + <% + local val = self:cfgvalue(section) or self.default or "" + if not self.rawhtml then + write(pcdata(val)) + else + write(val) + end + %> +<%- if self.href then %><%end%> +" /> +<%+cbi/valuefooter%> diff --git a/luci-base/luasrc/view/cbi/dynlist.htm b/luci-base/luasrc/view/cbi/dynlist.htm new file mode 100644 index 000000000..4d0b50942 --- /dev/null +++ b/luci-base/luasrc/view/cbi/dynlist.htm @@ -0,0 +1,27 @@ +<%+cbi/valueheader%> +> +<% + local vals = self:cfgvalue(section) or {} + for i=1, #vals + 1 do + local val = vals[i] + if (val and #val > 0) or (i == 1) then +%> + />
+<% end end %> +
+<%+cbi/valuefooter%> diff --git a/luci-base/luasrc/view/cbi/error.htm b/luci-base/luasrc/view/cbi/error.htm new file mode 100644 index 000000000..75ec1082a --- /dev/null +++ b/luci-base/luasrc/view/cbi/error.htm @@ -0,0 +1,19 @@ +
+ <% if self.title and #self.title > 0 then %>

<%=self.title%>

<% end %> + <% if self.description and #self.description > 0 then %>
<%=self.description%>
<% end %> + +

+ <%: The configuration file could not be loaded due to the following error: %>
+ <%=pcdata(self.error)%> +

+ + + +

+ <%: Edit the raw configuration data above to fix any error and hit "Save" to reload the page. %> +

+ +
+ +
+
diff --git a/luci-base/luasrc/view/cbi/filebrowser.htm b/luci-base/luasrc/view/cbi/filebrowser.htm new file mode 100644 index 000000000..a79beebba --- /dev/null +++ b/luci-base/luasrc/view/cbi/filebrowser.htm @@ -0,0 +1,108 @@ + + + + + Filebrowser - LuCI + + + + + + <% + require("nixio.fs") + require("nixio.util") + require("luci.http") + require("luci.dispatcher") + + local field = luci.http.formvalue('field') + local request = luci.dispatcher.context.args + local path = { '' } + + for i = 1, #request do + if request[i] ~= '..' and #request[i] > 0 then + path[#path+1] = request[i] + end + end + + local filepath = table.concat( path, '/' ) + local filestat = nixio.fs.stat( filepath ) + local baseurl = luci.dispatcher.build_url('admin', 'filebrowser') + + if filestat and filestat.type == "reg" then + table.remove( path, #path ) + filepath = table.concat( path, '/' ) .. '/' + elseif not ( filestat and filestat.type == "dir" ) then + path = { '' } + filepath = '/' + else + filepath = filepath .. '/' + end + + local entries = nixio.util.consume((nixio.fs.dir(filepath))) + -%> +
+ Location: + <% for i, dir in ipairs(path) do %> + <% if i == 1 then %> + (root) + <% elseif next(path, i) then %> + <% baseurl = baseurl .. '/' .. dir %> + / <%=dir%> + <% else %> + <% baseurl = baseurl .. '/' .. dir %> + / <%=dir%> + <% end %> + <% end %> +
+ +
+ +
+
    + <% for _, e in luci.util.vspairs(entries) do + local stat = nixio.fs.stat(filepath..e) + if stat and stat.type == 'dir' then + -%> +
  • + <%:Directory%> + <%=e%>/ +
  • + <% end end -%> + + <% for _, e in luci.util.vspairs(entries) do + local stat = nixio.fs.stat(filepath..e) + if stat and stat.type ~= 'dir' then + -%> +
  • + <%:File%> + <%=e%> +
  • + <% end end -%> +
+
+ + diff --git a/luci-base/luasrc/view/cbi/firewall_zoneforwards.htm b/luci-base/luasrc/view/cbi/firewall_zoneforwards.htm new file mode 100644 index 000000000..2a433b569 --- /dev/null +++ b/luci-base/luasrc/view/cbi/firewall_zoneforwards.htm @@ -0,0 +1,59 @@ +<%+cbi/valueheader%> + +<%- + local utl = require "luci.util" + local fwm = require "luci.model.firewall".init() + local nwm = require "luci.model.network".init() + + local zone, fwd, fz + local value = self:formvalue(section) + if not value or value == "-" then + value = self:cfgvalue(section) or self.default + end + + local def = fwm:get_defaults() + local zone = fwm:get_zone(value) + local empty = true +-%> + +<% if zone then %> +
+ +  ⇒  + <% for _, fwd in ipairs(zone:get_forwardings_by("src")) do + fz = fwd:dest_zone() + empty = false %> +   + <% end %> + <% if empty then %> + + <% end %> +
+<% end %> + +<%+cbi/valuefooter%> diff --git a/luci-base/luasrc/view/cbi/firewall_zonelist.htm b/luci-base/luasrc/view/cbi/firewall_zonelist.htm new file mode 100644 index 000000000..5cb31511f --- /dev/null +++ b/luci-base/luasrc/view/cbi/firewall_zonelist.htm @@ -0,0 +1,93 @@ +<%+cbi/valueheader%> + +<%- + local utl = require "luci.util" + local fwm = require "luci.model.firewall".init() + local nwm = require "luci.model.network".init() + + local zone, net, iface + local zones = fwm:get_zones() + local value = self:formvalue(section) + if not value or value == "-" then + value = self:cfgvalue(section) or self.default + end + + local selected = false + local checked = { } + + for value in utl.imatch(value) do + checked[value] = true + end + + if not next(checked) then + checked[""] = true + end +-%> + +
    + <% if self.allowlocal then %> +
  • + />   + > + style="background-color:<%=fwm.zone.get_color()%>" class="zonebadge"> + <%:Device%> + <% if self.allowany and self.allowlocal then %>(<%:input%>)<% end %> + +
  • + <% end %> + <% if self.allowany then %> +
  • + />   + > + style="background-color:<%=fwm.zone.get_color()%>" class="zonebadge"> + <%:Any zone%> + <% if self.allowany and self.allowlocal then %>(<%:forward%>)<% end %> + +
  • + <% end %> + <% + for _, zone in utl.spairs(zones, function(a,b) return (zones[a]:name() < zones[b]:name()) end) do + if zone:name() ~= self.exclude then + selected = selected or (value == zone:name()) + %> +
  • + />   + > + style="background-color:<%=zone:get_color()%>" class="zonebadge"> + <%=zone:name()%>: + <% + local zempty = true + for _, net in ipairs(zone:get_networks()) do + net = nwm:get_network(net) + if net then + zempty = false + %> + <%=net:name()%>: + <% + local nempty = true + for _, iface in ipairs(net:is_bridge() and net:get_interfaces() or { net:get_interface() }) do + nempty = false + %> + style="width:16px; height:16px; vertical-align:middle" src="<%=resource%>/icons/<%=iface:type()%><%=iface:is_up() and "" or "_disabled"%>.png" /> + <% end %> + <% if nempty then %><%:(empty)%><% end %> + + <% end end %> + <% if zempty then %><%:(empty)%><% end %> + +
  • + <% end end %> + + <% if self.widget ~= "checkbox" and not self.nocreate then %> +
  • + />   + > +
    + <%:unspecified -or- create:%>  + onfocus="document.getElementById('<%=cbid%>_new').checked=true" /> +
    +
  • + <% end %> +
+ +<%+cbi/valuefooter%> diff --git a/luci-base/luasrc/view/cbi/footer.htm b/luci-base/luasrc/view/cbi/footer.htm new file mode 100644 index 000000000..4d332fd07 --- /dev/null +++ b/luci-base/luasrc/view/cbi/footer.htm @@ -0,0 +1,27 @@ + <%- if pageaction then -%> +
+ <% if redirect then %> +
+ +
+ <% end %> + + <% if flow.skip then %> + + <% end %> + <% if not autoapply and not flow.hideapplybtn then %> + + <% end %> + <% if not flow.hidesavebtn then %> + + <% end %> + <% if not flow.hideresetbtn then %> + + <% end %> +
+ <%- end -%> + + + + +<%+footer%> diff --git a/luci-base/luasrc/view/cbi/full_valuefooter.htm b/luci-base/luasrc/view/cbi/full_valuefooter.htm new file mode 100644 index 000000000..f78093676 --- /dev/null +++ b/luci-base/luasrc/view/cbi/full_valuefooter.htm @@ -0,0 +1,13 @@ + <% if self.description and #self.description > 0 then -%> + <% if not luci.util.instanceof(self, luci.cbi.DynamicList) and (not luci.util.instanceof(self, luci.cbi.Flag) or self.orientation == "horizontal") then -%> +
+ <%- end %> +
+ <%:help%> + <%=self.description%> +
+ <%- end %> + <%- if self.title and #self.title > 0 then -%> + + <%- end -%> + diff --git a/luci-base/luasrc/view/cbi/full_valueheader.htm b/luci-base/luasrc/view/cbi/full_valueheader.htm new file mode 100644 index 000000000..10a554329 --- /dev/null +++ b/luci-base/luasrc/view/cbi/full_valueheader.htm @@ -0,0 +1,9 @@ +
" data-index="<%=self.index%>" data-depends="<%=pcdata(self:deplist2json(section))%>"> + <%- if self.title and #self.title > 0 then -%> + +
+ <%- end -%> diff --git a/luci-base/luasrc/view/cbi/fvalue.htm b/luci-base/luasrc/view/cbi/fvalue.htm new file mode 100644 index 000000000..197d03cf3 --- /dev/null +++ b/luci-base/luasrc/view/cbi/fvalue.htm @@ -0,0 +1,10 @@ +<%+cbi/valueheader%> + /> + /> + > +<%+cbi/valuefooter%> diff --git a/luci-base/luasrc/view/cbi/header.htm b/luci-base/luasrc/view/cbi/header.htm new file mode 100644 index 000000000..9710bae8f --- /dev/null +++ b/luci-base/luasrc/view/cbi/header.htm @@ -0,0 +1,19 @@ +<%+header%> +
+
+ + + + +
diff --git a/luci-base/luasrc/view/cbi/lvalue.htm b/luci-base/luasrc/view/cbi/lvalue.htm new file mode 100644 index 000000000..34d02eeca --- /dev/null +++ b/luci-base/luasrc/view/cbi/lvalue.htm @@ -0,0 +1,43 @@ +<% + local i, key + local br = self.orientation == "horizontal" and ' ' or '
' +%> + +<%+cbi/valueheader%> +<% if self.widget == "select" then %> + +<% elseif self.widget == "radio" then %> +
+ <% for i, key in pairs(self.keylist) do %> + > + /> + > + <%=pcdata(self.vallist[i])%> + + <% if i == self.size then write(br) end %> + <% end %> +
+<% end %> +<%+cbi/valuefooter%> diff --git a/luci-base/luasrc/view/cbi/map.htm b/luci-base/luasrc/view/cbi/map.htm new file mode 100644 index 000000000..e3210add6 --- /dev/null +++ b/luci-base/luasrc/view/cbi/map.htm @@ -0,0 +1,47 @@ +<%- if firstmap and messages then local msg; for _, msg in ipairs(messages) do -%> +
<%=pcdata(msg)%>
+<%- end end -%> + +<%-+cbi/apply_xhr-%> + +
+ <% if self.title and #self.title > 0 then %>

<%=self.title%>

<% end %> + <% if self.description and #self.description > 0 then %>
<%=self.description%>
<% end %> + <%- if firstmap and applymap then cbi_apply_xhr(self.config, parsechain, redirect) end -%> + + <% if self.tabbed then %> +
    + <%- self.selected_tab = luci.http.formvalue("tab.m-" .. self.config) %> + <% for i, section in ipairs(self.children) do %> + <%- if not self.selected_tab then self.selected_tab = section.sectiontype end %> +
  • + <%=section.title or section.section or section.sectiontype %> + <% if section.sectiontype == self.selected_tab then %><% end %> +
  • + <% end %> +
+
+ <% for i, section in ipairs(self.children) do %> +
style="display:none"<% end %>> + <% section:render() %> +
+ + <% end %> + + <% if not self.save then -%> +
+ <% for _, section in ipairs(self.children) do %> + <% if section.error and section.error[section.section] then -%> +
  • + <%:One or more invalid/required values on tab%>: <%=section.title or section.section or section.sectiontype%> +
+ <%- end %> + <% end %> +
+ <%- end %> + <% else %> + <%- self:render_children() %> + <% end %> + +
+
diff --git a/luci-base/luasrc/view/cbi/mvalue.htm b/luci-base/luasrc/view/cbi/mvalue.htm new file mode 100644 index 000000000..db17450d2 --- /dev/null +++ b/luci-base/luasrc/view/cbi/mvalue.htm @@ -0,0 +1,43 @@ +<% + local i, key + local v = self:valuelist(section) or {} +-%> + +<%+cbi/valueheader%> +<% if self.widget == "select" then %> + +<% elseif self.widget == "checkbox" then %> +
+ <% for i, key in pairs(self.keylist) do %> + > + /> + > + <%=pcdata(self.vallist[i])%> + + <% if self.size and (i % self.size) == 0 then write('
') end %> + <% end %> +
+<% end %> +<%+cbi/valuefooter%> diff --git a/luci-base/luasrc/view/cbi/network_ifacelist.htm b/luci-base/luasrc/view/cbi/network_ifacelist.htm new file mode 100644 index 000000000..62dbde7dd --- /dev/null +++ b/luci-base/luasrc/view/cbi/network_ifacelist.htm @@ -0,0 +1,89 @@ +<%+cbi/valueheader%> + +<%- + local utl = require "luci.util" + local net = require "luci.model.network".init() + local cbeid = luci.cbi.FEXIST_PREFIX .. self.config .. "." .. section .. "." .. self.option + + local iface + local ifaces = net:get_interfaces() + local value + + if self.map:formvalue(cbeid) == "1" then + value = self:formvalue(section) or self.default or "" + else + value = self:cfgvalue(section) or self.default + end + + local checked = { } + + if value then + for value in utl.imatch(value) do + checked[value] = true + end + else + local n = self.network and net:get_network(self.network) + if n then + local i + for _, i in ipairs(n:get_interfaces() or { n:get_interface() }) do + checked[i:name()] = true + end + end + end +-%> + + +
    + <% for _, iface in ipairs(ifaces) do + local link = iface:adminlink() + if (not self.nobridges or not iface:is_bridge()) and + (not self.noinactive or iface:is_up()) and + iface:name() ~= self.exclude + then %> +
  • + " data-update="click change"<%= + attr("type", self.widget or "radio") .. + attr("id", cbid .. "." .. iface:name()) .. + attr("name", cbid) .. attr("value", iface:name()) .. + ifattr(checked[iface:name()], "checked", "checked") + %> /> + <%- if not self.widget or self.widget == "checkbox" or self.widget == "radio" then -%> + > + <%- end -%> +   + > + <% if link then -%><% end -%> + style="width:16px; height:16px; vertical-align:middle" src="<%=resource%>/icons/<%=iface:type()%><%=iface:is_up() and "" or "_disabled"%>.png" /> + <% if link then -%><% end -%> + <%=pcdata(iface:get_i18n())%> + <% local ns = iface:get_networks(); if #ns > 0 then %>( + <%- local i, n; for i, n in ipairs(ns) do -%> + <%-= (i>1) and ', ' -%> + <%=n:name()%> + <%- end -%> + )<% end %> + +
  • + <% end end %> + <% if not self.nocreate then %> +
  • + " data-update="click change"<%= + attr("type", self.widget or "radio") .. + attr("id", cbid .. "_custom") .. + attr("name", cbid) .. + attr("value", " ") + %> /> + <%- if not self.widget or self.widget == "checkbox" or self.widget == "radio" then -%> + > + <%- end -%> +   + > + + <%:Custom Interface%>: + + +
  • + <% end %> +
+ +<%+cbi/valuefooter%> diff --git a/luci-base/luasrc/view/cbi/network_netinfo.htm b/luci-base/luasrc/view/cbi/network_netinfo.htm new file mode 100644 index 000000000..4fd84112a --- /dev/null +++ b/luci-base/luasrc/view/cbi/network_netinfo.htm @@ -0,0 +1,27 @@ +<%+cbi/valueheader%> + +<%- + local value = self:formvalue(section) + if not value or value == "-" then + value = self:cfgvalue(section) or self.default + end + + local nwm = require "luci.model.network".init() + local net = nwm:get_network(value) +-%> + +<% if net then %> +<%=net:name()%>: + <% + local empty = true + for _, iface in ipairs(net:get_interfaces() or { net:get_interface() }) do + if not iface:is_bridge() then + empty = false + %> + style="width:16px; height:16px; vertical-align:middle" src="<%=resource%>/icons/<%=iface:type()%><%=iface:is_up() and "" or "_disabled"%>.png" /> + <% end end %> + <% if empty then %><%:(no interfaces attached)%><% end %> + +<% end %> + +<%+cbi/valuefooter%> diff --git a/luci-base/luasrc/view/cbi/network_netlist.htm b/luci-base/luasrc/view/cbi/network_netlist.htm new file mode 100644 index 000000000..8bf1a70a2 --- /dev/null +++ b/luci-base/luasrc/view/cbi/network_netlist.htm @@ -0,0 +1,85 @@ +<%+cbi/valueheader%> + +<%- + local utl = require "luci.util" + local nwm = require "luci.model.network".init() + + local net, iface + local networks = nwm:get_networks() + local value = self:formvalue(section) + + self.cast = nil + + if not value or value == "-" then + value = self:cfgvalue(section) or self.default + end + + local checked = { } + for value in utl.imatch(value) do + checked[value] = true + end +-%> + +
    + <% for _, net in ipairs(networks) do + if (net:name() ~= "loopback") and + (net:name() ~= self.exclude) and + (not self.novirtual or not net:is_virtual()) + then %> +
  • + " data-update="click change"<%= + attr("type", self.widget or "radio") .. + attr("id", cbid .. "." .. net:name()) .. + attr("name", cbid) .. attr("value", net:name()) .. + ifattr(checked[net:name()], "checked", "checked") + %> />   + > + <%=net:name()%>: + <% + local empty = true + for _, iface in ipairs(net:is_bridge() and net:get_interfaces() or { net:get_interface() }) do + if not iface:is_bridge() then + empty = false + %> + style="width:16px; height:16px; vertical-align:middle" src="<%=resource%>/icons/<%=iface:type()%><%=iface:is_up() and "" or "_disabled"%>.png" /> + <% end end %> + <% if empty then %><%:(no interfaces attached)%><% end %> + + +
  • + <% end end %> + + <% if not self.nocreate then %> +
  • + " data-update="click change"<%=attr("type", self.widget or "radio") .. attr("id", cbid .. "_new") .. attr("name", cbid) .. attr("value", "-") .. ifattr(not value and self.widget ~= "checkbox", "checked", "checked")%> />   + <%- if not self.widget or self.widget == "checkbox" or self.widget == "radio" then -%> + > + <%- end -%> +
    + > + <%- if self.widget == "checkbox" then -%> + <%:create:%> + <%- else -%> + <%:unspecified -or- create:%> + <%- end -%>  + + onfocus="document.getElementById('<%=cbid%>_new').checked=true" /> +
    +
  • + <% elseif self.widget ~= "checkbox" and self.unspecified then %> +
  • + " data-update="click change"<%= + attr("type", self.widget or "radio") .. + attr("id", cbid .. "_uns") .. + attr("name", cbid) .. + attr("value", "") .. + ifattr(not value or #value == 0, "checked", "checked") + %> />   +
    + ><%:unspecified%> +
    +
  • + <% end %> +
+ +<%+cbi/valuefooter%> diff --git a/luci-base/luasrc/view/cbi/nsection.htm b/luci-base/luasrc/view/cbi/nsection.htm new file mode 100644 index 000000000..abf67596f --- /dev/null +++ b/luci-base/luasrc/view/cbi/nsection.htm @@ -0,0 +1,31 @@ +<% if self:cfgvalue(self.section) then section = self.section %> +
+ <% if self.title and #self.title > 0 then -%> + <%=self.title%> + <%- end %> + <% if self.description and #self.description > 0 then -%> +
<%=self.description%>
+ <%- end %> + <% if self.addremove then -%> +
+ +
+ <%- end %> + <%+cbi/tabmenu%> +
+ <%+cbi/ucisection%> +
+
+
+<% elseif self.addremove then %> + <% if self.template_addremove then include(self.template_addremove) else -%> +
+ <% if self.title and #self.title > 0 then -%> + <%=self.title%> + <%- end %> +
<%=self.description%>
+ +
+ <%- end %> +<% end %> + diff --git a/luci-base/luasrc/view/cbi/nullsection.htm b/luci-base/luasrc/view/cbi/nullsection.htm new file mode 100644 index 000000000..ef169593a --- /dev/null +++ b/luci-base/luasrc/view/cbi/nullsection.htm @@ -0,0 +1,38 @@ +
+ <% if self.title and #self.title > 0 then -%> + <%=self.title%> + <%- end %> + <% if self.description and #self.description > 0 then -%> +
<%=self.description%>
+ <%- end %> +
+
+ <% self:render_children(1, scope or {}) %> +
+ <% if self.error and self.error[1] then -%> +
+
    <% for _, e in ipairs(self.error[1]) do -%> +
  • + <%- if e == "invalid" then -%> + <%:One or more fields contain invalid values!%> + <%- elseif e == "missing" then -%> + <%:One or more required fields have no value!%> + <%- else -%> + <%=pcdata(e)%> + <%- end -%> +
  • + <%- end %>
+
+ <%- end %> +
+
+
+<%- + if type(self.hidden) == "table" then + for k, v in pairs(self.hidden) do +-%> + +<%- + end + end +%> diff --git a/luci-base/luasrc/view/cbi/simpleform.htm b/luci-base/luasrc/view/cbi/simpleform.htm new file mode 100644 index 000000000..78f5c5a54 --- /dev/null +++ b/luci-base/luasrc/view/cbi/simpleform.htm @@ -0,0 +1,58 @@ +<% if not self.embedded then %> + +
+ + + +
+<% end %> +
+ <% if self.title and #self.title > 0 then %>

<%=self.title%>

<% end %> + <% if self.description and #self.description > 0 then %>
<%=self.description%>
<% end %> + <% self:render_children() %> +
+
+<%- if self.message then %> +
<%=self.message%>
+<%- end %> +<%- if self.errmessage then %> +
<%=self.errmessage%>
+<%- end %> +<% if not self.embedded then %> +
+<%- + if type(self.hidden) == "table" then + for k, v in pairs(self.hidden) do +-%> + +<%- + end + end +%> +<% if redirect then %> +
+ +
+<% end %> +<%- if self.flow and self.flow.skip then %> + +<% end %> +<%- if self.submit ~= false then %> + +<% end %> +<%- if self.reset ~= false then %> + +<% end %> +<%- if self.cancel ~= false and self.on_cancel then %> + +<% end %> + +
+
+<% end %> diff --git a/luci-base/luasrc/view/cbi/tabcontainer.htm b/luci-base/luasrc/view/cbi/tabcontainer.htm new file mode 100644 index 000000000..38c435d6a --- /dev/null +++ b/luci-base/luasrc/view/cbi/tabcontainer.htm @@ -0,0 +1,7 @@ +<% for tab, data in pairs(self.tabs) do %> +
style="display:none"<% end %>> + <% if data.description then %>
<%=data.description%>
<% end %> + <% self:render_tab(tab, section, scope or {}) %> +
+ +<% end %> diff --git a/luci-base/luasrc/view/cbi/tabmenu.htm b/luci-base/luasrc/view/cbi/tabmenu.htm new file mode 100644 index 000000000..06c1414bf --- /dev/null +++ b/luci-base/luasrc/view/cbi/tabmenu.htm @@ -0,0 +1,12 @@ +<%- if self.tabs then %> +
    + <%- self.selected_tab = luci.http.formvalue("tab." .. self.config .. "." .. section) %> + <%- for _, tab in ipairs(self.tab_names) do if #self.tabs[tab].childs > 0 then %> + <%- if not self.selected_tab then self.selected_tab = tab end %> +
  • + <%=self.tabs[tab].title%> + <% if tab == self.selected_tab then %><% end %> +
  • + <% end end -%> +
+<% end -%> diff --git a/luci-base/luasrc/view/cbi/tblsection.htm b/luci-base/luasrc/view/cbi/tblsection.htm new file mode 100644 index 000000000..26d13f937 --- /dev/null +++ b/luci-base/luasrc/view/cbi/tblsection.htm @@ -0,0 +1,145 @@ +<%- +local rowcnt = 1 +function rowstyle() + rowcnt = rowcnt + 1 + return (rowcnt % 2) + 1 +end + +function width(o) + if o.width then + if type(o.width) == 'number' then + return ' style="width:%dpx"' % o.width + end + return ' style="width:%s"' % o.width + end + return '' +end +-%> + + +
+ <% if self.title and #self.title > 0 then -%> + <%=self.title%> + <%- end %> + <%- if self.sortable then -%> + + <%- end -%> +
<%=self.description%>
+
+ <%- local count = 0 -%> + + + <%- if not self.anonymous then -%> + <%- if self.sectionhead then -%> + + <%- else -%> + + <%- end -%> + <%- end -%> + <%- for i, k in pairs(self.children) do if not k.optional then -%> + + <%- count = count + 1; end; end; if self.sortable then -%> + + <%- end; if self.extedit or self.addremove then -%> + + <%- count = count + 1; end -%> + + + <%- if not self.anonymous then -%> + <%- if self.sectiondesc then -%> + + <%- else -%> + + <%- end -%> + <%- end -%> + <%- for i, k in pairs(self.children) do if not k.optional then -%> + + <%- end; end; if self.sortable then -%> + + <%- end; if self.extedit or self.addremove then -%> + + <%- end -%> + + <%- local isempty = true + for i, k in ipairs(self:cfgsections()) do + section = k + isempty = false + scope = { valueheader = "cbi/cell_valueheader", valuefooter = "cbi/cell_valuefooter" } + -%> + + <% if not self.anonymous then -%> + + <%- end %> + + + <%- + for k, node in ipairs(self.children) do + if not node.optional then + node:render(section, scope or {}) + end + end + -%> + + <%- if self.sortable then -%> + + <%- end -%> + + <%- if self.extedit or self.addremove then -%> + + <%- end -%> + + <%- end -%> + + <%- if isempty then -%> + + + + <%- end -%> +
<%=self.sectionhead%> > + <%- if k.titleref then -%><%- end -%> + <%-=k.title-%> + <%- if k.titleref then -%><%- end -%> + <%:Sort%> 
<%=self.sectiondesc%>><%=k.description%>

<%=(type(self.sectiontitle) == "function") and self:sectiontitle(section) or k%>

+ + + + <%- if self.extedit then -%> + onclick="location.href='<%=self.extedit:format(section)%>'" + <%- elseif type(self.extedit) == "function" then + %> onclick="location.href='<%=self:extedit(section)%>'" + <%- end + %> alt="<%:Edit%>" title="<%:Edit%>" /> + <%- end; if self.addremove then %> + + <%- end -%> +

<%:This section contains no values yet%>
+ + <% if self.error then %> +
+
    <% for _, c in pairs(self.error) do for _, e in ipairs(c) do -%> +
  • <%=pcdata(e):gsub("\n","
    ")%>
  • + <%- end end %>
+
+ <% end %> + + <%- if self.addremove then -%> + <% if self.template_addremove then include(self.template_addremove) else -%> +
+ <% if self.anonymous then %> + + <% else %> + <% if self.invalid_cts then -%>
<% end %> + + + <% if self.invalid_cts then -%> +
<%:Invalid%>
+ <%- end %> + <% end %> +
+ <%- end %> + <%- end -%> +
+
+ diff --git a/luci-base/luasrc/view/cbi/tsection.htm b/luci-base/luasrc/view/cbi/tsection.htm new file mode 100644 index 000000000..726521ae3 --- /dev/null +++ b/luci-base/luasrc/view/cbi/tsection.htm @@ -0,0 +1,49 @@ +
+ <% if self.title and #self.title > 0 then -%> + <%=self.title%> + <%- end %> + <% if self.description and #self.description > 0 then -%> +
<%=self.description%>
+ <%- end %> + <% local isempty = true for i, k in ipairs(self:cfgsections()) do -%> + <% if self.addremove then -%> +
+ +
+ <%- end %> + + <%- section = k; isempty = false -%> + + <% if not self.anonymous then -%> +

<%=section:upper()%>

+ <%- end %> + + <%+cbi/tabmenu%> + +
+ <%+cbi/ucisection%> +
+
+ <%- end %> + + <% if isempty then -%> + <%:This section contains no values yet%>

+ <%- end %> + + <% if self.addremove then -%> + <% if self.template_addremove then include(self.template_addremove) else -%> +
+ <% if self.anonymous then -%> + + <%- else -%> + <% if self.invalid_cts then -%>
<% end %> + + + <% if self.invalid_cts then -%> +
<%:Invalid%>
+ <%- end %> + <%- end %> +
+ <%- end %> + <%- end %> +
diff --git a/luci-base/luasrc/view/cbi/tvalue.htm b/luci-base/luasrc/view/cbi/tvalue.htm new file mode 100644 index 000000000..d1e9e6672 --- /dev/null +++ b/luci-base/luasrc/view/cbi/tvalue.htm @@ -0,0 +1,5 @@ +<%+cbi/valueheader%> + +<%+cbi/valuefooter%> diff --git a/luci-base/luasrc/view/cbi/ucisection.htm b/luci-base/luasrc/view/cbi/ucisection.htm new file mode 100644 index 000000000..2cb1e75d0 --- /dev/null +++ b/luci-base/luasrc/view/cbi/ucisection.htm @@ -0,0 +1,56 @@ +<%- + if type(self.hidden) == "table" then + for k, v in pairs(self.hidden) do +-%> + +<%- + end + end +%> + +<% if self.tabs then %> + <%+cbi/tabcontainer%> +<% else %> + <% self:render_children(section, scope or {}) %> +<% end %> + +<% if self.error and self.error[section] then -%> +
+
    <% for _, e in ipairs(self.error[section]) do -%> +
  • + <%- if e == "invalid" then -%> + <%:One or more fields contain invalid values!%> + <%- elseif e == "missing" then -%> + <%:One or more required fields have no value!%> + <%- else -%> + <%=pcdata(e)%> + <%- end -%> +
  • + <%- end %>
+
+<%- end %> + +<% if self.optionals[section] and #self.optionals[section] > 0 or self.dynamic then %> +
+ <% + if self.dynamic then + local keys, vals, name, opt = { }, { } + for name, opt in pairs(self.optionals[section]) do + keys[#keys+1] = name + vals[#vals+1] = opt.title + end + %> + 0, "data-choices", luci.util.json_encode({keys, vals})) + %> /> + <% else %> + + <% end %> + +
+<% end %> diff --git a/luci-base/luasrc/view/cbi/upload.htm b/luci-base/luasrc/view/cbi/upload.htm new file mode 100644 index 000000000..4fb5201aa --- /dev/null +++ b/luci-base/luasrc/view/cbi/upload.htm @@ -0,0 +1,24 @@ +<% + local t = require("luci.tools.webadmin") + local v = self:cfgvalue(section) + local s = v and nixio.fs.stat(v) +-%> +<%+cbi/valueheader%> + <% if s then %> + <%:Uploaded File%> (<%=t.byte_format(s.size)%>) + <% if self.unsafeupload then %> + /> + " alt="<%:Replace entry%>" title="<%:Replace entry%>" src="<%=resource%>/cbi/reload.gif" /> + <% end %> + <% end %> + + <% if not self.unsafeupload then %> + /> + <% end %> + + <% if (not s) or (s and not self.unsafeupload) then %> + /> + <% end %> + /> +<%+cbi/valuefooter%> diff --git a/luci-base/luasrc/view/cbi/value.htm b/luci-base/luasrc/view/cbi/value.htm new file mode 100644 index 000000000..c8c905eb1 --- /dev/null +++ b/luci-base/luasrc/view/cbi/value.htm @@ -0,0 +1,18 @@ +<%+cbi/valueheader%> + 0, "data-choices", { self.keylist, self.vallist }) + %> /> + <% if self.password then %><% end %> +<%+cbi/valuefooter%> diff --git a/luci-base/luasrc/view/cbi/valuefooter.htm b/luci-base/luasrc/view/cbi/valuefooter.htm new file mode 100644 index 000000000..805312e45 --- /dev/null +++ b/luci-base/luasrc/view/cbi/valuefooter.htm @@ -0,0 +1 @@ +<% include( valuefooter or "cbi/full_valuefooter" ) %> diff --git a/luci-base/luasrc/view/cbi/valueheader.htm b/luci-base/luasrc/view/cbi/valueheader.htm new file mode 100644 index 000000000..761a54aed --- /dev/null +++ b/luci-base/luasrc/view/cbi/valueheader.htm @@ -0,0 +1 @@ +<% include( valueheader or "cbi/full_valueheader" ) %> diff --git a/luci-base/luasrc/view/csrftoken.htm b/luci-base/luasrc/view/csrftoken.htm new file mode 100644 index 000000000..57ac03f3b --- /dev/null +++ b/luci-base/luasrc/view/csrftoken.htm @@ -0,0 +1,24 @@ +<%# + Copyright 2015 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%+header%> + +

<%:Form token mismatch%>

+
+ +

<%:The submitted security token is invalid or already expired!%>

+ +

<%: + In order to prevent unauthorized access to the system, your request has + been blocked. Click "Continue »" below to return to the previous page. +%>

+ +
+ +

+ Continue » +

+ +<%+footer%> diff --git a/luci-base/luasrc/view/error404.htm b/luci-base/luasrc/view/error404.htm new file mode 100644 index 000000000..bc7422683 --- /dev/null +++ b/luci-base/luasrc/view/error404.htm @@ -0,0 +1,11 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%+header%> +

404 <%:Not Found%>

+

<%:Sorry, the object you requested was not found.%>

+<%:Unable to dispatch%>: <%=luci.http.request.env.PATH_INFO%> +<%+footer%> diff --git a/luci-base/luasrc/view/error500.htm b/luci-base/luasrc/view/error500.htm new file mode 100644 index 000000000..34a52cda8 --- /dev/null +++ b/luci-base/luasrc/view/error500.htm @@ -0,0 +1,11 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%+header%> +

500 <%:Internal Server Error%>

+

<%:Sorry, the server encountered an unexpected error.%>

+
<%=message%>
+<%+footer%> diff --git a/luci-base/luasrc/view/footer.htm b/luci-base/luasrc/view/footer.htm new file mode 100644 index 000000000..f3574b6b1 --- /dev/null +++ b/luci-base/luasrc/view/footer.htm @@ -0,0 +1,7 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<% include("themes/" .. theme .. "/footer") %> \ No newline at end of file diff --git a/luci-base/luasrc/view/header.htm b/luci-base/luasrc/view/header.htm new file mode 100644 index 000000000..f6e20c9a4 --- /dev/null +++ b/luci-base/luasrc/view/header.htm @@ -0,0 +1,12 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<% + if not luci.dispatcher.context.template_header_sent then + include("themes/" .. theme .. "/header") + luci.dispatcher.context.template_header_sent = true + end +%> diff --git a/luci-base/luasrc/view/indexer.htm b/luci-base/luasrc/view/indexer.htm new file mode 100644 index 000000000..28fc3debc --- /dev/null +++ b/luci-base/luasrc/view/indexer.htm @@ -0,0 +1,7 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<% include("themes/" .. theme .. "/indexer") %> \ No newline at end of file diff --git a/luci-base/luasrc/view/sysauth.htm b/luci-base/luasrc/view/sysauth.htm new file mode 100644 index 000000000..f6b0f5706 --- /dev/null +++ b/luci-base/luasrc/view/sysauth.htm @@ -0,0 +1,73 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008-2012 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%+header%> + +
"> + <%- if fuser then %> +
<%:Invalid username and/or password! Please try again.%>
+ <% end -%> + +
+

<%:Authorization Required%>

+
+ <%:Please enter your username and password.%> +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+ +
+ + +
+
+ + +<% +local uci = require "luci.model.uci".cursor() +local fs = require "nixio.fs" +local https_key = uci:get("uhttpd", "main", "key") +local https_port = uci:get("uhttpd", "main", "listen_https") +if type(https_port) == "table" then + https_port = https_port[1] +end + +if https_port and fs.access(https_key) then + https_port = https_port:match("(%d+)$") +%> + + + +<% end %> + +<%+footer%> diff --git a/luci-base/po/ca/base.po b/luci-base/po/ca/base.po new file mode 100644 index 000000000..d0a639559 --- /dev/null +++ b/luci-base/po/ca/base.po @@ -0,0 +1,3880 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-06-10 03:40+0200\n" +"PO-Revision-Date: 2014-06-06 11:17+0200\n" +"Last-Translator: Alex \n" +"Language-Team: LANGUAGE \n" +"Language: ca\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Pootle 2.0.6\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(finestra de %d minuts, interval de %d segons)" + +msgid "(%s available)" +msgstr "(%s disponibles)" + +msgid "(empty)" +msgstr "(buit)" + +msgid "(no interfaces attached)" +msgstr "(sense interfícies adjuntes)" + +msgid "-- Additional Field --" +msgstr "-- Camp addicional --" + +msgid "-- Please choose --" +msgstr "-- Escolliu, si us plau --" + +msgid "-- custom --" +msgstr "-- personalitzat --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "Càrrega d'1 minut:" + +msgid "15 Minute Load:" +msgstr "Càrrega de 15 minuts:" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "Càrrega de 5 minuts:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "DNS query port" +msgstr "Port de consulta DNS " + +msgid "DNS server port" +msgstr "Port del servidor DNS" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" +"Es consultaran els servidors DNS " +"segons l'ordre del fitxer de resolució" + +msgid "ESSID" +msgstr "ESSID" + +msgid "IPv4-Address" +msgstr "Adreça IPv4" + +msgid "IPv4-Gateway" +msgstr "Passarel·la IPv4" + +msgid "IPv4-Netmask" +msgstr "" +"Màscara de xarxa IPv4" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"Adreça IPv6 o Xarxa (CIDR)" + +msgid "IPv6-Gateway" +msgstr "Passarel·la IPv6" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "Configuració LED" + +msgid "LED Name" +msgstr "Nom LED" + +msgid "MAC-Address" +msgstr "Adreça MAC" + +msgid "" +"Max. DHCP leases" +msgstr "" +"Arrendaments de DHCP max." + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"Mida màx. de paquet EDNS0" + +msgid "Max. concurrent queries" +msgstr "Consultes concurrents max." + +msgid "%s - %s" +msgstr "%s - %s" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "Suport AR" + +msgid "ARP retry threshold" +msgstr "Llindar de reintent ARP" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "Ponts ATM" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "Identificador de canal virtual (VCI) ATM" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "Identificador de camí virtual (VPI) ATM" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"Els ponts ATM mostren ethernet encapsulat en connexions AAL5 com interfícies " +"de xarxa virtual de Linux que es poden utilitzar conjuntament amb DHCP o PPP " +"per trucar a la xarxa del proveïdor." + +msgid "ATM device number" +msgstr "Número de dispositiu ATM" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "Concentrador d'accés" + +msgid "Access Point" +msgstr "Punt d'accés" + +msgid "Action" +msgstr "Acció" + +msgid "Actions" +msgstr "Accions" + +msgid "Activate this network" +msgstr "Activa aquesta xarxa" + +msgid "Active IPv4-Routes" +msgstr "Rutes IPv4 actives" + +msgid "Active IPv6-Routes" +msgstr "Rutes IPv6 actives" + +msgid "Active Connections" +msgstr "Connexions actives" + +msgid "Active DHCP Leases" +msgstr "Arrendaments DHCP actius" + +msgid "Active DHCPv6 Leases" +msgstr "Arrendaments DHCPv6 actius" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc" + +msgid "Add" +msgstr "Afegeix" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "" +"Afegeix el sufix de domini local als noms servits des dels fitxers de hosts" + +msgid "Add new interface..." +msgstr "Afegeix una interfície nova..." + +msgid "Additional Hosts files" +msgstr "Fitxers de Hosts addicionals" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "Adreça" + +msgid "Address to access local relay bridge" +msgstr "Adreça per accedir al relay bridge local" + +msgid "Administration" +msgstr "Administració" + +msgid "Advanced Settings" +msgstr "Paràmetres avançats" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "Alerta" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "" +"Permet autenticació SSH per contrasenya" + +msgid "Allow all except listed" +msgstr "Permet-les totes menys les llistades" + +msgid "Allow listed only" +msgstr "Permet només les llistades" + +msgid "Allow localhost" +msgstr "Permetre el localhost" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" +"Permetre a màquines remotes de connectar als ports reenviats de l'SSH local" + +msgid "Allow root logins with password" +msgstr "Permetre l'accés del l'administrador amb paraula clau" + +msgid "Allow the root user to login with password" +msgstr "Permetre l'accés de l'usurari root amb paraula clau" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "Permet respostes del rang 127.0.0.0/8, p.e. per serveis RBL" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "Antena 1" + +msgid "Antenna 2" +msgstr "Antena 2" + +msgid "Antenna Configuration" +msgstr "Configuració d'antena" + +msgid "Any zone" +msgstr "Qualsevol zona" + +msgid "Apply" +msgstr "Aplica" + +msgid "Applying changes" +msgstr "Aplicant els canvis" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "Assigna interfícies..." + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "Estacions associades" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Controlador sense fils d'Atheros 802.11%s" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "Autenticació" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "Autoritzada" + +msgid "Authorization Required" +msgstr "Es requereix autenticació" + +msgid "Auto Refresh" +msgstr "Refresc automàtic" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "Disponible" + +msgid "Available packages" +msgstr "Paquets disponibles" + +msgid "Average:" +msgstr "Mitjana:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "Enrere" + +msgid "Back to Overview" +msgstr "Enrere al Resum" + +msgid "Back to configuration" +msgstr "Enrere a la configuració" + +msgid "Back to overview" +msgstr "Enrere al resum" + +# Endarrere cap a resultats d'escaneig +msgid "Back to scan results" +msgstr "Enrere als resultats de l'escaneig" + +msgid "Background Scan" +msgstr "Escaneig de fons" + +msgid "Backup / Flash Firmware" +msgstr "Còpia de seguretat / Recàrrega de programari" + +msgid "Backup / Restore" +msgstr "Còpia de seguretat / Restauració" + +msgid "Backup file list" +msgstr "Llista de còpies de seguretat" + +msgid "Bad address specified!" +msgstr "Adreça mal especificada!" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"A sota hi ha la llista determinada de fitxers per fer-ne còpia. Consisteix " +"en els fitxers de configuració canviats i marcats per l'opkg, fitxers base " +"essencials i els patrons de còpia de seguretat definits per l'usuari." + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "Velocitat de bits" + +msgid "Bogus NX Domain Override" +msgstr "Substitució dels dominis NX falsos" + +msgid "Bridge" +msgstr "Pont" + +msgid "Bridge interfaces" +msgstr "Pont d'interfícies" + +msgid "Bridge unit number" +msgstr "Número d'unitat de pont" + +msgid "Bring up on boot" +msgstr "Aixecar a l'engegada" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "Controlador sense fil Broadcom 802.11%s" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "Controlador sense fil Broadcom BCM%04x 802.11" + +msgid "Buffered" +msgstr "En memòria intermèdia" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "Botons" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "Ús de CPU (%)" + +msgid "Cancel" +msgstr "Cancel·la" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "Cadena" + +msgid "Changes" +msgstr "Canvis" + +msgid "Changes applied." +msgstr "Canvis aplicats." + +msgid "Changes the administrator password for accessing the device" +msgstr "Canvia la paraula clau de l'administrador per accedir al dispositiu" + +msgid "Channel" +msgstr "Canal" + +msgid "Check" +msgstr "Comprovació" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "Suma de verificació" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"Escolliu la zona de tallafocs que voleu assignar a aquesta interfície. Trieu " +"sense especificar per esborrar la interfície de la zona associada o " +"ompliu el camp crea per definir una nova zona i adjuntar-hi la " +"interfície." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" +"Trieu les xarxes que voleu adjuntar a la interfície sense fil o ompliu el " +"camp crea per definir una xarxa nova." + +msgid "Cipher" +msgstr "Xifra" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" + +msgid "Client" +msgstr "Client" + +msgid "Client ID to send when requesting DHCP" +msgstr "ID de client a enviar en les sol·licituds DHCP" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" + +msgid "Close list..." +msgstr "Tanca la llista..." + +msgid "Collecting data..." +msgstr "Aplegant dades..." + +msgid "Command" +msgstr "Ordre" + +msgid "Common Configuration" +msgstr "Configuració comuna" + +msgid "Compression" +msgstr "Compressió" + +msgid "Configuration" +msgstr "Configuració" + +msgid "Configuration applied." +msgstr "S'ha aplicat la configuració." + +msgid "Configuration files will be kept." +msgstr "Es mantindran els fitxers de configuració." + +msgid "Confirmation" +msgstr "Confirmació" + +msgid "Connect" +msgstr "Connecta" + +msgid "Connected" +msgstr "Connectat" + +msgid "Connection Limit" +msgstr "Límit de connexió" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "Connexions" + +msgid "Country" +msgstr "País" + +msgid "Country Code" +msgstr "Codi de País" + +msgid "Cover the following interface" +msgstr "Cobreix la interfície següent" + +msgid "Cover the following interfaces" +msgstr "Cobreix les interfícies següents" + +msgid "Create / Assign firewall-zone" +msgstr "Crea / Assigna zona de tallafocs" + +msgid "Create Interface" +msgstr "Crea interfície" + +msgid "Create a bridge over multiple interfaces" +msgstr "Crea un pont entre múltiples interfícies" + +msgid "Critical" +msgstr "Crític" + +msgid "Cron Log Level" +msgstr "Nivell de registre del Cron" + +msgid "Custom Interface" +msgstr "Interfície personalitzada" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"Personalitza el comportament dels LEDs del dispositiu si és possible." + +msgid "DHCP Leases" +msgstr "Arrendaments DHCP" + +msgid "DHCP Server" +msgstr "Servidor DHCP" + +msgid "DHCP and DNS" +msgstr "DHCP i DNS" + +msgid "DHCP client" +msgstr "Client DHCP" + +msgid "DHCP-Options" +msgstr "Opcions DHCP" + +msgid "DHCPv6 Leases" +msgstr "Arrendaments DHCPv6" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "Reenviaments DNS" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "DUID" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "Depuració" + +msgid "Default %d" +msgstr "%d per defecte" + +msgid "Default gateway" +msgstr "Passarel·la per defecte" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "Estat per defecte" + +msgid "Define a name for this network." +msgstr "Definiu el nom d'aquesta xarxa" + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" + +msgid "Delete" +msgstr "Suprimeix" + +msgid "Delete this network" +msgstr "Suprimeix aquesta xarxa" + +msgid "Description" +msgstr "Descripció" + +msgid "Design" +msgstr "Disseny" + +msgid "Destination" +msgstr "Destí" + +msgid "Device" +msgstr "Dispositiu" + +msgid "Device Configuration" +msgstr "Configuració de dispositiu" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "Diagnòstics" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "Directori" + +msgid "Disable" +msgstr "Inhabilita" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +"Inhabilita el DHCP en aquesta interfície." + +msgid "Disable DNS setup" +msgstr "" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "Inhabilita el temporitzador HW-Beacon" + +msgid "Disabled" +msgstr "Inhabilitat" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "Descarta les respostes RFC1918 des de dalt" + +msgid "Displaying only packages containing" +msgstr "Mostrant només els paquets que contenen" + +msgid "Distance Optimization" +msgstr "Optimització de distància" + +msgid "Distance to farthest network member in meters." +msgstr "Distància al membre de la xarxa més allunyat en metres." + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "Diversitat" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"El Dnsmasq és un servidor DHCP combinat i un reenviador de DNS per tallafocs NAT" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" + +msgid "Do not forward reverse lookups for local networks" +msgstr "" + +msgid "Do not send probe responses" +msgstr "No enviïs les respostes de prova" + +msgid "Domain required" +msgstr "Es requereix un domini" + +msgid "Domain whitelist" +msgstr "" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" +"No reenviïs les peticions DNS " +"sense el nom DNS" + +msgid "Download and install package" +msgstr "Descarrega i instal·la el paquet" + +msgid "Download backup" +msgstr "Descarrega còpia de seguritat" + +msgid "Dropbear Instance" +msgstr "Instància de Dropbear" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"El Dropbear ofereix accés per la xarxa a consola SSHi un servidor SCP integrat" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" +"DHCP dinàmic" + +msgid "Dynamic tunnel" +msgstr "Túnel dinàmic" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "Mètode EAP" + +msgid "Edit" +msgstr "Edita" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "Edita aquesta interfície" + +msgid "Edit this network" +msgstr "Edita aquesta xarxa" + +msgid "Emergency" +msgstr "Emergència" + +msgid "Enable" +msgstr "Habilita" + +msgid "Enable STP" +msgstr "Habilita l'STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "Habilita negociació IPv6 en la enllaç PPP" + +msgid "Enable Jumbo Frame passthrough" +msgstr "Habilita el passatge de trames enormes" + +msgid "Enable NTP client" +msgstr "Habilita el client NTP" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "Habilita el servidor TFTP" + +msgid "Enable VLAN functionality" +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" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "" + +msgid "Enable this swap" +msgstr "" + +msgid "Enable/Disable" +msgstr "Activa/Desactiva" + +msgid "Enabled" +msgstr "Habilitat" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "Habilita l'Spanning Tree Protocol a aquest pont" + +msgid "Encapsulation mode" +msgstr "Mode d'encapsulació" + +msgid "Encryption" +msgstr "Encriptació" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "Esborrant..." + +msgid "Error" +msgstr "Error" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "Adaptador Ethernet" + +msgid "Ethernet Switch" +msgstr "Switch Ethernet" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "" + +msgid "Expires" +msgstr "Caduca" + +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "" + +msgid "External system log server port" +msgstr "" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "Fast Frames" + +msgid "File" +msgstr "Fitxer" + +msgid "Filename of the boot image advertised to clients" +msgstr "Nom de fitxer de la imatge d'inici que es publica als clients" + +msgid "Filesystem" +msgstr "Sistema de fitxers" + +msgid "Filter" +msgstr "Filtre" + +msgid "Filter private" +msgstr "Filtra privat" + +msgid "Filter useless" +msgstr "Filtra els no útils" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "Troba i uneix-te a la xarxa" + +msgid "Find package" +msgstr "Cerca paquet" + +msgid "Finish" +msgstr "Acaba" + +msgid "Firewall" +msgstr "Tallafocs" + +msgid "Firewall Settings" +msgstr "Ajusts de tallafocs" + +msgid "Firewall Status" +msgstr "Estat de tallafocs" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "Versió de microprogramari" + +msgid "Fixed source port for outbound DNS queries" +msgstr "" + +msgid "Flash Firmware" +msgstr "Reescriu el microprogramari" + +msgid "Flash image..." +msgstr "Escriu una imatge..." + +msgid "Flash new firmware image" +msgstr "Escriu una imatge nova" + +msgid "Flash operations" +msgstr "Operacions d'escriptura" + +msgid "Flashing..." +msgstr "Escrivent..." + +msgid "Force" +msgstr "Força" + +msgid "Force CCMP (AES)" +msgstr "Força el CCMP (AES)" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "Força el DHCP en aquesta xarxa encara que es detecti altre servidor." + +msgid "Force TKIP" +msgstr "Força el TKIP" + +msgid "Force TKIP and CCMP (AES)" +msgstr "Força el TKIP i el CCMP (AES)" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "Reenvia el tràfic DHCP" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "Reenvia el tràfic difós" + +msgid "Forwarding mode" +msgstr "Mode de reenviament" + +msgid "Fragmentation Threshold" +msgstr "Llindar de fragmentació" + +msgid "Frame Bursting" +msgstr "" + +msgid "Free" +msgstr "Lliures" + +msgid "Free space" +msgstr "Espai lliure" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "GHz" + +msgid "GPRS only" +msgstr "Només GPRS" + +msgid "Gateway" +msgstr "Passarel·la" + +msgid "Gateway ports" +msgstr "Ports de passarel·la" + +msgid "General Settings" +msgstr "Ajusts generals" + +msgid "General Setup" +msgstr "" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "Controlador sense fil 802.11%s genèric" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "" +"La contrasenya i la confirmació de contrasenya no es coincideixen. La " +"contrasenya no s'ha canviat!" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "Vés a la configuració de contrasenya" + +msgid "Go to relevant configuration page" +msgstr "Vés a la pàgina de configuració" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "Contrasenya de HE.net" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "" + +msgid "Hang Up" +msgstr "Penja" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"Ací pots configurar els aspectes bàsics del teu dispositiu, com el nom de la " +"màquina o el fus horari." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" + +msgid "Hermes 802.11b Wireless Controller" +msgstr "Controlador sense fil Hermes 802.11b" + +msgid "Hide ESSID" +msgstr "" +"No mostris l'ESSID" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "Entrades de noms de màquina" + +msgid "Host expiry timeout" +msgstr "" + +msgid "Host-IP or Network" +msgstr "Xarxa o adreça IP" + +msgid "Hostname" +msgstr "Nom de màquina" + +msgid "Hostname to send when requesting DHCP" +msgstr "" + +msgid "Hostnames" +msgstr "Noms de màquina" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "Adreça IP" + +msgid "IPv4" +msgstr "IPv4" + +msgid "IPv4 Firewall" +msgstr "Tallafocs IPv4" + +msgid "IPv4 WAN Status" +msgstr "Estat WAN IPv4" + +msgid "IPv4 address" +msgstr "Adreça IPv4" + +msgid "IPv4 and IPv6" +msgstr "IPv4 i IPv6" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "Difusió IPv4" + +msgid "IPv4 gateway" +msgstr "Passarel·la IPv4" + +msgid "IPv4 netmask" +msgstr "Màscara de xarxa IPv4" + +msgid "IPv4 only" +msgstr "Només IPv4" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "Longitud de prefix IPv4" + +msgid "IPv4-Address" +msgstr "Adreça IPv6" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "Tallafocs IPv6" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "Estado WAN IPv6" + +msgid "IPv6 address" +msgstr "Adreça IPv6" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "Passarel·la IPv6" + +msgid "IPv6 only" +msgstr "Només IPv6" + +msgid "IPv6 prefix" +msgstr "Prefix IPv6" + +msgid "IPv6 prefix length" +msgstr "Longitud de prefix IPv6" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "Adreça IPv6" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "IPv6-en-IPv4 (RFC4213)" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "IPv6-sobre-IPv4 (6rd)" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "IPv6-sobre-IPv4 (6to4)" + +msgid "Identity" +msgstr "Identitat" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" + +msgid "If unchecked, no default route is configured" +msgstr "" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"Si la teva memòria física és insuficient, les dades no usades es poden " +"intercanviar a un dispositiu d'intercanvi, pel qual hi haurà una quantitat " +"més gran de memòria RAM usable. " +"Tingues en compte que intercanviar dades és un procés molt lent, ja que no " +"es pot accedir al dispositiu d'intercanvi amb unes taxes tan altes com les " +"de la RAM." + +msgid "Ignore /etc/hosts" +msgstr "Ignora /etc/hosts" + +msgid "Ignore interface" +msgstr "Ignora la interfície" + +msgid "Ignore resolve file" +msgstr "Ignora el fitxer de resolució" + +msgid "Image" +msgstr "Imatge" + +msgid "In" +msgstr "En" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "Temps d'espera d'inactivitat" + +msgid "Inbound:" +msgstr "Entrant:" + +msgid "Info" +msgstr "Informació" + +msgid "Initscript" +msgstr "Script d'inici" + +msgid "Initscripts" +msgstr "Scripts d'inici" + +msgid "Install" +msgstr "Instal·la" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "Instal·la el paquet %q" + +msgid "Install protocol extensions..." +msgstr "Instal·la extensions de protocol" + +msgid "Installed packages" +msgstr "Paquets instal·lats" + +msgid "Interface" +msgstr "Interfície" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "Configuració d'interfície" + +msgid "Interface Overview" +msgstr "Visió de conjunt de la interfície" + +msgid "Interface is reconnecting..." +msgstr "La interfície s'està reconnectant..." + +msgid "Interface is shutting down..." +msgstr "La interfície s'està aturant..." + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "" + +msgid "Interface reconnected" +msgstr "" + +msgid "Interface shut down" +msgstr "" + +msgid "Interfaces" +msgstr "Interfícies" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "Error de servidor intern" + +msgid "Invalid" +msgstr "Invàlid" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "" + +msgid "Invalid username and/or password! Please try again." +msgstr "Usuari i/o contrasenya invàlids! Si us plau prova-ho de nou." + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"Sembla que intentes actualitzar una imatge que no hi cap a la memòria flaix, " +"si us plau verifica el fitxer d'imatge!" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "Es requereix JavaScript!" + +msgid "Join Network" +msgstr "Uneix-te a la xarxa" + +msgid "Join Network: Wireless Scan" +msgstr "" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "" + +msgid "Kernel Log" +msgstr "Registre del nucli" + +msgid "Kernel Version" +msgstr "Versió del nucli" + +msgid "Key" +msgstr "Clau" + +msgid "Key #%d" +msgstr "Clau #%d" + +msgid "Kill" +msgstr "Mata" + +msgid "L2TP" +msgstr "L2TP" + +msgid "L2TP Server" +msgstr "Servidor L2TP" + +msgid "LCP echo failure threshold" +msgstr "Llindar de fracàs d'eco LCP" + +msgid "LCP echo interval" +msgstr "Interval d'eco LCP" + +msgid "LLC" +msgstr "LLC" + +msgid "Label" +msgstr "Etiqueta" + +msgid "Language" +msgstr "Llengua" + +msgid "Language and Style" +msgstr "Llengua i estil" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "Duració de validitat d'arrendament" + +msgid "Leasefile" +msgstr "Fitxer d'arrendament" + +msgid "Leasetime remaining" +msgstr "Duració d'arrendament restant" + +msgid "Leave empty to autodetect" +msgstr "Deixeu-ho en blanc per autodetectar" + +msgid "Leave empty to use the current WAN address" +msgstr "Deixeu-ho en blanc per utilitzar l'adreça WAN actual" + +msgid "Legend:" +msgstr "Llegenda:" + +msgid "Limit" +msgstr "Límit" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "Enllaç activa" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" + +msgid "Listening port for inbound DNS queries" +msgstr "" + +msgid "Load" +msgstr "Carrega" + +msgid "Load Average" +msgstr "Carrega mitjana" + +msgid "Loading" +msgstr "Carregant" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "Adreça IPv4 local" + +msgid "Local IPv6 address" +msgstr "Adreça IPv6 local" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "Inici local" + +msgid "Local Time" +msgstr "Hora local" + +msgid "Local domain" +msgstr "Domini local" + +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" + +msgid "Local server" +msgstr "Servidor local" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" + +msgid "Localise queries" +msgstr "Localitza les peticions" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "Nivell de sortida de registre" + +msgid "Log queries" +msgstr "Registra les peticions" + +msgid "Logging" +msgstr "Registre" + +msgid "Login" +msgstr "Entra" + +msgid "Logout" +msgstr "Surt" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "" + +msgid "MAC-Address" +msgstr "Adreça MAC" + +msgid "MAC-Address Filter" +msgstr "Filtre d'adreces MAC" + +msgid "MAC-Filter" +msgstr "Filtre MAC" + +msgid "MAC-List" +msgstr "Llista MAC" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "MB/s" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "MHz" + +msgid "MTU" +msgstr "MTU" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "Velocitat màxima" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "" + +msgid "Maximum hold time" +msgstr "" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "" + +msgid "Mbit/s" +msgstr "Mbit/s" + +msgid "Memory" +msgstr "Memòria" + +msgid "Memory usage (%)" +msgstr "Ús de Memòria (%)" + +msgid "Metric" +msgstr "Mètric" + +msgid "Minimum Rate" +msgstr "Velocitat mínima" + +msgid "Minimum hold time" +msgstr "" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "Manca l'extensió de protocol del protocol %q" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "Mode" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "Dispositiu mòdem" + +msgid "Modem init timeout" +msgstr "Temps d'espera d'inici de mòdem" + +msgid "Monitor" +msgstr "Monitor" + +msgid "Mount Entry" +msgstr "" + +msgid "Mount Point" +msgstr "Punt de muntatge" + +msgid "Mount Points" +msgstr "Punts de muntatge" + +msgid "Mount Points - Mount Entry" +msgstr "" + +msgid "Mount Points - Swap Entry" +msgstr "" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"Els punts de muntatge defineixen en quin punt un dispositiu de memòria " +"s'adjuntarà amb el sistema de fitxers" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "Opcions de muntatge" + +msgid "Mount point" +msgstr "" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "Sistemes de fitxers muntats" + +msgid "Move down" +msgstr "Baixa" + +msgid "Move up" +msgstr "Puja" + +msgid "Multicast Rate" +msgstr "Velocitat de difusió selectiva" + +msgid "Multicast address" +msgstr "Adreça de difusió selectiva" + +msgid "NAS ID" +msgstr "NAS ID" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "Candidats de servidor NTP" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "Nom" + +msgid "Name of the new interface" +msgstr "Nom de la nova interfície" + +msgid "Name of the new network" +msgstr "Nom de la nova xarxa" + +msgid "Navigation" +msgstr "Navegació" + +msgid "Netmask" +msgstr "Màscara de xarxa" + +msgid "Network" +msgstr "Xarxa" + +msgid "Network Utilities" +msgstr "Utilitats de xarxa" + +msgid "Network boot image" +msgstr "Imatge d'inici de xarxa" + +msgid "Network without interfaces." +msgstr "Xarxa sense interfícies." + +msgid "Next »" +msgstr "Següent" + +msgid "No DHCP Server configured for this interface" +msgstr "Cap servidor DHCP configurat en aquesta interfície" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "No hi ha cadenes a aquesta taula" + +msgid "No files found" +msgstr "Cap fitxer trobat" + +msgid "No information available" +msgstr "Cap informació disponible" + +msgid "No negative cache" +msgstr "Sense memòria cau negativa" + +msgid "No network configured on this device" +msgstr "Cap xarxa configurada en aquest dispositiu" + +msgid "No network name specified" +msgstr "Cap nom de xarxa especificat" + +msgid "No package lists available" +msgstr "No hi ha llistes de paquets disponibles" + +msgid "No password set!" +msgstr "Cap contrasenya establerta!" + +msgid "No rules in this chain" +msgstr "No hi ha regles en aquesta cadena" + +msgid "No zone assigned" +msgstr "Cap zona assignada" + +msgid "Noise" +msgstr "Soroll" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "Soroll:" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "Cap" + +msgid "Normal" +msgstr "Normal" + +msgid "Not Found" +msgstr "No trobat" + +msgid "Not associated" +msgstr "No associat" + +msgid "Not connected" +msgstr "No connectat" + +msgid "Note: Configuration files will be erased." +msgstr "Nota: Els fitxers de configuració s'esborraran." + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "Avís" + +msgid "Nslookup" +msgstr "Nslookup" + +msgid "OK" +msgstr "D'acord" + +msgid "OPKG-Configuration" +msgstr "Configuració d'OPKG" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"En aquesta pàgina pots configurar les interfícies de xarxa. Pots fer un pont " +"entre diverses interfícies clicant sobre el camp \"interfície pont\" i " +"introduint els noms de les diverses interfícies de xarxa separats per " +"espais. També pots fer servir la notació VLAN INTERFACE.VLANNR (p.e.: eth0.1)." + +msgid "On-State Delay" +msgstr "" + +msgid "One of hostname or mac address must be specified!" +msgstr "Cal especificar o el nom de host o l'adreça MAC!" + +msgid "One or more fields contain invalid values!" +msgstr "Un o més dels camps requerits conté un valor invàlid!" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "Un o més dels camps requerits no té valor!" + +msgid "Open list..." +msgstr "Obre una llista..." + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "Opció canviada" + +msgid "Option removed" +msgstr "Opció treta" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "Opcions" + +msgid "Other:" +msgstr "Altres:" + +msgid "Out" +msgstr "" + +msgid "Outbound:" +msgstr "Sortint:" + +msgid "Outdoor Channels" +msgstr "Canals d'exteriors" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "" + +msgid "Override MTU" +msgstr "" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" + +msgid "Override the table used for internal routes" +msgstr "" + +msgid "Overview" +msgstr "Visió de conjunt" + +msgid "Owner" +msgstr "Propietari" + +msgid "PAP/CHAP password" +msgstr "Contrasenya PAP/CHAP" + +msgid "PAP/CHAP username" +msgstr "Nom d'usuari PAP/CHAP" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "PIN" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "PPP" + +msgid "PPPoA Encapsulation" +msgstr "Encapsulació PPPoA" + +msgid "PPPoATM" +msgstr "PPPoATM" + +msgid "PPPoE" +msgstr "PPPoE" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "PPtP" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "Es requereix el paquet libiwinfo!" + +msgid "Package lists are older than 24 hours" +msgstr "Les llistes de paquets tenen més de 24 hores" + +msgid "Package name" +msgstr "Nom del paquet" + +msgid "Packets" +msgstr "Paquets" + +msgid "Part of zone %q" +msgstr "Part de la zona %q" + +msgid "Password" +msgstr "Contrasenya" + +msgid "Password authentication" +msgstr "Autenticació per contrasenya" + +msgid "Password of Private Key" +msgstr "Contrasenya de la clau privada" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "La contrasenya s'ha canviat amb èxit!" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "Ruta als Certificats CA" + +msgid "Path to Client-Certificate" +msgstr "" + +msgid "Path to Private Key" +msgstr "Ruta a la clau privada" + +msgid "Path to executable which handles the button event" +msgstr "" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "Màxim:" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "Executa un reinici" + +msgid "Perform reset" +msgstr "Executa un reinici" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "Velocitat física:" + +msgid "Physical Settings" +msgstr "Ajusts físics" + +msgid "Ping" +msgstr "" + +msgid "Pkts." +msgstr "Paquets" + +msgid "Please enter your username and password." +msgstr "Si us plau entra el teu nom d'usuari i contrasenya." + +msgid "Policy" +msgstr "Política" + +msgid "Port" +msgstr "Port" + +msgid "Port status:" +msgstr "Estatus de port" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "Evita la comunicació client a client" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "continua" + +msgid "Processes" +msgstr "Processos" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "Prot." + +msgid "Protocol" +msgstr "Protocol" + +msgid "Protocol family" +msgstr "" + +msgid "Protocol of the new interface" +msgstr "" + +msgid "Protocol support is not installed" +msgstr "" + +msgid "Provide NTP server" +msgstr "" + +msgid "Provide new network" +msgstr "" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "Pseudo Ad-Hoc (ahdemo)" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "Calidad" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "Llindar RTS/CTS" + +msgid "RX" +msgstr "RX" + +msgid "RX Rate" +msgstr "Velocitat RX" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "Controlador sense fil RaLink 802.11%s" + +msgid "Radius-Accounting-Port" +msgstr "" + +msgid "Radius-Accounting-Secret" +msgstr "" + +msgid "Radius-Accounting-Server" +msgstr "" + +msgid "Radius-Authentication-Port" +msgstr "" + +msgid "Radius-Authentication-Secret" +msgstr "" + +msgid "Radius-Authentication-Server" +msgstr "" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"Llegeix /etc/ethers per configurar el servidor DHCP" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" + +msgid "Really reset all changes?" +msgstr "" + +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" + +msgid "Really switch protocol?" +msgstr "" + +msgid "Realtime Connections" +msgstr "" + +msgid "Realtime Graphs" +msgstr "" + +msgid "Realtime Load" +msgstr "" + +msgid "Realtime Traffic" +msgstr "" + +msgid "Realtime Wireless" +msgstr "" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "" + +msgid "Reboot" +msgstr "Reinicia" + +msgid "Rebooting..." +msgstr "Reiniciant..." + +msgid "Reboots the operating system of your device" +msgstr "Arranca de nou el sistema operatiu del teu dispositiu" + +msgid "Receive" +msgstr "Rep" + +msgid "Receiver Antenna" +msgstr "Antena receptora" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "Reconnex aquesta interfície" + +msgid "Reconnecting interface" +msgstr "Reconnectant la interfície" + +msgid "References" +msgstr "Referències" + +msgid "Regulatory Domain" +msgstr "Domini regulatori" + +msgid "Relay" +msgstr "Relé" + +msgid "Relay Bridge" +msgstr "Pont de relé" + +msgid "Relay between networks" +msgstr "Relé entre xarxes" + +msgid "Relay bridge" +msgstr "Pont de relé" + +msgid "Remote IPv4 address" +msgstr "Adreça IPv6 remota" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "Treu" + +msgid "Repeat scan" +msgstr "" + +msgid "Replace entry" +msgstr "Reemplaça l'entrada" + +msgid "Replace wireless configuration" +msgstr "Reemplaça la configuració sense fil" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "Alguns ISP ho requereixen, per exemple el Charter amb DOCSIS 3" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "Reinicia" + +msgid "Reset Counters" +msgstr "Reinicia els comptadors" + +msgid "Reset to defaults" +msgstr "Reestableix els valors per defecte" + +msgid "Resolv and Hosts Files" +msgstr "" + +msgid "Resolve file" +msgstr "" + +msgid "Restart" +msgstr "Reinicia" + +msgid "Restart Firewall" +msgstr "Reinicia Tallafocs" + +msgid "Restore backup" +msgstr "Restaura còpia de seguretat" + +msgid "Reveal/hide password" +msgstr "Mostra/amaga la contrasenya" + +msgid "Revert" +msgstr "Reverteix" + +msgid "Root" +msgstr "Arrel" + +msgid "Root directory for files served via TFTP" +msgstr "Directori arrel dels fitxers servits per TFTP" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "Contrasenya de l'encaminador" + +msgid "Routes" +msgstr "Rutes" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"Les rutes especifiquen per quina interfície i passarel·la es pot arribar a " +"un cert ordinador o xarxa." + +msgid "Run a filesystem check before mounting the device" +msgstr "" + +msgid "Run filesystem check" +msgstr "" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "Accés SSH" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "Claus SSH" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "Desa" + +msgid "Save & Apply" +msgstr "Desa y aplica" + +msgid "Save & Apply" +msgstr "Desa y aplica" + +msgid "Scan" +msgstr "Escaneja" + +msgid "Scheduled Tasks" +msgstr "Tasques programades" + +msgid "Section added" +msgstr "Secció afegida" + +msgid "Section removed" +msgstr "Secció treta" + +msgid "See \"mount\" manpage for details" +msgstr "" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" + +msgid "Separate Clients" +msgstr "Clients separats" + +msgid "Separate WDS" +msgstr "WDS separat" + +msgid "Server Settings" +msgstr "Ajusts de servidor" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "Nom de servei" + +msgid "Service Type" +msgstr "Tipus de servei" + +msgid "Services" +msgstr "Serveis" + +#, fuzzy +msgid "Set up Time Synchronization" +msgstr "Sincronització de hora" + +msgid "Setup DHCP Server" +msgstr "" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "" + +msgid "Shutdown this interface" +msgstr "Atura aquesta interfície" + +msgid "Shutdown this network" +msgstr "Atura aquesta xarxa" + +msgid "Signal" +msgstr "Senyal" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "Senyal:" + +msgid "Size" +msgstr "Mida" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "Salta" + +msgid "Skip to content" +msgstr "Salta al contingut" + +msgid "Skip to navigation" +msgstr "Salta a la navegació" + +msgid "Slot time" +msgstr "" + +msgid "Software" +msgstr "Programari" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "No es pot desar els valors perquè alguns camps estan invàlids!" + +msgid "Sorry, the object you requested was not found." +msgstr "Tristament, l'object que heu sol·licitat no s'ha trobat." + +msgid "Sorry, the server encountered an unexpected error." +msgstr "Tristament, el servidor ha encontrat un error inesperat." + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" + +msgid "Sort" +msgstr "Ordena" + +msgid "Source" +msgstr "Origen" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "" + +msgid "Specifies the directory the device is attached to" +msgstr "Especifica el directori a que el dispositiu està adjuntat" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "Especifica el port d'escolta d'aquesta instància del Dropbear" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "Especifiqueu el clau de xifració secret aquí." + +msgid "Start" +msgstr "Inici" + +msgid "Start priority" +msgstr "Prioritat d'inici" + +msgid "Startup" +msgstr "Arranca" + +msgid "Static IPv4 Routes" +msgstr "Rutes IPv4 estàtiques" + +msgid "Static IPv6 Routes" +msgstr "Rutes IPv6 estàtiques" + +msgid "Static Leases" +msgstr "Leases estàtics" + +msgid "Static Routes" +msgstr "Rutes estàtiques" + +msgid "Static WDS" +msgstr "WDS estàtic" + +msgid "Static address" +msgstr "Adreça estàtica" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" + +msgid "Status" +msgstr "Estat" + +msgid "Stop" +msgstr "Atura" + +msgid "Strict order" +msgstr "Ordre estricte" + +msgid "Submit" +msgstr "Envia" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "Entrada d'intercanvi" + +msgid "Switch" +msgstr "Commutador" + +msgid "Switch %q" +msgstr "Commutador %q" + +msgid "Switch %q (%s)" +msgstr "Commutador %q (%s)" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "Protocol de commutador" + +msgid "Sync with browser" +msgstr "Sincronitza amb navegador" + +msgid "Synchronizing..." +msgstr "Sincronitzant..." + +msgid "System" +msgstr "Sistema" + +msgid "System Log" +msgstr "Registre de sistema" + +msgid "System Properties" +msgstr "Propietats de sistema" + +msgid "System log buffer size" +msgstr "Mida de la memòria intermèdia del registre de sistema" + +msgid "TCP:" +msgstr "TCP:" + +msgid "TFTP Settings" +msgstr "Ajusts TFTP" + +msgid "TFTP server root" +msgstr "Arrel del servidor TFTP" + +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "Velocitat TX" + +msgid "Table" +msgstr "Taula" + +msgid "Target" +msgstr "Destí" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "Acaba" + +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" +"El paquet libiwinfo-lua no està instal·lat. Heu de instal·lar " +"aquest component per tenir una configuració sense fil funcionant!" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" +"Els caràcters permets són: A-Z, a-z, 0-9 i _" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" +"El fitxer de dispositiu de la memòria o partició (p.e. /dev/sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"El sistema the fitxers que es va fer servir per formatar la memòria (p.e. ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" + +msgid "The following changes have been committed" +msgstr "S'han comès els següents canvis" + +msgid "The following changes have been reverted" +msgstr "S'han desfet els següents canvis" + +msgid "The following rules are currently active on this system." +msgstr "Els següents regles estan actualment actives en aquest sistema." + +msgid "The given network name is not unique" +msgstr "El nom de xarxa donat no és únic" + +#, fuzzy +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" +"El maquinari no es capaç de múltiples SSID i la configuració existent es " +"reemplaçara si procediu." + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" +"La longitud del prefix IPv4 en bits, el reste s'utilitza en les adreces IPv6." + +msgid "The length of the IPv6 prefix in bits" +msgstr "La longitud del prefix IPv6 en bits" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" + +msgid "The selected protocol needs a device assigned" +msgstr "El protocol seleccionat necessita un dispositiu assignat" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" +"El sistema està esborrant la partició de configuració i es reiniciarà quan " +"termini." + +#, fuzzy +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"El sistema s'està escrivent ara.
NO APAGUEU EL DISPOSITIU!
Espereu " +"uns minuts abans d'intentar connectar-vos de nou. Pot ser necessari que " +"renoveu l'adreça del vostre ordinador per a connectar al dispositiu de nou, " +"depenent dels vostres ajusts." + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"La imatge pujada no conté un format suportat. Assegura't de triar el format " +"d'imatge genèric per la teva plataforma." + +msgid "There are no active leases." +msgstr "No hi ha arrendaments actius." + +msgid "There are no pending changes to apply!" +msgstr "No hi ha canvis pendents per aplicar!" + +msgid "There are no pending changes to revert!" +msgstr "No hi ha canvis pendents per revertir!" + +msgid "There are no pending changes!" +msgstr "No hi ha canvis pendents!" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" + +msgid "This IPv4 address of the relay" +msgstr "" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" +"Aquest és l'únic DHCP a la teva xarxa local" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "" +"Aquest és el crontab del sistema en el qual es poden definir tasques " +"programades." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" +"Aquesta llista mostra una vista general sobre els processos corrent al " +"sistema actualment i el seu estat." + +msgid "This page allows the configuration of custom button actions" +msgstr "" + +msgid "This page gives an overview over currently active network connections." +msgstr "" +"Aquesta pàgina ofereix una vista general de les connexions de xarxa actives " +"actualment." + +msgid "This section contains no values yet" +msgstr "Aquesta secció no conté cap valor encara" + +msgid "Time Synchronization" +msgstr "Sincronització de hora" + +msgid "Time Synchronization is not configured yet." +msgstr "La sincronització de hora encara no s'ha configurat." + +msgid "Timezone" +msgstr "Zona horària" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "Total disponible" + +msgid "Traceroute" +msgstr "Rastre de ruta" + +msgid "Traffic" +msgstr "Tràfic" + +msgid "Transfer" +msgstr "Transferència" + +msgid "Transmission Rate" +msgstr "Taxa de transmissió" + +msgid "Transmit" +msgstr "Transmet" + +msgid "Transmit Power" +msgstr "Potència de transmissió" + +msgid "Transmitter Antenna" +msgstr "Antena transmissora" + +msgid "Trigger" +msgstr "" + +msgid "Trigger Mode" +msgstr "" + +msgid "Tunnel ID" +msgstr "ID del túnel" + +msgid "Tunnel Interface" +msgstr "Interfície del túnel" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "Mode Turbo" + +msgid "Tx-Power" +msgstr "Potència Tx" + +msgid "Type" +msgstr "Tipus" + +msgid "UDP:" +msgstr "UDP:" + +msgid "UMTS only" +msgstr "Només UMTS" + +msgid "UMTS/GPRS/EV-DO" +msgstr "UMTS/GPRS/EV-DO" + +msgid "USB Device" +msgstr "Dispositiu USB" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "UUID" + +msgid "Unable to dispatch" +msgstr "" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "Desconegut" + +msgid "Unknown Error, password not changed!" +msgstr "La contrasenya no s'ha canviat a causa d'un error desconegut!" + +msgid "Unmanaged" +msgstr "Sense gestionar" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "Canvis sense desar" + +msgid "Unsupported protocol type." +msgstr "Tipus de protocol no suportat." + +msgid "Update lists" +msgstr "Actualitza les llistes" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" + +msgid "Upload archive..." +msgstr "Puja un arxiu..." + +msgid "Uploaded File" +msgstr "Fitxer pujat" + +msgid "Uptime" +msgstr "Temps d'alta" + +msgid "Use /etc/ethers" +msgstr "Fes servir /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "" + +msgid "Use DNS servers advertised by peer" +msgstr "" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "" + +msgid "Use MTU on tunnel interface" +msgstr "" + +msgid "Use TTL on tunnel interface" +msgstr "" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "Utilitza la bandera de difusió" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "" + +msgid "Use default gateway" +msgstr "" + +msgid "Use gateway metric" +msgstr "" + +msgid "Use routing table" +msgstr "" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" + +msgid "Used" +msgstr "Usat" + +msgid "Used Key Slot" +msgstr "" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "Nom d'usuari" + +msgid "VC-Mux" +msgstr "VC-Mux" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "VLANs en %q" + +msgid "VLANs on %q (%s)" +msgstr "VLANs en %q (%s)" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "Servidor VPN" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "Classe de venidor per enviar al sol·licitar DHCP" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "Verifica" + +msgid "Version" +msgstr "Versió" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "Sistema obert WEP" + +msgid "WEP Shared Key" +msgstr "Clau compartit WEP" + +msgid "WEP passphrase" +msgstr "Contrasenya WEP" + +msgid "WMM Mode" +msgstr "Mode WMM" + +msgid "WPA passphrase" +msgstr "Contrasenya WPA" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"La xifratge WPA requereix que sigui instal·lat el wpa_supplicant (pel mode " +"client) o el hostapd (pels modes AP i ad hoc)." + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "Esperant que s'apliquin els canvis..." + +msgid "Waiting for command to complete..." +msgstr "Esperant que s'acabi l'ordre..." + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "Advertència" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "Sense fils" + +msgid "Wireless Adapter" +msgstr "Adaptador sense fils" + +msgid "Wireless Network" +msgstr "Xarxa sense fils" + +msgid "Wireless Overview" +msgstr "Resum sense fils" + +msgid "Wireless Security" +msgstr "Seguretat sense fils" + +msgid "Wireless is disabled or not associated" +msgstr "El sense fil està inhabilitat o sense associar" + +msgid "Wireless is restarting..." +msgstr "Sense fils està reiniciant..." + +msgid "Wireless network is disabled" +msgstr "La xarxa sense fil està inhabilitada" + +msgid "Wireless network is enabled" +msgstr "La xarxa sense fils està habilitada" + +msgid "Wireless restarted" +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 syslog" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "Suport XR" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"Pots activar o desactivar els scripts d'inici instal·lats ací. Els canvis " +"s'aplicaran després d'arrancar de nou el dispositiu.
Atenció: " +"Si desactives scripts d'inici necessaris com el \"network\", el teu " +"dispositiu pot resultar inaccessible!" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" +"Has d'activar el JavaScript al teu navegador o LuCI no funcionarà " +"correctament." + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "qualsevol" + +msgid "auto" +msgstr "auto" + +msgid "baseT" +msgstr "" + +msgid "bridged" +msgstr "pontejat" + +msgid "create:" +msgstr "crea:" + +msgid "creates a bridge over specified interface(s)" +msgstr "crea un pont entre les interfícies especificades" + +msgid "dB" +msgstr "dB" + +msgid "dBm" +msgstr "dBm" + +msgid "disable" +msgstr "inhabilita" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "caducat" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" +"fitxer on els leases de DHCP s'emmagatzemaran" + +msgid "forward" +msgstr "transemès" + +msgid "full-duplex" +msgstr "" + +msgid "half-duplex" +msgstr "" + +msgid "help" +msgstr "ajuda" + +msgid "hidden" +msgstr "amagat" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "si el destí és una xarxa" + +msgid "input" +msgstr "entrada" + +msgid "kB" +msgstr "kB" + +msgid "kB/s" +msgstr "kB/s" + +msgid "kbit/s" +msgstr "kbit/s" + +msgid "local DNS file" +msgstr "fitxer DNS local" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "no" + +msgid "no link" +msgstr "cap enllaç" + +msgid "none" +msgstr "cap" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "parat" + +msgid "on" +msgstr "engegat" + +msgid "open" +msgstr "obert" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "encaminat" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "etiquetat" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "desconegut" + +msgid "unlimited" +msgstr "il·limitat" + +msgid "unspecified" +msgstr "sense espeficicar" + +msgid "unspecified -or- create:" +msgstr "sense espeficicar -o- crear:" + +msgid "untagged" +msgstr "sense etiquetar" + +msgid "yes" +msgstr "sí" + +msgid "« Back" +msgstr "« Enrere" + +#~ msgid "Leasetime" +#~ msgstr "Duració d'arrendament" + +#, fuzzy +#~ msgid "automatic" +#~ msgstr "estàtic" + +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "Es crearà una xarxa addicional si deixes això sense marcar." + +#~ msgid "Join Network: Settings" +#~ msgstr "Unir-se a la xarxa: Ajusts" + +#~ msgid "CPU" +#~ msgstr "CPU" + +#~ msgid "Port %d" +#~ msgstr "Port %d" + +#~ msgid "VLAN Interface" +#~ msgstr "Interfície VLAN" diff --git a/luci-base/po/cs/base.po b/luci-base/po/cs/base.po new file mode 100644 index 000000000..fa0f92083 --- /dev/null +++ b/luci-base/po/cs/base.po @@ -0,0 +1,3949 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"PO-Revision-Date: 2014-05-31 13:59+0200\n" +"Last-Translator: koli \n" +"Language-Team: none\n" +"Language: cs\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" +"X-Generator: Pootle 2.0.6\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(%d minutové okno, %d sekundový interval)" + +msgid "(%s available)" +msgstr "(%s k dispozici)" + +msgid "(empty)" +msgstr "(prázdný)" + +msgid "(no interfaces attached)" +msgstr "(bez rozhraní připojení)" + +msgid "-- Additional Field --" +msgstr "-- Doplňující pole --" + +msgid "-- Please choose --" +msgstr "-- Prosím vyberte --" + +msgid "-- custom --" +msgstr "-- vlastní --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "Zatížení za 1 minutu:" + +msgid "15 Minute Load:" +msgstr "Zatížení za 15 minut:" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "Zatížení za 5 minut:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "DNS query port" +msgstr "port dotazů DNS" + +msgid "DNS server port" +msgstr "port serveru DNS" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" +"DNS servery budou dotazovány podle " +"pořadí resolvfile" + +msgid "ESSID" +msgstr "ESSID" + +msgid "IPv4-Address" +msgstr "IPv4-Adresa" + +msgid "IPv4-Gateway" +msgstr "IPv4-Brána" + +msgid "IPv4-Netmask" +msgstr "IPv4-Maska sítě" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"IPv6-Adresa nebo Síť (CIDR)" + +msgid "IPv6-Gateway" +msgstr "IPv6-Brána" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "LED Konfigurace" + +msgid "LED Name" +msgstr "LED Název" + +msgid "MAC-Address" +msgstr "MAC-Adresa" + +msgid "" +"Max. DHCP leases" +msgstr "" +"Nejvyšší počet DHCP výpůjček" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"Největší povolená velikost EDNS0 packetů" + +msgid "Max. concurrent queries" +msgstr "Nejvyšší počet souběžných dotazů" + +msgid "%s - %s" +msgstr "%s - %s" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "Podpora AR" + +msgid "ARP retry threshold" +msgstr "ARP limit opakování" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "ATM mosty" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "Identifikátor virtuálního kanálu ATM (VCI)" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "Identifikátor virtuální cesty ATM (VPI)" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"Otevře ATM mosty přes uzavřené ethernetové rozhraní v AAL5 připojení jako " +"virtuální síťová rozhraní Linuxu, které mohou být použity ve spojení s DHCP " +"nebo PPP vytáčeného připojení od poskytovatele sítě." + +msgid "ATM device number" +msgstr "číslo ATM zařízení" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "Přístupový koncentrátor" + +msgid "Access Point" +msgstr "Přístupový bod" + +msgid "Action" +msgstr "Akce" + +msgid "Actions" +msgstr "Akce" + +msgid "Activate this network" +msgstr "Aktivovat tuto síť" + +msgid "Active IPv4-Routes" +msgstr "" +"Aktivní záznamy ve směrovací tabulce IPv4" + +msgid "Active IPv6-Routes" +msgstr "" +"Aktivní záznamy ve směrovací tabulce IPv6" + +msgid "Active Connections" +msgstr "Aktivní spojení" + +msgid "Active DHCP Leases" +msgstr "Aktivní propůjčené DHCP adresy (leases)" + +msgid "Active DHCPv6 Leases" +msgstr "Aktivní propůjčené DHCPv6 adresy (leases)" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc" + +msgid "Add" +msgstr "Přidat" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "Přidat lokální koncovku k doménovým jménům ze souboru hosts" + +msgid "Add new interface..." +msgstr "Přidat rozhraní..." + +msgid "Additional Hosts files" +msgstr "Dodatečné Hosts soubory" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "Adresa" + +msgid "Address to access local relay bridge" +msgstr "Adresa pro přístup k místnímu relay bridge" + +msgid "Administration" +msgstr "Správa" + +msgid "Advanced Settings" +msgstr "Pokročilé nastavení" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "Upozornění" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "Povolit SSH autentizaci heslem" + +msgid "Allow all except listed" +msgstr "Povolit vše mimo uvedené" + +msgid "Allow listed only" +msgstr "Povolit pouze uvedené" + +msgid "Allow localhost" +msgstr "Povolit localhost" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" +"Povolit vzdáleným hostitelům připojování k místním portům přesměrovaným " +"pomocí SSH" + +msgid "Allow root logins with password" +msgstr "Povolit přihlašovaní root účtu pomocí hesla" + +msgid "Allow the root user to login with password" +msgstr "Povolit root účtu přihlášení bez nastaveného hesla" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "Povolit upstream odpovědi na 127.0.0.0/8 rozsah, např. pro RBL služby" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "Anténa 1" + +msgid "Antenna 2" +msgstr "Anténa 2" + +msgid "Antenna Configuration" +msgstr "Konfigurace antén" + +msgid "Any zone" +msgstr "Libovolná zóna" + +msgid "Apply" +msgstr "Použít" + +msgid "Applying changes" +msgstr "Probíhá uplatňování nastavení" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "Přiřadit rozhraní..." + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "Připojení klienti" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Atheros 802.11%s bezdrátový ovladač" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "Autentizace" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "Autoritativní" + +msgid "Authorization Required" +msgstr "Vyžadována autorizace" + +msgid "Auto Refresh" +msgstr "Automaticky obnovovat" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "Dostupné" + +msgid "Available packages" +msgstr "Dostupné balíčky" + +msgid "Average:" +msgstr "Průměr:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "Zpět" + +msgid "Back to Overview" +msgstr "Zpět k přehledu" + +msgid "Back to configuration" +msgstr "Zpět ke konfiguraci" + +msgid "Back to overview" +msgstr "Zpět k přehledu" + +msgid "Back to scan results" +msgstr "Zpět k výsledkům vyhledávání" + +msgid "Background Scan" +msgstr "Vyhledávat na pozadí" + +msgid "Backup / Flash Firmware" +msgstr "Zálohovat / nahrát firmware" + +msgid "Backup / Restore" +msgstr "Zálohovat / obnovit" + +msgid "Backup file list" +msgstr "Seznam souborů k zálohování" + +msgid "Bad address specified!" +msgstr "Zadána neplatná adresa!" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"Seznam souborů k zálohování lze nalézt níže. Sestává se z konfiguračních " +"souborů označených opkg, nezbyných systémových souborů a souborů " +"vyhovujících uživatelem určeným vzorům." + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "Přenosová rychlost" + +msgid "Bogus NX Domain Override" +msgstr "Přepíše falešnou hodnotu NX Domény" + +msgid "Bridge" +msgstr "Síťový most" + +msgid "Bridge interfaces" +msgstr "Síťové mosty" + +msgid "Bridge unit number" +msgstr "Číslo síťového mostu" + +msgid "Bring up on boot" +msgstr "Zapnout po startu" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "Broadcom 802.11%s bezdrátový ovladač" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "Broadcom modul BCM%04x 802.11 bezdrátový ovladač" + +msgid "Buffered" +msgstr "Bufferováno" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "Tlačítka" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "Vytížení CPU (%)" + +msgid "Cancel" +msgstr "Storno" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "Řetěz" + +msgid "Changes" +msgstr "Změny" + +msgid "Changes applied." +msgstr "Změny aplikovány." + +msgid "Changes the administrator password for accessing the device" +msgstr "Změní administrátorské heslo pro přístup k zařízení" + +msgid "Channel" +msgstr "Kanál" + +msgid "Check" +msgstr "Kontrola" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "Kontrolní součet" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"Zóna firewallu přiřazená k tomuto rozhraní. Pro odstranění rozhraní z " +"přiřazené zóny vyberte volbu nespecifikovaná. Pro vytvoření nové " +"zóny a její následné přiřazení danému rozhraní vyplňte pole vytvořit." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" +"Vyberte síť(ě), které chcete připojit k tomuto bezdrátovému rozhraní, nebo " +"vyplňte pole vytvořit a pojmenujte novou síť." + +msgid "Cipher" +msgstr "Šifra" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"Pro stažení archivu tar s aktuální konfigurací stiskněte \"Vytvořit archiv" +"\". Pro obnovení továrního nastavení stiskněte \"Obnovit výchozí\" (možné " +"pouze s obrazy squashfs)." + +msgid "Client" +msgstr "Klient" + +msgid "Client ID to send when requesting DHCP" +msgstr "Klientské ID odesílané v DHCP požadavku" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" +"Uzavírat neaktivní spojení po daném počtu sekund. Pro vypnutí časového " +"omezení použijte jako hodntu nulu" + +msgid "Close list..." +msgstr "Zavřít seznam..." + +msgid "Collecting data..." +msgstr "Probíhá sběr dat..." + +msgid "Command" +msgstr "Příkaz" + +msgid "Common Configuration" +msgstr "Společná nastavení" + +msgid "Compression" +msgstr "Komprese" + +msgid "Configuration" +msgstr "Nastavení" + +msgid "Configuration applied." +msgstr "Nastavení uplatněno." + +msgid "Configuration files will be kept." +msgstr "Konfigurační soubory budou zachovány." + +msgid "Confirmation" +msgstr "Ověření" + +msgid "Connect" +msgstr "Připojit" + +msgid "Connected" +msgstr "Připojeno" + +msgid "Connection Limit" +msgstr "Omezení počtu připojení" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "Připojení" + +msgid "Country" +msgstr "Země" + +msgid "Country Code" +msgstr "Kód země" + +msgid "Cover the following interface" +msgstr "Pokrýt následující rozhraní" + +msgid "Cover the following interfaces" +msgstr "Pokrýt následující rozhraní" + +msgid "Create / Assign firewall-zone" +msgstr "Vytvořit / přiřadit zónu firewallu" + +msgid "Create Interface" +msgstr "Vytvořit rozhraní" + +msgid "Create a bridge over multiple interfaces" +msgstr "Vytvořit síťový most přes více rozhraní" + +msgid "Critical" +msgstr "Kritické" + +msgid "Cron Log Level" +msgstr "Úroveň protokolování Cronu" + +msgid "Custom Interface" +msgstr "Vlastní rozhraní" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"Upraví chování LED diod zařízení " +"pokud je to možné." + +msgid "DHCP Leases" +msgstr "DHCP výpůjčky" + +msgid "DHCP Server" +msgstr "DHCP server" + +msgid "DHCP and DNS" +msgstr "DHCP a DNS" + +msgid "DHCP client" +msgstr "DHCP klient" + +msgid "DHCP-Options" +msgstr "Volby DHCP" + +msgid "DHCPv6 Leases" +msgstr "DHCPv6 přidělené IP" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "Přeposílání DNS" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "DUID" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "Ladění" + +msgid "Default %d" +msgstr "Výchozí %d" + +msgid "Default gateway" +msgstr "Výchozí brána" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "Výchozí stav" + +msgid "Define a name for this network." +msgstr "Jméno sítě." + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"Další možnosti DHCP, například \"6,192.168.2.1,192.168.2.2\", " +"které odkazuje na různé DNS servery pro klienty." + +msgid "Delete" +msgstr "Odstranit" + +msgid "Delete this network" +msgstr "Odstranit tuto síť" + +msgid "Description" +msgstr "Popis" + +msgid "Design" +msgstr "Vzhled" + +msgid "Destination" +msgstr "Cíl" + +msgid "Device" +msgstr "Zařízení" + +msgid "Device Configuration" +msgstr "Nastavení zařízení" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "Diagnostika" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "Adresář" + +msgid "Disable" +msgstr "Zakázat" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +"Pro toto rozhraní zakázat DHCP." + +msgid "Disable DNS setup" +msgstr "Zakázat nastavení DNS" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "Zakázat HW-Beacon časovač" + +msgid "Disabled" +msgstr "Zakázáno" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "Vyřadit upstream RFC1918 odpovědi" + +msgid "Displaying only packages containing" +msgstr "Zobrazeny pouze balíčky obsahující" + +msgid "Distance Optimization" +msgstr "Optimalizace na vzdálenost" + +msgid "Distance to farthest network member in meters." +msgstr "Vzdálenost nejodlehlejšího člena sítě v metrech." + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "Diverzita" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Dnsmasq je kombinace DHCP serveru a DNS " +"forwarderu pro použití v NAT firewallech" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "Necachovat negativní odpovědi (např. pro neexistující domény)" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" +"Nepřeposílat požadavky, které nemohou být zodpovězeny veřejnými jmennými " +"servery" + +msgid "Do not forward reverse lookups for local networks" +msgstr "Nepřeposílat reverzní dotazy na místní sítě" + +msgid "Do not send probe responses" +msgstr "Neodpovídat na vyhledávání" + +msgid "Domain required" +msgstr "Vyžadována doména" + +msgid "Domain whitelist" +msgstr "Whitelist domén" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" +"Nepřeposílat DNS dotazy bez DNS jména" + +msgid "Download and install package" +msgstr "Stáhnout a nainstalovat balíček" + +msgid "Download backup" +msgstr "Stáhnout zálohu" + +msgid "Dropbear Instance" +msgstr "Instance Dropbear" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear poskytuje SSH přístup a SCP server" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" +"Dynamický DHCP" + +msgid "Dynamic tunnel" +msgstr "Dynamický tunel" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" +"Pro klienty alokovat DHCP adresy dynamicky. Pokud je volba zakázána, budou " +"obsloužení pouze klienti se statickými výpůjčkami." + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "Metoda EAP" + +msgid "Edit" +msgstr "Upravit" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "Upravit toto rozhraní" + +msgid "Edit this network" +msgstr "Upravit tuto síť" + +msgid "Emergency" +msgstr "Záchrana" + +msgid "Enable" +msgstr "Povolit" + +msgid "Enable STP" +msgstr "Povolit STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "Povolit dynamickou aktualizaci koncového bodu HE.net" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "Na PPP spoji povolit vyjednání IPv6" + +msgid "Enable Jumbo Frame passthrough" +msgstr "Povolit průchod jumbo rámců" + +msgid "Enable NTP client" +msgstr "Povolit NTP klienta" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "Povolit TFTP server" + +msgid "Enable VLAN functionality" +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í" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "Povolit tento přípojný bod" + +msgid "Enable this swap" +msgstr "Povolit tento swapovací oddíl" + +msgid "Enable/Disable" +msgstr "Povolit/Zakázat" + +msgid "Enabled" +msgstr "Povoleno" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "Na tomto síťovém mostě povolit Spanning Tree Protocol" + +msgid "Encapsulation mode" +msgstr "Režim zapouzdření" + +msgid "Encryption" +msgstr "Šifrování" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "Odstraňování..." + +msgid "Error" +msgstr "Chyba" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "Ethernetový adaptér" + +msgid "Ethernet Switch" +msgstr "Ethernetový switch" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "Rozšířit hostitele" + +msgid "Expires" +msgstr "Vyprší" + +#, fuzzy +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" +"Čas vypršení vypůjčené adresy, minimum jsou 2 minuty (2m)." + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "Externí protokolovací server" + +msgid "External system log server port" +msgstr "Port externího protokolovacího serveru" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "Rychlé rámce" + +msgid "File" +msgstr "Soubor" + +msgid "Filename of the boot image advertised to clients" +msgstr "Název souboru s bootovacím obrazem oznamovaný klientům" + +msgid "Filesystem" +msgstr "Souborový systém" + +msgid "Filter" +msgstr "Filtr" + +msgid "Filter private" +msgstr "Filtrovat soukromé" + +msgid "Filter useless" +msgstr "Filtrovat nepotřebné" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "Vyhledat a připojit síť" + +msgid "Find package" +msgstr "Vyhledat balíček" + +msgid "Finish" +msgstr "Dokončit" + +msgid "Firewall" +msgstr "Firewall" + +msgid "Firewall Settings" +msgstr "Nastavení firewallu" + +msgid "Firewall Status" +msgstr "Stav firewallu" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "Verze firmwaru" + +msgid "Fixed source port for outbound DNS queries" +msgstr "Pevný zdrojový port pro odchozí DNS dotazy" + +msgid "Flash Firmware" +msgstr "Nahrát firmware" + +msgid "Flash image..." +msgstr "Nahrát obraz..." + +msgid "Flash new firmware image" +msgstr "Nahrát nový obraz s firmwarem" + +msgid "Flash operations" +msgstr "Operace nad flash pamětí" + +msgid "Flashing..." +msgstr "Nahrávám..." + +msgid "Force" +msgstr "Vynutit" + +msgid "Force CCMP (AES)" +msgstr "Vynutit CCMP (AES)" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "Na této síti vynutit DHCP i v případě detekování jiného serveru." + +msgid "Force TKIP" +msgstr "Vynutit TKIP" + +msgid "Force TKIP and CCMP (AES)" +msgstr "Vynutit TKIP a CCMP (AES)" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "Přeposílat DHCP provoz" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "Přeposílat broadcasty" + +msgid "Forwarding mode" +msgstr "Režim přeposílání" + +msgid "Fragmentation Threshold" +msgstr "Hranice fragmentace" + +msgid "Frame Bursting" +msgstr "Dávkování rámců" + +msgid "Free" +msgstr "Volné" + +msgid "Free space" +msgstr "Volné místo" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "GHz" + +msgid "GPRS only" +msgstr "Pouze GPRS" + +msgid "Gateway" +msgstr "Brána" + +msgid "Gateway ports" +msgstr "Porty brány" + +msgid "General Settings" +msgstr "Obecná nastavení" + +msgid "General Setup" +msgstr "Obecné nastavení" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "Vytvorǐt archív" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "Generic 802.11%s Wireless Controller" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "Heslo nezměněno z důvodu nesouhlasu nového hesla a ověření hesla!" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "Přejít na nastavení hesla..." + +msgid "Go to relevant configuration page" +msgstr "Přejít na související konfigurační stránku" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "Heslo HE.net" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "Handler" + +msgid "Hang Up" +msgstr "Zavěsit" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"Nastavení základních vlastností zařízení jako je časová zóna nebo název " +"zařízení." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" +"Vložte veřejné klíče (na každý řadek jeden) pro ověřovaní SSH přístupu." + +msgid "Hermes 802.11b Wireless Controller" +msgstr "Hermes 802.11b bezdrátový ovladač" + +msgid "Hide ESSID" +msgstr "Skrývat ESSID" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "Záznamy hostitelů" + +msgid "Host expiry timeout" +msgstr "Vypršení časového limitu hostitele" + +msgid "Host-IP or Network" +msgstr "" +"IP adresa hostitele nebo síť" + +msgid "Hostname" +msgstr "Jméno hostitele" + +msgid "Hostname to send when requesting DHCP" +msgstr "Jméno hostitele odesílané s DHCP požadavky" + +msgid "Hostnames" +msgstr "Jména hostitelů" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "IP adresy" + +msgid "IPv4" +msgstr "IPv4" + +msgid "IPv4 Firewall" +msgstr "IPv4 firewall" + +msgid "IPv4 WAN Status" +msgstr "Stav IPv4 WAN" + +msgid "IPv4 address" +msgstr "IPv4 adresa" + +msgid "IPv4 and IPv6" +msgstr "IPv4 a IPv6" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "IPv4 broadcast" + +msgid "IPv4 gateway" +msgstr "IPv4 brána" + +msgid "IPv4 netmask" +msgstr "IPv4 maska sítě" + +msgid "IPv4 only" +msgstr "Pouze IPv4" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "Délka IPv4 prefixu" + +msgid "IPv4-Address" +msgstr "IPv4 adresa" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "IPv6 firewall" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "Stav IPv6 WAN" + +msgid "IPv6 address" +msgstr "IPv6 adresa" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "IPv6 brána" + +msgid "IPv6 only" +msgstr "Pouze IPv6" + +msgid "IPv6 prefix" +msgstr "IPv6 prefix" + +msgid "IPv6 prefix length" +msgstr "Délka IPv6 prefixu" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "IPv6 adresa" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "IPv6-in-IPv4 (RFC4213)" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "IPv6-over-IPv4 (6rd)" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "IPv6-over-IPv4 (6to4)" + +msgid "Identity" +msgstr "Identita" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "Namísto pevného uzlu zařízení připojovat pomocí UUID" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "Namísto pevného uzlu zařízení připojovat pomocí názvu oddílu" + +msgid "If unchecked, no default route is configured" +msgstr "Pokud není povoleno, není nastaven žádný výchozí směrovací záznam" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "Pokud není povoleno, oznámené adresy DNS serverů budou ignorovány" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"Pokud máte nedostatek fyzické paměti, nepoužívaná data mohou být dočasně " +"odložena do odkládacího zařízení, což bude mít za důsledek větší množství " +"použitelné RAM. Vezměte na " +"vědomí, že odkládání dat je velice pomalý proces, stejně jako fakt, že " +"přístup na odkládací zařízení je řádově pomalejší, než přístup do paměti " +"RAM." + +msgid "Ignore /etc/hosts" +msgstr "" + +msgid "Ignore interface" +msgstr "Ignorovat rozhraní" + +msgid "Ignore resolve file" +msgstr "Ignorovat resolv soubor" + +msgid "Image" +msgstr "Obraz" + +msgid "In" +msgstr "Dovnitř" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "Časový limit nečinnosti" + +msgid "Inbound:" +msgstr "Příchozí:" + +msgid "Info" +msgstr "Info" + +msgid "Initscript" +msgstr "Initskript" + +msgid "Initscripts" +msgstr "Initskripty" + +msgid "Install" +msgstr "Instalovat" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "Instalovat balíček %q" + +msgid "Install protocol extensions..." +msgstr "Instalovat protokolové rozšíření..." + +msgid "Installed packages" +msgstr "Nainstalované balíčky" + +msgid "Interface" +msgstr "Rozhraní" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "Konfigurace rozhraní" + +msgid "Interface Overview" +msgstr "Přehled rozhraní" + +msgid "Interface is reconnecting..." +msgstr "Rozhraní se znovu připojuje..." + +msgid "Interface is shutting down..." +msgstr "Rozhraní se vypíná..." + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "Rozhraní není přítomné nebo je dosud nepřipojeno." + +msgid "Interface reconnected" +msgstr "Rozhraní bylo znovu připojeno" + +msgid "Interface shut down" +msgstr "Rozhraní bylo vypnuto" + +msgid "Interfaces" +msgstr "Rozhraní" + +msgid "Internal" +msgstr "" + +# Není co dodat. +msgid "Internal Server Error" +msgstr "Vnitřní chyba serveru" + +msgid "Invalid" +msgstr "Neplatná vstupní hodnota" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" +"Uvedené VLAN ID je neplatné! Jsou povolena pouze ID z rozsahu %d až %d." + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "Uvedené VLAN ID je neplatné! Každé ID musí být jedinečné" + +msgid "Invalid username and/or password! Please try again." +msgstr "Špatné uživatelské jméno a/nebo heslo! Prosím zkuste to znovu." + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"Zdá se, že se pokoušíte zapsat obraz, který se nevejde do flash paměti. " +"Prosím ověřte soubor s obrazem!" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "Vyžadován JavaScript!" + +msgid "Join Network" +msgstr "Připojit k síti" + +msgid "Join Network: Wireless Scan" +msgstr "Připojit k síti: Vyhledání bezdrátových sítí" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "Zachovat nastavení" + +msgid "Kernel Log" +msgstr "Záznam jádra" + +msgid "Kernel Version" +msgstr "Verze jádra" + +msgid "Key" +msgstr "Klíč" + +msgid "Key #%d" +msgstr "Klíč #%d" + +msgid "Kill" +msgstr "Zabít" + +msgid "L2TP" +msgstr "L2TP" + +msgid "L2TP Server" +msgstr "L2TP Server" + +msgid "LCP echo failure threshold" +msgstr "LCP echo prahová hodnota selhání" + +msgid "LCP echo interval" +msgstr "LCP interval upozornění" + +msgid "LLC" +msgstr "LLC" + +msgid "Label" +msgstr "Popis" + +msgid "Language" +msgstr "Jazyk" + +msgid "Language and Style" +msgstr "Jazyk a styl" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "Doba platnosti zápůjčky" + +msgid "Leasefile" +msgstr "Soubor zájpůjček" + +msgid "Leasetime remaining" +msgstr "Zbývající doba trvání zápůjčky" + +msgid "Leave empty to autodetect" +msgstr "Ponechte prázdné pro automatickou detekci" + +msgid "Leave empty to use the current WAN address" +msgstr "Ponecháte-li prázdné, použije stávající WAN adresu" + +msgid "Legend:" +msgstr "Legenda:" + +msgid "Limit" +msgstr "Limit" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "Odkaz na" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" +"Seznam DNS serverů, na které " +"přeposílat požadavky" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "Seznam domén, pro které povolit odpovědi podle RFC1918" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "Seznam hostitelů, kteří udávají falešné hodnoty NX domén" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" +"Poslouchat pouze na daném rozhraní, nebo pokud není specifikováno, na všech" + +msgid "Listening port for inbound DNS queries" +msgstr "Port pro příchozí dotazy DNS" + +msgid "Load" +msgstr "Zátěž" + +msgid "Load Average" +msgstr "Zátěž průměrná" + +msgid "Loading" +msgstr "Načítání" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "Místní IPv4 adresa" + +msgid "Local IPv6 address" +msgstr "Místní IPv6 adresa" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "Místní startup" + +msgid "Local Time" +msgstr "Místní čas" + +msgid "Local domain" +msgstr "Místní doména" + +#, fuzzy +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" +"Specifikace místní domény. Jména shodná s touto doménou nikdy nebudou " +"přesměrována ani rozlušťována pomocí DHCP nebo souborů hosts" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" +"Přípona místní domény, připojená za názvy DHCP jmen a záznamů v souboru hosts" + +msgid "Local server" +msgstr "Místní server" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" +"Lokalizovat jméno v závislosti na dotazující se podsíti, pokud bylo nalezeno " +"více IP adres" + +msgid "Localise queries" +msgstr "Lokalizační dotazy" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "Úroveň logování" + +msgid "Log queries" +msgstr "Dotazy pro logování" + +msgid "Logging" +msgstr "Logování" + +msgid "Login" +msgstr "Přihlásit" + +msgid "Logout" +msgstr "Odhlásit" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "Nejnižší zapůjčenou adresu použít jako offset síťové adresy." + +msgid "MAC-Address" +msgstr "MAC-Adresa" + +msgid "MAC-Address Filter" +msgstr "Filtr MAC adres" + +msgid "MAC-Filter" +msgstr "Filtr MAC" + +msgid "MAC-List" +msgstr "Seznam Mac" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "MB/s" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "MHz" + +msgid "MTU" +msgstr "MTU" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "Nejvyšší míra" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "Nejvyšší povolené množství aktivních DHCP zápůjček" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "Nejvyšší povolené množství souběžných DNS dotazů" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "Nejvyšší povolená velikost EDNS.0 UDP paketů" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "Nejvyšší počet sekund čekání, než bude modem připraven" + +msgid "Maximum hold time" +msgstr "Maximální doba držení" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "Maximální počet zapůjčených adres." + +msgid "Mbit/s" +msgstr "Mbit/s" + +msgid "Memory" +msgstr "Paměť" + +msgid "Memory usage (%)" +msgstr "Využití paměti (%)" + +msgid "Metric" +msgstr "Metrika" + +msgid "Minimum Rate" +msgstr "Nejnižší hodnota" + +msgid "Minimum hold time" +msgstr "Minimální čas zápůjčky" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "Chybějící rozšíření protokolu %q" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "Mód" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "Modemové zařízení" + +msgid "Modem init timeout" +msgstr "Časový limit inicializace modemu" + +msgid "Monitor" +msgstr "Sledování" + +msgid "Mount Entry" +msgstr "Připojit vstup" + +msgid "Mount Point" +msgstr "Přípojný bod" + +msgid "Mount Points" +msgstr "Přípojné body" + +msgid "Mount Points - Mount Entry" +msgstr "Přípojné body - vstupy" + +msgid "Mount Points - Swap Entry" +msgstr "Přípojné body - změna vstupu" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"Přípojný bod určuje místo v souborovém systému, na kterém bude připojeno " +"paměťové zařízení" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "Volby připojení" + +msgid "Mount point" +msgstr "Přípojný bod" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "Připojené souborové systémy" + +msgid "Move down" +msgstr "Přesunout dolů" + +msgid "Move up" +msgstr "Přesunout nahoru" + +msgid "Multicast Rate" +msgstr "Hodnota vícesměrového vysílání" + +msgid "Multicast address" +msgstr "Adresa vícesměrového vysílání" + +msgid "NAS ID" +msgstr "NAS ID" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "Kandidáti NTP serveru" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "Název" + +msgid "Name of the new interface" +msgstr "Název nového rozhraní" + +msgid "Name of the new network" +msgstr "Název nové sítě" + +msgid "Navigation" +msgstr "Navigace" + +msgid "Netmask" +msgstr "Síťová maska" + +msgid "Network" +msgstr "Síť" + +msgid "Network Utilities" +msgstr "Síťové nástroje" + +msgid "Network boot image" +msgstr "Síťový bootovací obraz" + +msgid "Network without interfaces." +msgstr "Síť bez rozhraní." + +msgid "Next »" +msgstr "Další »" + +msgid "No DHCP Server configured for this interface" +msgstr "Pro toto rozhraní není nastaven žádný DHCP server" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "Žádné řetězce v této tabulce" + +msgid "No files found" +msgstr "Nebyly nalezeny žádné soubory" + +msgid "No information available" +msgstr "Údaje nejsou k dispozici" + +msgid "No negative cache" +msgstr "Žádná negativní mezipaměť" + +msgid "No network configured on this device" +msgstr "Síť není nastavena na tomto zařízení" + +msgid "No network name specified" +msgstr "Neuvedeno jméno sítě" + +msgid "No package lists available" +msgstr "Seznam balíčků není k dispozici" + +msgid "No password set!" +msgstr "Žádné heslo!" + +msgid "No rules in this chain" +msgstr "Žádná pravidla v tomto řetězci" + +msgid "No zone assigned" +msgstr "Žádná zóna nepřiřazena" + +msgid "Noise" +msgstr "Šum" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "Šum:" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "Žádný" + +msgid "Normal" +msgstr "Normální" + +msgid "Not Found" +msgstr "Nenalezeno" + +msgid "Not associated" +msgstr "Neasociováno" + +msgid "Not connected" +msgstr "Nepřipojeno" + +msgid "Note: Configuration files will be erased." +msgstr "Pozn: Konfigurační soubory budou vymazány." + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "Oznámení" + +msgid "Nslookup" +msgstr "Nslookup" + +msgid "OK" +msgstr "OK" + +msgid "OPKG-Configuration" +msgstr "Konfigurace balíčků OPKG" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "Vypnutí prodlevy" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"Na této stránce můžete nastavit síťová rozhraní. Můžete přemostit několik " +"rozhraní zaškrtnutím pole \"přemostit rozhraní\" a zápisem názvů rozhraní, " +"vzájemně oddělených mezerami. Také můžete použít VLAN zápis INTERFACE.VLANNR (např.: eth0.1)." + +msgid "On-State Delay" +msgstr "Zapnutí prodlevy" + +msgid "One of hostname or mac address must be specified!" +msgstr "Jedno jméno nebo mac adresa, musí být zadáno!" + +msgid "One or more fields contain invalid values!" +msgstr "Jedno nebo více polí obsahuje neplatné hodnoty!" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "Jedno nebo více požadovaných polí neobsahuje hodnotu!" + +msgid "Open list..." +msgstr "Otevřít seznam..." + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "Volba změněna" + +msgid "Option removed" +msgstr "Volba odstraněna" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "Možnosti" + +msgid "Other:" +msgstr "Ostatní:" + +msgid "Out" +msgstr "Ven" + +msgid "Outbound:" +msgstr "Odchozí:" + +msgid "Outdoor Channels" +msgstr "Venkovní kanály" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "Přepsat MAC adresu" + +msgid "Override MTU" +msgstr "Přepsat MTU" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "Přepsat bránu v DHCP odpovědích" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" +"Přepsat síťovou masku, odesílanou klientům. Obvykle je spočítána podle " +"subsítě, která je obsluhována." + +msgid "Override the table used for internal routes" +msgstr "Přepsat tabulku, používanou pro vnitřní cesty" + +msgid "Overview" +msgstr "Přehled" + +msgid "Owner" +msgstr "Vlastník" + +msgid "PAP/CHAP password" +msgstr "Heslo PAP/CHAP" + +msgid "PAP/CHAP username" +msgstr "Uživatelské jméno PAP/CHAP" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "PIN" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "PPP" + +msgid "PPPoA Encapsulation" +msgstr "Zapouzdření PPPoA" + +msgid "PPPoATM" +msgstr "PPPoATM" + +msgid "PPPoE" +msgstr "PPPoE" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "PPtP" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "Vyžadován balíček libiwinfo!" + +msgid "Package lists are older than 24 hours" +msgstr "Seznamy balíčků jsou starší než 24 hodin" + +msgid "Package name" +msgstr "Název balíčku" + +msgid "Packets" +msgstr "Pakety" + +msgid "Part of zone %q" +msgstr "Část zóny %q" + +msgid "Password" +msgstr "Heslo" + +msgid "Password authentication" +msgstr "Autentizace heslem" + +msgid "Password of Private Key" +msgstr "Heslo privátního klíče" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "Heslo bylo úspěšně změněno!" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "Cesta k certifikátu CA" + +msgid "Path to Client-Certificate" +msgstr "Cesta k certifikátu klienta" + +msgid "Path to Private Key" +msgstr "Cesta k privátnímu klíči" + +msgid "Path to executable which handles the button event" +msgstr "Cesta ke spustitelnému souboru, který obsluhuje událost tlačítka" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "Špička:" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "Provést restart" + +msgid "Perform reset" +msgstr "Provést reset" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "Fyzická rychlost:" + +msgid "Physical Settings" +msgstr "Fyzické nastavení" + +msgid "Ping" +msgstr "Ping" + +msgid "Pkts." +msgstr "Paketů" + +msgid "Please enter your username and password." +msgstr "Prosím vložte vaše uživatelské jméno a heslo." + +msgid "Policy" +msgstr "Politika" + +msgid "Port" +msgstr "Port" + +msgid "Port status:" +msgstr "Stav portu:" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" +"Po takovém množství LCP echo selhání předpokládám, že peer je mrtvý. " +"Použijte 0 pro ignorování chyb" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "Zabraňuje komunikaci klient-klient" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "Prism2/2.5/3 802.11b Wireless Controller" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "Pokračovat" + +msgid "Processes" +msgstr "Procesy" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "Prot." + +msgid "Protocol" +msgstr "Protokol" + +msgid "Protocol family" +msgstr "Rodina protokolů" + +msgid "Protocol of the new interface" +msgstr "Protokol nového rozhraní" + +msgid "Protocol support is not installed" +msgstr "Podpora pro protokol není nainstalována" + +msgid "Provide NTP server" +msgstr "Poskytování NTP serveru" + +msgid "Provide new network" +msgstr "Poskytování nové sítě" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "Pseudo Ad-Hoc (ahdemo)" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "Kvalita" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "Práh RTS/CTS" + +msgid "RX" +msgstr "RX" + +msgid "RX Rate" +msgstr "RX Rate" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "RaLink 802.11%s Wireless Controller" + +msgid "Radius-Accounting-Port" +msgstr "Port pro Radius-Accounting" + +msgid "Radius-Accounting-Secret" +msgstr "Tajný klíč pro Radius-Accounting" + +msgid "Radius-Accounting-Server" +msgstr "Server Radius-Accounting" + +msgid "Radius-Authentication-Port" +msgstr "Výběr ověřování portů" + +msgid "Radius-Authentication-Secret" +msgstr "Tajný klíč pro Radius-Authentication" + +msgid "Radius-Authentication-Server" +msgstr "Server Radius-Authentication" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"Přečtěte si /etc/ethers ke konfiguraci DHCP Serveru" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" +"Opravdu odstranit toto rozhraní? Odstranění nelze vrátit zpět!\n" +"Můžete ztratit přístup k zařízení, pokud jste připojeni prostřednictvím " +"tohoto rozhraní." + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" +"Opravdu odstranit bezdrátovou síť? Odstranění nelze vrátit zpět!\n" +"Můžete ztratit přístup k zařízení, pokud jste připojeni prostřednictvím této " +"sítě." + +msgid "Really reset all changes?" +msgstr "Opravdu resetovat všechny změny?" + +#, fuzzy +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" +"Opravdu vypnout síť ?\n" +"Můžete ztratit přístup k zařízení, pokud jste připojeni prostřednictvím " +"tohoto rozhraní." + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" +"Opravdu vypnout rozhraní \"%s\" ?\n" +"Můžete ztratit přístup k zařízení, pokud jste připojeni prostřednictvím " +"tohoto rozhraní." + +msgid "Really switch protocol?" +msgstr "Opravdu prohodit protokol?" + +msgid "Realtime Connections" +msgstr "Připojení v reálném čase" + +msgid "Realtime Graphs" +msgstr "Grafy v reálném čase" + +msgid "Realtime Load" +msgstr "Zátěž v reálném čase" + +msgid "Realtime Traffic" +msgstr "Provoz v reálném čase" + +msgid "Realtime Wireless" +msgstr "Wireless v reálném čase" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "Opětovné nastavení ochrany" + +msgid "Reboot" +msgstr "Reboot" + +msgid "Rebooting..." +msgstr "Rebootuji..." + +msgid "Reboots the operating system of your device" +msgstr "Rebootuje operační systém vašeho zařízení" + +msgid "Receive" +msgstr "Přijmout" + +msgid "Receiver Antenna" +msgstr "Přijímací anténa" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "Přepojit toto rozhraní" + +msgid "Reconnecting interface" +msgstr "Přepojuji rozhraní" + +msgid "References" +msgstr "Reference" + +msgid "Regulatory Domain" +msgstr "Doména regulátora" + +msgid "Relay" +msgstr "Přenos" + +msgid "Relay Bridge" +msgstr "" + +msgid "Relay between networks" +msgstr "Přenášet mezi sítěmi" + +msgid "Relay bridge" +msgstr "" + +msgid "Remote IPv4 address" +msgstr "Vzdálená IPv4 adresa" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "Odstranit" + +msgid "Repeat scan" +msgstr "Opakovat skenování" + +msgid "Replace entry" +msgstr "Nahradit vstup" + +msgid "Replace wireless configuration" +msgstr "Nahradit bezdrátovou konfiguraci" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +# Charter je poskytovate +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "Vyžadováno u některých ISP, např. Charter s DocSIS 3" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "Reset" + +msgid "Reset Counters" +msgstr "Resetovat čítače" + +msgid "Reset to defaults" +msgstr "Obnovit na výchozí" + +msgid "Resolv and Hosts Files" +msgstr "Soubory Resolv a Hosts" + +msgid "Resolve file" +msgstr "Soubor resolve" + +msgid "Restart" +msgstr "Restart" + +msgid "Restart Firewall" +msgstr "Restartovat firewall" + +msgid "Restore backup" +msgstr "Obnovit zálohu" + +msgid "Reveal/hide password" +msgstr "Odhalit/skrýt heslo" + +msgid "Revert" +msgstr "Vrátit zpět" + +msgid "Root" +msgstr "Root" + +msgid "Root directory for files served via TFTP" +msgstr "Kořenový adresář souborů, přístupných přes TFTP" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "Heslo routeru" + +msgid "Routes" +msgstr "Trasy" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"Trasy určují, přes jaké rozhraní a bránu může být konkrétního hosta dosaženo." + +msgid "Run a filesystem check before mounting the device" +msgstr "Spustit kontrolu souborového systému před připojením zařízení" + +msgid "Run filesystem check" +msgstr "Spustit kontrolu souborového systému" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "Přístup přes SSH" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "SSH klíče" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "Uložit" + +msgid "Save & Apply" +msgstr "Uložit & použít" + +msgid "Save & Apply" +msgstr "Uložit & použít" + +msgid "Scan" +msgstr "Skenovat" + +msgid "Scheduled Tasks" +msgstr "Naplánované úlohy" + +msgid "Section added" +msgstr "Přidána sekce" + +msgid "Section removed" +msgstr "Sekce odebrána" + +msgid "See \"mount\" manpage for details" +msgstr "Podrobnosti viz manuálová stránka příkazu \"mount\"" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" +"Odesílat LCP echo požadaveky každých x sekund, účinné pouze ve spojení s " +"prahem selhání." + +msgid "Separate Clients" +msgstr "Oddělovat klienty" + +msgid "Separate WDS" +msgstr "Oddělovat WDS" + +msgid "Server Settings" +msgstr "Nastavení serveru" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "Název služby" + +msgid "Service Type" +msgstr "Typ služby" + +msgid "Services" +msgstr "Služby" + +#, fuzzy +msgid "Set up Time Synchronization" +msgstr "Nastavit synchronizaci času" + +msgid "Setup DHCP Server" +msgstr "Nastavit DHCP server" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "Ukázat aktuální seznam záložních souborů" + +msgid "Shutdown this interface" +msgstr "Shodit toho rozhraní" + +msgid "Shutdown this network" +msgstr "Shodit tuto síť" + +msgid "Signal" +msgstr "Signál" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "Signál:" + +msgid "Size" +msgstr "Velikost" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "Přeskočit" + +msgid "Skip to content" +msgstr "Skočit na obsah" + +msgid "Skip to navigation" +msgstr "Skočit na navigaci" + +msgid "Slot time" +msgstr "Time sloty" + +msgid "Software" +msgstr "Software" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "Některá pole obsahují neplatné hodnoty, nelze uložit!" + +msgid "Sorry, the object you requested was not found." +msgstr "Omlouváme se, ale požadovaný objekt nebyl nalezen." + +msgid "Sorry, the server encountered an unexpected error." +msgstr "Omlouváme se, na serveru došlo k neočekávané vyjímce." + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" +"Omlouváme se, ale v tomto zařízení není přítomná podpora pro upgrade " +"systému. Nový obraz firmwaru musí být zapsán ručně. Prosím, obraťte se na " +"wiki pro zařízení specifické instalační instrukce." + +msgid "Sort" +msgstr "Seřadit" + +msgid "Source" +msgstr "Zdroj" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "" + +msgid "Specifies the directory the device is attached to" +msgstr "" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "Určuje port na kterém bude tato instance Dropbearu naslouchat" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" +"Určuje množství neúspěšných ARP požadavků, po kterém je hostitel považován " +"za mrtvého" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "Určuje počet sekund, po kterém je hostitel považovám za mrtvého" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "Zde nastavte soukromý šifrovací klíč." + +msgid "Start" +msgstr "Start" + +msgid "Start priority" +msgstr "Priorita spouštění" + +msgid "Startup" +msgstr "Po spuštění" + +msgid "Static IPv4 Routes" +msgstr "Statické IPv4 trasy" + +msgid "Static IPv6 Routes" +msgstr "Statické IPv6 trasy" + +msgid "Static Leases" +msgstr "Statické zápůjčky" + +msgid "Static Routes" +msgstr "Statické trasy" + +msgid "Static WDS" +msgstr "Statický WDS" + +msgid "Static address" +msgstr "Statická adresa" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" +"Statické zápůjčky se používají pro přiřazení fixních IP adres a symbolických " +"jmen DHCP klientům. Jsou také vyžadovány pro nedynamické konfigurace " +"rozhraní, kde jsou povoleni pouze hosté s odpovídajícím nastavením." + +msgid "Status" +msgstr "Stav" + +msgid "Stop" +msgstr "Stop" + +msgid "Strict order" +msgstr "Striktní výběr" + +msgid "Submit" +msgstr "Odeslat" + +msgid "Suppress logging" +msgstr "Potlačit logování" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "Vstupní bod" + +msgid "Switch" +msgstr "Směrovač" + +msgid "Switch %q" +msgstr "Směrovač číslo %q" + +msgid "Switch %q (%s)" +msgstr "Směrovač číslo %q (%s)" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "Směrovací protokol" + +msgid "Sync with browser" +msgstr "Synchronizovat s prohlížečem" + +msgid "Synchronizing..." +msgstr "Synchronizuji..." + +msgid "System" +msgstr "Systém" + +msgid "System Log" +msgstr "Systémový log" + +msgid "System Properties" +msgstr "Vlastnosti systému" + +msgid "System log buffer size" +msgstr "Velikost bufferu systémového logu" + +msgid "TCP:" +msgstr "TCP:" + +msgid "TFTP Settings" +msgstr "Nastavení TFTP" + +msgid "TFTP server root" +msgstr "Kořenový adresář TFTP serveru" + +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "Rychlost TX" + +msgid "Table" +msgstr "" + +msgid "Target" +msgstr "Cíl" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "Ukončit" + +#, fuzzy +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" +"Sekce Nastavení zařízení pokrývá fyzické nastavení radiového " +"hardwaru jako kanál, vysílací výkon nebo výběr antény, které je sdíleno mezi " +"všemi bezdrátovými sítěmi (pokud hardware podporuje multi-SSID). Nastavení " +"konkrétní sítě jako šifrování, operační mód jsou seskupeny v sekci " +"Nastavení rozhraní." + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" +"Balíček libiwinfo-lua není nainstalován. Tato komponenta musí být " +"nainstalována, aby fungovalo nastavení bezdátové sítě!" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "IPv6 prefix přidělený poskytovatelm většinou končí ::" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" +"Povolené znaky jsou: A-Z, a-z, 0-9 a " +"_" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" +"Soubor zařízení paměti nebo oddílu (např. " +"/dev/sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"Souborový systém, který byl použit pro formátování paměti (napři. ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" +"Obraz flash byl nahrán. Prosím porovnejte níže uvedený checksum a velikost " +"souboru s originálním souborem pro zajištění integrity dat.
Kliknutím " +"na \"Pokračovat\" spustíte proceduru flashování." + +msgid "The following changes have been committed" +msgstr "Následující změny byly provedeny" + +msgid "The following changes have been reverted" +msgstr "Následující změny byly vráceny" + +msgid "The following rules are currently active on this system." +msgstr "Následující pravidla jsou v nyní na tomto systému aktivní." + +msgid "The given network name is not unique" +msgstr "Zadané jméno sítě není jedinečné" + +#, fuzzy +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" +"Tento hardware nepodporuje multi-SSID. Pokud budete pokračovat, existující " +"konfigurace bude nahrazena." + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "Délka IPv4 prefixu v bitech, zbytek se používá v IPv6 adresách" + +msgid "The length of the IPv6 prefix in bits" +msgstr "Délka IPv6 prefixu v bitech" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" +"Síťové porty tohoto zařízení mohou být kombinovány do několika VLANve kterých počítače mohou " +"komunikovat přímo mezi sebou. VLANse často používají na oddělení různých siťových částí. Většinou je " +"jeden port pro připojení k vyšší síti (Uplink) jako třeba internet a " +"zbývající porty pro místní síť." + +msgid "The selected protocol needs a device assigned" +msgstr "Vybraný protokol potřebuje mít přiřazeno zařízení" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" +"Systém maže konfigurační oddíl, po skončení procesu bude automaticky " +"restartován." + +#, fuzzy +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"Systém nyní nahrává firmware.
NEVYPÍNEJTE ZAŘÍZENÍ!
Počkejte " +"několik minut než se pokusíte znovu připojit. V záležitosti na vašem " +"nastavení, bude možná nutné obnovit adresu vašeho počítače, aby jste se " +"mohli znovu připojit." + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" + +msgid "There are no active leases." +msgstr "Nejsou žádné aktivní zápůjčky." + +msgid "There are no pending changes to apply!" +msgstr "Nejsou zde žádné nevyřízené změny k aplikaci!" + +msgid "There are no pending changes to revert!" +msgstr "Nejsou zde žádné nevyřízené změny k navrácení!" + +msgid "There are no pending changes!" +msgstr "Nejsou zde žádné nevyřízené změny!" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" +"Zatím zde není přiřazeno zařízení, prosím připojte nějaké v záložce " +"\"Fyzické nastavení\"" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" +"Na tomto routeru není nastaveno heslo. Prosím, nastavte heslo uživatele root " +"tak, abyste ochránili webové rozhraní a mohli povolit SSH." + +msgid "This IPv4 address of the relay" +msgstr "" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" +"Zde vidíte obsah souboru /etc/rc.local. Příkazy, které sem vložíte (před " +"příkaz 'exit 0') budou spuštěny na konci bootovacího procesu." + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" +"Toto je jediný DHCP v mistní síti" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "" +"Toto je systémový crontab, v němž můžete nastavit naplánované úlohy. " +"Podrobnosti naleznete v crontab(5)." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" +"V tomto seznamu vidíte přehled aktuálně běžících systémových procesů a " +"jejich stavy." + +msgid "This page allows the configuration of custom button actions" +msgstr "Na této stránce si můžete nastavit vlastní události tlačítek" + +msgid "This page gives an overview over currently active network connections." +msgstr "Tato stránka zobrazuje přehled aktivních síťových spojení." + +msgid "This section contains no values yet" +msgstr "Tato sekce zatím neobsahuje žádné hodnoty" + +msgid "Time Synchronization" +msgstr "Synchronizace času" + +msgid "Time Synchronization is not configured yet." +msgstr "Synchronizace času dosud není nakonfigurována." + +msgid "Timezone" +msgstr "Časové pásmo" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" +"Zde můžete nahrát dříve vygenerovaný záložní archiv, pokud chcete obnovit " +"konfigurační soubory." + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "Dostupná celkem" + +msgid "Traceroute" +msgstr "Traceroute" + +msgid "Traffic" +msgstr "Provoz" + +msgid "Transfer" +msgstr "Přenos" + +msgid "Transmission Rate" +msgstr "Vysílací rychlost" + +msgid "Transmit" +msgstr "Přenos" + +msgid "Transmit Power" +msgstr "Vysílací výkon" + +msgid "Transmitter Antenna" +msgstr "Anténa vysílače" + +msgid "Trigger" +msgstr "Spouštění" + +msgid "Trigger Mode" +msgstr "Trigger mód" + +msgid "Tunnel ID" +msgstr "ID tunelu" + +msgid "Tunnel Interface" +msgstr "Rozhraní tunelu" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "Turbo mód" + +msgid "Tx-Power" +msgstr "Tx-Power" + +msgid "Type" +msgstr "Typ" + +msgid "UDP:" +msgstr "UDP:" + +msgid "UMTS only" +msgstr "Pouze UMTS" + +msgid "UMTS/GPRS/EV-DO" +msgstr "UMTS/GPRS/EV-DO" + +msgid "USB Device" +msgstr "USB zařízení" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "UUID" + +msgid "Unable to dispatch" +msgstr "" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "Neznámý" + +msgid "Unknown Error, password not changed!" +msgstr "Neznámá chyba, heslo nebylo změněno!" + +msgid "Unmanaged" +msgstr "Nespravovaný" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "Neuložené změny" + +msgid "Unsupported protocol type." +msgstr "Nepodporovaný typ protokolu." + +msgid "Update lists" +msgstr "Aktualizovat seznamy" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" +"Nahrát obraz pro upgrade systému, jímž bude přepsán běžící firmware. " +"Zkontrolujte \"Keep settings\" za účelem udržení aktuální konfigurace " +"(vyžaduje obraz kompatabilního firmwaru)." + +msgid "Upload archive..." +msgstr "Nahrát archiv..." + +msgid "Uploaded File" +msgstr "Nahrát soubor" + +msgid "Uptime" +msgstr "Uptime" + +msgid "Use /etc/ethers" +msgstr "Použít /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "Použít DHCP bránu" + +msgid "Use DNS servers advertised by peer" +msgstr "" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "Pomocí ISO/IEC 3166 alpha2 kódů zemí." + +msgid "Use MTU on tunnel interface" +msgstr "Použít MTU na rozhraní tunelu" + +msgid "Use TTL on tunnel interface" +msgstr "Použít TTL na rozhraní tunelu" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "Použít příznak broadcastu" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "Použít vlastní DNS servery" + +msgid "Use default gateway" +msgstr "Použít výchozí bránu" + +msgid "Use gateway metric" +msgstr "" + +msgid "Use routing table" +msgstr "Použít směrovací tabulku" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" +"Použitím tlačítka Přidat přidáte novou zápůjčku (lease). MAC " +"adresa identifikuje počítač, IPv4 adresa určuje, jaká pevná " +"adresa bude použita. Hostname je přiřazeno jako symbolické jméno." + +msgid "Used" +msgstr "Použit" + +msgid "Used Key Slot" +msgstr "" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "Uživatelské jméno" + +msgid "VC-Mux" +msgstr "VC-Mux" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "VLANy na %q" + +msgid "VLANs on %q (%s)" +msgstr "VLANy na %q (%s)" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "VPN server" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "Ověřit" + +msgid "Version" +msgstr "Verze" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "WEP Open System" + +msgid "WEP Shared Key" +msgstr "Sdílený klíč WEP" + +msgid "WEP passphrase" +msgstr "WEP heslo" + +msgid "WMM Mode" +msgstr "WMM mód" + +msgid "WPA passphrase" +msgstr "WPA heslo" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"Šifrování WPA vyžaduje nainstalovaný wpa_supplicant (pro klientský režim) " +"nebo hostapd (pro AP a ad-hoc režim)." + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "Čekání na realizaci změn..." + +msgid "Waiting for command to complete..." +msgstr "Čekání na dokončení příkazu..." + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "Varování" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "Bezdrátová síť" + +msgid "Wireless Adapter" +msgstr "Bezdrátový adaptér" + +msgid "Wireless Network" +msgstr "Bezdrátová síť" + +msgid "Wireless Overview" +msgstr "Přehled bezdrátových sití" + +msgid "Wireless Security" +msgstr "Zabezpečení bezdrátové sítě" + +msgid "Wireless is disabled or not associated" +msgstr "Bezdrátová síť je vypnuta nebo nespojena" + +msgid "Wireless is restarting..." +msgstr "Probíhá restartování bezdrátové sítě..." + +msgid "Wireless network is disabled" +msgstr "Bezdrátová síť je zakázána" + +msgid "Wireless network is enabled" +msgstr "Bezdrátová síť je povolena" + +msgid "Wireless restarted" +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" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "Podpora XR" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"Zde můžete povolit nebo zakázat init skripty. Změny se projeví po restartu " +"zařízení.
Varování: Pokud zakážete základní init skripty jako " +"\"network\", vaše zařízení se může stát nepřístupným!" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" +"Aby LuCI fungoval správně, musíte mít v prohlížeči povolený JavaScript." + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "libovolný" + +msgid "auto" +msgstr "auto" + +msgid "baseT" +msgstr "baseT" + +msgid "bridged" +msgstr "přemostěný" + +msgid "create:" +msgstr "" + +msgid "creates a bridge over specified interface(s)" +msgstr "vytvoří most přes vybraná rozhraní" + +msgid "dB" +msgstr "dB" + +msgid "dBm" +msgstr "dBm" + +msgid "disable" +msgstr "zakázat" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "expirované" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" +"Soubor, ve kterém budou uloženy zadané DHCP výpůjčky (leases)" + +msgid "forward" +msgstr "" + +msgid "full-duplex" +msgstr "plný-duplex" + +msgid "half-duplex" +msgstr "poloviční-duplex" + +msgid "help" +msgstr "pomoc" + +msgid "hidden" +msgstr "skrytý" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "pokud cílem je síť" + +msgid "input" +msgstr "vstup" + +msgid "kB" +msgstr "kB" + +msgid "kB/s" +msgstr "kB/s" + +msgid "kbit/s" +msgstr "kbit/s" + +msgid "local DNS file" +msgstr "místní DNS soubor" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "ne" + +msgid "no link" +msgstr "žádné spojení" + +msgid "none" +msgstr "žádný" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "off" + +msgid "on" +msgstr "on" + +msgid "open" +msgstr "" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "směrované" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "označený" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "neznámý" + +msgid "unlimited" +msgstr "neomezený" + +msgid "unspecified" +msgstr "nespecifikovaný" + +msgid "unspecified -or- create:" +msgstr "nespecifikovaný -nebo- vytvořit:" + +msgid "untagged" +msgstr "neoznačený" + +msgid "yes" +msgstr "ano" + +msgid "« Back" +msgstr "« Zpět" + +#~ msgid "Leasetime" +#~ msgstr "Doba trvání zápůjčky" + +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "Pokud není zaškrtnuto, bude vytvořena dodatečná síť." + +#~ msgid "Join Network: Settings" +#~ msgstr "Připojit k síti: nastavení" + +#~ msgid "CPU" +#~ msgstr "CPU" + +#~ msgid "Port %d" +#~ msgstr "Port %d" + +#~ msgid "Port %d is untagged in multiple VLANs!" +#~ msgstr "Port %d je neoznačený ve více VLAN!" + +#~ msgid "VLAN Interface" +#~ msgstr "Rozhraní VLAN" diff --git a/luci-base/po/de/base.po b/luci-base/po/de/base.po new file mode 100644 index 000000000..c4ae10aed --- /dev/null +++ b/luci-base/po/de/base.po @@ -0,0 +1,4124 @@ +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-05-26 17:57+0200\n" +"PO-Revision-Date: 2017-10-17 22:57+0200\n" +"Last-Translator: JoeSemler \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: Poedit 2.0.4\n" +"Language-Team: \n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(%d Minuten Abschnitt, %d Sekunden Intervall)" + +msgid "(%s available)" +msgstr "(%s verfügbar)" + +msgid "(empty)" +msgstr "(leer)" + +msgid "(no interfaces attached)" +msgstr "(keine Schnittstellen)" + +msgid "-- Additional Field --" +msgstr "-- Zusätzliches Feld --" + +msgid "-- Please choose --" +msgstr "-- Bitte auswählen --" + +msgid "-- custom --" +msgstr "-- benutzerdefiniert --" + +msgid "-- match by device --" +msgstr "-- anhand Gerätedatei selektieren --" + +msgid "-- match by label --" +msgstr "-- anhand Label selektieren --" + +msgid "-- match by uuid --" +msgstr "-- UUID vergleichen --" + +msgid "1 Minute Load:" +msgstr "Systemlast (1 Minute):" + +msgid "15 Minute Load:" +msgstr "Systemlast (15 Minuten):" + +msgid "4-character hexadecimal ID" +msgstr "vierstellige hexadezimale ID" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "Systemlast (5 Minuten):" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "sechstellige hexadezimale ID (ohne Doppelpunkte)" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "Maximales Timeout für Quelladressprüfungen (SA Query)" + +msgid "802.11w Association SA Query retry timeout" +msgstr "Wiederholungsintervall für Quelladressprüfungen (SA Query)" + +msgid "802.11w Management Frame Protection" +msgstr "802.11w: Schutz von Management-Frames aktivieren" + +msgid "802.11w maximum timeout" +msgstr "802.11w: Maximales Timeout" + +msgid "802.11w retry timeout" +msgstr "802.11w: Wiederholungsintervall" + +msgid "BSSID" +msgstr "BSSID" + +msgid "DNS query port" +msgstr "DNS Abfrageport" + +msgid "DNS server port" +msgstr "DNS Serverport" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" +"DNS-Server in der Reihenfolge der " +"Resolv-Datei abfragen" + +msgid "ESSID" +msgstr "ESSID" + +msgid "IPv4-Address" +msgstr "IPv4-Adresse" + +msgid "IPv4-Gateway" +msgstr "IPv4-Gateway" + +msgid "IPv4-Netmask" +msgstr "IPv4-Netzmaske" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "IPv6 Host- oder Netzwerk-Addresse (CIDR)" + +msgid "IPv6-Gateway" +msgstr "IPv6-Gateway" + +msgid "IPv6-Suffix (hex)" +msgstr "IPv6-Suffix (hexadezimal)" + +msgid "LED Configuration" +msgstr "LED Konfiguration" + +msgid "LED Name" +msgstr "LED Name" + +msgid "MAC-Address" +msgstr "MAC-Adresse" + +msgid "" +"Max. DHCP leases" +msgstr "" +"Max. Anzahl von DHCP-Leases" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"Max. Größe von EDNS0-Paketen" + +msgid "Max. concurrent queries" +msgstr "Max. Anzahl gleichzeitiger Abfragen" + +msgid "%s - %s" +msgstr "%s - %s" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "AR-Unterstützung" + +msgid "ARP retry threshold" +msgstr "Grenzwert für ARP-Auflösungsversuche" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "ATM Brücken" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "ATM Virtual Channel Identifier (VCI)" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "ATM Virtual Path Identifier (VPI)" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"ATM Brücken exponieren in AAL5 gekapselten Ethernetverkehr als virtuelle " +"Linux Netzwerkschnittstellen welche z.B. in Verbindung mit DHCP oder PPP " +"genutzt werden können um sich in das Providernetzwerk einzuwählen." + +msgid "ATM device number" +msgstr "ATM Geräteindex" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "Access Concentrator" + +msgid "Access Point" +msgstr "Access Point" + +msgid "Action" +msgstr "Aktion" + +msgid "Actions" +msgstr "Aktionen" + +msgid "Activate this network" +msgstr "Dieses Netzwerk aktivieren" + +msgid "Active IPv4-Routes" +msgstr "Aktive IPv4-Routen" + +msgid "Active IPv6-Routes" +msgstr "Aktive IPv6-Routen" + +msgid "Active Connections" +msgstr "Aktive Verbindungen" + +msgid "Active DHCP Leases" +msgstr "Aktive DHCP-Leases" + +msgid "Active DHCPv6 Leases" +msgstr "Aktive DHCPv6-Leases" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc" + +msgid "Add" +msgstr "Hinzufügen" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "Lokalen Domainsuffx an Namen aus der Hosts-Datei anhängen" + +msgid "Add new interface..." +msgstr "Neue Schnittstelle hinzufügen..." + +msgid "Additional Hosts files" +msgstr "Zusätzliche Hosts-Dateien" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "Adresse" + +msgid "Address to access local relay bridge" +msgstr "Adresse der lokalen Relay-Brücke" + +msgid "Administration" +msgstr "Administration" + +msgid "Advanced Settings" +msgstr "Erweiterte Einstellungen" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "Alarm" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" +"IP-Adressen sequenziell vergeben, beginnend mit der kleinsten verfügbaren " +"Adresse" + +msgid "Allocate IP sequentially" +msgstr "IPs sequenziell vergeben" + +msgid "Allow SSH password authentication" +msgstr "Erlaube Anmeldung per Passwort" + +msgid "Allow all except listed" +msgstr "Alle außer gelistete erlauben" + +msgid "Allow listed only" +msgstr "Nur gelistete erlauben" + +msgid "Allow localhost" +msgstr "Erlaube localhost" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "Entfernten Hosts erlauben zu lokale SSH-Tunnel-Ports zu verbinden" + +msgid "Allow root logins with password" +msgstr "\"root\" Login mit Passwort aktivieren" + +msgid "Allow the root user to login with password" +msgstr "" +"Erlaubt es dem root Benutzer sich mit einem Passwort statt einem " +"Zertifikat einzuloggen" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" +"Dies erlaubt DNS-Antworten im 127.0.0.0/8 Bereich der z.B. für RBL Dienste " +"genutzt wird" + +msgid "Allowed IPs" +msgstr "Erlaubte IP-Adressen" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "Immer Defaultrouter ankündigen" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "Annex B (alle Arten)" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "Annex J (alle Arten)" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "Annex M (alle Arten)" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" +"Kündigt im Netzwerk einen Defaultrouter an, auch wenn kein öffentlicher " +"Adressbereich verfügbar ist." + +msgid "Announced DNS domains" +msgstr "Angekündigte Suchdomains" + +msgid "Announced DNS servers" +msgstr "Angekündigte DNS Server" + +msgid "Anonymous Identity" +msgstr "Anonyme Identität" + +msgid "Anonymous Mount" +msgstr "automatische Mountpunkte" + +msgid "Anonymous Swap" +msgstr "automatische Swap-Aktivierung" + +msgid "Antenna 1" +msgstr "Antenne 1" + +msgid "Antenna 2" +msgstr "Antenne 2" + +msgid "Antenna Configuration" +msgstr "Antennenkonfiguration" + +msgid "Any zone" +msgstr "Beliebige Zone" + +msgid "Apply" +msgstr "Anwenden" + +msgid "Applying changes" +msgstr "Änderungen werden angewandt" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" +"Legt die Größe der dieser Schnittstelle zugewiesenen Partitionen der " +"öffentlichen IPv6-Präfixe fest." + +msgid "Assign interfaces..." +msgstr "Schnittstellen zuweisen..." + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" +"Der Schnittstelle zugewiesene Partitionen des Adressraums werden anhand " +"dieser hexadezimalen ID gewählt." + +msgid "Associated Stations" +msgstr "Assoziierte Clients" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Atheros 802.11%s W-LAN Adapter" + +msgid "Auth Group" +msgstr "Berechtigungsgruppe" + +msgid "Authentication" +msgstr "Authentifizierung" + +msgid "Authentication Type" +msgstr "Authentifizierungstyp" + +msgid "Authoritative" +msgstr "Authoritativ" + +msgid "Authorization Required" +msgstr "Autorisierung benötigt" + +msgid "Auto Refresh" +msgstr "Automatisches Neuladen" + +msgid "Automatic" +msgstr "automatisch" + +msgid "Automatic Homenet (HNCP)" +msgstr "automatisches Homenet-Protokoll (HNCP)" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "Dateisystem vor dem Einhängen automatisch auf Fehler prüfen" + +msgid "Automatically mount filesystems on hotplug" +msgstr "Unkonfigurierte Dateisysteme automatisch einhängen" + +msgid "Automatically mount swap on hotplug" +msgstr "Unkonfigurierte SWAP-Partitionen automatisch aktivieren" + +msgid "Automount Filesystem" +msgstr "Dateisystem automatisch einhängen" + +msgid "Automount Swap" +msgstr "SWAP automatisch aktivieren" + +msgid "Available" +msgstr "Verfügbar" + +msgid "Available packages" +msgstr "Verfügbare Pakete" + +msgid "Average:" +msgstr "Durchschnitt:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "Zurück" + +msgid "Back to Overview" +msgstr "Zurück zur Übersicht" + +msgid "Back to configuration" +msgstr "Zurück zur Konfiguration" + +msgid "Back to overview" +msgstr "Zurück zur Übersicht" + +msgid "Back to scan results" +msgstr "Zurück zu den Scan-Ergebnissen" + +msgid "Background Scan" +msgstr "Hintergrundscan" + +msgid "Backup / Flash Firmware" +msgstr "Backup / Firmware Update" + +msgid "Backup / Restore" +msgstr "Sichern / Wiederherstellen" + +msgid "Backup file list" +msgstr "Liste zu sichernder Dateien" + +msgid "Bad address specified!" +msgstr "Ungültige Adresse angegeben!" + +msgid "Band" +msgstr "Frequenztyp" + +msgid "Behind NAT" +msgstr "NAT" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"Nachfolgend wird eine generierte Liste der zu sichernden Dateien angezeigt. " +"Sie enthält alle notwendigen Systemdateien sowie die von opkg als geändert " +"markierten Konfigurationsdateien. Des Weiteren sind die durch " +"benutzerdefinierte Dateiemuster betroffenen Dateien enthalten." + +msgid "Bind interface" +msgstr "An Schnittstelle binden" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" +"Nur auf angegebenen Schnittstellen reagieren, anstatt auf allen " +"Schnittstellen zu antworten." + +msgid "Bind the tunnel to this interface (optional)." +msgstr "Tunnelendpunkt an diese Schnittstelle binden (optional)" + +msgid "Bitrate" +msgstr "Bitrate" + +msgid "Bogus NX Domain Override" +msgstr "Ungültige \"NX-Domain\" Antworten ignorieren" + +msgid "Bridge" +msgstr "Bridge" + +msgid "Bridge interfaces" +msgstr "Netzwerkbrücke" + +msgid "Bridge unit number" +msgstr "Geräteindex der Brücke" + +msgid "Bring up on boot" +msgstr "Während des Bootvorgangs starten" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "Broadcom 802.11%s W-LAN Adapter" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "Broadcom BCM%04x 802.11 W-LAN Adapter" + +msgid "Buffered" +msgstr "Gepuffert" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" +"Konfiguriert die distributionsspezifischen Paket-Repositories. Diese " +"Konfiguration wird bei Upgrades NICHT gesichert." + +msgid "Buttons" +msgstr "Knöpfe" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" +"CA-Zertifikat (wird beim ersten Verbindungsaufbau automatisch gespeichert " +"wenn leer). " + +msgid "CPU usage (%)" +msgstr "CPU-Nutzung (%)" + +msgid "Cancel" +msgstr "Abbrechen" + +msgid "Category" +msgstr "Kategorie" + +msgid "Chain" +msgstr "Kette" + +msgid "Changes" +msgstr "Änderungen" + +msgid "Changes applied." +msgstr "Änderungen angewendet." + +msgid "Changes the administrator password for accessing the device" +msgstr "Ändert das Administratorpasswort für den Zugriff auf dieses Gerät" + +msgid "Channel" +msgstr "Kanal" + +msgid "Check" +msgstr "Prüfen" + +msgid "Check fileystems before mount" +msgstr "Dateisysteme prüfen" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" +"Diese Option setzen um existierende Netzwerke auf dem Radio zu löschen." + +msgid "Checksum" +msgstr "Prüfsumme" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"Ordnet dieser Schnittstelle eine Firewallzone zu. Den Wert " +"unspezifiziert wählen um die Schnittstelle von der Zone zu lösen " +"oder das erstellen Feld ausfüllen um eine neue Zone direkt " +"anzulegen und zuzuweisen." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" +"Wählt die Netzwerke die dieser WLAN-Schnittstelle zugeordnet werden. Das " +"erstelle-Feld ausfüllen um ein neues Netzwerk zu erzeugen." + +msgid "Cipher" +msgstr "Verschlüsselungsalgorithmus" + +msgid "Cisco UDP encapsulation" +msgstr "Cisco UDP-Kapselung" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"Zum Herunterladen der aktuellen Konfigurationsdateien als gepacktes Archiv " +"\"Sicherung erstellen\" drücken. \"Konfiguration zurücksetzen\" stellt den " +"Auslieferungszustand des Systems wieder her (nur möglich bei squashfs-" +"Images)." + +msgid "Client" +msgstr "Client" + +msgid "Client ID to send when requesting DHCP" +msgstr "Zu sendende Client-ID bei DHCP Anfragen" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" +"Inaktive Verbindungen nach Ablauf dieser Zeit in Sekunden schließen (0 um " +"die Verbindung immer aufrecht zu erhalten)." + +msgid "Close list..." +msgstr "Schließe Liste..." + +msgid "Collecting data..." +msgstr "Sammle Daten..." + +msgid "Command" +msgstr "Befehl" + +msgid "Common Configuration" +msgstr "Allgemeine Konfiguration" + +msgid "Compression" +msgstr "Kompression" + +msgid "Configuration" +msgstr "Konfiguration" + +msgid "Configuration applied." +msgstr "Konfiguration angewendet." + +msgid "Configuration files will be kept." +msgstr "Konfigurationsdateien sichern" + +msgid "Confirmation" +msgstr "Bestätigung" + +msgid "Connect" +msgstr "Verbinden" + +msgid "Connected" +msgstr "Verbunden" + +msgid "Connection Limit" +msgstr "Verbindungslimit" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "TLS zwingend vorraussetzen und abbrechen wenn TLS fehlschlägt." + +msgid "Connections" +msgstr "Verbindungen" + +msgid "Country" +msgstr "Land" + +msgid "Country Code" +msgstr "Ländercode" + +msgid "Cover the following interface" +msgstr "Die folgende Schnittstelle abdecken" + +msgid "Cover the following interfaces" +msgstr "Die folgende Schnittstellen abdecken" + +msgid "Create / Assign firewall-zone" +msgstr "Firewallzone anlegen / zuweisen" + +msgid "Create Interface" +msgstr "Erzeuge Schnittstelle" + +msgid "Create a bridge over multiple interfaces" +msgstr "Erzeuge Netzwerkbrücke über mehrere Schnittstellen" + +msgid "Critical" +msgstr "Kritisch" + +msgid "Cron Log Level" +msgstr "Cron Protokolllevel" + +msgid "Custom Interface" +msgstr "benutzerdefinierte Schnittstelle" + +msgid "Custom delegated IPv6-prefix" +msgstr "Delegierter IPv6-Präfix" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" +"Selbst konfigurierte Paket-Repositories, z.B. private oder inoffizielle " +"Quellen. Diese Konfiguration wird by Upgrades gesichert." + +msgid "Custom feeds" +msgstr "Eigene Repositories" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "Passt das Verhalten der Geräte-LEDs an - wenn dies möglich ist." + +msgid "DHCP Leases" +msgstr "DHCP-Leases" + +msgid "DHCP Server" +msgstr "DHCP-Server" + +msgid "DHCP and DNS" +msgstr "DHCP und DNS" + +msgid "DHCP client" +msgstr "DHCP Client" + +msgid "DHCP-Options" +msgstr "DHCP-Optionen" + +msgid "DHCPv6 Leases" +msgstr "DHCPv6-Leases" + +msgid "DHCPv6 client" +msgstr "DHCPv6 Client" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "DNS-Weiterleitungen" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "DNSSEC Signaturstatus prüfen" + +msgid "DPD Idle Timeout" +msgstr "DPD Inaktivitätstimeout" + +msgid "DS-Lite AFTR address" +msgstr "DS-Lite AFTR-Adresse" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "DSL Leitungsmodus" + +msgid "DUID" +msgstr "DUID" + +msgid "Data Rate" +msgstr "Datenrate" + +msgid "Debug" +msgstr "Debug" + +msgid "Default %d" +msgstr "Standard %d" + +msgid "Default gateway" +msgstr "Default Gateway" + +msgid "Default is stateless + stateful" +msgstr "Der Standardwert ist zustandslos und zustandsorientiert" + +msgid "Default route" +msgstr "Default Route" + +msgid "Default state" +msgstr "Ausgangszustand" + +msgid "Define a name for this network." +msgstr "Definiert einen Namen für dieses Netzwerk" + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"Definiert zusätzliche DHCP-Optionen, z.B. \"6,192.168.2.1,192.168.2.2\" um einen anderen DNS-Server an Clients zu verteilen." + +msgid "Delete" +msgstr "Löschen" + +msgid "Delete this network" +msgstr "Dieses Netzwerk löschen" + +msgid "Description" +msgstr "Beschreibung" + +msgid "Design" +msgstr "Design" + +msgid "Destination" +msgstr "Ziel" + +msgid "Device" +msgstr "Gerät" + +msgid "Device Configuration" +msgstr "Gerätekonfiguration" + +msgid "Device is rebooting..." +msgstr "Das Gerät startet neu..." + +msgid "Device unreachable" +msgstr "Das Gerät ist nicht erreichbar" + +msgid "Diagnostics" +msgstr "Diagnosen" + +msgid "Dial number" +msgstr "Einwahlnummer" + +msgid "Directory" +msgstr "Verzeichnis" + +msgid "Disable" +msgstr "Deaktivieren" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +"DHCP-Server auf " +"dieser Schnittstelle deaktivieren" + +msgid "Disable DNS setup" +msgstr "DNS-Verarbeitung deaktivieren" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "Deaktiviere Hardware-Beacon Zeitgeber" + +msgid "Disabled" +msgstr "Deaktiviert" + +msgid "Disabled (default)" +msgstr "Deaktiviert (Standard)" + +msgid "Discard upstream RFC1918 responses" +msgstr "Eingehende RFC1918-Antworten verwerfen" + +msgid "Displaying only packages containing" +msgstr "Nur Pakete mit folgendem Inhalt anzeigen" + +msgid "Distance Optimization" +msgstr "Distanzoptimierung" + +msgid "Distance to farthest network member in meters." +msgstr "Distanz zum am weitesten entfernten Funkpartner in Metern." + +msgid "Distribution feeds" +msgstr "Distributionsrepositories" + +msgid "Diversity" +msgstr "Diversität" + +# Nur für NAT-Firewalls? +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Dnsmasq ist ein kombinierter DHCP-Server und DNS-Forwarder für NAT " +"Router" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" +"Negative Antworten nicht zwischenspeichern, z.B. bei nicht existierenden " +"Domains" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" +"Keine Anfragen weiterleiten welche nicht durch öffentliche Server " +"beantwortet werden können" + +msgid "Do not forward reverse lookups for local networks" +msgstr "Keine Rückwärtsauflösungen für lokale Netzwerke weiterleiten" + +msgid "Do not send probe responses" +msgstr "Scan-Anforderungen nicht beantworten" + +msgid "Domain required" +msgstr "Anfragen nur mit Domain" + +msgid "Domain whitelist" +msgstr "Domain-Whitelist" + +msgid "Don't Fragment" +msgstr "Nicht fragmentieren" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "Anfragen ohne Domainnamen nicht weiterleiten" + +msgid "Download and install package" +msgstr "Paket herunterladen und installieren" + +msgid "Download backup" +msgstr "Backup herunterladen" + +msgid "Dropbear Instance" +msgstr "Dropbear Instanz" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Der SSH-Server ermöglicht Shell-Zugriff über das Netzwerk und bietet einen " +"integrierten SCP-Dienst." + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "Dynamisches DHCP" + +msgid "Dynamic tunnel" +msgstr "Dynamischer Tunnel" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" +"DHCP Adressen dynamisch erzeugen. Wenn dies deaktiviert ist, werden nur " +"Clients mit konfigurierten statischen Leases bedient" + +msgid "EA-bits length" +msgstr "EA-Bitlänge" + +msgid "EAP-Method" +msgstr "EAP-Methode" + +msgid "Edit" +msgstr "Bearbeiten" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" +"Um die Syntaxfehler zu beheben, bitte die obige unformatierte Konfiguration " +"anpassen und \"Speichern\" klicken um die Seite neu zu laden." + +msgid "Edit this interface" +msgstr "Diese Schnittstelle bearbeiten" + +msgid "Edit this network" +msgstr "Dieses Netzwerk bearbeiten" + +msgid "Emergency" +msgstr "Notfall" + +msgid "Enable" +msgstr "Aktivieren" + +msgid "Enable STP" +msgstr "STP aktivieren" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "Dynamisches HE.net IP-Adress-Update aktivieren" + +msgid "Enable IPv6 negotiation" +msgstr "IPv6 anfordern" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "Aushandeln von IPv6-Adressen auf der PPP-Verbindung aktivieren" + +msgid "Enable Jumbo Frame passthrough" +msgstr "Aktiviere Jumbo Frame Durchleitung" + +msgid "Enable NTP client" +msgstr "Aktiviere NTP-Client" + +msgid "Enable Single DES" +msgstr "Single-DES aktivieren" + +msgid "Enable TFTP server" +msgstr "TFTP-Server aktivieren" + +msgid "Enable VLAN functionality" +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" + +msgid "Enable mirroring of incoming packets" +msgstr "Port-Mirroring für eingehende Pakete aktivieren" + +msgid "Enable mirroring of outgoing packets" +msgstr "Port-Mirroring für ausgehende Pakete aktivieren" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "Das DF-Bit (Nicht fragmentieren) auf gekapselten Paketen setzen." + +msgid "Enable this mount" +msgstr "Diesen Mountpunkt aktivieren" + +msgid "Enable this swap" +msgstr "Diesen Auslagerungsspeicher aktivieren" + +msgid "Enable/Disable" +msgstr "Aktivieren/Deaktivieren" + +msgid "Enabled" +msgstr "Aktiviert" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" +"Aktiviert schnelles Roaming zwischen Access-Points des selben " +"Mobilitätsbereiches" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "Aktiviert das Spanning Tree Protokoll auf dieser Netzwerkbrücke" + +msgid "Encapsulation mode" +msgstr "Kapselung" + +msgid "Encryption" +msgstr "Verschlüsselung" + +msgid "Endpoint Host" +msgstr "Entfernter Server" + +msgid "Endpoint Port" +msgstr "Entfernter Port" + +msgid "Erasing..." +msgstr "Lösche..." + +msgid "Error" +msgstr "Fehler" + +msgid "Errored seconds (ES)" +msgstr "Fehlersekunden (ES)" + +msgid "Ethernet Adapter" +msgstr "Netzwerkschnittstelle" + +msgid "Ethernet Switch" +msgstr "Netzwerk Switch" + +msgid "Exclude interfaces" +msgstr "Schnittstellen ausschließen" + +msgid "Expand hosts" +msgstr "Hosts vervollständigen" + +msgid "Expires" +msgstr "Verfällt" + +#, fuzzy +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" +"Gültigkeitsdauer von vergebenen Adressen. Das Minimum sind 2 Minuten " +"(2m)." + +msgid "External" +msgstr "Extern" + +msgid "External R0 Key Holder List" +msgstr "Externe R0-Key-Holder-List" + +msgid "External R1 Key Holder List" +msgstr "Externe R1-Key-Holder-List" + +msgid "External system log server" +msgstr "Externer Protokollserver IP" + +msgid "External system log server port" +msgstr "Externer Protokollserver Port" + +msgid "External system log server protocol" +msgstr "Externes Protokollserver Protokoll" + +msgid "Extra SSH command options" +msgstr "Zusätzliche SSH-Kommando-Optionen" + +msgid "Fast Frames" +msgstr "Schnelle Frames" + +msgid "File" +msgstr "Datei" + +msgid "Filename of the boot image advertised to clients" +msgstr "Dateiname des Boot-Images welches den Clients mitgeteilt wird." + +msgid "Filesystem" +msgstr "Dateisystem" + +msgid "Filter" +msgstr "Filter" + +msgid "Filter private" +msgstr "Private Anfragen filtern" + +msgid "Filter useless" +msgstr "Windowsanfragen filtern" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" +"Findet alle angeschlossenen Dateisysteme und SWAP-Partitionen und generiert " +"die Konfiguration mit passenden Standardwerten für alle gefundenen Geräte " +"neu." + +msgid "Find and join network" +msgstr "Suchen und Verbinden von Netzwerken" + +msgid "Find package" +msgstr "Paket suchen" + +msgid "Finish" +msgstr "Fertigstellen" + +msgid "Firewall" +msgstr "Firewall" + +msgid "Firewall Settings" +msgstr "Firewall Einstellungen" + +msgid "Firewall Status" +msgstr "Firewall-Status" + +msgid "Firmware File" +msgstr "Firmware-Datei" + +msgid "Firmware Version" +msgstr "Firmware Version" + +msgid "Fixed source port for outbound DNS queries" +msgstr "Fester Port für ausgehende DNS-Anfragen" + +msgid "Flash Firmware" +msgstr "Firmware aktualisieren" + +msgid "Flash image..." +msgstr "Firmware aktualisieren..." + +msgid "Flash new firmware image" +msgstr "Neues Firmware Image schreiben" + +msgid "Flash operations" +msgstr "Flash-Operationen" + +msgid "Flashing..." +msgstr "Firmware wird installiert..." + +msgid "Force" +msgstr "Start erzwingen" + +msgid "Force CCMP (AES)" +msgstr "CCMP (AES) erzwingen" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "" +"Aktiviere DHCP-Server für dieses Netzwerk, selbst wenn ein anderer aktiver " +"Server erkannt wurde." + +msgid "Force TKIP" +msgstr "Erzwinge TKIP" + +msgid "Force TKIP and CCMP (AES)" +msgstr "Erzwinge TKIP und CCMP (AES)" + +msgid "Force use of NAT-T" +msgstr "Benutzung von NAT-T erzwingen" + +msgid "Form token mismatch" +msgstr "Abweichendes Formular-Token" + +msgid "Forward DHCP traffic" +msgstr "DHCP Traffic weiterleiten" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "Fehlerkorrektursekunden (FECS)" + +msgid "Forward broadcast traffic" +msgstr "Broadcasts weiterleiten" + +msgid "Forwarding mode" +msgstr "Weiterleitungstyp" + +msgid "Fragmentation Threshold" +msgstr "Fragmentierungsschwelle" + +msgid "Frame Bursting" +msgstr "Frame Bursting" + +msgid "Free" +msgstr "Frei" + +msgid "Free space" +msgstr "Freier Platz" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" +"Weitere Informationen zu WireGuard-Schnittstellen und Peers unter wireguard.io." + +msgid "GHz" +msgstr "GHz" + +msgid "GPRS only" +msgstr "Nur GPRS" + +msgid "Gateway" +msgstr "Gateway" + +msgid "Gateway ports" +msgstr "Gateway-Ports" + +msgid "General Settings" +msgstr "Allgemeine Einstellungen" + +msgid "General Setup" +msgstr "Allgemeine Einstellungen" + +msgid "General options for opkg" +msgstr "Allgemeine Optionen für Opkg." + +msgid "Generate Config" +msgstr "Konfiguration generieren" + +msgid "Generate archive" +msgstr "Sicherung erstellen" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "Generischer 802.11%s W-LAN Adapter" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "" +"Die angegebenen Passwörter stimmen nicht überein, das Systempasswort wurde " +"nicht geändert!" + +msgid "Global Settings" +msgstr "Globale Einstellungen" + +msgid "Global network options" +msgstr "Globale Netzwerkeinstellungen" + +msgid "Go to password configuration..." +msgstr "Zur Passwortkonfiguration..." + +msgid "Go to relevant configuration page" +msgstr "Gehe zur entsprechenden Konfigurationsseite" + +msgid "Group Password" +msgstr "Gruppenpasswort" + +msgid "Guest" +msgstr "Gast" + +msgid "HE.net password" +msgstr "HE.net Passwort" + +msgid "HE.net username" +msgstr "HE.net Benutzername" + +msgid "HT mode (802.11n)" +msgstr "HT-Modus (802.11n)" + +msgid "Handler" +msgstr "Handler" + +msgid "Hang Up" +msgstr "Auflegen" + +msgid "Header Error Code Errors (HEC)" +msgstr "Anzahl Header-Error-Code-Fehler (HEC)" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"An dieser Stelle können Grundeinstellungen des Systems wie Hostname oder " +"Zeitzone vorgenommen werden." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" +"Hier können öffentliche SSH-Schlüssel reinkopiert werden (einer pro Zeile)." + +msgid "Hermes 802.11b Wireless Controller" +msgstr "Hermes 802.11b W-LAN Adapter" + +msgid "Hide ESSID" +msgstr "ESSID verstecken" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "Host-Einträge" + +msgid "Host expiry timeout" +msgstr "Host Verfallsdatum" + +msgid "Host-IP or Network" +msgstr "Host-IP oder Netzwerk" + +msgid "Hostname" +msgstr "Hostname" + +msgid "Hostname to send when requesting DHCP" +msgstr "Zu sendender Hostname bei DHCP Anfragen" + +msgid "Hostnames" +msgstr "Rechnernamen" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "IP-Adressen" + +msgid "IP address" +msgstr "IP-Adresse" + +msgid "IPv4" +msgstr "IPv4" + +msgid "IPv4 Firewall" +msgstr "IPv4 Firewall" + +msgid "IPv4 WAN Status" +msgstr "IPv4 WAN Status" + +msgid "IPv4 address" +msgstr "IPv4 Adresse" + +msgid "IPv4 and IPv6" +msgstr "IPv4 und IPv6" + +msgid "IPv4 assignment length" +msgstr "IPv4 Zuweisungslänge" + +msgid "IPv4 broadcast" +msgstr "IPv4 Broadcast" + +msgid "IPv4 gateway" +msgstr "IPv4 Gateway" + +msgid "IPv4 netmask" +msgstr "IPv4 Netzmaske" + +msgid "IPv4 only" +msgstr "nur IPv4" + +msgid "IPv4 prefix" +msgstr "IPv4 Bereich" + +msgid "IPv4 prefix length" +msgstr "Länge des IPv4 Präfix" + +msgid "IPv4-Address" +msgstr "IPv4-Adresse" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "IPv6 Firewall" + +msgid "IPv6 Neighbours" +msgstr "IPv6 Nachbarn" + +msgid "IPv6 Settings" +msgstr "IPv6 Einstellungen" + +msgid "IPv6 ULA-Prefix" +msgstr "IPv6 ULA-Präfix" + +msgid "IPv6 WAN Status" +msgstr "IPv6 WAN Status" + +msgid "IPv6 address" +msgstr "IPv6 Adresse" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "Zum lokalen Tunnelendpunkt delegierte IPv6-Adresse (optional)" + +msgid "IPv6 assignment hint" +msgstr "IPv6 Zuweisungshinweis" + +msgid "IPv6 assignment length" +msgstr "IPv6 Zuweisungslänge" + +msgid "IPv6 gateway" +msgstr "IPv6 Gateway" + +msgid "IPv6 only" +msgstr "nur IPv6" + +msgid "IPv6 prefix" +msgstr "IPv6 Präfix" + +msgid "IPv6 prefix length" +msgstr "Länge des IPv6 Präfix" + +msgid "IPv6 routed prefix" +msgstr "Gerouteter IPv6-Präfix" + +msgid "IPv6 suffix" +msgstr "IPv6 Endung" + +msgid "IPv6-Address" +msgstr "IPv6-Adresse" + +msgid "IPv6-PD" +msgstr "IPv6 Präfixdelegation (PD)" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "IPv6-in-IPv4 (RFC4213)" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "IPv6-über-IPv4 (6rd)" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "IPv6-über-IPv4 (6to4)" + +msgid "Identity" +msgstr "Identität" + +msgid "If checked, 1DES is enaled" +msgstr "Aktiviert die Benutzung von 1DES, wenn ausgewählt" + +msgid "If checked, encryption is disabled" +msgstr "Deaktiviert die Verschlüsselung, wenn ausgewählt" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" +"Wenn angegeben, wird das Gerät anhand seiner UUID statt fester Gerätedatei " +"gemounted" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" +"Wenn angegeben, wird das Gerät nach anhhand des Partitionslabels statt " +"fester Gerätedatei gemounted" + +msgid "If unchecked, no default route is configured" +msgstr "Wenn deaktiviert, wird keine Default-Route gesetzt" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "Falls deaktiviert werden die zugewiesenen DNS-Server ignoriert" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"Falls der Arbeitsspeicher des Routers nicht ausreicht, kann dieser nicht " +"benutzte Daten zeitweise auf einem SWAP-Laufwerk auslagern um so die " +"effektive Größe des Arbeitsspeichers zu erhöhen. Die Auslagerung der Daten " +"ist natürlich bedeutend langsamer als direkte Arbeitsspeicherzugriffe." + +msgid "Ignore /etc/hosts" +msgstr "Ignoriere /etc/hosts" + +msgid "Ignore interface" +msgstr "Schnittstelle ignorieren" + +msgid "Ignore resolve file" +msgstr "Resolv-Datei ignorieren" + +msgid "Image" +msgstr "Image" + +msgid "In" +msgstr "Ein" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" +"Um unauthorisierte Zugriffe auf das System zu verhindern, wurde dieser " +"Request blockiert. Auf \"Weiter\" klicken um zur vorherigen Seite " +"zurückzukehren." + +msgid "Inactivity timeout" +msgstr "Timeout bei Inaktivität" + +msgid "Inbound:" +msgstr "Eingehend:" + +msgid "Info" +msgstr "Info" + +msgid "Initscript" +msgstr "Startscript" + +msgid "Initscripts" +msgstr "Startscripte" + +msgid "Install" +msgstr "Installieren" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" +"Bitte \"iputils-traceroute6\" installieren um IPv6-Routenverfolgung nutzen " +"zu können" + +msgid "Install package %q" +msgstr "Installiere Paket %q" + +msgid "Install protocol extensions..." +msgstr "Installiere Protokoll-Erweiterungen" + +msgid "Installed packages" +msgstr "Installierte Pakete" + +msgid "Interface" +msgstr "Schnittstelle" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" +"Das Gerät der Schnittstelle %q wurde automatisch von %q auf %q geändert." + +msgid "Interface Configuration" +msgstr "Schnittstellenkonfiguration" + +msgid "Interface Overview" +msgstr "Schnittstellenübersicht" + +msgid "Interface is reconnecting..." +msgstr "Schnittstelle verbindet neu..." + +msgid "Interface is shutting down..." +msgstr "Schnittstelle fährt herunter..." + +msgid "Interface name" +msgstr "Schnittstellenname" + +msgid "Interface not present or not connected yet." +msgstr "Schnittstelle existiert nicht oder ist nicht verbunden." + +msgid "Interface reconnected" +msgstr "Schnittstelle neu verbunden" + +msgid "Interface shut down" +msgstr "Schnittstelle heruntergefahren" + +msgid "Interfaces" +msgstr "Schnittstellen" + +msgid "Internal" +msgstr "Intern" + +msgid "Internal Server Error" +msgstr "Interner Serverfehler" + +msgid "Invalid" +msgstr "Ungültige Eingabe" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "Ungültige VLAN ID angegeben! Nur IDs zwischen %d und %d sind erlaubt." + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "Ungültige VLAN ID angegeben! Die ID ist muß eindeutig sein!" + +msgid "Invalid username and/or password! Please try again." +msgstr "" +"Ungültiger Benutzername oder ungültiges Passwort! Bitte erneut versuchen. " + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"Das verwendete Image scheint zu groß für den internen Flash-Speicher zu " +"sein. Überprüfen Sie die Imagedatei!" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "JavaScript benötigt!" + +msgid "Join Network" +msgstr "Netzwerk beitreten" + +msgid "Join Network: Wireless Scan" +msgstr "Netzwerk beitreten: Suche nach Netzwerken" + +msgid "Joining Network: %q" +msgstr "Trete Netzwerk %q bei" + +msgid "Keep settings" +msgstr "Konfiguration behalten" + +msgid "Kernel Log" +msgstr "Kernelprotokoll" + +msgid "Kernel Version" +msgstr "Kernel Version" + +msgid "Key" +msgstr "Schlüssel" + +msgid "Key #%d" +msgstr "Schlüssel Nr. %d" + +msgid "Kill" +msgstr "Töten" + +msgid "L2TP" +msgstr "L2TP" + +msgid "L2TP Server" +msgstr "L2TP Server" + +msgid "LCP echo failure threshold" +msgstr "LCP Echo Fehler Schwellenwert" + +msgid "LCP echo interval" +msgstr "LCP Echo Intervall" + +msgid "LLC" +msgstr "LLC" + +msgid "Label" +msgstr "Label" + +msgid "Language" +msgstr "Sprache" + +msgid "Language and Style" +msgstr "Sprache und Aussehen" + +msgid "Latency" +msgstr "Latenz" + +msgid "Leaf" +msgstr "Zweigstelle" + +msgid "Lease time" +msgstr "Laufzeit" + +msgid "Lease validity time" +msgstr "Lease-Gültigkeitsdauer" + +msgid "Leasefile" +msgstr "Leasedatei" + +msgid "Leasetime remaining" +msgstr "Verbleibende Gültigkeit" + +msgid "Leave empty to autodetect" +msgstr "Zur automatischen Erkennung leer lassen" + +msgid "Leave empty to use the current WAN address" +msgstr "Leer lassen um die aktuelle WAN-Adresse zu verwenden" + +msgid "Legend:" +msgstr "Legende:" + +msgid "Limit" +msgstr "Limit" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" +"DNS-Dienste auf direkte lokale Subnetze beschränken um Missbrauch durch " +"Dritte zu verhindern." + +msgid "Limit listening to these interfaces, and loopback." +msgstr "Dienste auf die angegeben Schnittstellen plus Loopback beschränken." + +msgid "Line Attenuation (LATN)" +msgstr "Dämpfung (LATN)" + +msgid "Line Mode" +msgstr "Verbindungsmodus" + +msgid "Line State" +msgstr "Verbindungsstatus" + +msgid "Line Uptime" +msgstr "Verbindungsdauer" + +msgid "Link On" +msgstr "Verbindung hergestellt" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" +"Liste von DNS-Servern an welche " +"Requests weitergeleitet werden" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "Liste der SSH Schlüssel zur Authentifikation" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "Liste von Domains für welche RFC1918-Antworten erlaubt sind" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "Liste von Servern die falsche \"NX Domain\" Antworten liefern" + +msgid "Listen Interfaces" +msgstr "Aktive Schnittstellen" + +msgid "Listen Port" +msgstr "Aktive Ports" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" +"Nur auf die gegebene Schnittstelle reagieren, nutze alle wenn nicht " +"spezifiziert" + +msgid "Listening port for inbound DNS queries" +msgstr "Serverport für eingehende DNS Abfragen" + +msgid "Load" +msgstr "Last" + +msgid "Load Average" +msgstr "Durchschnittslast" + +msgid "Loading" +msgstr "Lade" + +msgid "Local IP address to assign" +msgstr "Lokale IP-Adresse" + +msgid "Local IPv4 address" +msgstr "Lokale IPv4 Adresse" + +msgid "Local IPv6 address" +msgstr "Lokale IPv6 Adresse" + +msgid "Local Service Only" +msgstr "Nur lokale Dienste" + +msgid "Local Startup" +msgstr "Lokales Startskript" + +msgid "Local Time" +msgstr "Lokale Zeit" + +msgid "Local domain" +msgstr "Lokale Domain" + +#, fuzzy +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" +"Spezifiziert den lokalen Domainnamen. Anfragen für Hostnamen welche auf " +"diese Domain zutreffen werden nie weitergeleitet und ausschließlich aus DHCP-" +"Namen oder Hosts-Dateien aufgelöst" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" +"Lokaler Domain-Suffix welcher an DHCP Namen und Host-Datei Einträge " +"angehangen wird" + +msgid "Local server" +msgstr "Lokaler Server" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" +"Hostnamen je nach anfragendem Subnetz auflösen wenn mehrere IPs verfügbar " +"sind" + +msgid "Localise queries" +msgstr "Lokalisiere Anfragen" + +msgid "Locked to channel %s used by: %s" +msgstr "Festgelegt auf Kanal %s, verwendet durch: %s" + +msgid "Log output level" +msgstr "Protokolllevel" + +msgid "Log queries" +msgstr "Schreibe Abfragelog" + +msgid "Logging" +msgstr "Protokollierung" + +msgid "Login" +msgstr "Anmelden" + +msgid "Logout" +msgstr "Abmelden" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "Signalverlustsekunden (LOSS)" + +msgid "Lowest leased address as offset from the network address." +msgstr "Kleinste vergebene Adresse (Netzwerkadresse + x)" + +msgid "MAC-Address" +msgstr "MAC-Adresse" + +msgid "MAC-Address Filter" +msgstr "MAC-Adressfilter" + +msgid "MAC-Filter" +msgstr "MAC-Filter" + +msgid "MAC-List" +msgstr "MAC-Adressliste" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "MB/s" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "MHz" + +msgid "MTU" +msgstr "MTU" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "Das Root-Dateisystem muss mit folgenden Kommandsos vorbereitet werden:" + +msgid "Manual" +msgstr "Manuell" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "Maximal erreichbare Datenrate (ATTNDR)" + +msgid "Maximum Rate" +msgstr "Höchstübertragungsrate" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "Maximal zulässige Anzahl von aktiven DHCP-Leases" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "Maximal zulässige Anzahl an gleichzeitigen DNS-Anfragen" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "Maximal zulässige Größe von EDNS.0 UDP Paketen" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "Maximale Zeit die gewartet wird bis das Modem bereit ist (in Sekunden)" + +msgid "Maximum hold time" +msgstr "Maximalzeit zum Halten der Verbindung" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" +"Die maximale Länge des Names ist auf 15 Zeichen beschränkt, abzüglich des " +"automatischen Protokoll- oder Bridge-Prefixes wie \"br-\" oder \"pppoe-\" " +"etc." + +msgid "Maximum number of leased addresses." +msgstr "Maximal zulässige Anzahl von vergeben DHCP-Adressen" + +msgid "Mbit/s" +msgstr "Mbit/s" + +msgid "Memory" +msgstr "Hauptspeicher" + +msgid "Memory usage (%)" +msgstr "Speichernutzung (%)" + +msgid "Metric" +msgstr "Metrik" + +msgid "Minimum Rate" +msgstr "Mindestübertragungsrate" + +msgid "Minimum hold time" +msgstr "Minimalzeit zum Halten der Verbindung" + +msgid "Mirror monitor port" +msgstr "Spiegel-Monitor-Port" + +msgid "Mirror source port" +msgstr "Spiegel-Quell-Port" + +msgid "Missing protocol extension for proto %q" +msgstr "Erweiterung für Protokoll %q fehlt" + +msgid "Mobility Domain" +msgstr "Mobilitätsbereich" + +msgid "Mode" +msgstr "Modus" + +msgid "Model" +msgstr "Modell" + +msgid "Modem device" +msgstr "Modemgerät" + +msgid "Modem init timeout" +msgstr "Wartezeit für Modeminitialisierung" + +msgid "Monitor" +msgstr "Monitor" + +msgid "Mount Entry" +msgstr "Mount-Eintrag" + +msgid "Mount Point" +msgstr "Einhängepunkt" + +msgid "Mount Points" +msgstr "Einhängepunkte" + +msgid "Mount Points - Mount Entry" +msgstr "Mountpunkte - Mount-Eintrag" + +msgid "Mount Points - Swap Entry" +msgstr "Mountpunkte - Auslagerungsdatei" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"Einhängepunkte bestimmen, an welcher Stelle des Dateisystems bestimmte " +"Laufwerke und Speicher zur Verwendung eingebunden werden." + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "Mount-Optionen" + +msgid "Mount point" +msgstr "Mountpunkt" + +msgid "Mount swap not specifically configured" +msgstr "Unkonfigurierte SWAP-Partitionen aktivieren" + +msgid "Mounted file systems" +msgstr "Eingehängte Dateisysteme" + +msgid "Move down" +msgstr "Nach unten schieben" + +msgid "Move up" +msgstr "Nach oben schieben" + +msgid "Multicast Rate" +msgstr "Multicastrate" + +msgid "Multicast address" +msgstr "Multicast-Adresse" + +msgid "NAS ID" +msgstr "NAS ID" + +msgid "NAT-T Mode" +msgstr "NAT-T Modus" + +msgid "NAT64 Prefix" +msgstr "NAT64 Präfix" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "NTP Server Kandidaten" + +msgid "NTP sync time-out" +msgstr "NTP Synchronisierungstimeout" + +msgid "Name" +msgstr "Name" + +msgid "Name of the new interface" +msgstr "Name der neuen Schnittstelle" + +msgid "Name of the new network" +msgstr "Name des neuen Netzwerkes" + +msgid "Navigation" +msgstr "Navigation" + +msgid "Netmask" +msgstr "Netzmaske" + +msgid "Network" +msgstr "Netzwerk" + +msgid "Network Utilities" +msgstr "Netzwerk-Werkzeuge" + +msgid "Network boot image" +msgstr "Netzwerk-Boot-Image" + +msgid "Network without interfaces." +msgstr "Netzwerk ohne Schnittstellen." + +msgid "Next »" +msgstr "Weiter »" + +msgid "No DHCP Server configured for this interface" +msgstr "Kein DHCP Server auf dieser Schnittstelle eingerichtet" + +msgid "No NAT-T" +msgstr "Kein NAT-T" + +msgid "No chains in this table" +msgstr "Keine Ketten in dieser Tabelle" + +msgid "No files found" +msgstr "Keine Dateien gefunden" + +msgid "No information available" +msgstr "Keine Informationen verfügbar" + +msgid "No negative cache" +msgstr "Kein Negativ-Cache" + +msgid "No network configured on this device" +msgstr "Keine Netzwerke auf diesem Gerät konfiguriert" + +msgid "No network name specified" +msgstr "Netzwerkname nicht angegeben" + +# Ich glab das ist so richtiger +msgid "No package lists available" +msgstr "Es sind keine Paketlisten vorhanden" + +msgid "No password set!" +msgstr "Kein Passwort gesetzt!" + +msgid "No rules in this chain" +msgstr "Keine Regeln in dieser Kette" + +msgid "No zone assigned" +msgstr "Keine Zone zugewiesen" + +msgid "Noise" +msgstr "Rauschen" + +msgid "Noise Margin (SNR)" +msgstr "Signal-Rausch-Abstand (SNR)" + +msgid "Noise:" +msgstr "Noise:" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "Nicht-präemptive CRC-Fehler (CRC_P)" + +msgid "Non-wildcard" +msgstr "An Schnittstellen binden" + +msgid "None" +msgstr "keine" + +msgid "Normal" +msgstr "Normal" + +msgid "Not Found" +msgstr "Nicht Gefunden" + +msgid "Not associated" +msgstr "Nicht assoziiert" + +msgid "Not connected" +msgstr "Nicht verbunden" + +msgid "Note: Configuration files will be erased." +msgstr "Warnung: Konfigurationsdateien werden gelöscht." + +msgid "Note: interface name length" +msgstr "Hinweis: Länge des Namens beachten" + +msgid "Notice" +msgstr "Notiz" + +msgid "Nslookup" +msgstr "DNS-Auflösung" + +msgid "OK" +msgstr "OK" + +msgid "OPKG-Configuration" +msgstr "OPKG-Konfiguration" + +msgid "Obfuscated Group Password" +msgstr "Chiffriertes Gruppenpasswort" + +msgid "Obfuscated Password" +msgstr "Chiffriertes Passwort" + +msgid "Off-State Delay" +msgstr "Verzögerung für Ausschalt-Zustand" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"An dieser Stelle können die einzelnen Schnittstellen des Netzwerkes " +"konfiguriert werden. Es können mehrere Schnittstellen zu einer Brücke " +"zusammengefasst werden, indem diese durch Leerzeichen getrennt aufgezählt " +"werden und ein entsprechender Haken im Feld Netzwerkbrücke gesetzt wird. Es " +"können VLANs in der Notation SCHNITTSTELLE.VLANNR (z.B.: eth0.1) verwendet " +"werden." + +msgid "On-State Delay" +msgstr "Verzögerung für Anschalt-Zustand" + +msgid "One of hostname or mac address must be specified!" +msgstr "Es muss entweder ein Hostname oder eine MAC-Adresse angegeben werden!" + +msgid "One or more fields contain invalid values!" +msgstr "Ein oder mehrere Felder enthalten ungültige Werte!" + +msgid "One or more invalid/required values on tab" +msgstr "Ein oder mehrere ungültige/benötigte Werte auf Registerkarte" + +msgid "One or more required fields have no value!" +msgstr "Ein oder mehr benötigte Felder sind nicht ausgefüllt!" + +msgid "Open list..." +msgstr "Liste öffnen..." + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "Betriebsfrequenz" + +msgid "Option changed" +msgstr "Option geändert" + +msgid "Option removed" +msgstr "Option entfernt" + +msgid "Optional" +msgstr "Optional" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" +"Optional, angeben um den Standardserver (tic.sixxs.net) zu überschreiben" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" +"Optional, angeben wenn das SIXSS Konto mehr als einen Tunnel beinhaltet" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" +"Optional. Mögliche Werte: 'eui64', 'random' oder Suffixes wie '::1' oder " +"'::1:2'. Wenn ein IPv6-Präfix (wie z.B. 'a:b:c:d::') von einem delegierendem " +"Server empfangen wird, kombiniert das System das Suffix mit dem Präfix um " +"eine IPv6-Adresse (z.B. 'a:b:c:d::1') für die Schnittstelle zu formen." + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "Optional. Routen für erlaubte IP-Adressen erzeugen." + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" +"Optional. Hostname oder Adresse des Verbindungspartners. Namen werden vor " +"dem Verbindungsaufbau aufgelöst." + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "Optional. Maximale MTU für Tunnelschnittstellen." + +msgid "Optional. Port of peer." +msgstr "Optional. Port-Nummer des Verbindungspartners." + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" +"Optional. Sekunden zwischen Keep-Alive-Nachrichten. Standardwert is 0 " +"(deaktiviert). Der empfohlene Wert für Geräte hinter einem NAT sind 25 " +"Sekunden." + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" +"Optional. Benutzte UDP-Port-Nummer für ausgehende und eingehende Pakete." + +msgid "Options" +msgstr "Optionen" + +msgid "Other:" +msgstr "Andere:" + +msgid "Out" +msgstr "Aus" + +msgid "Outbound:" +msgstr "Ausgehend:" + +msgid "Outdoor Channels" +msgstr "Funkkanal für den Ausseneinsatz" + +msgid "Output Interface" +msgstr "Ausgehende Schnittstelle" + +msgid "Override MAC address" +msgstr "MAC-Adresse überschreiben" + +msgid "Override MTU" +msgstr "MTU-Wert überschreiben" + +msgid "Override TOS" +msgstr "TOS-Wert überschreiben" + +msgid "Override TTL" +msgstr "TTL-Wert überschreiben" + +msgid "Override default interface name" +msgstr "Standard Schnittstellennamen überschreiben" + +msgid "Override the gateway in DHCP responses" +msgstr "Gateway-Adresse in DHCP-Antworten überschreiben" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" +"Überschreibt die Netzmaske welche an Clients geschickt wird. Normalerweise " +"wird diese vom bedienten Subnetz abgeleitet." + +msgid "Override the table used for internal routes" +msgstr "Überschreibt die benutzte Tabelle für interne Routen" + +msgid "Overview" +msgstr "Übersicht" + +msgid "Owner" +msgstr "Besitzer" + +msgid "PAP/CHAP password" +msgstr "PAP/CHAP Passwort" + +msgid "PAP/CHAP username" +msgstr "PAP/CHAP Benutzername" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "PIN" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "PPP" + +msgid "PPPoA Encapsulation" +msgstr "PPPoA Kapselung" + +msgid "PPPoATM" +msgstr "PPPoATM" + +msgid "PPPoE" +msgstr "PPPoE" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "PPtP" + +msgid "PSID offset" +msgstr "PSID-Offset" + +msgid "PSID-bits length" +msgstr "PSID-Bitlänge" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "Benötige das libiwinfo Paket!" + +msgid "Package lists are older than 24 hours" +msgstr "Die Paketlisten sind älter als 24 Stunden" + +msgid "Package name" +msgstr "Paketname" + +msgid "Packets" +msgstr "Pakete" + +msgid "Part of zone %q" +msgstr "Teil von Zone %q" + +msgid "Password" +msgstr "Passwort" + +msgid "Password authentication" +msgstr "Passwortanmeldung" + +msgid "Password of Private Key" +msgstr "Passwort des privaten Schlüssels" + +msgid "Password of inner Private Key" +msgstr "Password des inneren, privaten Schlüssels" + +msgid "Password successfully changed!" +msgstr "Passwort erfolgreich geändert!" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "Pfad zum CA-Zertifikat" + +msgid "Path to Client-Certificate" +msgstr "Pfad zu Client-Zertifikat" + +msgid "Path to Private Key" +msgstr "Pfad zum Privaten Schlüssel" + +msgid "Path to executable which handles the button event" +msgstr "Ausführbare Datei welche das Schalter-Ereignis verarbeitet" + +msgid "Path to inner CA-Certificate" +msgstr "Pfad zum inneren CA-Zertifikat" + +msgid "Path to inner Client-Certificate" +msgstr "Pfad zum inneren Client-Zertifikat" + +msgid "Path to inner Private Key" +msgstr "Pfad zum inneren, privaten Schlüssel" + +msgid "Peak:" +msgstr "Spitze:" + +msgid "Peer IP address to assign" +msgstr "Entfernte IP-Adresse" + +msgid "Peers" +msgstr "Verbindungspartner" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "Neustart durchführen" + +msgid "Perform reset" +msgstr "Reset durchführen" + +msgid "Persistent Keep Alive" +msgstr "Persistentes Keep-Alive" + +msgid "Phy Rate:" +msgstr "Phy-Rate:" + +msgid "Physical Settings" +msgstr "Physikalische Einstellungen" + +msgid "Ping" +msgstr "Ping-Anfrage" + +msgid "Pkts." +msgstr "Pkte." + +msgid "Please enter your username and password." +msgstr "Bitte Benutzernamen und Passwort eingeben." + +msgid "Policy" +msgstr "Standardregel" + +msgid "Port" +msgstr "Port" + +msgid "Port status:" +msgstr "Port-Status:" + +msgid "Power Management Mode" +msgstr "Energiesparmodus" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "Präemptive CRC-Fehler (CRCP_P)" + +msgid "Prefix Delegated" +msgstr "Delegiertes Präfix" + +msgid "Preshared Key" +msgstr "Gemeinsamer Schlüssel" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" +"Deklariere den Client als tot nach der angegebenen Anzahl von LCP Echo " +"Fehlschlägen, nutze den Wert 0 um Fehler zu ignorieren" + +msgid "Prevent listening on these interfaces." +msgstr "Verhindert das Binden an diese Schnittstellen" + +msgid "Prevents client-to-client communication" +msgstr "Unterbindet Client-Client-Verkehr" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "Prism2/2.5/3 802.11b W-LAN Adapter" + +msgid "Private Key" +msgstr "Privater Schlüssel" + +msgid "Proceed" +msgstr "Fortfahren" + +msgid "Processes" +msgstr "Prozesse" + +msgid "Profile" +msgstr "Profil" + +msgid "Prot." +msgstr "Prot." + +msgid "Protocol" +msgstr "Protokoll" + +msgid "Protocol family" +msgstr "Protokollfamilie" + +msgid "Protocol of the new interface" +msgstr "Protokoll für die neue Schnittstelle" + +msgid "Protocol support is not installed" +msgstr "Protokollunterstützung ist nicht installiert" + +msgid "Provide NTP server" +msgstr "NTP-Server anbieten" + +msgid "Provide new network" +msgstr "Neues Netzwerk anbieten" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "Pseudo Ad-Hoc (ahdemo)" + +msgid "Public Key" +msgstr "Öffentlicher Schlüssel" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" +"Zu diesem Gerät geroutetes öffentliches Präfix zur Weiterverteilung an " +"Clients." + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "Qualität" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "RTS/CTS-Schwelle" + +# Ein / Aus, eingehend / ausgehend? +msgid "RX" +msgstr "RX" + +msgid "RX Rate" +msgstr "RX-Rate" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "RaLink 802.11%s W-LAN Adapter" + +msgid "Radius-Accounting-Port" +msgstr "Radius-Accounting-Port" + +msgid "Radius-Accounting-Secret" +msgstr "Radius-Accounting-Secret" + +msgid "Radius-Accounting-Server" +msgstr "Radius-Accounting-Server" + +msgid "Radius-Authentication-Port" +msgstr "Radius-Authentication-Port" + +msgid "Radius-Authentication-Secret" +msgstr "Radius-Authentication-Secret" + +msgid "Radius-Authentication-Server" +msgstr "Radius-Authentication-Server" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "Lese Informationen aus /etc/ethers um den DHCP-Server zu konfigurieren" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" +"Diese Schnittstelle wirklich löschen? Der Schritt kann nicht rückgängig " +"gemacht werden!\n" +"Der Zugriff auf das Gerät könnte verlorengehen wenn Sie über diese " +"Schnittstelle verbunden sind." + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" +"Dieses Drahtlosnetzwerk wirklich löschen? Der Schritt kann nicht rückgängig " +"gemacht werden!\n" +"Der Zugriff auf das Gerät könnte verlorengehen wenn Sie über dieses Netzwerk " +"verbunden sind." + +msgid "Really reset all changes?" +msgstr "Sollen wirklich alle Änderungen verworfen werden?" + +#, fuzzy +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" +"Das Netzwerk wirklich herunterfahren?\n" +"Der Zugriff auf das Gerät könnte verlorengehen wenn Sie über diese " +"Schnittstelle verbunden sind." + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" +"Die Schnitstelle \"%s\" wirklich herunterfahren?\n" +"Der Zugriff auf das Gerät könnte verlorengehen wenn Sie über diese " +"Schnittstelle verbunden sind." + +msgid "Really switch protocol?" +msgstr "Protokoll wirklich wechseln?" + +msgid "Realtime Connections" +msgstr "Echtzeitverbindungen" + +msgid "Realtime Graphs" +msgstr "Echtzeit-Diagramme" + +msgid "Realtime Load" +msgstr "Echtzeitsystemlast" + +msgid "Realtime Traffic" +msgstr "Echtzeitverkehr" + +msgid "Realtime Wireless" +msgstr "Echtzeit-WLAN-Signal" + +msgid "Reassociation Deadline" +msgstr "Reassoziierungsfrist" + +msgid "Rebind protection" +msgstr "DNS-Rebind-Schutz" + +msgid "Reboot" +msgstr "Neu Starten" + +msgid "Rebooting..." +msgstr "Das System wird neu gestartet..." + +msgid "Reboots the operating system of your device" +msgstr "Startet das Betriebssystem des Routers neu." + +msgid "Receive" +msgstr "Empfangen" + +msgid "Receiver Antenna" +msgstr "Empfangsantenne" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "Empfohlen. IP-Adresse der WireGuard-Schnittstelle." + +msgid "Reconnect this interface" +msgstr "Diese Schnittstelle neu verbinden" + +msgid "Reconnecting interface" +msgstr "Verbinde Schnittstelle neu" + +msgid "References" +msgstr "Verweise" + +msgid "Regulatory Domain" +msgstr "Geltungsbereich (Regulatory Domain)" + +msgid "Relay" +msgstr "Relay" + +msgid "Relay Bridge" +msgstr "Relay-Brücke" + +msgid "Relay between networks" +msgstr "Zwischen folgenden Netzwerken weiterleiten" + +msgid "Relay bridge" +msgstr "Relay-Brücke" + +msgid "Remote IPv4 address" +msgstr "Entfernte IPv4-Adresse" + +msgid "Remote IPv4 address or FQDN" +msgstr "Entfernte IPv4-Adresse oder Hostname" + +msgid "Remove" +msgstr "Entfernen" + +msgid "Repeat scan" +msgstr "Scan wiederholen" + +msgid "Replace entry" +msgstr "Eintrag ersetzen" + +msgid "Replace wireless configuration" +msgstr "Drahtloskonfiguration ersetzen" + +msgid "Request IPv6-address" +msgstr "IPv6-Adresse anfordern" + +msgid "Request IPv6-prefix of length" +msgstr "IPv6-Präfix dieser Länge anfordern" + +msgid "Require TLS" +msgstr "TLS erfordern" + +msgid "Required" +msgstr "Benötigt" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "" +"Wird von bestimmten Internet-Providern benötigt, z.B. Charter mit DOCSIS 3" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "Benötigt. Base64-kodierter privater Schlüssel für diese Schnittstelle" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" +"Benötigt. IP-Adressen und Präfixe die der Verbindungspartner innerhalb des " +"Tunnels nutzen darf. Entspricht üblicherweise der Tunnel-IP-Adresse des " +"Verbindungspartners und den Netzwerken, die dieser durch den Tunnel routet." + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" +"Benötigt die \"volle\" Variante des wpad oder hostapd Paketes und " +"Unterstützung vom WLAN-Treiber." + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" +"Setzt DNSSEC-Unterstützung im DNS-Zielserver vorraus; überprüft ob " +"unsignierte Antworten wirklich von unsignierten Domains kommen." + +msgid "Reset" +msgstr "Zurücksetzen" + +msgid "Reset Counters" +msgstr "Zähler zurücksetzen" + +msgid "Reset to defaults" +msgstr "Auslieferungszustand wiederherstellen" + +msgid "Resolv and Hosts Files" +msgstr "Resolv- und Hosts-Dateien" + +msgid "Resolve file" +msgstr "Resolv-Datei" + +msgid "Restart" +msgstr "Neustarten" + +msgid "Restart Firewall" +msgstr "Firewall neu starten" + +msgid "Restore backup" +msgstr "Sicherung wiederherstellen" + +msgid "Reveal/hide password" +msgstr "Passwort zeigen/verstecken" + +msgid "Revert" +msgstr "Verwerfen" + +msgid "Root" +msgstr "Root" + +msgid "Root directory for files served via TFTP" +msgstr "Wurzelverzeichnis für über TFTP ausgelieferte Dateien " + +msgid "Root preparation" +msgstr "Wurzelverzeichnis erzeugen" + +msgid "Route Allowed IPs" +msgstr "Erlaubte IP-Addressen routen" + +msgid "Route type" +msgstr "Routen-Typ" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "Geroutetes IPv6-Präfix für nachgelagerte Schnittstellen" + +msgid "Router Advertisement-Service" +msgstr "Router-Advertisement-Dienst" + +msgid "Router Password" +msgstr "Routerpasswort" + +msgid "Routes" +msgstr "Routen" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"Netzwerkrouten geben an, über welche Schnittstellen bestimmte Rechner oder " +"Netzwerke erreicht werden können" + +msgid "Run a filesystem check before mounting the device" +msgstr "Vor dem Einhängen Dateisystemprüfung starten " + +msgid "Run filesystem check" +msgstr "Dateisystemprüfung durchführen" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "SSH-Zugriff" + +msgid "SSH server address" +msgstr "SSH-Server-Adresse" + +msgid "SSH server port" +msgstr "SSH-Server-Port" + +msgid "SSH username" +msgstr "SSH Benutzername" + +msgid "SSH-Keys" +msgstr "SSH-Schlüssel" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "Speichern" + +msgid "Save & Apply" +msgstr "Speichern & Anwenden" + +msgid "Save & Apply" +msgstr "Speichern & Anwenden" + +msgid "Scan" +msgstr "Scan" + +msgid "Scheduled Tasks" +msgstr "Geplante Aufgaben" + +msgid "Section added" +msgstr "Sektion hinzugefügt" + +msgid "Section removed" +msgstr "Sektion entfernt" + +msgid "See \"mount\" manpage for details" +msgstr "Siehe \"mount\" Handbuch für Details" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" +"Sende LCP Echo Anforderungen im angegebenem Interval in Sekunden, nur " +"effektiv in Verbindung mit einem Fehler-Schwellwert" + +msgid "Separate Clients" +msgstr "Clients isolieren" + +msgid "Separate WDS" +msgstr "Separates WDS" + +msgid "Server Settings" +msgstr "Servereinstellungen" + +msgid "Server password" +msgstr "Server Passwort" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" +"Server Passwort bzw. das tunnelspezifische Passwort wenn der Benutzername " +"eine Tunnel-ID beinhaltet." + +msgid "Server username" +msgstr "Server Benutzername" + +msgid "Service Name" +msgstr "Service-Name" + +msgid "Service Type" +msgstr "Service-Typ" + +msgid "Services" +msgstr "Dienste" + +#, fuzzy +msgid "Set up Time Synchronization" +msgstr "Zeitsynchronisierung einrichten" + +msgid "Setup DHCP Server" +msgstr "DHCP Server einrichten" + +msgid "Severely Errored Seconds (SES)" +msgstr "schwerwiegende Fehlersekunden (SES)" + +msgid "Short GI" +msgstr "kurzes Guardintervall" + +msgid "Show current backup file list" +msgstr "Zeige aktuelle Liste der gesicherten Dateien" + +msgid "Shutdown this interface" +msgstr "Diese Schnittstelle herunterfahren" + +msgid "Shutdown this network" +msgstr "Dieses Netzwerk herunterfahren" + +msgid "Signal" +msgstr "Signal" + +msgid "Signal Attenuation (SATN)" +msgstr "Signaldämpfung (SATN)" + +msgid "Signal:" +msgstr "Signal:" + +msgid "Size" +msgstr "Größe" + +msgid "Size (.ipk)" +msgstr "Größe (.ipk)" + +msgid "Skip" +msgstr "Überspringen" + +msgid "Skip to content" +msgstr "Zum Inhalt springen" + +msgid "Skip to navigation" +msgstr "Zur Navigation springen" + +msgid "Slot time" +msgstr "Zeitslot" + +msgid "Software" +msgstr "Paketverwaltung" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "Einige Felder sind ungültig, kann das Formular nicht speichern!" + +msgid "Sorry, the object you requested was not found." +msgstr "Entschuldigung, das anfgeforderte Objekt wurde nicht gefunden." + +msgid "Sorry, the server encountered an unexpected error." +msgstr "" +"Entschuldigung, auf dem Server ist ein unerwarteter Fehler aufgetreten." + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" +"Aufgrund des fehlenden sysupgrade-Supports muss die neue Firmware manuell " +"geflasht werden. Weitere Informationen sowie gerätespezifische " +"Installationsanleitungen entnehmen Sie bitte dem Wiki." + +msgid "Sort" +msgstr "Sortieren" + +msgid "Source" +msgstr "Quelle" + +msgid "Source routing" +msgstr "Quell-Routing" + +msgid "Specifies the button state to handle" +msgstr "Gibt den zu behandelnden Tastenstatus an" + +msgid "Specifies the directory the device is attached to" +msgstr "Nennt das Verzeichnis, an welches das Gerät angebunden ist" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "Gibt den Server-Port dieser Dropbear-Instanz an" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" +"Maximale Anzahl fehlgeschlagener ARP-Anfragen bis ein Host als nicht " +"verfügbar gilt" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" +"Spezifiziert die maximale Anzahl an Sekunde nach denen Hoss als tot erachtet " +"werden" + +msgid "Specify a TOS (Type of Service)." +msgstr "Setzt einen spezifischen TOS (Type of Service) Wert" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" +"Setzt eine spezifische TTL (Time to Live) für gekapselte Pakete, anstatt der " +"standardmäßigen 64." + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" +"Setzt eine spezifische MTU (Maximum Transmission Unit) abweichend von den " +"standardmäßigen 1280 Bytes." + +msgid "Specify the secret encryption key here." +msgstr "Geben Sie hier den geheimen Netzwerkschlüssel an" + +msgid "Start" +msgstr "Start" + +msgid "Start priority" +msgstr "Startpriorität" + +msgid "Startup" +msgstr "Systemstart" + +msgid "Static IPv4 Routes" +msgstr "Statische IPv4 Routen" + +msgid "Static IPv6 Routes" +msgstr "Statische IPv6 Routen" + +msgid "Static Leases" +msgstr "Statische Einträge" + +msgid "Static Routes" +msgstr "Statische Routen" + +msgid "Static WDS" +msgstr "Statisches WDS" + +msgid "Static address" +msgstr "Statische Adresse" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" +"Statische Leases werden genutzt um feste IP-Adressen und Hostnames zu DHCP-" +"Clients zuzuordnen. Sie werden auch für nicht-dynamische Schnittstellen-" +"Konfigurationen benötigt auf denen lediglich Hosts mit zugehörigem " +"statischem Lease-Eintrag bedient werden." + +msgid "Status" +msgstr "Status" + +msgid "Stop" +msgstr "Stoppen" + +msgid "Strict order" +msgstr "Strikte Reihenfolge" + +msgid "Submit" +msgstr "Absenden" + +msgid "Suppress logging" +msgstr "Logeinträge unterdrücken" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" +"Logeinträge für erfolgreiche Operationen dieser Protokolle unterdrücken" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "Auslagerungsdatei" + +msgid "Switch" +msgstr "Switch" + +msgid "Switch %q" +msgstr "Switch %q" + +msgid "Switch %q (%s)" +msgstr "Switch %q (%s)" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" +"Der Switch %q hat eine unbekannte Struktur, die VLAN Settings könnten " +"unpassend sein." + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "Wechsle Protokoll" + +msgid "Sync with browser" +msgstr "Mit Browser synchronisieren" + +msgid "Synchronizing..." +msgstr "Synchronisiere..." + +msgid "System" +msgstr "System" + +msgid "System Log" +msgstr "Systemprotokoll" + +msgid "System Properties" +msgstr "Systemeigenschaften" + +msgid "System log buffer size" +msgstr "Größe des Systemprotokoll-Puffers" + +msgid "TCP:" +msgstr "TCP:" + +msgid "TFTP Settings" +msgstr "TFTP Einstellungen" + +msgid "TFTP server root" +msgstr "TFTP Wurzelverzeichnis" + +# same as RX +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "TX-Rate" + +msgid "Table" +msgstr "Tabelle" + +msgid "Target" +msgstr "Ziel" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "Beenden" + +#, fuzzy +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" +"Die Gerätekonfiguration deckt physikalische Einstellungen der WLAN-" +"Hardware wie Kanal, Sendestärke oder Antennenauswahl ab. Diese Einstellungen " +"werden von allen Netzwerken auf dem Gerät geteilt. Netzwerk-spezifische " +"Einstellungen wie Verschlüsselung oder Betriebsmodus sind in der " +"Schnittstellenkonfiguration gruppiert." + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" +"Das libiwinfo-lua Paket ist nicht installiert. Dieses Paket muss " +"für eine funktionierende WLAN-Konfiguration vorhanden sein!" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" +"Die Updateprozedur für HE.net Tunnel-IP-Adrerssen hat sich geändert, statt " +"der numerischen User-ID muss nun der normale Benutzername angegeben werden." + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" +"Die IPv4-Adresse oder der volle Domain Name des entfernten Tunnel-Endpunktes." + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" +"Vom Provider zugewiesener IPv6 Präfix, endet normalerweise mit ::" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" +"Erlaubte Buchstaben sind: A-Z, a-z, 0-9 and _" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" +"Die Konfigurationsdatei konnte aufgrund der folgenden Fehler nicht geladen " +"werden:" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "Die Gerätedatei des Speichers oder der Partition (z.B.: /dev/sda)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "Das Dateisystem mit dem der Speicher formatiert ist (z.B.: ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" +"Das Firmware-Image wurde hochgeladen. Nachfolgend sind die Prüfsumme und " +"Dateigröße gelistet. Vergleichen Sie diese mit der Originaldatei um die " +"Integrität sicherzustellen.
Klicken Sie \"Fortfahren\" um die Flash-" +"Prozedur zu starten." + +msgid "The following changes have been committed" +msgstr "Die folgenden Änderungen wurden angewendet" + +msgid "The following changes have been reverted" +msgstr "Die folgenden Änderungen wurden verworfen" + +msgid "The following rules are currently active on this system." +msgstr "Die folgenden Regeln sind zur Zeit auf dem System aktiv." + +msgid "The given network name is not unique" +msgstr "Der angebene Netzwerk-Name ist nicht eindeutig" + +#, fuzzy +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" +"Die Hardware ist nicht Multi-SSID fähig und die existierende Konfiguration " +"wird beim Fortfahren ersetzt." + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" +"Länge des IPv4 Präfix in Bits, die übrigen Bits werden in der IPv6 Adresse " +"verwendet." + +msgid "The length of the IPv6 prefix in bits" +msgstr "Länge des IPv6 Präfix in Bits" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "Die lokale IPv4-Adresse über die der Tunnel aufgebaut wird (optional)." + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" +"Die Netzwerkschnittstellen dieses Geräts können zu verschienden VLANs zusammengefasst werden, in denen " +"Geräte miteinander direkt kommunizieren können. VLANs werden auch häufig dazu genutzt, um Netzwerke " +"voneinander zu trennen. So ist oftmals eine Schnittstelle als Uplink zu " +"einem größeren Netz, wie dem Internet, vorkonfiguriert und die anderen " +"Schnittstellen bilden ein VLAN für das lokale Netzwerk." + +msgid "The selected protocol needs a device assigned" +msgstr "Dem ausgewähltem Protokoll muss ein Gerät zugeordnet werden" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" +"Das mitgesendete Sicherheits-Token ist ungültig oder bereits abgelaufen!" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" +"Die Einstellungen werden nun gelöscht! Anschließend wird ein Neustart des " +"Systems durchgeführt." + +#, fuzzy +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"Der Flashvorgang läuft jetzt.
SCHALTEN SIE NICHT DEN STROM AUS!
" +"Warten Sie einige Minuten bis das Gerät wieder erreichbar ist. Je nach " +"Konfiguration ist es notwendig, dass Sie auf Ihrem Computer eine neue IP-" +"Adresse beziehen müssen um auf das Gerät zugreifen zu können." + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" +"Der lokale Tunnel-Endpunkt ist hinter einem NAT. Standard ist deaktiviert, " +"nur auf AYIYA anwendbar." + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"Das hochgeladene Firmware-Image hat ein nicht unterstütztes Format. Stellen " +"Sie sicher dass Sie das generische Format für Ihre Platform gewählt haben." + +msgid "There are no active leases." +msgstr "Es gibt z.Z. keine aktiven Leases." + +msgid "There are no pending changes to apply!" +msgstr "Es gibt keine ausstehenen Änderungen anzuwenden!" + +msgid "There are no pending changes to revert!" +msgstr "Es gibt keine ausstehenen Änderungen zurückzusetzen!" + +msgid "There are no pending changes!" +msgstr "Es gibt keine ausstehenen Änderungen!" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" +"Es wurde noch kein Netzwerkgerät zugeordnet, bitte ein Gerät im " +"\"Physikalische Einstellungen\" Bereich anfügen" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" +"Es ist kein Passwort auf diesem Router gesetzt. Bitte konfigurieren Sie ein " +"Root-Passwort um das Web-Interface zu schützen und SSH zu aktivieren." + +msgid "This IPv4 address of the relay" +msgstr "IPv4-Adresse des Relais" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" +"Diese Datei beinhaltet Zeilen in der Art 'server=/domain/1.2.3.4' oder " +"'server=1.2.3.4' für domainspezifische oder komplette Ziel-DNS-Server." + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" +"Dies ist eine Liste von Shell-Glob-Mustern um Dateien und Verzeichnisse zu " +"selektieren welche während eines System-Upgrade gesichert werden sollen. " +"Modifizierte Dateien in /etc/config/ und bestimmte andere essenzielle " +"Konfigurationsdateien werden automatisch gesichert." + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" +"Dies ist entweder der \"Update Key\" der für diesen Tunnel eingerichtet " +"wurde oder das normale Account-Passwort wenn kein separater Schlüssel " +"gesetzt wurde." + +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 "" +"Dies ist der Inhalt von /etc.rc.local. Hier kann man eigene Befehle einfügen " +"(vor 'exit 0'), die dann am Ende des Bootvorgangs ausgeführt werden." + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" +"Dies ist die lokale, vom Broker zugewiesene IPv6-Adresse, sie endet " +"üblicherweise mit :2" + +msgid "" +"This is the only DHCP in the local network" +msgstr "Dies ist der einzige DHCP im lokalen Netz" + +msgid "This is the plain username for logging into the account" +msgstr "Das ist der normale Login-Name für den Account." + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" +"Dies ist das vom Tunnel-Broker geroutete öffentliche Präfix zur Verwendung " +"durch nachgelagerte Clients." + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "" +"Dies ist die System-Crontab in der geplante Aufgaben definiert werden können." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" +"Dies ist üblicherweise die Adresse des nächstgelegenen PoPs betrieben durch " +"den Tunnelbroker" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" +"Diese Tabelle gibt eine Übersicht über aktuell laufende Systemprozesse und " +"deren Status." + +msgid "This page allows the configuration of custom button actions" +msgstr "" +"Diese Seite ermöglicht die Konfiguration benutzerdefinierter Tastenaktionen" + +msgid "This page gives an overview over currently active network connections." +msgstr "Diese Seite gibt eine Übersicht über aktive Netzwerkverbindungen." + +msgid "This section contains no values yet" +msgstr "Diese Sektion enthält noch keine Einträge" + +msgid "Time Synchronization" +msgstr "Zeitsynchronisation" + +msgid "Time Synchronization is not configured yet." +msgstr "Die Zeitsynchronisation wurde noch nicht konfiguriert." + +msgid "Timezone" +msgstr "Zeitzone" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" +"Zum Wiederherstellen der Konfiguration kann hier ein bereits vorhandenes " +"Backup-Archiv hochgeladen werden." + +msgid "Tone" +msgstr "Ton" + +msgid "Total Available" +msgstr "Gesamt verfügbar" + +msgid "Traceroute" +msgstr "Routenverfolgung" + +# Ich bin der Meinung Traffic versteht jeder! Wenn der Begriff "deutscher" sein soll, würde ich "Datenmenge" angeben. Aber "Verkehrs" passt nicht! +msgid "Traffic" +msgstr "Traffic" + +msgid "Transfer" +msgstr "Transfer" + +msgid "Transmission Rate" +msgstr "Übertragungsrate" + +msgid "Transmit" +msgstr "Senden" + +msgid "Transmit Power" +msgstr "Sendeleistung" + +msgid "Transmitter Antenna" +msgstr "Sendeantenne" + +msgid "Trigger" +msgstr "Auslöser" + +msgid "Trigger Mode" +msgstr "Auslösmechanismus" + +msgid "Tunnel ID" +msgstr "Tunnel-ID" + +msgid "Tunnel Interface" +msgstr "Tunnelschnittstelle" + +msgid "Tunnel Link" +msgstr "Basisschnittstelle" + +msgid "Tunnel broker protocol" +msgstr "Tunnel-Boker-Protokoll" + +msgid "Tunnel setup server" +msgstr "Tunnel-Setup-Server" + +msgid "Tunnel type" +msgstr "Tunneltyp" + +msgid "Turbo Mode" +msgstr "Turbo Modus" + +msgid "Tx-Power" +msgstr "Sendestärke" + +msgid "Type" +msgstr "Typ" + +msgid "UDP:" +msgstr "UDP:" + +msgid "UMTS only" +msgstr "Nur UMTS" + +msgid "UMTS/GPRS/EV-DO" +msgstr "UMTS/GPRS/EV-DO" + +msgid "USB Device" +msgstr "USB-Gerät" + +msgid "USB Ports" +msgstr "USB Anschlüsse" + +msgid "UUID" +msgstr "UUID" + +msgid "Unable to dispatch" +msgstr "Kann Anfrage nicht zustellen" + +msgid "Unavailable Seconds (UAS)" +msgstr "Nicht verfügbare Sekunden (UAS)" + +msgid "Unknown" +msgstr "Unbekannt" + +msgid "Unknown Error, password not changed!" +msgstr "Unbekannter Fehler, Passwort nicht geändert!" + +msgid "Unmanaged" +msgstr "Ignoriert" + +msgid "Unmount" +msgstr "Aushängen" + +msgid "Unsaved Changes" +msgstr "Ungespeicherte Änderungen" + +msgid "Unsupported protocol type." +msgstr "Nicht unterstützter Protokolltyp." + +msgid "Update lists" +msgstr "Listen aktualisieren" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" +"Zum Ersetzen der aktuellen Firmware kann hier ein sysupgrade-Kompatibles " +"Image hochgeladen werden. Wenn die vorhandene Konfiguration auch nach dem " +"Update noch aktiv sein soll, aktivieren Sie \"Konfiguration behalten\"." + +msgid "Upload archive..." +msgstr "Backup wiederherstellen..." + +msgid "Uploaded File" +msgstr "hochgeladene Datei" + +msgid "Uptime" +msgstr "Laufzeit" + +msgid "Use /etc/ethers" +msgstr "Verwende /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "Benutze DHCP-Gateway" + +msgid "Use DNS servers advertised by peer" +msgstr "Benutze die von der Gegenstelle zugewiesenen DNS-Server" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "Muss ein ISO/IEC 3166 Länderkürzel sein." + +msgid "Use MTU on tunnel interface" +msgstr "Benutze MTU auf der Tunnelschnittstelle" + +msgid "Use TTL on tunnel interface" +msgstr "Benutze TTL auf der Tunnelschnittstelle" + +msgid "Use as external overlay (/overlay)" +msgstr "Als externes Overlay benutzen (/overlay)" + +msgid "Use as root filesystem (/)" +msgstr "Als Root-Dateisystem benutzen (/)" + +msgid "Use broadcast flag" +msgstr "Benutze Broadcast-Flag" + +msgid "Use builtin IPv6-management" +msgstr "Eingebautes IPv6-Management nutzen" + +msgid "Use custom DNS servers" +msgstr "Benutze eigene DNS-Server" + +msgid "Use default gateway" +msgstr "Benutze Standard-Gateway" + +msgid "Use gateway metric" +msgstr "Benutze Gateway-Metrik" + +msgid "Use routing table" +msgstr "Benutze Routing-Tabelle" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" +"Die Hinzufügen Schaltfläche fügt einen neuen Lease-Eintrag hinzu. " +"Die MAC-Adresse identifiziert den Host, die IPv4-Adresse " +"definiert die zu nutzende statische Adresse und der Hostname ist " +"der symbolische Name der dem Host zugewisen wird." + +msgid "Used" +msgstr "Belegt" + +msgid "Used Key Slot" +msgstr "Benutzer Schlüsselindex" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" +"Wird als RADIUS-NAS-ID und als 802.11r R0KH-ID verwendet. Nicht benötigt für " +"WPA(2)-PSK." + +msgid "User certificate (PEM encoded)" +msgstr "PEM-kodiertes Benutzerzertifikat" + +msgid "User key (PEM encoded)" +msgstr "PEM-kodierter Benutzerschlüssel" + +msgid "Username" +msgstr "Benutzername" + +msgid "VC-Mux" +msgstr "VC-Mux" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "VLANs auf %q" + +msgid "VLANs on %q (%s)" +msgstr "VLANs auf %q (%s)" + +msgid "VPN Local address" +msgstr "Lokale VPN-Adresse" + +msgid "VPN Local port" +msgstr "Lokaler VPN-Port" + +msgid "VPN Server" +msgstr "VPN-Server" + +msgid "VPN Server port" +msgstr "VPN-Server Port" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "SHA1-Hash des VPN-Server-Zertifikates" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "Hersteller" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "Bei DHCP-Anfragen gesendete Vendor-Klasse" + +msgid "Verbose" +msgstr "Umfangreiche Ausgaben" + +msgid "Verbose logging by aiccu daemon" +msgstr "Aktiviert erweiterte Protokollierung durch den AICCU-Prozess" + +msgid "Verify" +msgstr "Verifizieren" + +msgid "Version" +msgstr "Version" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "WEP Open System" + +msgid "WEP Shared Key" +msgstr "WEP Shared Key" + +msgid "WEP passphrase" +msgstr "WEP Schlüssel" + +msgid "WMM Mode" +msgstr "WMM Modus" + +msgid "WPA passphrase" +msgstr "WPA Schlüssel" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"WPA-Verschlüsselung benötigt wpa_supplicant (für Client-Modus) oder hostapd " +"(für AP oder Ad-Hoc Modus)." + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" +"Warte die angegebene Anzahl an Sekunden auf NTP-Synchronisierung, der Wert 0 " +"deaktiviert das Warten (optional)" + +msgid "Waiting for changes to be applied..." +msgstr "Änderungen werden angewandt..." + +msgid "Waiting for command to complete..." +msgstr "Der Befehl wird ausgeführt..." + +msgid "Waiting for device..." +msgstr "Warte auf Gerät..." + +msgid "Warning" +msgstr "Warnung" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" +"Achtung: Es gibt ungespeicherte Änderungen die bei einem Neustart verloren " +"gehen!" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" +"Gibt an, ob eine IPv6-Default-Route durch den Tunnel etabliert werden soll" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "Gibt an, ob nur Pakete von delegierten Präfixen geroutet werden sollen" + +msgid "Width" +msgstr "Breite" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "WLAN" + +msgid "Wireless Adapter" +msgstr "WLAN-Gerät" + +msgid "Wireless Network" +msgstr "Drahtlosnetzwerk" + +msgid "Wireless Overview" +msgstr "Drahtlosübersicht" + +msgid "Wireless Security" +msgstr "WLAN-Verschlüsselung" + +msgid "Wireless is disabled or not associated" +msgstr "WLAN ist deaktiviert oder nicht assoziiert" + +msgid "Wireless is restarting..." +msgstr "WLAN startet neu..." + +msgid "Wireless network is disabled" +msgstr "Das WLAN-Netzwerk ist deaktiviert" + +msgid "Wireless network is enabled" +msgstr "Das WLAN-Netzwerk ist aktiviert" + +msgid "Wireless restarted" +msgstr "WLAN neu gestartet" + +msgid "Wireless shut down" +msgstr "WLAN heruntergefahren" + +#, fuzzy +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" + +msgid "Write system log to file" +msgstr "Systemprotokoll in Datei schreiben" + +msgid "XR Support" +msgstr "XR-Unterstützung" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"Hier können installierte Startscripte aktiviert oder deaktiviert werden. " +"Änderungen werden erst mit einem Geräteneustart angewendet.
Warnung: Wenn essentialle Startscripte wie \"network\" deaktiviert " +"werden könnte das Gerät unerreichbar werden!" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" +"Im Browser muss JavaScript aktiviert sein oder LuCI wird nicht richtig " +"funktionieren." + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "beliebig" + +msgid "auto" +msgstr "auto" + +msgid "baseT" +msgstr "baseT" + +msgid "bridged" +msgstr "bridged" + +msgid "create:" +msgstr "erstelle:" + +msgid "creates a bridge over specified interface(s)" +msgstr "überbrückt angegebene Schnittstelle(n)" + +msgid "dB" +msgstr "dB" + +msgid "dBm" +msgstr "dBm" + +msgid "disable" +msgstr "deaktivieren" + +msgid "disabled" +msgstr "deaktiviert" + +msgid "expired" +msgstr "abgelaufen" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "Speicherort für vergebenen DHCP-Adressen" + +msgid "forward" +msgstr "weitergeleitet" + +msgid "full-duplex" +msgstr "Voll-Duplex" + +msgid "half-duplex" +msgstr "Halb-Duplex" + +msgid "help" +msgstr "Hilfe" + +msgid "hidden" +msgstr "versteckt" + +msgid "hybrid mode" +msgstr "hybrider Modus" + +msgid "if target is a network" +msgstr "falls Ziel ein Netzwerk ist" + +msgid "input" +msgstr "eingehend" + +msgid "kB" +msgstr "kB" + +msgid "kB/s" +msgstr "kB/s" + +msgid "kbit/s" +msgstr "kbit/s" + +msgid "local DNS file" +msgstr "Lokale DNS-Datei" + +msgid "minimum 1280, maximum 1480" +msgstr "Minimum 1280, Maximum 1480" + +msgid "minutes" +msgstr "Minuten" + +msgid "no" +msgstr "nein" + +msgid "no link" +msgstr "nicht verbunden" + +msgid "none" +msgstr "keine" + +msgid "not present" +msgstr "nicht vorhanden" + +msgid "off" +msgstr "aus" + +msgid "on" +msgstr "ein" + +msgid "open" +msgstr "offen" + +msgid "overlay" +msgstr "Overlay" + +msgid "relay mode" +msgstr "Relay-Modus" + +msgid "routed" +msgstr "routed" + +msgid "server mode" +msgstr "Server-Modus" + +msgid "stateful-only" +msgstr "nur zustandsorientiert" + +msgid "stateless" +msgstr "nur zustandlos" + +msgid "stateless + stateful" +msgstr "zustandslos + zustandsorientiert" + +msgid "tagged" +msgstr "tagged" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "Zeiteinheiten (TUs / 1024 ms) [1000-65535]" + +msgid "unknown" +msgstr "unbekannt" + +msgid "unlimited" +msgstr "unbegrenzt" + +msgid "unspecified" +msgstr "unspezifiziert" + +msgid "unspecified -or- create:" +msgstr "nichts auswählen -oder- erstellen:" + +msgid "untagged" +msgstr "untagged" + +msgid "yes" +msgstr "ja" + +msgid "« Back" +msgstr "« Zurück" + +#~ msgid "Firewall Mark" +#~ msgstr "Firewall-Markierung" + +#~ msgid "Force link" +#~ msgstr "Erzwinge Verbindung" + +#~ msgid "Isolate Clients" +#~ msgstr "Clients isolieren" + +#~ msgid "" +#~ "Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, " +#~ "starting with 0x." +#~ msgstr "" +#~ "Optional. 32-Bit-Marke für ausgehende, verschlüsselte Pakete. Wert in " +#~ "hexadezimal mit führendem 0x angeben." + +#~ msgid "" +#~ "Optional. Base64-encoded preshared key. Adds in an additional layer of " +#~ "symmetric-key cryptography for post-quantum resistance." +#~ msgstr "" +#~ "Optional. Base64-kodierter, vorhab ausgetauschter Schlüssel um eine " +#~ "weitere Ebene an symmetrischer Verschlüsselung für erhöhte Sicherheit " +#~ "hinzuzufügen." + +#~ msgid "Prefer LTE" +#~ msgstr "LTE bevorzugen" + +#~ msgid "Prefer UMTS" +#~ msgstr "UMTS bevorzugen" + +#~ msgid "Required. Base64-encoded public key of peer." +#~ msgstr "" +#~ "Benötigt. Base64-kodierter öffentlicher Schlüssel für diese Schnittstelle" + +#~ msgid "" +#~ "Set interface properties regardless of the link carrier (If set, carrier " +#~ "sense events do not invoke hotplug handlers)." +#~ msgstr "" +#~ "Schnittstelleneigenschaften werden unabhängig vom Link gesetzt (ist die " +#~ "Option ausgewählt, so werden die Hotplug-Skripte bei Änderung nicht " +#~ "aufgerufen)" + +#~ msgid "Leasetime" +#~ msgstr "Laufzeit" + +#~ msgid "Optional." +#~ msgstr "Optional" + +#~ msgid "AuthGroup" +#~ msgstr "Berechtigungsgruppe" + +#~ msgid "automatic" +#~ msgstr "automatisch" + +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "" +#~ "Erzeugt ein zusätzliches Netzwerk wenn diese Option nicht ausgewählt ist" + +#~ msgid "Join Network: Settings" +#~ msgstr "Netzwerk beitreten: Einstellungen" + +#~ msgid "CPU" +#~ msgstr "Prozessor" + +#~ msgid "Port %d" +#~ msgstr "Port %d" + +#~ msgid "Port %d is untagged in multiple VLANs!" +#~ msgstr "Port %d ist untagged in mehreren VLANs!" + +#~ msgid "VLAN Interface" +#~ msgstr "VLAN Schnittstelle" diff --git a/luci-base/po/el/base.po b/luci-base/po/el/base.po new file mode 100644 index 000000000..1322c2220 --- /dev/null +++ b/luci-base/po/el/base.po @@ -0,0 +1,3896 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-06-10 03:40+0200\n" +"PO-Revision-Date: 2012-03-31 15:35+0200\n" +"Last-Translator: Vasilis \n" +"Language-Team: LANGUAGE \n" +"Language: el\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Pootle 2.0.4\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(παράθυρο %d λεπτών, διάστημα %d δευτερολέπτων)" + +msgid "(%s available)" +msgstr "(%s διαθέσιμα)" + +msgid "(empty)" +msgstr "(κενό)" + +msgid "(no interfaces attached)" +msgstr "(χωρίς προσαρτημένες διεπαφές)" + +msgid "-- Additional Field --" +msgstr "-- Επιπλέον Πεδίο --" + +msgid "-- Please choose --" +msgstr "-- Παρακαλώ επιλέξτε --" + +msgid "-- custom --" +msgstr "-- προσαρμοσμένο --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "Φορτίο 1 λεπτού:" + +msgid "15 Minute Load:" +msgstr "Φορτίο 15 λεπτών:" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "Φορτίο 5 λεπτών:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "DNS query port" +msgstr "Θύρα ερωτημάτων DNS" + +msgid "DNS server port" +msgstr "Θύρα εξυπηρετητή DNS" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" +"Οι DNS εξυπηρετητές θα " +"ερωτηθούν με την σειρά εμφάνισης στο αρχείο resolvfile" + +msgid "ESSID" +msgstr "ESSID" + +msgid "IPv4-Address" +msgstr "Διεύθυνση IPv4" + +msgid "IPv4-Gateway" +msgstr "Πύλη IPv4" + +msgid "IPv4-Netmask" +msgstr "Μάσκα IPv4" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"Διεύθυνση IPv6 ή Δίκτυο " +"(CIDR)" + +msgid "IPv6-Gateway" +msgstr "Πύλη IPv6" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "Παραμετροποίηση LED" + +msgid "LED Name" +msgstr "Όνομα LED" + +msgid "MAC-Address" +msgstr "Διεύθυνση MAC" + +msgid "" +"Max. DHCP leases" +msgstr "" +"Μεγ. πλήθος DHCP leases" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"Μεγ. μέγεθος πακέτου EDNS0" + +msgid "Max. concurrent queries" +msgstr "Μεγ. πλήθος ταυτόχρονων ερωτηματων" + +msgid "%s - %s" +msgstr "" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "Υποστήριξη AR" + +msgid "ARP retry threshold" +msgstr "Όριο επαναδοκιμών ARP" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "Γέφυρες ΑΤΜ" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "ATM Εικονικό Κανάλι Αναγνωριστή (VCI)" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "ATM Εικονικό μονοπάτι Αναγνωριστή (VPI)" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"Οι γέφυρες ATM αποκαλύπτουν ενθυλακωμένες ethernet σε συνδέσεις AAL5 σαν " +"εικονικές διεπαφές δικτύου Linux, οι οποίες μπορούν να χρησιμοποιηθούν σε " +"συνδυασμό με DHCP ή PPP για την κλήση προς τον παροχέα δικτύου." + +msgid "ATM device number" +msgstr "Αριθμός συσκευής ATM" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "Συγκεντρωτής Πρόσβασης " + +msgid "Access Point" +msgstr "Σημείο Πρόσβασης" + +msgid "Action" +msgstr "Ενέργεια" + +msgid "Actions" +msgstr "Ενέργειες" + +msgid "Activate this network" +msgstr "Ενεργοποίηση αυτού του δικτύου" + +msgid "Active IPv4-Routes" +msgstr "" +"Ενεργές Διαδρομές IPv4" + +msgid "Active IPv6-Routes" +msgstr "" +"Ενεργές Διαδρομές IPv6" + +msgid "Active Connections" +msgstr "Ενεργές Συνδέσεις" + +msgid "Active DHCP Leases" +msgstr "" + +msgid "Active DHCPv6 Leases" +msgstr "" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc" + +msgid "Add" +msgstr "Προσθήκη" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "" +"Προσθήκη κατάληξης τοπικού τομέα για ονόματα εξυπηρετούμενα από αρχεία hosts " + +msgid "Add new interface..." +msgstr "Προσθήκη νέας διεπαφής..." + +msgid "Additional Hosts files" +msgstr "Επιπλέον αρχεία Hosts" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "Διεύθυνση" + +msgid "Address to access local relay bridge" +msgstr "Διεύθυνση για πρόσβαση σε την τοπική γέφυρα αναμετάδοσης" + +msgid "Administration" +msgstr "Διαχείριση" + +msgid "Advanced Settings" +msgstr "Προχωρημένες Ρυθμίσεις" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "Ειδοποίηση" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "" +"Επιτρέπει την εξουσιοδότηση SSH με " +"κωδικό πρόσβασης" + +msgid "Allow all except listed" +msgstr "Να επιτρέπονται όλες, εκτός από αυτές στη λίστα" + +msgid "Allow listed only" +msgstr "Να επιτρέπονται μόνο αυτές στην λίστα" + +msgid "Allow localhost" +msgstr "Να επιτρέπεται το localhost" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" +"Να επιτρέπεται σε απομακρυσμένα συστήματα να συνδέονται σε τοπικά " +"προωθημένες SSH θύρες" + +msgid "Allow root logins with password" +msgstr "Να επιτρέπονται root συνδέσεις με κωδικό πρόσβασης" + +msgid "Allow the root user to login with password" +msgstr "" +"Να επιτρέπεται στον χρήστη root να συνδέετε με κωδικό πρόσβασης" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" +"Να επιτρέπονται απαντήσεις από ανώτερο επίπεδο εντός του εύρους 127.0.0.0/8, " +"π.χ. για υπηρεσίες RBL" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "Κεραία 1" + +msgid "Antenna 2" +msgstr "Κεραία 2" + +msgid "Antenna Configuration" +msgstr "" + +msgid "Any zone" +msgstr "Οιαδήποτε ζώνη" + +msgid "Apply" +msgstr "Εφαρμογή" + +msgid "Applying changes" +msgstr "Εφαρμογή αλλαγών" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "" + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "Συνδεδεμένοι Σταθμοί" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "Εξουσιοδότηση" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "Κύριος" + +msgid "Authorization Required" +msgstr "Απαιτείται Εξουσιοδότηση" + +msgid "Auto Refresh" +msgstr "Αυτόματη Ανανέωση" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "Διαθέσιμο" + +msgid "Available packages" +msgstr "Διαθέσιμα πακέτα" + +msgid "Average:" +msgstr "Μέσος Όρος:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "Πίσω" + +msgid "Back to Overview" +msgstr "Πίσω προς Επισκόπηση" + +msgid "Back to configuration" +msgstr "Πίσω προς παραμετροποίηση" + +msgid "Back to overview" +msgstr "Πίσω προς επισκόπηση" + +msgid "Back to scan results" +msgstr "Πίσω στα αποτελέσματα σάρωσης" + +msgid "Background Scan" +msgstr "Σάρωση Παρασκηνίου" + +msgid "Backup / Flash Firmware" +msgstr "Αντίγραφο ασφαλείας / Εγγραφή FLASH Υλικολογισμικό" + +msgid "Backup / Restore" +msgstr "Αποθήκευση / Επαναφορά Αντίγραφου Ασφαλείας" + +msgid "Backup file list" +msgstr "Λίστα αρχείων για αντίγραφο ασφαλείας" + +#, fuzzy +msgid "Bad address specified!" +msgstr "Μη έγκυρη διεύθυνση!" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"Παρακάτω είναι η προκαθορισμένη λίστα αρχείων για αντιγραφή ασφαλείας. " +"Αποτελείτε από αλλαγμένα αρχεία παραμετροποίησης σημαδεμένα από το opkg, " +"ουσιώδη βασικά αρχεία καθώς και καθορισμένα από το χρήστη μοτίβα αντιγράφων " +"ασφαλείας." + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "Ρυθμός δεδομένων" + +msgid "Bogus NX Domain Override" +msgstr "Παράκαμψη Ψευδούς Τομέα NX" + +msgid "Bridge" +msgstr "Γέφυρα" + +msgid "Bridge interfaces" +msgstr "Γεφύρωμα διεπαφών" + +msgid "Bridge unit number" +msgstr "Αριθμός μονάδας γέφυρας" + +msgid "Bring up on boot" +msgstr "Ανέβασμα κατά την εκκίνηση" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "" + +msgid "Buffered" +msgstr "" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "Κουμπιά" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "Χρήση CPU (%)" + +msgid "Cancel" +msgstr "Ακύρωση" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "Αλυσίδα" + +msgid "Changes" +msgstr "Αλλαγές" + +msgid "Changes applied." +msgstr "Αλλαγές εφαρμόστηκαν." + +msgid "Changes the administrator password for accessing the device" +msgstr "Αλλάζει τον κωδικό διαχειριστή για πρόσβαση στη συσκευή" + +msgid "Channel" +msgstr "Κανάλι" + +msgid "Check" +msgstr "Έλεγχος" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "Άθροισμα Ελέγχου" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"Επιλέξατε την ζώνη τείχους προστασίας που επιθυμητέ να αναθέσετε σε αυτήν " +"την διεπαφή. Επιλέξτε απροσδιόριστο για να αφαιρέσετε την διεπαφή " +"από την συσχετισμένη ζώνη ή συμπληρώστε το δημιουργία πεδίο για να " +"προσδιορίσετε μία νέα ζώνη και να προσαρτήσετε την διεπαφή σε αυτό." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" + +msgid "Cipher" +msgstr "" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"Κλικ στο \"Δημιουργία αρχείου\" για να κατεβάσετε ένα tar αρχείο με τα " +"τρέχοντα αρχεία παραμετροποίησης. Για να επαναφέρετε το υλικολογισμικό στην " +"αρχική του κατάσταση, κάντε κλικ στο \"Εκτέλεσε επαναφορά\" (δυνατό μόνο σε " +"squashfs εικόνες)." + +msgid "Client" +msgstr "Πελάτης" + +msgid "Client ID to send when requesting DHCP" +msgstr "Αναγνωριστικό πελάτη που αποστέλλετε κατά την αίτηση DHCP" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" +"Κλείσιμο, μη ενεργών συνδέσεων μετά το πέρας του ορισμένου αριθμού " +"δευτερολέπτων, χρησιμοποιήστε 0 για να εξακολουθούν να υφίστανται επ' " +"αόριστον" + +msgid "Close list..." +msgstr "Κλείσιμο λίστας..." + +msgid "Collecting data..." +msgstr "Συλλογή δεδομένων..." + +msgid "Command" +msgstr "Εντολή" + +msgid "Common Configuration" +msgstr "Κοινή Παραμετροποίηση" + +msgid "Compression" +msgstr "Συμπίεση" + +msgid "Configuration" +msgstr "Παραμετροποίηση" + +msgid "Configuration applied." +msgstr "Η Παραμετροποίηση εφαρμόστηκε." + +msgid "Configuration files will be kept." +msgstr "Τα αρχεία παραμετροποίησης θα διατηρηθούν." + +msgid "Confirmation" +msgstr "Επιβεβαίωση" + +msgid "Connect" +msgstr "Σύνδεση" + +msgid "Connected" +msgstr "Συνδεδεμένος" + +msgid "Connection Limit" +msgstr "Όριο Συνδέσεων" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "Συνδέσεις" + +msgid "Country" +msgstr "Χώρα" + +msgid "Country Code" +msgstr "Κωδικός Χώρας" + +msgid "Cover the following interface" +msgstr "Κάλυψη της ακόλουθης διεπαφής" + +msgid "Cover the following interfaces" +msgstr "Κάλυψη των ακόλουθων διεπαφών" + +msgid "Create / Assign firewall-zone" +msgstr "Δημιουργία / Ανάθεση ζώνης τείχους προστασίας" + +msgid "Create Interface" +msgstr "Δημιουργία Διεπαφής" + +msgid "Create a bridge over multiple interfaces" +msgstr "" + +msgid "Critical" +msgstr "" + +msgid "Cron Log Level" +msgstr "Επίπεδο Καταγραφής Cron" + +msgid "Custom Interface" +msgstr "" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"Ρυθμίζει, αν είναι δυνατόν, την συμπεριφορά των LED της συσκευής." + +msgid "DHCP Leases" +msgstr "DHCP Leases" + +msgid "DHCP Server" +msgstr "Εξυπηρετητής DHCP" + +msgid "DHCP and DNS" +msgstr "DHCP και DNS" + +msgid "DHCP client" +msgstr "Πελάτης DHCP" + +msgid "DHCP-Options" +msgstr "Επιλογές DHCP" + +msgid "DHCPv6 Leases" +msgstr "" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "Προωθήσεις DNS" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "Αποσφαλμάτωση" + +msgid "Default %d" +msgstr "Προεπιλογή %d" + +msgid "Default gateway" +msgstr "Προεπιλεγμένη πύλη" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "Προεπιλεγμένη κατάσταση" + +msgid "Define a name for this network." +msgstr "Ορίστε ένα όνομα για αυτό το δίκτυο." + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"Ορίστε επιπλέον επιλογές DHCP, που διαφημίζουν διαφορετικούς εξυπηρετητές " +"DNS στους πελάτες, για παράδειγμα \"6,192.168.2.1,192.168.2.2\"." + +msgid "Delete" +msgstr "Διαγραφή" + +msgid "Delete this network" +msgstr "Διαγραφή αυτού του δικτύου" + +msgid "Description" +msgstr "Περιγραφή" + +msgid "Design" +msgstr "Εμφάνιση" + +msgid "Destination" +msgstr "Προορισμός" + +msgid "Device" +msgstr "Συσκευή" + +msgid "Device Configuration" +msgstr "Παραμετροποίηση Συσκευής" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "Διαγνωστικά" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "Κατάλογος" + +msgid "Disable" +msgstr "Απενεργοποίηση" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +"Απενεργοποίηση DHCP για αυτή τη διεπαφή." + +msgid "Disable DNS setup" +msgstr "Απενεργοποίηση ρυθμίσεων DNS" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "Απενεργοποίηση χρονιστή HW-Beacon" + +msgid "Disabled" +msgstr "Απενεργοποιημένο" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "Αγνόησε τις απαντήσεις ανοδικής ροής RFC1918" + +msgid "Displaying only packages containing" +msgstr "Εμφάνιση μόνο πακέτων που περιέχουν" + +msgid "Distance Optimization" +msgstr "Βελτιστοποίηση Απόστασης" + +msgid "Distance to farthest network member in meters." +msgstr "Απόσταση σε μέτρα από το πιο απομακρυσμένο μέλος του δικτύου." + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "Διαφορική Λήψη" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Ο Dnsmasq είναι ένας συνδυασμός εξυπηρετητή DHCP και προωθητήDNS για τείχη προστασίας NAT" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" +"Να μην αποθηκεύονται στη λανθάνουσα μνήμη οι αρνητικές απαντήσεις, π.χ. για " +"μη υπαρκτούς τομείς." + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" +"Να μην προωθούνται αιτήματα τα οποία δεν μπορούν να απαντηθούν από δημόσιους " +"εξυπηρετητές ονομάτων" + +msgid "Do not forward reverse lookups for local networks" +msgstr "" + +msgid "Do not send probe responses" +msgstr "Να μην στέλνονται απαντήσεις σε probes" + +msgid "Domain required" +msgstr "Απαίτηση για όνομα τομέα" + +msgid "Domain whitelist" +msgstr "Λευκή λίστα τομέων" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" +"Να μην προωθούνται ερωτήματα DNS " +"χωρίς όνομα τομέα DNS" + +msgid "Download and install package" +msgstr "Κατέβασμα και εγκατάσταση πακέτου" + +msgid "Download backup" +msgstr "Κατέβασμα αντιγράφου ασφαλείας" + +msgid "Dropbear Instance" +msgstr "" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Το Dropbear προσφέρει πρόσβαση σε SSH " +"κέλυφος μέσω δικτύου και έναν ενσωματωμένο εξυπηρετητή SCP" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" +"Δυναμικό DHCP" + +msgid "Dynamic tunnel" +msgstr "Δυναμικό τούνελ" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" +"Δυναμική απόδοση DHCP διευθύνσεων στους πελάτες. Σε περίπτωση " +"απενεργοποίησης, μόνο πελάτες με στατικα leases θα εξυπηρετούνται." + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "Μέθοδος EAP" + +msgid "Edit" +msgstr "Επεξεργασία" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "Επεξεργασία αυτής της διεπαφής" + +msgid "Edit this network" +msgstr "Επεξεργασία αυτού του δικτύου" + +msgid "Emergency" +msgstr "Έκτακτη ανάγκη" + +msgid "Enable" +msgstr "Ενεργοποίηση" + +msgid "Enable STP" +msgstr "Ενεργοποίηση STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "Ενεργοποίηση ενημέρωσης δυναμικού τερματικού σημείου HE.net." + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "Ενεργοποίηση διαπραγμάτευσης IPv6 πάνω στη PPP ζεύξη" + +msgid "Enable Jumbo Frame passthrough" +msgstr "Ενεργοποίηση διέλευσης Jumbo Frame" + +msgid "Enable NTP client" +msgstr "" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "Ενεργοποίηση εξυπηρετητή TFTP" + +msgid "Enable VLAN functionality" +msgstr "Ενεργοποίηση λειτουργίας VLAN" + +msgid "Enable WPS pushbutton, requires WPA(2)-PSK" +msgstr "" + +msgid "Enable key reinstallation (KRACK) countermeasures" +msgstr "" + +msgid "Enable learning and aging" +msgstr "Ένεργοποίηση learning and aging" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "Ενεργοποίηση αυτής της προσάρτησης" + +msgid "Enable this swap" +msgstr "Ενεργοποίηση αυτής της swap" + +msgid "Enable/Disable" +msgstr "Ενεργοποίηση/Απενεργοποίηση" + +msgid "Enabled" +msgstr "Ενεργοποιημένο" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "" + +msgid "Encapsulation mode" +msgstr "Λειτουργία ενθυλάκωσης" + +msgid "Encryption" +msgstr "Κρυπτογράφηση" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "Διαγράφεται..." + +msgid "Error" +msgstr "Σφάλμα" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "Προσαρμογέας Ethernet" + +msgid "Ethernet Switch" +msgstr "Ethernet Switch" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "" + +msgid "Expires" +msgstr "Λήγει" + +#, fuzzy +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" +"Ο ελάχιστος χρόνος λήξεως των διευθύνσεων lease είναι 2 λεπτά (2m)." + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "Εξωτερικός εξυπηρετητής καταγραφής συστήματος" + +msgid "External system log server port" +msgstr "" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "Γρήγορα Πλαίσια" + +msgid "File" +msgstr "Αρχείο" + +msgid "Filename of the boot image advertised to clients" +msgstr "Όνομα αρχείου της εικόνας εκκίνησης που διαφημίζετε στους πελάτες" + +msgid "Filesystem" +msgstr "Σύστημα Αρχείων" + +msgid "Filter" +msgstr "Φίλτρο" + +msgid "Filter private" +msgstr "Φιλτράρισμα ιδιωτικών" + +msgid "Filter useless" +msgstr "Φιλτράρισμα άχρηστων" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "Εύρεση και σύνδεση σε δίκτυο" + +msgid "Find package" +msgstr "Εύρεση πακέτου" + +msgid "Finish" +msgstr "Τέλος" + +msgid "Firewall" +msgstr "Τείχος Προστασίας" + +msgid "Firewall Settings" +msgstr "Ρυθμίσεις Τείχους Προστασίας" + +msgid "Firewall Status" +msgstr "Κατάσταση Τείχους Προστασίας" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "Έκδοση Υλικολογισμικού" + +msgid "Fixed source port for outbound DNS queries" +msgstr "" + +msgid "Flash Firmware" +msgstr "Φλασάρισμα Firmware" + +msgid "Flash image..." +msgstr "Φλασάρισμα εικόνας..." + +msgid "Flash new firmware image" +msgstr "Φλασάρισμα νέας εικόνας υλικολογισμικού" + +msgid "Flash operations" +msgstr "Λειτουργίες φλασάρισματος" + +msgid "Flashing..." +msgstr "Φλασάρεται..." + +msgid "Force" +msgstr "Επιβολή" + +msgid "Force CCMP (AES)" +msgstr "Επιβολή CCMP (AES)" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "" +"Επιβολή DHCP σε αυτό το δίκτυο ακόμα κι αν έχει εντοπιστεί άλλος εξυπηρετητής" + +msgid "Force TKIP" +msgstr "Επιβολή TKIP" + +msgid "Force TKIP and CCMP (AES)" +msgstr "Επιβολή TKIP και CCMP (AES)" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "Προώθηση κίνησης DHCP" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "Προώθηση κίνησης broadcast" + +msgid "Forwarding mode" +msgstr "Μέθοδος προώθησης" + +msgid "Fragmentation Threshold" +msgstr "Όριο Κατακερµατισµού" + +msgid "Frame Bursting" +msgstr "Bursting Πλαισίων" + +msgid "Free" +msgstr "" + +msgid "Free space" +msgstr "Ελεύθερος χώρος" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "" + +msgid "GPRS only" +msgstr "" + +msgid "Gateway" +msgstr "Πύλη" + +msgid "Gateway ports" +msgstr "Θύρες πύλης" + +msgid "General Settings" +msgstr "Γενικές Ρυθμίσεις" + +msgid "General Setup" +msgstr "" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "" + +msgid "Go to relevant configuration page" +msgstr "Μετάβαση στη σχετική σελίδα ρυθμίσεων" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "" + +msgid "Hang Up" +msgstr "Κρέμασμα" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"Εδώ μπορείτε να παραμετροποιήσετε βασικές πλευρές της συσκευής σας όπως το " +"όνομα υπολογιστή ή τη ζώνη ώρας." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" + +msgid "Hermes 802.11b Wireless Controller" +msgstr "" + +msgid "Hide ESSID" +msgstr "Κρυφό ESSID" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "Καταχωρήσεις Υπολογιστών" + +msgid "Host expiry timeout" +msgstr "" + +msgid "Host-IP or Network" +msgstr "" +"IP Υπολογιστή ή Δικτύου" + +msgid "Hostname" +msgstr "Όνομα Υπολογιστή" + +msgid "Hostname to send when requesting DHCP" +msgstr "" + +msgid "Hostnames" +msgstr "Ονόματα Υπολογιστών" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "Διεύθυνση IP" + +msgid "IPv4" +msgstr "IPv4" + +msgid "IPv4 Firewall" +msgstr "IPv4 Τείχος Προστασίας" + +msgid "IPv4 WAN Status" +msgstr "" + +msgid "IPv4 address" +msgstr "Διεύθυνση IPv4" + +msgid "IPv4 and IPv6" +msgstr "IPv4 και IPv6" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "" + +msgid "IPv4 gateway" +msgstr "Πύλη IPv4" + +msgid "IPv4 netmask" +msgstr "Μάσκα IPv4" + +msgid "IPv4 only" +msgstr "Μόνο IPv4" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "" + +msgid "IPv4-Address" +msgstr "IPv4-Διεύθυνση" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "IPv6 Τείχος Προστασίας" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "Κατάσταση IPv6 WAN" + +msgid "IPv6 address" +msgstr "Διεύθυνση IPv6" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "Πύλη IPv6" + +msgid "IPv6 only" +msgstr "Μόνο IPv6" + +msgid "IPv6 prefix" +msgstr "" + +msgid "IPv6 prefix length" +msgstr "" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "IPv6-in-IPv4 (RFC4213)" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "" + +msgid "Identity" +msgstr "Ταυτότητα" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" +"Αν οριστεί, προσάρτησε τη συσκευή με βάση το UUID της αντί για το " +"καθορισμένο όνομα της" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" +"Αν οριστεί, προσάρτησε τη συσκευή με βάση την ετικέτα της αντί για το " +"καθορισμένο όνομα της" + +msgid "If unchecked, no default route is configured" +msgstr "" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"Αν η φυσική μνήμη δεν είναι αρκετή, μη-χρησιμοποιούμενα δεδομένα μπορούν " +"προσωρινά να εναλλάσσονται σε μία συσκευή swap με αποτέλεσμα περισσότερη " +"ενεργή RAM. Η εναλλαγή δεδομένων " +"είναι μία πολύ αργή διαδικασία αφού η συσκευή swap δεν μπορεί να " +"προσπελαστεί με τους υψηλούς ρυθμούς μεταφοράς δεδομένων που διαθέτει η " +"RAM." + +msgid "Ignore /etc/hosts" +msgstr "Αγνόησε /etc/hosts" + +msgid "Ignore interface" +msgstr "Αγνόησε διεπαφή" + +msgid "Ignore resolve file" +msgstr "Αγνόησε αρχείο resolve" + +msgid "Image" +msgstr "" + +msgid "In" +msgstr "Είσοδος" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "" + +msgid "Inbound:" +msgstr "" + +msgid "Info" +msgstr "Πληροφορίες" + +msgid "Initscript" +msgstr "Σενάριο εκκίνησης" + +msgid "Initscripts" +msgstr "Σενάρια Εκκίνησης" + +msgid "Install" +msgstr "Εγκατάσταση" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "Εγκατάσταση πακέτου %q" + +msgid "Install protocol extensions..." +msgstr "Εγκατάσταση επεκτάσεων πρωτοκόλλου..." + +msgid "Installed packages" +msgstr "Εγκατεστημένα πακέτα" + +msgid "Interface" +msgstr "Διεπαφή" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "Παραμετροποίηση Διεπαφής" + +msgid "Interface Overview" +msgstr "Επισκόπηση Διεπαφής" + +msgid "Interface is reconnecting..." +msgstr "Η διεπαφή επανασυνδέεται..." + +msgid "Interface is shutting down..." +msgstr "Η διεπαφή απενεργοποιείται..." + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "Η διεπαφή δεν υπάρχει ή δεν έχει συνδεθεί ακόμη." + +msgid "Interface reconnected" +msgstr "Η διεπαφή επανασυνδέθηκε" + +msgid "Interface shut down" +msgstr "Η διεπαφή απενεργοποιήθηκε" + +msgid "Interfaces" +msgstr "Διεπαφές" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "" + +msgid "Invalid" +msgstr "Άκυρη τιμή εισόδου" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "" + +msgid "Invalid username and/or password! Please try again." +msgstr "Άκυρο όνομα χρήστη και/ή κωδικός πρόσβασης! Παρακαλώ προσπαθήστε ξανά." + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"Φαίνεται πως προσπαθείτε να φλασάρετε μια εικόνα που δεν χωράει στην μνήμη " +"flash, παρακαλώ επιβεβαιώστε το αρχείο εικόνας!" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "Απαιτείται JavaScript!" + +msgid "Join Network" +msgstr "" + +msgid "Join Network: Wireless Scan" +msgstr "" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "Διατήρηση ρυθμίσεων" + +msgid "Kernel Log" +msgstr "Καταγραφή Πυρήνα" + +msgid "Kernel Version" +msgstr "Έκδοση Πυρήνα" + +msgid "Key" +msgstr "Κλειδί" + +msgid "Key #%d" +msgstr "Κλειδί #%d" + +msgid "Kill" +msgstr "Σκότωμα" + +msgid "L2TP" +msgstr "" + +msgid "L2TP Server" +msgstr "" + +msgid "LCP echo failure threshold" +msgstr "" + +msgid "LCP echo interval" +msgstr "" + +msgid "LLC" +msgstr "LLC" + +msgid "Label" +msgstr "Ετικέτα" + +msgid "Language" +msgstr "Γλώσσα" + +msgid "Language and Style" +msgstr "" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "" + +msgid "Leasefile" +msgstr "Αρχείο Leases" + +msgid "Leasetime remaining" +msgstr "Υπόλοιπο χρόνου Lease" + +msgid "Leave empty to autodetect" +msgstr "Αφήστε το κενό για να γίνει αυτόματη ανίχνευση" + +msgid "Leave empty to use the current WAN address" +msgstr "Αφήστε το κενό για να γίνει χρήση της τρέχουσας διεύθυνσης WAN" + +msgid "Legend:" +msgstr "Υπόμνημα:" + +msgid "Limit" +msgstr "Όριο" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "Αναμμένο με Ζεύξη" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" + +msgid "Listening port for inbound DNS queries" +msgstr "" + +msgid "Load" +msgstr "Φόρτος" + +msgid "Load Average" +msgstr "Μέσος όρος φόρτου" + +msgid "Loading" +msgstr "Φόρτωση" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "Τοπική διεύθυνση IPv4" + +msgid "Local IPv6 address" +msgstr "Τοπική διεύθυνση IPv6" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "" + +msgid "Local Time" +msgstr "Τοπική Ώρα" + +msgid "Local domain" +msgstr "" + +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" + +msgid "Local server" +msgstr "Τοπικός εξυπηρετητής" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" + +msgid "Localise queries" +msgstr "Τοπικά ερωτήματα" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "Επίπεδο εξόδου αρχείων καταγραφής" + +msgid "Log queries" +msgstr "Καταγραφή ερωτημάτων" + +msgid "Logging" +msgstr "Καταγραφή" + +msgid "Login" +msgstr "Σύνδεση" + +msgid "Logout" +msgstr "Αποσύνδεση" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "" + +msgid "MAC-Address" +msgstr "MAC-Διεύθυνση" + +msgid "MAC-Address Filter" +msgstr "Φίλτρο MAC Διευθύνσεων" + +msgid "MAC-Filter" +msgstr "MAC-Φίλτρο" + +msgid "MAC-List" +msgstr "Λίστα MAC" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "" + +msgid "MTU" +msgstr "MTU" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "Μέγιστος Ρυθμός" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "Μέγιστος επιτρεπόμενος αριθμός ενεργών DHCP leases" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "Μέγιστος επιτρεπόμενος αριθμός ταυτόχρονων ερωτημάτων DNS" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "Μέγιστο επιτρεπόμενο μέγεθος EDNS.0 UDP πακέτων" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "" +"Μέγιστος αριθμός δευτερολέπτων αναμονής ώστε το modem να καταστεί έτοιμο" + +msgid "Maximum hold time" +msgstr "Μέγιστος χρόνος κράτησης" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "Μέγιστος αριθμός διευθύνσεων lease" + +msgid "Mbit/s" +msgstr "" + +msgid "Memory" +msgstr "Μνήμη" + +msgid "Memory usage (%)" +msgstr "Χρήση Μνήμης (%)" + +msgid "Metric" +msgstr "Μέτρο" + +msgid "Minimum Rate" +msgstr "Ελάχιστος Ρυθμός" + +msgid "Minimum hold time" +msgstr "Ελάχιστος χρόνος κράτησης" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "Λειτουργία" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "Συσκευή Modem" + +msgid "Modem init timeout" +msgstr "" + +msgid "Monitor" +msgstr "Παρακολούθηση" + +#, fuzzy +msgid "Mount Entry" +msgstr "Προσάρτηση" + +msgid "Mount Point" +msgstr "Σημείο Προσάρτησης" + +msgid "Mount Points" +msgstr "Σημεία Προσάρτησης" + +msgid "Mount Points - Mount Entry" +msgstr "Σημεία Προσάρτησης - Είσοδος Προσάρτησης" + +msgid "Mount Points - Swap Entry" +msgstr "" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"Τα σημεία προσάρτησης ορίζουν σε ποιο σημείο στο σύστημα αρχείων θα " +"προσαρτηθεί μία συσκευή μνήμης" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "Επιλογές προσάρτησης" + +msgid "Mount point" +msgstr "Σημείο προσάρτησης" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "Προσαρτημένα συστήματα αρχείων" + +msgid "Move down" +msgstr "Μετακίνηση κάτω" + +msgid "Move up" +msgstr "Μετακίνηση πάνω" + +msgid "Multicast Rate" +msgstr "Ρυθμός Multicast" + +msgid "Multicast address" +msgstr "Διεύθυνση Multicast" + +msgid "NAS ID" +msgstr "NAS ID" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "Όνομα" + +msgid "Name of the new interface" +msgstr "Όνομα νέας διεπαφής" + +msgid "Name of the new network" +msgstr "Όνομα νέου δικτύου" + +msgid "Navigation" +msgstr "Πλοήγηση" + +msgid "Netmask" +msgstr "Μάσκα δικτύου" + +msgid "Network" +msgstr "Δίκτυο" + +msgid "Network Utilities" +msgstr "Εργαλεία Δικτύου" + +msgid "Network boot image" +msgstr "" + +msgid "Network without interfaces." +msgstr "" + +msgid "Next »" +msgstr "Επόμενο »" + +msgid "No DHCP Server configured for this interface" +msgstr "Δεν υπάρχει ρυθμισμένος DHCP εξυπηρετητής για αυτή τη διεπαφή" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "Δεν υπάρχουν αλυσίδες σε αυτόν τον πίνακα" + +msgid "No files found" +msgstr "Δε βρέθηκαν αρχεία" + +msgid "No information available" +msgstr "Δεν υπάρχουν πληροφορίες διαθέσιμες" + +msgid "No negative cache" +msgstr "" + +msgid "No network configured on this device" +msgstr "Δεν υπάρχει παραμετροποιημένο δίκτυο σε αυτή τη συσκευή" + +msgid "No network name specified" +msgstr "Δεν έχει οριστεί όνομα δικτύου" + +msgid "No package lists available" +msgstr "Δεν υπάρχουν διαθέσιμες λίστες πακέτων" + +msgid "No password set!" +msgstr "Δεν έχει οριστεί κωδικός πρόσβασης!" + +msgid "No rules in this chain" +msgstr "Δεν υπάρχει κανόνας σε αυτή την αλυσίδα" + +msgid "No zone assigned" +msgstr "Δεν έχει ανατεθεί ζώνη" + +msgid "Noise" +msgstr "Θόρυβος" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "Θόρυβος:" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "Κανένα" + +msgid "Normal" +msgstr "Φυσιολογικό" + +msgid "Not Found" +msgstr "" + +msgid "Not associated" +msgstr "" + +msgid "Not connected" +msgstr "" + +msgid "Note: Configuration files will be erased." +msgstr "Σημείωση: Τα αρχεία παραμετροποίησης θα διαγραφούν." + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "Επισήμανση" + +msgid "Nslookup" +msgstr "" + +msgid "OK" +msgstr "Εντάξει" + +msgid "OPKG-Configuration" +msgstr "Παραμετροποίηση OPKG" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"Σε αυτή τη σελίδα μπορείτε να ρυθμίσετε τις διεπαφές δικτύου. Μπορείτε να " +"γεφυρώσετε πολλαπλές διεπαφές τικάροντας το πεδίο \"γεφύρωμα διεπαφών\" και " +"εισάγοντας τα ονόματα των διεπαφών δικτύου χωρισμένα με κενά. Μπορείτε " +"επίσης να χρησιμοποιήσετε παράσταση τύπου VLAN INTERFACE.VLANNR (π.χ.: eth0.1)." + +msgid "On-State Delay" +msgstr "" + +msgid "One of hostname or mac address must be specified!" +msgstr "" + +msgid "One or more fields contain invalid values!" +msgstr "Ένα ή περισσότερα πεδία περιέχουν μη έγκυρες τιμές!" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "Ένα ή περισσότερα πεδία δεν περιέχουν τιμές!" + +msgid "Open list..." +msgstr "" + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "Η επιλογή άλλαξε" + +msgid "Option removed" +msgstr "Η επιλογή αφαιρέθηκε" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "Επιλογές" + +msgid "Other:" +msgstr "" + +msgid "Out" +msgstr "Έξοδος" + +msgid "Outbound:" +msgstr "" + +msgid "Outdoor Channels" +msgstr "Εξωτερικά Κανάλια" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "" + +msgid "Override MTU" +msgstr "" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" + +msgid "Override the table used for internal routes" +msgstr "" + +msgid "Overview" +msgstr "Επισκόπηση" + +msgid "Owner" +msgstr "Κάτοχος" + +msgid "PAP/CHAP password" +msgstr "" + +msgid "PAP/CHAP username" +msgstr "" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "PIN" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "PPP" + +msgid "PPPoA Encapsulation" +msgstr "Ενθυλάκωση PPPoA" + +msgid "PPPoATM" +msgstr "PPPoATM" + +msgid "PPPoE" +msgstr "PPPoE" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "PPtP" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "Απαιτείται το πακέτο libiwinfo!" + +msgid "Package lists are older than 24 hours" +msgstr "Οι λίστες πακέτων έχουν να ανανεωθούν πάνω από 24 ώρες" + +msgid "Package name" +msgstr "Όνομα πακέτου" + +msgid "Packets" +msgstr "Πακέτα" + +msgid "Part of zone %q" +msgstr "Μέρος της ζώνης %q" + +msgid "Password" +msgstr "Κωδικός Πρόσβασης" + +msgid "Password authentication" +msgstr "Εξουσιοδότηση με κωδικό πρόσβασης" + +msgid "Password of Private Key" +msgstr "Κωδικός Πρόσβασης του Ιδιωτικού Κλειδιού" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "Ο κωδικός πρόσβασης άλλαξε επιτυχώς!" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "Διαδρομή για Πιστοποιητικό CA" + +msgid "Path to Client-Certificate" +msgstr "Διαδρομή για Πιστοποιητικό-Πελάτη" + +msgid "Path to Private Key" +msgstr "Διαδρομή για Ιδιωτικό Κλειδί" + +msgid "Path to executable which handles the button event" +msgstr "Διαδρομή για το εκτελέσιμο που χειρίζεται το γεγονός του κουμπιού" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "Εκτέλεση επανεκκίνησης" + +msgid "Perform reset" +msgstr "Διενέργεια αρχικοποίησης" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "" + +msgid "Physical Settings" +msgstr "" + +msgid "Ping" +msgstr "" + +msgid "Pkts." +msgstr "Πκτ." + +msgid "Please enter your username and password." +msgstr "Παρακαλώ εισάγετε όνομα χρήστη και κωδικό πρόσβασης." + +msgid "Policy" +msgstr "Πολιτική" + +msgid "Port" +msgstr "Θύρα" + +msgid "Port status:" +msgstr "" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" + +msgid "Prevent listening on these interfaces." +msgstr "" + +#, fuzzy +msgid "Prevents client-to-client communication" +msgstr "Αποτρέπει την επικοινωνία μεταξύ πελατών" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "Συνέχεια" + +msgid "Processes" +msgstr "Εργασίες" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "Πρωτ." + +msgid "Protocol" +msgstr "Πρωτόκολλο" + +msgid "Protocol family" +msgstr "Οικογένεια πρωτοκόλλου" + +msgid "Protocol of the new interface" +msgstr "Πρωτόκολλο νέας διεπαφής" + +msgid "Protocol support is not installed" +msgstr "Η υποστήριξη πρωτοκόλλου δεν έχει εκγατασταθεί" + +msgid "Provide NTP server" +msgstr "" + +msgid "Provide new network" +msgstr "" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "Ψευδό Ad-Hoc (ahdemo)" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "Όριο RTS/CTS" + +msgid "RX" +msgstr "RX" + +msgid "RX Rate" +msgstr "" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "" + +msgid "Radius-Accounting-Port" +msgstr "" + +msgid "Radius-Accounting-Secret" +msgstr "" + +msgid "Radius-Accounting-Server" +msgstr "" + +msgid "Radius-Authentication-Port" +msgstr "" + +msgid "Radius-Authentication-Secret" +msgstr "" + +msgid "Radius-Authentication-Server" +msgstr "" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"Διάβασμα του /etc/ethers για την παραμετροποίηση του " +"εξυπηρετητή DHCP" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" + +msgid "Really reset all changes?" +msgstr "Αρχικοποίηση όλων των αλλαγών;" + +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" + +msgid "Really switch protocol?" +msgstr "Αλλαγή πρωτοκόλλου;" + +msgid "Realtime Connections" +msgstr "Συνδέσεις πραγματικού χρόνου" + +msgid "Realtime Graphs" +msgstr "Γραφήματα πραγματικού χρόνου" + +msgid "Realtime Load" +msgstr "" + +msgid "Realtime Traffic" +msgstr "Κίνηση πραγματικού χρόνου" + +msgid "Realtime Wireless" +msgstr "" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "" + +msgid "Reboot" +msgstr "Επανεκκίνηση" + +msgid "Rebooting..." +msgstr "Επανεκκίνηση..." + +msgid "Reboots the operating system of your device" +msgstr "Επανεκκίνηση του λειτουργικού συστήματος της συσκευής σας" + +msgid "Receive" +msgstr "Λήψη" + +msgid "Receiver Antenna" +msgstr "Κεραία Λήψης" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "Επανασύνδεση της διεπαφής" + +msgid "Reconnecting interface" +msgstr "Επανασύνδεση της διεπαφής" + +msgid "References" +msgstr "Αναφορές" + +msgid "Regulatory Domain" +msgstr "Ρυθμιστική Περιοχή" + +msgid "Relay" +msgstr "" + +msgid "Relay Bridge" +msgstr "" + +msgid "Relay between networks" +msgstr "" + +msgid "Relay bridge" +msgstr "" + +msgid "Remote IPv4 address" +msgstr "Απομακρυσμένη διεύθυνση IPv4" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "Αφαίρεση" + +msgid "Repeat scan" +msgstr "Επανάληψη σάρωσης" + +msgid "Replace entry" +msgstr "Αντικατάσταση καταχώρησης" + +msgid "Replace wireless configuration" +msgstr "Αντικατάσταση ρυθμίσεων ασύρματης σύνδεσης" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "Αρχικοποίηση" + +msgid "Reset Counters" +msgstr "Αρχικοποίηση Μετρητών" + +msgid "Reset to defaults" +msgstr "Αρχικοποίηση στις προεπιλεγμένες τιμές" + +msgid "Resolv and Hosts Files" +msgstr "Αρχεία Resolv και Hosts" + +msgid "Resolve file" +msgstr "Αρχείο Resolve" + +msgid "Restart" +msgstr "Επανεκκίνηση" + +msgid "Restart Firewall" +msgstr "Επανεκκίνηση Τείχους Προστασίας" + +msgid "Restore backup" +msgstr "Επαναφορά αντιγράφου ασφαλείας" + +msgid "Reveal/hide password" +msgstr "" + +msgid "Revert" +msgstr "Αναίρεση" + +msgid "Root" +msgstr "Root" + +msgid "Root directory for files served via TFTP" +msgstr "Κατάλογος Root για αρχεία που σερβίρονται μέσω TFTP" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "Κωδικός Πρόσβασης Δρομολογητή" + +#, fuzzy +msgid "Routes" +msgstr "Διαδρομές" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"Οι διαδρομές ορίζουν τη διεπαφή και πύλη από την οποία κάποιος υπολογιστής ή " +"δίκτυο μπορεί να είναι προσβάσιμο/ς." + +msgid "Run a filesystem check before mounting the device" +msgstr "Εκτέλεση ελέγχου του συστήματος αρχείων πριν προσαρτηθεί η συσκευή" + +msgid "Run filesystem check" +msgstr "Εκτέλεση ελέγχου συστήματος αρχείων" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "Πρόσβαση SSH" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "Κλειδιά SSH" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "Αποθήκευση" + +msgid "Save & Apply" +msgstr "Αποθήκευση & Εφαρμογή" + +msgid "Save & Apply" +msgstr "Αποθήκευση & Εφαρμογή" + +msgid "Scan" +msgstr "Σάρωση" + +msgid "Scheduled Tasks" +msgstr "Προγραμματισμένες Εργασίες" + +msgid "Section added" +msgstr "" + +msgid "Section removed" +msgstr "" + +msgid "See \"mount\" manpage for details" +msgstr "Δείτε το manpage του \"mount\" για λεπτομέρειες" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" + +#, fuzzy +msgid "Separate Clients" +msgstr "Απομόνωση Πελατών" + +msgid "Separate WDS" +msgstr "Ξεχωριστά WDS" + +msgid "Server Settings" +msgstr "Ρυθμίσεις Εξυπηρετητή" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "Όνομα Υπηρεσίας" + +msgid "Service Type" +msgstr "Είδος Υπηρεσίας" + +msgid "Services" +msgstr "Υπηρεσίες" + +msgid "Set up Time Synchronization" +msgstr "" + +msgid "Setup DHCP Server" +msgstr "Ρύθμιση Εξυπηρετητή DHCP" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "" + +msgid "Shutdown this interface" +msgstr "Απενεργοποίηση αυτής της διεπαφής" + +msgid "Shutdown this network" +msgstr "Απενεργοποίηση αυτού του δικτύου" + +msgid "Signal" +msgstr "Σήμα" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "Σήμα:" + +msgid "Size" +msgstr "Μέγεθος" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "Παράκαμψη" + +msgid "Skip to content" +msgstr "Παράκαμψη σε περιεχόμενο" + +msgid "Skip to navigation" +msgstr "Παράκαμψη σε πλοήγηση" + +msgid "Slot time" +msgstr "" + +msgid "Software" +msgstr "Λογισμικό" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "Κάποια πεδία δεν είναι έγκυρα, δεν μπορούν να αποθηκευτούν οι τιμές!" + +msgid "Sorry, the object you requested was not found." +msgstr "" + +msgid "Sorry, the server encountered an unexpected error." +msgstr "" + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" + +msgid "Sort" +msgstr "Ταξινόμηση" + +msgid "Source" +msgstr "Πηγή" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "" + +msgid "Specifies the directory the device is attached to" +msgstr "" + +#, fuzzy +msgid "Specifies the listening port of this Dropbear instance" +msgstr "" +"Προσδιορίζει την θύρα ακρόασης αυτού του στιγμιοτύπου Dropbear" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "Ορίστε το κρυφό κλειδί κρυπτογράφησης." + +msgid "Start" +msgstr "Αρχή" + +msgid "Start priority" +msgstr "Προτεραιότητα εκκίνησης" + +msgid "Startup" +msgstr "Εκκίνηση" + +msgid "Static IPv4 Routes" +msgstr "Στατικές Διαδρομές IPv4" + +msgid "Static IPv6 Routes" +msgstr "Στατικές Διαδρομές IPv6" + +msgid "Static Leases" +msgstr "Στατικά Leases" + +msgid "Static Routes" +msgstr "Στατικές Διαδρομές" + +msgid "Static WDS" +msgstr "" + +msgid "Static address" +msgstr "Στατική διεύθυνση" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" + +msgid "Status" +msgstr "Κατάσταση" + +msgid "Stop" +msgstr "" + +msgid "Strict order" +msgstr "Αυστηρή σειρά" + +msgid "Submit" +msgstr "Υποβολή" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "" + +msgid "Switch" +msgstr "Switch" + +msgid "Switch %q" +msgstr "" + +msgid "Switch %q (%s)" +msgstr "" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "" + +msgid "Sync with browser" +msgstr "" + +msgid "Synchronizing..." +msgstr "Συγχρονισμός..." + +msgid "System" +msgstr "Σύστημα" + +msgid "System Log" +msgstr "Καταγραφή Συστήματος" + +msgid "System Properties" +msgstr "Ιδιότητες Συστήματος" + +msgid "System log buffer size" +msgstr "" + +msgid "TCP:" +msgstr "TCP:" + +msgid "TFTP Settings" +msgstr "Ρυθμίσεις TFTP" + +msgid "TFTP server root" +msgstr "" + +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "" + +msgid "Table" +msgstr "Πίνακας" + +msgid "Target" +msgstr "Στόχος" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "Τερματισμός" + +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" +"Οι επιτρεπόμενοι χαρακτήρες είναι: A-Z, a-z, " +"0-9 και _" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" +"Το αρχείο συσκευής της μνήμης ή του διαμέρισματος (π.χ. /dev/sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"Το σύστημα αρχείων που χρησιμοποιήθηκε για διαμόρφωση (π.χ. ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" + +msgid "The following changes have been committed" +msgstr "Οι παρακάτω αλλαγές έχουν υποβληθεί" + +msgid "The following changes have been reverted" +msgstr "Οι παρακάτω αλλαγές έχουν αναιρεθεί" + +msgid "The following rules are currently active on this system." +msgstr "Οι παρακάτω κανόνες είναι αυτή τη στιγμή ενεργοί σε αυτό το σύστημα." + +msgid "The given network name is not unique" +msgstr "Το παρεχόμενο όνομα δικτύου δεν είναι μοναδικό" + +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" + +msgid "The length of the IPv6 prefix in bits" +msgstr "" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" + +msgid "The selected protocol needs a device assigned" +msgstr "" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" + +#, fuzzy +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"Το σύστημα φλασάρετε τώρα.
ΜΗ ΣΒΗΣΕΤΕ ΤΗΝ ΣΥΣΚΕΥΗ!
Περιμένετε " +"λίγα λεπτά για να δοκιμάσετε επανασύνδεση. Ανάλογα με τις ρυθμίσεις σας, " +"είναι πιθανό να χρειαστεί να ανανεώσετε την διεύθυνση του υπολογιστή σας για " +"να αποκτήσετε ξανά πρόσβαση στη συσκευή." + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"Η εικόνα που ανεβάσατε δεν περιέχει κάποια υποστηριζόμενη μορφή. Βεβαιωθείτε " +"ότι επιλέξατε την γενική μορφή εικόνας για την πλατφόρμα σας." + +msgid "There are no active leases." +msgstr "Δεν υπάρχουν ενεργά leases." + +msgid "There are no pending changes to apply!" +msgstr "" + +msgid "There are no pending changes to revert!" +msgstr "" + +msgid "There are no pending changes!" +msgstr "" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" + +msgid "This IPv4 address of the relay" +msgstr "" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" +"Αυτός είναι ο μόνος DHCP στο τοπικό δίκτυο" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "" +"Αυτό είναι το crontab του συστήματος στο οποίο μπορούν να οριστούν " +"προγραμματισμένες εργασίες." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" +"Αυτή η λίστα δίνει μία εικόνα των τρέχοντων εργασιών συστήματος και της " +"κατάστασής τους." + +msgid "This page allows the configuration of custom button actions" +msgstr "" + +msgid "This page gives an overview over currently active network connections." +msgstr "" +"Αυτή η σελίδα δίνει μία εικόνα για τις τρέχουσες ενεργές συνδέσεις δικτύου." + +msgid "This section contains no values yet" +msgstr "Αυτό το τμήμα δεν περιέχει τιμές ακόμη" + +msgid "Time Synchronization" +msgstr "" + +msgid "Time Synchronization is not configured yet." +msgstr "" + +msgid "Timezone" +msgstr "Ζώνη ώρας" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "Διαθέσιμο Συνολικά" + +msgid "Traceroute" +msgstr "" + +msgid "Traffic" +msgstr "Κίνηση" + +msgid "Transfer" +msgstr "Μεταφέρθηκαν" + +msgid "Transmission Rate" +msgstr "Ρυθμός Εκπομπής" + +msgid "Transmit" +msgstr "Εκπομπή" + +msgid "Transmit Power" +msgstr "Ισχύς Εκπομπής" + +msgid "Transmitter Antenna" +msgstr "Κεραία Εκπομπής" + +msgid "Trigger" +msgstr "" + +msgid "Trigger Mode" +msgstr "" + +msgid "Tunnel ID" +msgstr "" + +msgid "Tunnel Interface" +msgstr "Διεπαφή Τούνελ" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "Λειτουργία Turbo" + +msgid "Tx-Power" +msgstr "Ισχύς Εκπομπής" + +msgid "Type" +msgstr "Τύπος" + +msgid "UDP:" +msgstr "UDP:" + +msgid "UMTS only" +msgstr "" + +msgid "UMTS/GPRS/EV-DO" +msgstr "UMTS/GPRS/EV-DO" + +msgid "USB Device" +msgstr "Συσκευή USB" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "UUID" + +msgid "Unable to dispatch" +msgstr "" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "Άγνωστο" + +msgid "Unknown Error, password not changed!" +msgstr "Άγνωστο Λάθος. ο κωδικός πρόσβασης δεν άλλαξε!" + +msgid "Unmanaged" +msgstr "" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "Μη-αποθηκευμένες Αλλαγές" + +msgid "Unsupported protocol type." +msgstr "" + +msgid "Update lists" +msgstr "" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" + +msgid "Upload archive..." +msgstr "" + +msgid "Uploaded File" +msgstr "Το Αρχείο Ανέβηκε" + +msgid "Uptime" +msgstr "Χρόνος εν λειτουργία" + +msgid "Use /etc/ethers" +msgstr "Χρήση /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "Χρήση πύλης DHCP" + +msgid "Use DNS servers advertised by peer" +msgstr "" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "" + +msgid "Use MTU on tunnel interface" +msgstr "" + +msgid "Use TTL on tunnel interface" +msgstr "" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "" + +msgid "Use default gateway" +msgstr "Χρήση προεπιλεγμένης πύλης" + +msgid "Use gateway metric" +msgstr "" + +msgid "Use routing table" +msgstr "" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" + +msgid "Used" +msgstr "Σε χρήση" + +msgid "Used Key Slot" +msgstr "Χρησιμοποιούμενη Υποδοχή Κλειδιού" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "Όνομα Χρήστη" + +msgid "VC-Mux" +msgstr "" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "" + +msgid "VLANs on %q (%s)" +msgstr "" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "Εξυπηρετητής VPN" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "" + +msgid "Version" +msgstr "Έκδοση" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "" + +msgid "WEP Shared Key" +msgstr "Μοιραζόμενο κλειδί WEP" + +msgid "WEP passphrase" +msgstr "Κωδική φράση WEP" + +msgid "WMM Mode" +msgstr "Υποστήριξη WMM" + +msgid "WPA passphrase" +msgstr "Κωδική φράση WPA" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "" + +msgid "Waiting for command to complete..." +msgstr "" + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "Προειδοποίηση" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "Ασύρματο" + +msgid "Wireless Adapter" +msgstr "Ασύρματος Προσαρμογέας" + +msgid "Wireless Network" +msgstr "Ασύρματο Δίκτυο" + +msgid "Wireless Overview" +msgstr "Επισκόπηση Ασύρματου Δικτύου" + +msgid "Wireless Security" +msgstr "Ασφάλεια Ασύρματου Δικτύου" + +msgid "Wireless is disabled or not associated" +msgstr "Το ασύρματο δίκτυο είναι απενεργοποιημένο ή μη συνδεδεμένο" + +msgid "Wireless is restarting..." +msgstr "Το ασύρματο δίκτυο επανεκκινείται..." + +msgid "Wireless network is disabled" +msgstr "Το ασύρματο δίκτυο είναι ανενεργό" + +msgid "Wireless network is enabled" +msgstr "Το ασύρματο δίκτυο είναι ενεργό" + +msgid "Wireless restarted" +msgstr "Το ασύρματο δίκτυο επανεκκινήθηκε" + +msgid "Wireless shut down" +msgstr "Το ασύρματο δίκτυο τερματίστηκε" + +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" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "Υποστήριξη XR" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"Μπορείτε να ενεργοποιήσετε ή να απενεργοποιήσετε σενάρια εκκίνησης εδώ. Οι " +"αλλαγές θα εφαρμοστούν αφού επανεκκινήσετε τη συσκευή.
Προειδοποίηση: Αν απενεργοποιήσετε απαραίτητα σενάρια εκκίνησης " +"όπως το \"network\", η συσκευή σας μπορεί να καταστεί μη-προσβάσιμη!" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "" + +msgid "auto" +msgstr "αυτόματα" + +msgid "baseT" +msgstr "" + +msgid "bridged" +msgstr "" + +msgid "create:" +msgstr "" + +#, fuzzy +msgid "creates a bridge over specified interface(s)" +msgstr "δημιουργεί μία γέφυρα μεταξύ των ορισμένων διεπαφών" + +msgid "dB" +msgstr "" + +msgid "dBm" +msgstr "" + +msgid "disable" +msgstr "ανενεργό" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" +"αρχείο όπου θα αποθηκεύονται τα Leases του DHCP" + +msgid "forward" +msgstr "προώθηση" + +msgid "full-duplex" +msgstr "" + +msgid "half-duplex" +msgstr "" + +msgid "help" +msgstr "βοήθεια" + +msgid "hidden" +msgstr "" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "αν ο στόχος είναι ένα δίκτυο" + +msgid "input" +msgstr "είσοδος" + +msgid "kB" +msgstr "" + +msgid "kB/s" +msgstr "" + +msgid "kbit/s" +msgstr "" + +msgid "local DNS file" +msgstr "τοπικό αρχείο DNS" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "όχι" + +msgid "no link" +msgstr "" + +msgid "none" +msgstr "κανένα" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "κλειστό" + +msgid "on" +msgstr "ανοιχτό" + +msgid "open" +msgstr "" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "" + +msgid "unlimited" +msgstr "απεριόριστα" + +msgid "unspecified" +msgstr "μη-καθορισμένο" + +msgid "unspecified -or- create:" +msgstr "μη-καθορισμένο -ή- δημιουργείστε:" + +msgid "untagged" +msgstr "" + +msgid "yes" +msgstr "ναι" + +msgid "« Back" +msgstr "« Πίσω" + +#~ msgid "Leasetime" +#~ msgstr "Χρόνος Lease" + +#, fuzzy +#~ msgid "automatic" +#~ msgstr "στατικό" + +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "Ένα επιπλέον δίκτυο θα δημιουργηθεί εάν αυτό αφεθεί κενό" + +#~ msgid "Port %d" +#~ msgstr "Θύρα %d" + +#~ msgid "VLAN Interface" +#~ msgstr "Διεπαφή VLAN" diff --git a/luci-base/po/en/base.po b/luci-base/po/en/base.po new file mode 100644 index 000000000..5667e58d0 --- /dev/null +++ b/luci-base/po/en/base.po @@ -0,0 +1,3849 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-06-10 03:40+0200\n" +"PO-Revision-Date: 2012-04-03 08:44+0200\n" +"Last-Translator: juhosg \n" +"Language-Team: LANGUAGE \n" +"Language: en\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Pootle 2.0.4\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(%d minute window, %d second interval)" + +msgid "(%s available)" +msgstr "(%s available)" + +msgid "(empty)" +msgstr "(empty)" + +msgid "(no interfaces attached)" +msgstr "(no interfaces attached)" + +msgid "-- Additional Field --" +msgstr "-- Additional Field --" + +msgid "-- Please choose --" +msgstr "-- Please choose --" + +msgid "-- custom --" +msgstr "-- custom --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "1 Minute Load:" + +msgid "15 Minute Load:" +msgstr "15 Minute Load:" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "5 Minute Load:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "DNS query port" +msgstr "DNS query port" + +msgid "DNS server port" +msgstr "DNS server port" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" +"DNS servers will be queried in the " +"order of the resolvfile" + +msgid "ESSID" +msgstr "ESSID" + +msgid "IPv4-Address" +msgstr "IPv4-Address" + +msgid "IPv4-Gateway" +msgstr "IPv4-Gateway" + +msgid "IPv4-Netmask" +msgstr "IPv4-Netmask" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"IPv6-Address or Network " +"(CIDR)" + +msgid "IPv6-Gateway" +msgstr "IPv6-Gateway" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "LED Configuration" + +msgid "LED Name" +msgstr "LED Name" + +msgid "MAC-Address" +msgstr "MAC-Address" + +msgid "" +"Max. DHCP leases" +msgstr "" +"Max. DHCP leases" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"Max. EDNS0 packet size" + +msgid "Max. concurrent queries" +msgstr "Max. concurrent queries" + +msgid "%s - %s" +msgstr "" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "AR Support" + +msgid "ARP retry threshold" +msgstr "ARP retry threshold" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "ATM Bridges" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "ATM Virtual Channel Identifier (VCI)" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "ATM Virtual Path Identifier (VPI)" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." + +msgid "ATM device number" +msgstr "ATM device number" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "Access Concentrator" + +msgid "Access Point" +msgstr "Access Point" + +msgid "Action" +msgstr "Action" + +msgid "Actions" +msgstr "Actions" + +msgid "Activate this network" +msgstr "Activate this network" + +msgid "Active IPv4-Routes" +msgstr "Active IPv4-Routes" + +msgid "Active IPv6-Routes" +msgstr "Active IPv6-Routes" + +msgid "Active Connections" +msgstr "Active Connections" + +msgid "Active DHCP Leases" +msgstr "" + +msgid "Active DHCPv6 Leases" +msgstr "" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc" + +msgid "Add" +msgstr "Add" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "Add local domain suffix to names served from hosts files" + +msgid "Add new interface..." +msgstr "Add new interface..." + +msgid "Additional Hosts files" +msgstr "Additional Hosts files" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "Address" + +msgid "Address to access local relay bridge" +msgstr "Address to access local relay bridge" + +msgid "Administration" +msgstr "Administration" + +msgid "Advanced Settings" +msgstr "Advanced Settings" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "Alert" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "Allow SSH password authentication" + +msgid "Allow all except listed" +msgstr "Allow all except listed" + +msgid "Allow listed only" +msgstr "Allow listed only" + +msgid "Allow localhost" +msgstr "Allow localhost" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "Allow remote hosts to connect to local SSH forwarded ports" + +msgid "Allow root logins with password" +msgstr "Allow root logins with password" + +msgid "Allow the root user to login with password" +msgstr "Allow the root user to login with password" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "Antenna 1" + +msgid "Antenna 2" +msgstr "Antenna 2" + +msgid "Antenna Configuration" +msgstr "" + +msgid "Any zone" +msgstr "Any zone" + +msgid "Apply" +msgstr "Apply" + +msgid "Applying changes" +msgstr "Applying changes" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "Assign interfaces..." + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "Associated Stations" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "Authentication" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "Authoritative" + +msgid "Authorization Required" +msgstr "Authorization Required" + +msgid "Auto Refresh" +msgstr "Auto Refresh" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "Available" + +msgid "Available packages" +msgstr "Available packages" + +msgid "Average:" +msgstr "Average:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "Back" + +msgid "Back to Overview" +msgstr "Back to Overview" + +msgid "Back to configuration" +msgstr "Back to configuration" + +msgid "Back to overview" +msgstr "Back to overview" + +msgid "Back to scan results" +msgstr "Back to scan results" + +msgid "Background Scan" +msgstr "Background Scan" + +msgid "Backup / Flash Firmware" +msgstr "Backup / Flash Firmware" + +msgid "Backup / Restore" +msgstr "Backup / Restore" + +msgid "Backup file list" +msgstr "Backup file list" + +msgid "Bad address specified!" +msgstr "Bad address specified!" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "Bitrate" + +msgid "Bogus NX Domain Override" +msgstr "Bogus NX Domain Override" + +msgid "Bridge" +msgstr "Bridge" + +msgid "Bridge interfaces" +msgstr "Bridge interfaces" + +msgid "Bridge unit number" +msgstr "Bridge unit number" + +msgid "Bring up on boot" +msgstr "Bring up on boot" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "" + +msgid "Buffered" +msgstr "Buffered" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "Buttons" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "CPU usage (%)" + +msgid "Cancel" +msgstr "Cancel" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "Chain" + +msgid "Changes" +msgstr "Changes" + +msgid "Changes applied." +msgstr "Changes applied." + +msgid "Changes the administrator password for accessing the device" +msgstr "Changes the administrator password for accessing the device" + +msgid "Channel" +msgstr "Channel" + +msgid "Check" +msgstr "Check" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "Checksum" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" + +msgid "Cipher" +msgstr "Cipher" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." + +msgid "Client" +msgstr "Client" + +msgid "Client ID to send when requesting DHCP" +msgstr "Client ID to send when requesting DHCP" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" + +msgid "Close list..." +msgstr "Close list..." + +msgid "Collecting data..." +msgstr "Collecting data..." + +msgid "Command" +msgstr "Command" + +msgid "Common Configuration" +msgstr "Common Configuration" + +msgid "Compression" +msgstr "Compression" + +msgid "Configuration" +msgstr "Configuration" + +msgid "Configuration applied." +msgstr "Configuration applied." + +msgid "Configuration files will be kept." +msgstr "Configuration files will be kept." + +msgid "Confirmation" +msgstr "Confirmation" + +msgid "Connect" +msgstr "Connect" + +msgid "Connected" +msgstr "Connected" + +msgid "Connection Limit" +msgstr "Connection Limit" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "Connections" + +msgid "Country" +msgstr "Country" + +msgid "Country Code" +msgstr "Country Code" + +msgid "Cover the following interface" +msgstr "Cover the following interface" + +msgid "Cover the following interfaces" +msgstr "Cover the following interfaces" + +msgid "Create / Assign firewall-zone" +msgstr "Create / Assign firewall-zone" + +msgid "Create Interface" +msgstr "Create Interface" + +msgid "Create a bridge over multiple interfaces" +msgstr "Create a bridge over multiple interfaces" + +msgid "Critical" +msgstr "Critical" + +msgid "Cron Log Level" +msgstr "Cron Log Level" + +msgid "Custom Interface" +msgstr "Custom Interface" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"Customizes the behaviour of the device LEDs if possible." + +msgid "DHCP Leases" +msgstr "DHCP Leases" + +msgid "DHCP Server" +msgstr "DHCP Server" + +msgid "DHCP and DNS" +msgstr "DHCP and DNS" + +msgid "DHCP client" +msgstr "DHCP client" + +msgid "DHCP-Options" +msgstr "DHCP-Options" + +msgid "DHCPv6 Leases" +msgstr "" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "DNS forwardings" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "Debug" + +msgid "Default %d" +msgstr "Default %d" + +msgid "Default gateway" +msgstr "Default gateway" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "Default state" + +msgid "Define a name for this network." +msgstr "Define a name for this network." + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." + +msgid "Delete" +msgstr "Delete" + +msgid "Delete this network" +msgstr "Delete this network" + +msgid "Description" +msgstr "Description" + +msgid "Design" +msgstr "Design" + +msgid "Destination" +msgstr "Destination" + +msgid "Device" +msgstr "Device" + +msgid "Device Configuration" +msgstr "Device Configuration" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "Diagnostics" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "Directory" + +msgid "Disable" +msgstr "" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" + +msgid "Disable DNS setup" +msgstr "" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "Disable HW-Beacon timer" + +msgid "Disabled" +msgstr "Disabled" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "" + +msgid "Displaying only packages containing" +msgstr "" + +msgid "Distance Optimization" +msgstr "Distance Optimization" + +msgid "Distance to farthest network member in meters." +msgstr "Distance to farthest network member in meters." + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "Diversity" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" + +msgid "Do not forward reverse lookups for local networks" +msgstr "" + +msgid "Do not send probe responses" +msgstr "Do not send probe responses" + +msgid "Domain required" +msgstr "Domain required" + +msgid "Domain whitelist" +msgstr "" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" +"Don't forward DNS-Requests " +"without DNS-Name" + +msgid "Download and install package" +msgstr "Download and install package" + +msgid "Download backup" +msgstr "" + +msgid "Dropbear Instance" +msgstr "" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" +"Dynamic DHCP" + +msgid "Dynamic tunnel" +msgstr "" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "EAP-Method" + +msgid "Edit" +msgstr "Edit" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "" + +msgid "Edit this network" +msgstr "" + +msgid "Emergency" +msgstr "" + +msgid "Enable" +msgstr "" + +msgid "Enable STP" +msgstr "Enable STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "" + +msgid "Enable Jumbo Frame passthrough" +msgstr "" + +msgid "Enable NTP client" +msgstr "" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "" + +msgid "Enable VLAN functionality" +msgstr "" + +msgid "Enable WPS pushbutton, requires WPA(2)-PSK" +msgstr "" + +msgid "Enable key reinstallation (KRACK) countermeasures" +msgstr "" + +msgid "Enable learning and aging" +msgstr "" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "" + +msgid "Enable this swap" +msgstr "" + +msgid "Enable/Disable" +msgstr "Enable/Disable" + +msgid "Enabled" +msgstr "Enabled" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "Enables the Spanning Tree Protocol on this bridge" + +msgid "Encapsulation mode" +msgstr "" + +msgid "Encryption" +msgstr "Encryption" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "" + +msgid "Error" +msgstr "Error" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "Ethernet Adapter" + +msgid "Ethernet Switch" +msgstr "Ethernet Switch" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "" + +msgid "Expires" +msgstr "" + +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "" + +msgid "External system log server port" +msgstr "" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "Fast Frames" + +msgid "File" +msgstr "" + +msgid "Filename of the boot image advertised to clients" +msgstr "" + +msgid "Filesystem" +msgstr "Filesystem" + +msgid "Filter" +msgstr "Filter" + +msgid "Filter private" +msgstr "Filter private" + +msgid "Filter useless" +msgstr "Filter useless" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "" + +msgid "Find package" +msgstr "Find package" + +msgid "Finish" +msgstr "" + +msgid "Firewall" +msgstr "Firewall" + +msgid "Firewall Settings" +msgstr "Firewall Settings" + +msgid "Firewall Status" +msgstr "Firewall Status" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "" + +msgid "Fixed source port for outbound DNS queries" +msgstr "" + +msgid "Flash Firmware" +msgstr "Flash Firmware" + +msgid "Flash image..." +msgstr "" + +msgid "Flash new firmware image" +msgstr "" + +msgid "Flash operations" +msgstr "" + +msgid "Flashing..." +msgstr "" + +msgid "Force" +msgstr "Force" + +msgid "Force CCMP (AES)" +msgstr "" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "" + +msgid "Force TKIP" +msgstr "" + +msgid "Force TKIP and CCMP (AES)" +msgstr "" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "" + +msgid "Forwarding mode" +msgstr "" + +msgid "Fragmentation Threshold" +msgstr "Fragmentation Threshold" + +msgid "Frame Bursting" +msgstr "Frame Bursting" + +msgid "Free" +msgstr "" + +msgid "Free space" +msgstr "" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "" + +msgid "GPRS only" +msgstr "" + +msgid "Gateway" +msgstr "" + +msgid "Gateway ports" +msgstr "" + +msgid "General Settings" +msgstr "" + +msgid "General Setup" +msgstr "General Setup" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "" + +msgid "Go to relevant configuration page" +msgstr "Go to relevant configuration page" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "Handler" + +msgid "Hang Up" +msgstr "Hang Up" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" + +msgid "Hermes 802.11b Wireless Controller" +msgstr "" + +msgid "Hide ESSID" +msgstr "Hide ESSID" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "Host entries" + +msgid "Host expiry timeout" +msgstr "" + +msgid "Host-IP or Network" +msgstr "Host-IP or Network" + +msgid "Hostname" +msgstr "Hostname" + +msgid "Hostname to send when requesting DHCP" +msgstr "" + +msgid "Hostnames" +msgstr "Hostnames" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "IP address" + +msgid "IPv4" +msgstr "" + +msgid "IPv4 Firewall" +msgstr "" + +msgid "IPv4 WAN Status" +msgstr "" + +msgid "IPv4 address" +msgstr "" + +msgid "IPv4 and IPv6" +msgstr "" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "" + +msgid "IPv4 gateway" +msgstr "" + +msgid "IPv4 netmask" +msgstr "" + +msgid "IPv4 only" +msgstr "" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "" + +msgid "IPv4-Address" +msgstr "" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "" + +msgid "IPv6 address" +msgstr "" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "" + +msgid "IPv6 only" +msgstr "" + +msgid "IPv6 prefix" +msgstr "" + +msgid "IPv6 prefix length" +msgstr "" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "" + +msgid "Identity" +msgstr "Identity" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" + +msgid "If unchecked, no default route is configured" +msgstr "" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." + +msgid "Ignore /etc/hosts" +msgstr "Ignore /etc/hosts" + +msgid "Ignore interface" +msgstr "Ignore interface" + +msgid "Ignore resolve file" +msgstr "Ignore resolve file" + +msgid "Image" +msgstr "" + +msgid "In" +msgstr "In" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "" + +msgid "Inbound:" +msgstr "" + +msgid "Info" +msgstr "" + +msgid "Initscript" +msgstr "Initscript" + +msgid "Initscripts" +msgstr "Initscripts" + +msgid "Install" +msgstr "Install" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "" + +msgid "Install protocol extensions..." +msgstr "" + +msgid "Installed packages" +msgstr "" + +msgid "Interface" +msgstr "Interface" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "" + +msgid "Interface Overview" +msgstr "" + +msgid "Interface is reconnecting..." +msgstr "" + +msgid "Interface is shutting down..." +msgstr "" + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "" + +msgid "Interface reconnected" +msgstr "" + +msgid "Interface shut down" +msgstr "" + +msgid "Interfaces" +msgstr "Interfaces" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "" + +msgid "Invalid" +msgstr "Invalid input value" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "" + +msgid "Invalid username and/or password! Please try again." +msgstr "Invalid username and/or password! Please try again." + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"It appears that you try to flash an image that does not fit into the flash " +"memory, please verify the image file!" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "" + +msgid "Join Network" +msgstr "Join Network" + +msgid "Join Network: Wireless Scan" +msgstr "" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "" + +msgid "Kernel Log" +msgstr "Kernel Log" + +msgid "Kernel Version" +msgstr "" + +msgid "Key" +msgstr "Key" + +msgid "Key #%d" +msgstr "" + +msgid "Kill" +msgstr "Kill" + +msgid "L2TP" +msgstr "" + +msgid "L2TP Server" +msgstr "" + +msgid "LCP echo failure threshold" +msgstr "" + +msgid "LCP echo interval" +msgstr "" + +msgid "LLC" +msgstr "" + +msgid "Label" +msgstr "" + +msgid "Language" +msgstr "Language" + +msgid "Language and Style" +msgstr "" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "" + +msgid "Leasefile" +msgstr "Leasefile" + +msgid "Leasetime remaining" +msgstr "Leasetime remaining" + +msgid "Leave empty to autodetect" +msgstr "" + +msgid "Leave empty to use the current WAN address" +msgstr "" + +msgid "Legend:" +msgstr "" + +msgid "Limit" +msgstr "Limit" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "Link On" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" + +msgid "Listening port for inbound DNS queries" +msgstr "" + +msgid "Load" +msgstr "Load" + +msgid "Load Average" +msgstr "" + +msgid "Loading" +msgstr "" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "" + +msgid "Local IPv6 address" +msgstr "" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "" + +msgid "Local Time" +msgstr "Local Time" + +msgid "Local domain" +msgstr "" + +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" + +msgid "Local server" +msgstr "" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" + +msgid "Localise queries" +msgstr "Localise queries" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "" + +msgid "Log queries" +msgstr "Log queries" + +msgid "Logging" +msgstr "" + +msgid "Login" +msgstr "Login" + +msgid "Logout" +msgstr "Logout" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "" + +msgid "MAC-Address" +msgstr "" + +msgid "MAC-Address Filter" +msgstr "MAC-Address Filter" + +msgid "MAC-Filter" +msgstr "MAC-Filter" + +msgid "MAC-List" +msgstr "MAC-List" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "" + +msgid "MTU" +msgstr "" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "Maximum Rate" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "" + +msgid "Maximum hold time" +msgstr "Maximum hold time" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "" + +msgid "Mbit/s" +msgstr "" + +msgid "Memory" +msgstr "Memory" + +msgid "Memory usage (%)" +msgstr "Memory usage (%)" + +msgid "Metric" +msgstr "Metric" + +msgid "Minimum Rate" +msgstr "Minimum Rate" + +msgid "Minimum hold time" +msgstr "Minimum hold time" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "Mode" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "Modem device" + +msgid "Modem init timeout" +msgstr "" + +msgid "Monitor" +msgstr "Monitor" + +msgid "Mount Entry" +msgstr "" + +msgid "Mount Point" +msgstr "Mount Point" + +msgid "Mount Points" +msgstr "Mount Points" + +msgid "Mount Points - Mount Entry" +msgstr "" + +msgid "Mount Points - Swap Entry" +msgstr "" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "" + +msgid "Mount point" +msgstr "" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "Mounted file systems" + +msgid "Move down" +msgstr "" + +msgid "Move up" +msgstr "" + +msgid "Multicast Rate" +msgstr "Multicast Rate" + +msgid "Multicast address" +msgstr "" + +msgid "NAS ID" +msgstr "NAS ID" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "Name" + +msgid "Name of the new interface" +msgstr "" + +msgid "Name of the new network" +msgstr "Name of the new network" + +msgid "Navigation" +msgstr "Navigation" + +msgid "Netmask" +msgstr "" + +msgid "Network" +msgstr "Network" + +msgid "Network Utilities" +msgstr "" + +msgid "Network boot image" +msgstr "" + +msgid "Network without interfaces." +msgstr "" + +msgid "Next »" +msgstr "" + +msgid "No DHCP Server configured for this interface" +msgstr "" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "No chains in this table" + +msgid "No files found" +msgstr "" + +msgid "No information available" +msgstr "" + +msgid "No negative cache" +msgstr "" + +msgid "No network configured on this device" +msgstr "" + +msgid "No network name specified" +msgstr "" + +msgid "No package lists available" +msgstr "" + +msgid "No password set!" +msgstr "" + +msgid "No rules in this chain" +msgstr "No rules in this chain" + +msgid "No zone assigned" +msgstr "" + +msgid "Noise" +msgstr "Noise" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "" + +msgid "Normal" +msgstr "" + +msgid "Not Found" +msgstr "" + +msgid "Not associated" +msgstr "" + +msgid "Not connected" +msgstr "" + +msgid "Note: Configuration files will be erased." +msgstr "" + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "" + +msgid "Nslookup" +msgstr "" + +msgid "OK" +msgstr "OK" + +msgid "OPKG-Configuration" +msgstr "OPKG-Configuration" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." + +msgid "On-State Delay" +msgstr "" + +msgid "One of hostname or mac address must be specified!" +msgstr "" + +msgid "One or more fields contain invalid values!" +msgstr "" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "" + +msgid "Open list..." +msgstr "" + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "" + +msgid "Option removed" +msgstr "" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "Options" + +msgid "Other:" +msgstr "" + +msgid "Out" +msgstr "Out" + +msgid "Outbound:" +msgstr "" + +msgid "Outdoor Channels" +msgstr "Outdoor Channels" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "" + +msgid "Override MTU" +msgstr "" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" + +msgid "Override the table used for internal routes" +msgstr "" + +msgid "Overview" +msgstr "Overview" + +msgid "Owner" +msgstr "Owner" + +msgid "PAP/CHAP password" +msgstr "" + +msgid "PAP/CHAP username" +msgstr "" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "" + +msgid "PPPoA Encapsulation" +msgstr "PPPoA Encapsulation" + +msgid "PPPoATM" +msgstr "" + +msgid "PPPoE" +msgstr "" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "" + +msgid "Package lists are older than 24 hours" +msgstr "" + +msgid "Package name" +msgstr "Package name" + +msgid "Packets" +msgstr "Packets" + +msgid "Part of zone %q" +msgstr "" + +msgid "Password" +msgstr "Password" + +msgid "Password authentication" +msgstr "Password authentication" + +msgid "Password of Private Key" +msgstr "Password of Private Key" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "Path to CA-Certificate" + +msgid "Path to Client-Certificate" +msgstr "" + +msgid "Path to Private Key" +msgstr "Path to Private Key" + +msgid "Path to executable which handles the button event" +msgstr "" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "Perform reboot" + +msgid "Perform reset" +msgstr "" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "" + +msgid "Physical Settings" +msgstr "Physical Settings" + +msgid "Ping" +msgstr "" + +msgid "Pkts." +msgstr "Pkts." + +msgid "Please enter your username and password." +msgstr "Please enter your username and password." + +msgid "Policy" +msgstr "Policy" + +msgid "Port" +msgstr "Port" + +msgid "Port status:" +msgstr "" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "Prevents client-to-client communication" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "Proceed" + +msgid "Processes" +msgstr "Processes" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "Prot." + +msgid "Protocol" +msgstr "Protocol" + +msgid "Protocol family" +msgstr "" + +msgid "Protocol of the new interface" +msgstr "" + +msgid "Protocol support is not installed" +msgstr "" + +msgid "Provide NTP server" +msgstr "" + +msgid "Provide new network" +msgstr "" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "Pseudo Ad-Hoc (ahdemo)" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "RTS/CTS Threshold" + +msgid "RX" +msgstr "RX" + +msgid "RX Rate" +msgstr "" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "" + +msgid "Radius-Accounting-Port" +msgstr "" + +msgid "Radius-Accounting-Secret" +msgstr "" + +msgid "Radius-Accounting-Server" +msgstr "" + +msgid "Radius-Authentication-Port" +msgstr "" + +msgid "Radius-Authentication-Secret" +msgstr "" + +msgid "Radius-Authentication-Server" +msgstr "" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"Read /etc/ethers to configure the DHCP-Server" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" + +msgid "Really reset all changes?" +msgstr "" + +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" + +msgid "Really switch protocol?" +msgstr "" + +msgid "Realtime Connections" +msgstr "" + +msgid "Realtime Graphs" +msgstr "" + +msgid "Realtime Load" +msgstr "" + +msgid "Realtime Traffic" +msgstr "" + +msgid "Realtime Wireless" +msgstr "" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "" + +msgid "Reboot" +msgstr "Reboot" + +msgid "Rebooting..." +msgstr "" + +msgid "Reboots the operating system of your device" +msgstr "Reboots the operating system of your device" + +msgid "Receive" +msgstr "Receive" + +msgid "Receiver Antenna" +msgstr "Receiver Antenna" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "" + +msgid "Reconnecting interface" +msgstr "" + +msgid "References" +msgstr "References" + +msgid "Regulatory Domain" +msgstr "Regulatory Domain" + +msgid "Relay" +msgstr "" + +msgid "Relay Bridge" +msgstr "" + +msgid "Relay between networks" +msgstr "" + +msgid "Relay bridge" +msgstr "" + +msgid "Remote IPv4 address" +msgstr "" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "Remove" + +msgid "Repeat scan" +msgstr "Repeat scan" + +msgid "Replace entry" +msgstr "Replace entry" + +msgid "Replace wireless configuration" +msgstr "" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "Reset" + +msgid "Reset Counters" +msgstr "Reset Counters" + +msgid "Reset to defaults" +msgstr "" + +msgid "Resolv and Hosts Files" +msgstr "" + +msgid "Resolve file" +msgstr "" + +msgid "Restart" +msgstr "Restart" + +msgid "Restart Firewall" +msgstr "Restart Firewall" + +msgid "Restore backup" +msgstr "Restore backup" + +msgid "Reveal/hide password" +msgstr "" + +msgid "Revert" +msgstr "Revert" + +msgid "Root" +msgstr "" + +msgid "Root directory for files served via TFTP" +msgstr "" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "" + +msgid "Routes" +msgstr "Routes" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." + +msgid "Run a filesystem check before mounting the device" +msgstr "" + +msgid "Run filesystem check" +msgstr "" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "Save" + +msgid "Save & Apply" +msgstr "Save & Apply" + +msgid "Save & Apply" +msgstr "" + +msgid "Scan" +msgstr "Scan" + +msgid "Scheduled Tasks" +msgstr "Scheduled Tasks" + +msgid "Section added" +msgstr "" + +msgid "Section removed" +msgstr "" + +msgid "See \"mount\" manpage for details" +msgstr "" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" + +msgid "Separate Clients" +msgstr "Separate Clients" + +msgid "Separate WDS" +msgstr "Separate WDS" + +msgid "Server Settings" +msgstr "" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "" + +msgid "Service Type" +msgstr "" + +msgid "Services" +msgstr "Services" + +msgid "Set up Time Synchronization" +msgstr "" + +msgid "Setup DHCP Server" +msgstr "" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "" + +msgid "Shutdown this interface" +msgstr "" + +msgid "Shutdown this network" +msgstr "" + +msgid "Signal" +msgstr "Signal" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "" + +msgid "Size" +msgstr "Size" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "Skip" + +msgid "Skip to content" +msgstr "Skip to content" + +msgid "Skip to navigation" +msgstr "Skip to navigation" + +msgid "Slot time" +msgstr "Slot time" + +msgid "Software" +msgstr "Software" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "" + +msgid "Sorry, the object you requested was not found." +msgstr "" + +msgid "Sorry, the server encountered an unexpected error." +msgstr "" + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" + +msgid "Sort" +msgstr "" + +msgid "Source" +msgstr "Source" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "Specifies the button state to handle" + +msgid "Specifies the directory the device is attached to" +msgstr "" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "" + +msgid "Start" +msgstr "Start" + +msgid "Start priority" +msgstr "Start priority" + +msgid "Startup" +msgstr "" + +msgid "Static IPv4 Routes" +msgstr "Static IPv4 Routes" + +msgid "Static IPv6 Routes" +msgstr "Static IPv6 Routes" + +msgid "Static Leases" +msgstr "Static Leases" + +msgid "Static Routes" +msgstr "Static Routes" + +msgid "Static WDS" +msgstr "" + +msgid "Static address" +msgstr "" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" + +msgid "Status" +msgstr "Status" + +msgid "Stop" +msgstr "Stop" + +msgid "Strict order" +msgstr "Strict order" + +msgid "Submit" +msgstr "Submit" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "" + +msgid "Switch" +msgstr "Switch" + +msgid "Switch %q" +msgstr "" + +msgid "Switch %q (%s)" +msgstr "" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "" + +msgid "Sync with browser" +msgstr "" + +msgid "Synchronizing..." +msgstr "" + +msgid "System" +msgstr "System" + +msgid "System Log" +msgstr "System Log" + +msgid "System Properties" +msgstr "" + +msgid "System log buffer size" +msgstr "" + +msgid "TCP:" +msgstr "" + +msgid "TFTP Settings" +msgstr "" + +msgid "TFTP server root" +msgstr "" + +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "" + +msgid "Table" +msgstr "Table" + +msgid "Target" +msgstr "Target" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "Terminate" + +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"The filesystem that was used to format the memory (e.g. ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" + +msgid "The following changes have been committed" +msgstr "" + +msgid "The following changes have been reverted" +msgstr "The following changes have been reverted" + +msgid "The following rules are currently active on this system." +msgstr "The following rules are currently active on this system." + +msgid "The given network name is not unique" +msgstr "" + +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" + +msgid "The length of the IPv6 prefix in bits" +msgstr "" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" + +msgid "The selected protocol needs a device assigned" +msgstr "" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" + +#, fuzzy +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes until you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." + +msgid "There are no active leases." +msgstr "" + +msgid "There are no pending changes to apply!" +msgstr "" + +msgid "There are no pending changes to revert!" +msgstr "" + +msgid "There are no pending changes!" +msgstr "" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" + +msgid "This IPv4 address of the relay" +msgstr "" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" +"This is the only DHCP in the local network" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "This is the system crontab in which scheduled tasks can be defined." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" +"This list gives an overview over currently running system processes and " +"their status." + +msgid "This page allows the configuration of custom button actions" +msgstr "" + +msgid "This page gives an overview over currently active network connections." +msgstr "This page gives an overview over currently active network connections." + +msgid "This section contains no values yet" +msgstr "This section contains no values yet" + +msgid "Time Synchronization" +msgstr "" + +msgid "Time Synchronization is not configured yet." +msgstr "" + +msgid "Timezone" +msgstr "Timezone" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "" + +msgid "Traceroute" +msgstr "" + +msgid "Traffic" +msgstr "Traffic" + +msgid "Transfer" +msgstr "Transfer" + +msgid "Transmission Rate" +msgstr "Transmission Rate" + +msgid "Transmit" +msgstr "Transmit" + +msgid "Transmit Power" +msgstr "Transmit Power" + +msgid "Transmitter Antenna" +msgstr "Transmitter Antenna" + +msgid "Trigger" +msgstr "" + +msgid "Trigger Mode" +msgstr "" + +msgid "Tunnel ID" +msgstr "" + +msgid "Tunnel Interface" +msgstr "" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "Turbo Mode" + +msgid "Tx-Power" +msgstr "" + +msgid "Type" +msgstr "Type" + +msgid "UDP:" +msgstr "" + +msgid "UMTS only" +msgstr "" + +msgid "UMTS/GPRS/EV-DO" +msgstr "" + +msgid "USB Device" +msgstr "" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "" + +msgid "Unable to dispatch" +msgstr "" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "" + +msgid "Unknown Error, password not changed!" +msgstr "" + +msgid "Unmanaged" +msgstr "" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "Unsaved Changes" + +msgid "Unsupported protocol type." +msgstr "" + +msgid "Update lists" +msgstr "" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" + +msgid "Upload archive..." +msgstr "" + +msgid "Uploaded File" +msgstr "Uploaded File" + +msgid "Uptime" +msgstr "Uptime" + +msgid "Use /etc/ethers" +msgstr "Use /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "" + +msgid "Use DNS servers advertised by peer" +msgstr "" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "" + +msgid "Use MTU on tunnel interface" +msgstr "" + +msgid "Use TTL on tunnel interface" +msgstr "" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "" + +msgid "Use default gateway" +msgstr "" + +msgid "Use gateway metric" +msgstr "" + +msgid "Use routing table" +msgstr "" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" + +msgid "Used" +msgstr "Used" + +msgid "Used Key Slot" +msgstr "" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "Username" + +msgid "VC-Mux" +msgstr "" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "" + +msgid "VLANs on %q (%s)" +msgstr "" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "" + +msgid "Version" +msgstr "Version" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "" + +msgid "WEP Shared Key" +msgstr "" + +msgid "WEP passphrase" +msgstr "" + +msgid "WMM Mode" +msgstr "WMM Mode" + +msgid "WPA passphrase" +msgstr "" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "" + +msgid "Waiting for command to complete..." +msgstr "" + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "" + +msgid "Wireless Adapter" +msgstr "Wireless Adapter" + +msgid "Wireless Network" +msgstr "Wireless Network" + +msgid "Wireless Overview" +msgstr "Wireless Overview" + +msgid "Wireless Security" +msgstr "Wireless Security" + +msgid "Wireless is disabled or not associated" +msgstr "" + +msgid "Wireless is restarting..." +msgstr "" + +msgid "Wireless network is disabled" +msgstr "" + +msgid "Wireless network is enabled" +msgstr "" + +msgid "Wireless restarted" +msgstr "" + +msgid "Wireless shut down" +msgstr "" + +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 "" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "XR Support" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "" + +msgid "auto" +msgstr "auto" + +msgid "baseT" +msgstr "" + +msgid "bridged" +msgstr "" + +msgid "create:" +msgstr "" + +msgid "creates a bridge over specified interface(s)" +msgstr "creates a bridge over specified interface(s)" + +msgid "dB" +msgstr "" + +msgid "dBm" +msgstr "" + +msgid "disable" +msgstr "disable" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" +"file where given DHCP-leases will be stored" + +msgid "forward" +msgstr "" + +msgid "full-duplex" +msgstr "" + +msgid "half-duplex" +msgstr "" + +msgid "help" +msgstr "help" + +msgid "hidden" +msgstr "" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "if target is a network" + +msgid "input" +msgstr "" + +msgid "kB" +msgstr "" + +msgid "kB/s" +msgstr "" + +msgid "kbit/s" +msgstr "" + +msgid "local DNS file" +msgstr "local DNS file" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "" + +msgid "no link" +msgstr "" + +msgid "none" +msgstr "none" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "" + +msgid "on" +msgstr "" + +msgid "open" +msgstr "" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "" + +msgid "unlimited" +msgstr "" + +msgid "unspecified" +msgstr "" + +msgid "unspecified -or- create:" +msgstr "unspecified -or- create:" + +msgid "untagged" +msgstr "" + +msgid "yes" +msgstr "" + +msgid "« Back" +msgstr "« Back" + +#~ msgid "Leasetime" +#~ msgstr "Leasetime" + +#~ msgid "automatic" +#~ msgstr "automatic" + +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "An additional network will be created if you leave this unchecked." + +#~ msgid "CPU" +#~ msgstr "CPU" diff --git a/luci-base/po/es/base.po b/luci-base/po/es/base.po new file mode 100644 index 000000000..cf79ce28c --- /dev/null +++ b/luci-base/po/es/base.po @@ -0,0 +1,3980 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-06-10 03:41+0200\n" +"PO-Revision-Date: 2014-05-04 11:38+0200\n" +"Last-Translator: José Vicente \n" +"Language-Team: LANGUAGE \n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Pootle 2.0.6\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(ventana de %d minutos, intervalo de %d segundos)" + +msgid "(%s available)" +msgstr "(%s está disponible)" + +msgid "(empty)" +msgstr "(vacío)" + +msgid "(no interfaces attached)" +msgstr "(sin interfaces conectados)" + +msgid "-- Additional Field --" +msgstr "-- Campo Adicional --" + +msgid "-- Please choose --" +msgstr "-- Elija, por favor --" + +msgid "-- custom --" +msgstr "-- introducir --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "Carga a 1 minuto:" + +msgid "15 Minute Load:" +msgstr "Carga a 15 minutos:" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "Carga a 5 minutos:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "" +"BSSID" + +msgid "DNS query port" +msgstr "Puerto de consultas al DNS" + +msgid "DNS server port" +msgstr "Puerto del servidor DNS" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" +"Los servidores de DNS se consultan " +"en el orden en que aparecen en el fichero resolv" + +msgid "ESSID" +msgstr "" +"ESSID" + +msgid "IPv4-Address" +msgstr "Dirección IPv4" + +msgid "IPv4-Gateway" +msgstr "" +"Puerta de enlace IPv4" + +msgid "IPv4-Netmask" +msgstr "Máscara de red IPv4" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"Dirección o red (CIDR)IPv6" + +msgid "IPv6-Gateway" +msgstr "" +"Puerta de enlace IPv6" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "Configuración de LEDs" + +msgid "LED Name" +msgstr "Nombre del LED" + +msgid "MAC-Address" +msgstr "Dirección MAC" + +msgid "" +"Max. DHCP leases" +msgstr "" +"Máximas cesiones DHCP" + +msgid "" +"Max. EDNS0 packet size" +msgstr "Tamaño máximo de paquetes EDNS0" + +msgid "Max. concurrent queries" +msgstr "Máximo número de consultas concurrentes" + +msgid "%s - %s" +msgstr "%s - %s" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "Soporte a AR" + +msgid "ARP retry threshold" +msgstr "Umbral de reintento ARP" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "Puente ATM" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "Identificador de canal virtual ATM (VCI)" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "Identificador de camino virtual ATM (VPI)" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"Los puentes ATM exponen conexiones AAL5 ethernet encapsuladas como " +"interfaces de red Linux que se pueden usar junto a DHCP o PPP para conectar " +"a la red del proveedor." + +msgid "ATM device number" +msgstr "Número de dispositivo ATM" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "Concentrador de acceso" + +msgid "Access Point" +msgstr "Punto de Acceso" + +msgid "Action" +msgstr "Acción" + +msgid "Actions" +msgstr "Acciones" + +msgid "Activate this network" +msgstr "Activar esta red" + +msgid "Active IPv4-Routes" +msgstr "Rutas activas IPv4" + +msgid "Active IPv6-Routes" +msgstr "Rutas activas IPv6" + +msgid "Active Connections" +msgstr "Conexiones activas" + +msgid "Active DHCP Leases" +msgstr "Cesiones DHCP activas" + +msgid "Active DHCPv6 Leases" +msgstr "Cesiones DHCPv6 activas" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc" + +msgid "Add" +msgstr "Añadir" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "" +"Añadir el sufijo de dominio local a los nombres servidos desde el fichero de " +"máquinas" + +msgid "Add new interface..." +msgstr "Añadir nueva interfaz..." + +msgid "Additional Hosts files" +msgstr "Ficheros de máquinas adicionales" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "Dirección" + +msgid "Address to access local relay bridge" +msgstr "Dirección del puente relé local" + +msgid "Administration" +msgstr "Administración" + +msgid "Advanced Settings" +msgstr "Configuración avanzada" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "Alerta" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "" +"Permitir autenticación de contraseña via SSH" + +msgid "Allow all except listed" +msgstr "Permitir a todos excepto a los de la lista" + +msgid "Allow listed only" +msgstr "Permitir a los pertenecientes en la lista" + +msgid "Allow localhost" +msgstr "Permitir a la propia máquina" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "Permitir a máquinas remotas conectar a puestos SSH locales traspasados" + +msgid "Allow root logins with password" +msgstr "Permitir conexiones a root con contraseña" + +msgid "Allow the root user to login with password" +msgstr "Permitir al usuario root conectar con contraseña" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" +"Permitir respuestas en el rango 127.0.0.0/8, por ejemplo para servicios RBL" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "Antena 1" + +msgid "Antenna 2" +msgstr "Antena 2" + +msgid "Antenna Configuration" +msgstr "Configuración de la antena" + +msgid "Any zone" +msgstr "Cualquier zona" + +msgid "Apply" +msgstr "Aplicar" + +msgid "Applying changes" +msgstr "Aplicando cambios" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "Asigne interfaces..." + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "Estaciones asociadas" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Controlador inalámbrico 802.11%s Atheros" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "Autentificación" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "Autorizado" + +msgid "Authorization Required" +msgstr "Conéctese" + +msgid "Auto Refresh" +msgstr "Autorefresco" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "Disponible" + +msgid "Available packages" +msgstr "Paquetes disponibles" + +msgid "Average:" +msgstr "Media:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "Volver" + +msgid "Back to Overview" +msgstr "Volver al resumen" + +msgid "Back to configuration" +msgstr "Volver a la configuración" + +msgid "Back to overview" +msgstr "Volver al resumen" + +msgid "Back to scan results" +msgstr "Volver a resultados de la exploración" + +msgid "Background Scan" +msgstr "Exploración en segundo plano" + +msgid "Backup / Flash Firmware" +msgstr "Copia de seguridad / Grabar firmware" + +msgid "Backup / Restore" +msgstr "Salvar / Restaurar" + +msgid "Backup file list" +msgstr "Salvar lista de ficheros" + +msgid "Bad address specified!" +msgstr "¡Dirección no válida!" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"Lista de ficheros a los que hacer copia de seguridad. Es una lista de " +"ficheros de configuración cambiados por ficheros marcados por opkg, ficheros " +"esenciales base y los patrones de copia de seguridad definidos por el " +"usuario." + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "Bitrate" + +msgid "Bogus NX Domain Override" +msgstr "Ignorar dominio falso NX" + +msgid "Bridge" +msgstr "Puente" + +msgid "Bridge interfaces" +msgstr "Puentear interfaces" + +msgid "Bridge unit number" +msgstr "Número de unidad del puente" + +msgid "Bring up on boot" +msgstr "Activar en el arranque" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "Controlador inalámbrico 802.11%s Broadcom" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "Controlador inalámbrico 802.11 BCM%04x" + +msgid "Buffered" +msgstr "En búfer" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "Botones" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "Uso de CPU (%)" + +msgid "Cancel" +msgstr "Cancelar" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "Cadena" + +msgid "Changes" +msgstr "Cambios" + +msgid "Changes applied." +msgstr "Cambios aplicados." + +msgid "Changes the administrator password for accessing the device" +msgstr "Cambie la contraseña del administrador para acceder al dispositivo" + +msgid "Channel" +msgstr "Canal" + +msgid "Check" +msgstr "Comprobar" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "Comprobación" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"Elija la zona del cortafuegos a la que quiere asignar esta interfaz. " +"Seleccione no especificado para eliminar la interfaz de la zona " +"asociada o rellene el campo crear para definir una zona nueva a la " +"que asignarla." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" +"Elija la red o redes a las que quiere unir esta interfaz inalámbrica o vacíe " +"el campo crear para definir una red nueva." + +msgid "Cipher" +msgstr "Cifrado" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"Pulse \"generar archivo\" para descargar un fichero tar con los ficheros de " +"configuración actuales. Para reiniciar el firmware a su estado inicial pulse " +"\"Reiniciar\" (sólo posible con imágenes squashfs)." + +msgid "Client" +msgstr "Cliente" + +msgid "Client ID to send when requesting DHCP" +msgstr "ID de cliente que se enviará al solicitar DHCP" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" +"Cerrar las conexiones inactivas tras los segundos dados. Use 0 para una " +"conexión permanente" + +msgid "Close list..." +msgstr "Cerrar lista..." + +msgid "Collecting data..." +msgstr "Un momento..." + +msgid "Command" +msgstr "Comando" + +msgid "Common Configuration" +msgstr "Configuración común" + +msgid "Compression" +msgstr "Compresión" + +msgid "Configuration" +msgstr "Configuración" + +msgid "Configuration applied." +msgstr "Configuración establecida." + +msgid "Configuration files will be kept." +msgstr "Se mantendrán los ficheros de configuración." + +msgid "Confirmation" +msgstr "Confirmación" + +msgid "Connect" +msgstr "Conectar" + +msgid "Connected" +msgstr "Conectado" + +msgid "Connection Limit" +msgstr "Límite de conexión" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "Conexiones" + +msgid "Country" +msgstr "País" + +msgid "Country Code" +msgstr "Código de país" + +msgid "Cover the following interface" +msgstr "Cubre el interfaz siguiente" + +msgid "Cover the following interfaces" +msgstr "Cubre los siguientes interfaces" + +msgid "Create / Assign firewall-zone" +msgstr "Crear / Asignar zona de seguridad" + +msgid "Create Interface" +msgstr "Crear interfaz" + +msgid "Create a bridge over multiple interfaces" +msgstr "Crear un puente sobre múltiples interfaces" + +msgid "Critical" +msgstr "Crítico" + +msgid "Cron Log Level" +msgstr "Nivel de registro de cron" + +msgid "Custom Interface" +msgstr "Interfaz propio" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"Personaliza el comportamiento de los LEDs del dispositivo, si es posible." + +msgid "DHCP Leases" +msgstr "Cesiones DHCP" + +msgid "DHCP Server" +msgstr "Servidor DHCP" + +msgid "DHCP and DNS" +msgstr "DHCP y DNS" + +msgid "DHCP client" +msgstr "Cliente DHCP" + +msgid "DHCP-Options" +msgstr "Opciones de DHCP" + +msgid "DHCPv6 Leases" +msgstr "Cesiones DHCPv6" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "Retransmisión DNS" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "DUID" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "Depuración" + +msgid "Default %d" +msgstr "%d por defecto" + +msgid "Default gateway" +msgstr "Gateway por defecto" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "Estado por defecto" + +msgid "Define a name for this network." +msgstr "Definir un nombre para esta red." + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"Definir optiones adicionales DHCP, por ejemplo " +"\"6,192.168.2.1,192.168.2.2\" que publica diferentes servidores " +"DNS a los clientes." + +msgid "Delete" +msgstr "Eliminar" + +msgid "Delete this network" +msgstr "Borrar esta red" + +msgid "Description" +msgstr "Descripción" + +msgid "Design" +msgstr "Diseño" + +msgid "Destination" +msgstr "Destino" + +msgid "Device" +msgstr "Dispositivo" + +msgid "Device Configuration" +msgstr "Configuración del dispositivo" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "Diagnósticos" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "Directorio" + +msgid "Disable" +msgstr "Desactivar" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +"Desactivar DHCP " +"para esta interfaz." + +msgid "Disable DNS setup" +msgstr "Desactivar configuración de DNS" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "Desactivar el temporizador de baliza hardware" + +msgid "Disabled" +msgstr "Desactivar" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "Descartar respuestas RFC1918 salientes" + +msgid "Displaying only packages containing" +msgstr "Mostrar sólo paquete que contienen" + +msgid "Distance Optimization" +msgstr "Optimización de distancia" + +msgid "Distance to farthest network member in meters." +msgstr "Distancia al miembro de la red mas lejana en metros." + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "Diversidad" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Dnsmasq es un programa que combina un servidor DHCP y un reenviador DNS para cortafuegos NAT" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "No guardar respuestas negativas, por ejemplo dominios inexistentes" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" +"No retransmitir peticiones que no se puedan responder por servidores de " +"nombres públicos" + +msgid "Do not forward reverse lookups for local networks" +msgstr "No retransmitir búsquedas inversas para redes locales" + +msgid "Do not send probe responses" +msgstr "No enviar respuestas de prueba" + +msgid "Domain required" +msgstr "Dominio requerido" + +msgid "Domain whitelist" +msgstr "Lista blanca de dominios" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" +"No reenviar peticiones de DNS sin " +"un nombre de DNS" + +msgid "Download and install package" +msgstr "Descargar e instalar paquete" + +msgid "Download backup" +msgstr "Descargar copia de seguridad" + +msgid "Dropbear Instance" +msgstr "Instancia Dropbear" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear ofrece acceso SSH y un servidor " +"SCP" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" +"DHCP dinámico" + +msgid "Dynamic tunnel" +msgstr "Túnel dinámico" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" +"Reparte direcciones DHCP dinámicamente a los clientes. Si se desactiva sólo " +"se servirá a clientes con cesiones estáticas." + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "Método EAP" + +msgid "Edit" +msgstr "Editar" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "Editar esta interfaz" + +msgid "Edit this network" +msgstr "Editar esta red" + +msgid "Emergency" +msgstr "Emergencia" + +msgid "Enable" +msgstr "Activar" + +msgid "Enable STP" +msgstr "Activar STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "Activar actualización dinámica de punto final HE.net" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "Activar negociación IPv6 en el enlace PPP" + +msgid "Enable Jumbo Frame passthrough" +msgstr "Activar paso de tramas jumbo" + +msgid "Enable NTP client" +msgstr "Activar cliente NTP" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "Activar servidor TFTP" + +msgid "Enable VLAN functionality" +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" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "Active este punto de montaje" + +msgid "Enable this swap" +msgstr "Activar este swap" + +msgid "Enable/Disable" +msgstr "Activar/Desactivar" + +msgid "Enabled" +msgstr "Activado" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "Activa el protocol STP en este puente" + +msgid "Encapsulation mode" +msgstr "Modo de encapsulado" + +msgid "Encryption" +msgstr "Encriptación" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "Borrando..." + +msgid "Error" +msgstr "Error" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "Adaptador ethernet" + +msgid "Ethernet Switch" +msgstr "Switch ethernet" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "Expandir nombre de máquina" + +msgid "Expires" +msgstr "Expira" + +#, fuzzy +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" +"Tiempo de finalización de direcciones cedidas (mínimo dos minutos: 2m)." + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "Servidor externo de registro del sistema" + +msgid "External system log server port" +msgstr "Puerto del servidor externo de registro del sistema" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "Tramas rápidas" + +msgid "File" +msgstr "Fichero" + +msgid "Filename of the boot image advertised to clients" +msgstr "Nombre del fichero de imagen de arranque mostrado a los clientes" + +msgid "Filesystem" +msgstr "Sistema de ficheros" + +msgid "Filter" +msgstr "Filtro" + +msgid "Filter private" +msgstr "Filtro privado" + +msgid "Filter useless" +msgstr "Filtro inútil" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "Encontrar y unirse a red" + +msgid "Find package" +msgstr "Buscar paquete" + +msgid "Finish" +msgstr "Terminar" + +msgid "Firewall" +msgstr "Cortafuegos" + +msgid "Firewall Settings" +msgstr "Configuración del cortafuegos" + +msgid "Firewall Status" +msgstr "Estado del cortafuegos" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "Versión del firmware" + +msgid "Fixed source port for outbound DNS queries" +msgstr "Puerto origen fijo para peticiones de DNS salientes" + +msgid "Flash Firmware" +msgstr "Grabar firmware" + +msgid "Flash image..." +msgstr "Grabar imagen..." + +msgid "Flash new firmware image" +msgstr "Grabar imágenes del firmware" + +msgid "Flash operations" +msgstr "Operaciones de grabado" + +msgid "Flashing..." +msgstr "Grabando..." + +msgid "Force" +msgstr "Forzar" + +msgid "Force CCMP (AES)" +msgstr "Forzar CCMP (AES)" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "Forzar DHCP en esta red aunque se detecte otro servidor." + +msgid "Force TKIP" +msgstr "Forzar TKIP" + +msgid "Force TKIP and CCMP (AES)" +msgstr "Forzar TKIP y CCMP (AES)" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "Retransmitir tráfico DHCP" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "Retransmitir tráfico de propagación" + +msgid "Forwarding mode" +msgstr "Modo de retransmisión" + +msgid "Fragmentation Threshold" +msgstr "Umbral de fragmentación" + +# It should be "Frame Bursting" at once! +msgid "Frame Bursting" +msgstr "Frame Bursting" + +msgid "Free" +msgstr "Libre" + +msgid "Free space" +msgstr "Espacio libre" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "GHz" + +msgid "GPRS only" +msgstr "Sólo GPRS" + +msgid "Gateway" +msgstr "Pasarela" + +msgid "Gateway ports" +msgstr "Puertos del gateway" + +msgid "General Settings" +msgstr "Configuración general" + +msgid "General Setup" +msgstr "Configuración general" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "Generar archivo" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "Controlador inalámbrico 802.11%s genérico" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "" +"La confirmación y la contraseña no coinciden. ¡No se ha cambiado la " +"contraseña!" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "Ir a configuración de contraseña..." + +msgid "Go to relevant configuration page" +msgstr "Ir a la página principal de configuración" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "Contraseña HE.net" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "Manejador" + +msgid "Hang Up" +msgstr "Suspender" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"Aspectos básicos de su dispositivo como la zona horaria o nombre de máquina." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "Claves públicas SSH. Ponga una por línea." + +msgid "Hermes 802.11b Wireless Controller" +msgstr "Controlador inalámbrico 802.11b Hermes" + +msgid "Hide ESSID" +msgstr "Ocultar ESSID" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "Entradas de máquina" + +msgid "Host expiry timeout" +msgstr "Espera para caducidad de máquinas" + +msgid "Host-IP or Network" +msgstr "" +"Dirección IP de máquina o " +"red" + +msgid "Hostname" +msgstr "Nombre de máquina" + +msgid "Hostname to send when requesting DHCP" +msgstr "Nombre de máquina a enviar cuando se solicite DHCP" + +msgid "Hostnames" +msgstr "Nombres de máquina" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "Dirección IP" + +msgid "IPv4" +msgstr "IPv4" + +msgid "IPv4 Firewall" +msgstr "Cortafuegos IPv4" + +msgid "IPv4 WAN Status" +msgstr "Estado de la WAN IPv4" + +msgid "IPv4 address" +msgstr "Dirección IPv4" + +msgid "IPv4 and IPv6" +msgstr "IPv4 e IPv6" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "Propagación IPv4" + +msgid "IPv4 gateway" +msgstr "Gateway IPv4" + +msgid "IPv4 netmask" +msgstr "Máscara de red IPv4" + +msgid "IPv4 only" +msgstr "Sólo IPv4" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "Longitud de prefijo IPv4" + +msgid "IPv4-Address" +msgstr "Dirección IPv4" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "Cortafuegos IPv6" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "Estado de la WAN IPv6" + +msgid "IPv6 address" +msgstr "Dirección IPv6" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "Gateway IPv6" + +msgid "IPv6 only" +msgstr "Sólo IPv6" + +msgid "IPv6 prefix" +msgstr "Prefijo IPv6" + +msgid "IPv6 prefix length" +msgstr "Longitud de prefijo IPv6" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "Dirección IPv6" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "IPv6-en-IPv4 (RFC4213)" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "IPv6-sobre-IPv4 (6rd)" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "IPv6-sobre-IPv4 (6to4)" + +msgid "Identity" +msgstr "Identidad" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" +"Montar el dispositivo por su UUID en vez de un nodo fijo de dispositivo si " +"se especifica" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" +"Montar el dispositivo por la etiqueta de la partición en vez de por el nodo " +"fijo de dispositivo si se especifica" + +msgid "If unchecked, no default route is configured" +msgstr "Si está desmarcado no se configurará una ruta por defecto" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "" +"Si está desmarcado las direcciones de servidor DNS anunciadas se ignorarán" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"Si su dispositivo no tiene memoria RAM suficiente, los datos no utilizados pueden ser guardados temporalmente " +"en un dispositivo de intercambio (swap-device) liberando el espacio que " +"ocupan. Tenga en cuenta que el intercambio es un proceso lento porque los " +"dispositivos de intercambio no pueden transferir volúmenes de información a " +"alta velocidad tal y como hace la memoria RAM." + +msgid "Ignore /etc/hosts" +msgstr "Ignorar /etc/hosts" + +msgid "Ignore interface" +msgstr "Ignorar interfaz" + +msgid "Ignore resolve file" +msgstr "Ignorar el fichero resolv" + +msgid "Image" +msgstr "Imagen" + +msgid "In" +msgstr "Entrada" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "Espera de inactividad" + +msgid "Inbound:" +msgstr "Entrantes:" + +msgid "Info" +msgstr "Información" + +msgid "Initscript" +msgstr "Nombre del script de inicio" + +msgid "Initscripts" +msgstr "Scripts de inicio" + +msgid "Install" +msgstr "Instalar" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "Instalar el paquete %q" + +msgid "Install protocol extensions..." +msgstr "Instalar extensiones de protocolo..." + +msgid "Installed packages" +msgstr "Paquetes instalados" + +msgid "Interface" +msgstr "Interfaz" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "Configuración del interfaz" + +msgid "Interface Overview" +msgstr "Resumen de interfaces" + +msgid "Interface is reconnecting..." +msgstr "Reconectando interfaz..." + +msgid "Interface is shutting down..." +msgstr "Parando interfaz..." + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "El interfaz no existe o no está aún conectado." + +msgid "Interface reconnected" +msgstr "Interfaz reconectado" + +msgid "Interface shut down" +msgstr "Interfaz detenido" + +msgid "Interfaces" +msgstr "Interfaces" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "Error interno del servidor" + +msgid "Invalid" +msgstr "Valor ingresado inválido" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "¡ID VLAN no válido! Sólo se permiten IDs entre %d y %d." + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "¡ID VLAN no válido! Sólo se permiten IDs únicos" + +msgid "Invalid username and/or password! Please try again." +msgstr "" +"¡Nombre de usuario o contraseña no válidos!. Pruebe de nuevo, por favor." + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"Parece que está intentando grabar una imagen de firmware mayor que la " +"memoria flash de su equipo. ¡Por favor, verifique el archivo!" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "¡Se necesita JavaScript!" + +msgid "Join Network" +msgstr "Unirse a Red" + +msgid "Join Network: Wireless Scan" +msgstr "Unirse a una red: Exploración inalámbrica" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "Conservar la configuración del router" + +msgid "Kernel Log" +msgstr "Registro del Kernel" + +msgid "Kernel Version" +msgstr "Versión del Kernel" + +msgid "Key" +msgstr "Clave" + +msgid "Key #%d" +msgstr "Clave #%d" + +msgid "Kill" +msgstr "Matar" + +msgid "L2TP" +msgstr "L2TP" + +msgid "L2TP Server" +msgstr "Servidor L2TP" + +msgid "LCP echo failure threshold" +msgstr "Umbral de fracaso en eco LCP" + +msgid "LCP echo interval" +msgstr "Intervalo de eco LCP" + +msgid "LLC" +msgstr "LLC" + +msgid "Label" +msgstr "Etiqueta" + +msgid "Language" +msgstr "Idioma" + +msgid "Language and Style" +msgstr "Idioma y Estilo" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "Tiempo de validación de cesión" + +msgid "Leasefile" +msgstr "Archivo de cesiones" + +msgid "Leasetime remaining" +msgstr "Tiempo de cesión restante" + +msgid "Leave empty to autodetect" +msgstr "Dejar vacío para autodetectar" + +msgid "Leave empty to use the current WAN address" +msgstr "Dejar vacío para usar la dirección WAN actual" + +msgid "Legend:" +msgstr "Leyenda:" + +msgid "Limit" +msgstr "Límite" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "Enlace activado" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" +"Lista de servidores DNS a los que " +"enviar solicitudes" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "Lista de dominios a los que se permiten respuestas RFC1918" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "Lista de máquinas que proporcionan resultados de dominio NX falsos" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "Escucha solo en la interfaz dada o, si no se especifica, en todas" + +msgid "Listening port for inbound DNS queries" +msgstr "Puerto de escucha para consultas DNS entrantes" + +msgid "Load" +msgstr "Carga" + +msgid "Load Average" +msgstr "Carga Media" + +msgid "Loading" +msgstr "Cargando" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "Dirección local IPv4" + +msgid "Local IPv6 address" +msgstr "Dirección local IPv6" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "Arranque local" + +msgid "Local Time" +msgstr "Hora local" + +msgid "Local domain" +msgstr "Dominio local" + +#, fuzzy +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" +"Especificación de dominio local. Los nombres que coincidan con este dominio " +"nunca se retransmiten y se resuelven desde DHCP o ficheros de máquina locales" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" +"Sufijo del dominio local que se añade a los nombres DHCP y a las entradas " +"del fichero de máquinas" + +msgid "Local server" +msgstr "Servidor local" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" +"Localizar nombre de máquina dependiendo de que la subred peticionaria si hay " +"disponibles múltiples IPs" + +msgid "Localise queries" +msgstr "Localizar consultas" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "Nivel de registro" + +msgid "Log queries" +msgstr "Registrar consultas" + +msgid "Logging" +msgstr "Registro" + +msgid "Login" +msgstr "Iniciar sesión" + +msgid "Logout" +msgstr "Cerrar sesión" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "Dirección cedida más baja como diferencia de la dirección de red." + +msgid "MAC-Address" +msgstr "Dirección MAC" + +msgid "MAC-Address Filter" +msgstr "Filtro por dirección MAC" + +msgid "MAC-Filter" +msgstr "Filtro por dirección MAC" + +msgid "MAC-List" +msgstr "Lista de direcciones MAC" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "MB/s" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "MHz" + +msgid "MTU" +msgstr "MTU" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "Ratio Máximo" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "Número máximo de cesiones DHCP activas" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "Número máximo de consultas DNS concurrentes" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "Tamaño máximo de paquetes EDNS.0 paquetes UDP" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "Segundos máximos de espera a que el módem esté activo" + +msgid "Maximum hold time" +msgstr "Pausa máxima de transmisión" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "Máximas cesiones activas." + +msgid "Mbit/s" +msgstr "Mbit/s" + +msgid "Memory" +msgstr "Memoria" + +msgid "Memory usage (%)" +msgstr "Uso de memoria (%)" + +msgid "Metric" +msgstr "Métrica" + +msgid "Minimum Rate" +msgstr "Ratio mínimo" + +msgid "Minimum hold time" +msgstr "Pausa mínima de espera" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "Extensión de protocolo faltante para %q" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "Modo" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "Dispositivo de módem" + +msgid "Modem init timeout" +msgstr "Espera de inicialización del modem" + +msgid "Monitor" +msgstr "Monitor" + +msgid "Mount Entry" +msgstr "Entrada de montaje" + +msgid "Mount Point" +msgstr "Punto de montaje" + +msgid "Mount Points" +msgstr "Puntos de montaje" + +msgid "Mount Points - Mount Entry" +msgstr "Puntos de montaje - Entrada de montaje" + +msgid "Mount Points - Swap Entry" +msgstr "Puntos de montaje - Entrada de intercambio" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"Los puntos de montaje definen el directorio en el que un dispositivo de " +"memoria se unirá al sistema del archivos" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "Opciones de montaje" + +msgid "Mount point" +msgstr "Punto de montaje" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "Sistemas de archivo montados" + +msgid "Move down" +msgstr "Bajar" + +msgid "Move up" +msgstr "Subir" + +msgid "Multicast Rate" +msgstr "Ratio multicast" + +msgid "Multicast address" +msgstr "Dirección multicast" + +msgid "NAS ID" +msgstr "NAS ID" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "Servidores NTP a consultar" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "Nombre" + +msgid "Name of the new interface" +msgstr "Nombre de la nueva interfaz" + +msgid "Name of the new network" +msgstr "Nombre de la nueva red" + +msgid "Navigation" +msgstr "Navegación" + +msgid "Netmask" +msgstr "Máscara de red" + +msgid "Network" +msgstr "Red" + +msgid "Network Utilities" +msgstr "Utilidades de red" + +msgid "Network boot image" +msgstr "Imagen de arranque en red" + +msgid "Network without interfaces." +msgstr "Red sin interfaces." + +msgid "Next »" +msgstr "Siguiente »" + +msgid "No DHCP Server configured for this interface" +msgstr "No se ha configurado un servidor DHCP para esta interfaz" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "No hay cadenas en esta tabla" + +msgid "No files found" +msgstr "No se han encontrado ficheros" + +msgid "No information available" +msgstr "No hay información disponible" + +msgid "No negative cache" +msgstr "Sin caché negativa" + +msgid "No network configured on this device" +msgstr "No hay red configurada para este dispositivo" + +msgid "No network name specified" +msgstr "No se ha especificado un nombre de red" + +msgid "No package lists available" +msgstr "No hay listas de paquetes disponibles" + +msgid "No password set!" +msgstr "¡Sin contraseña!" + +msgid "No rules in this chain" +msgstr "No hay reglas en esta cadena" + +msgid "No zone assigned" +msgstr "Sin zona asignada" + +msgid "Noise" +msgstr "Ruido" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "Ruido:" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "Ninguno" + +msgid "Normal" +msgstr "Normal" + +msgid "Not Found" +msgstr "No encontrado" + +msgid "Not associated" +msgstr "No asociado" + +msgid "Not connected" +msgstr "No conectado" + +msgid "Note: Configuration files will be erased." +msgstr "Nota: se borrarán los ficheros de configuración." + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "Aviso" + +msgid "Nslookup" +msgstr "NSLookup" + +msgid "OK" +msgstr "Aceptar" + +msgid "OPKG-Configuration" +msgstr "Configuración de OPKG" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "Retraso de desconexión" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"Configure las interfaces de red. Puede hacer puentes con diferentes " +"interfaces, marcando el campo \"puentear interfaces\" e introduciendo el " +"nombre de las mismas separadas por espacios. También puede usar la notación " +"VLAN, INTERFACE." +"VLANNR (Ej.: eth0.1)." + +msgid "On-State Delay" +msgstr "Retraso de activación" + +msgid "One of hostname or mac address must be specified!" +msgstr "¡Debe especificar al menos un nombre de máquina o dirección mac!" + +msgid "One or more fields contain invalid values!" +msgstr "¡Valores no válidos!" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "¡Campos vacíos!" + +msgid "Open list..." +msgstr "Abrir lista..." + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "Opción cambiada" + +msgid "Option removed" +msgstr "Opción eliminada" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "Opciones" + +msgid "Other:" +msgstr "Otros:" + +msgid "Out" +msgstr "Salida" + +msgid "Outbound:" +msgstr "Saliente:" + +msgid "Outdoor Channels" +msgstr "Canales al aire libre" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "Ignorar dirección MAC" + +msgid "Override MTU" +msgstr "Ignorar MTU" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "Ignorar la pasarela en las respuestas DHCP" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" +"Ignorar la máscara de red enviada a los clientes. Normalmente se calcula " +"desde la subred desde la que se sirve." + +msgid "Override the table used for internal routes" +msgstr "Ignorar la tabla usada para rutas internas" + +msgid "Overview" +msgstr "Descripción general" + +msgid "Owner" +msgstr "Propietario" + +msgid "PAP/CHAP password" +msgstr "Contraseña PAP/CHAP" + +msgid "PAP/CHAP username" +msgstr "Nombre de usuario PAP/CHAP" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "PIN" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "PPP" + +msgid "PPPoA Encapsulation" +msgstr "Encapsulación PPPoA" + +msgid "PPPoATM" +msgstr "PPPoATM" + +msgid "PPPoE" +msgstr "PPPoE" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "PPtP" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "¡Se necesita el paquete libiwinfo!" + +msgid "Package lists are older than 24 hours" +msgstr "Las listas de paquetes tienen más de 24 horas" + +msgid "Package name" +msgstr "Nombre del paquete" + +msgid "Packets" +msgstr "Paquetes" + +msgid "Part of zone %q" +msgstr "Parte de zona %q" + +msgid "Password" +msgstr "Contraseña" + +msgid "Password authentication" +msgstr "Autentificación de contraseña" + +msgid "Password of Private Key" +msgstr "Contraseña de la Clave Privada" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "¡Contraseña cambiada!" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "Ruta al Certificado CA" + +msgid "Path to Client-Certificate" +msgstr "Camino al certificado de cliente" + +msgid "Path to Private Key" +msgstr "Ruta a la Clave Privada" + +msgid "Path to executable which handles the button event" +msgstr "Ruta al ejecutable que maneja el evento button" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "Pico:" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "Rearrancar" + +msgid "Perform reset" +msgstr "Reiniciar" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "Ratio Phy:" + +msgid "Physical Settings" +msgstr "Configuración física" + +msgid "Ping" +msgstr "Ping" + +msgid "Pkts." +msgstr "Paq." + +msgid "Please enter your username and password." +msgstr "Por favor, introduzca su nombre de usuario y contraseña." + +msgid "Policy" +msgstr "Política" + +msgid "Port" +msgstr "Puerto" + +msgid "Port status:" +msgstr "Estado del puerto:" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" +"Asumir que el otro estará muerto tras estos fallos de echo LCP, use 0 para " +"ignorar fallos" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "Impide la comunicación cliente a cliente" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "Controlador inalámbrico 802.11n Prism2/2.5/3" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "Proceder" + +msgid "Processes" +msgstr "Procesos" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "Prot." + +msgid "Protocol" +msgstr "Protocolo" + +msgid "Protocol family" +msgstr "Familia de procolo" + +msgid "Protocol of the new interface" +msgstr "Protocolo de la nueva interfaz" + +msgid "Protocol support is not installed" +msgstr "No está instalado el soporte al protocolo" + +msgid "Provide NTP server" +msgstr "Dar servicio NTP" + +msgid "Provide new network" +msgstr "Introduzca una nueva red" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "Pseudo Ad-Hoc (ahdemo)" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "Calidad" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "Umbral RTS/CTS" + +msgid "RX" +msgstr "RX" + +msgid "RX Rate" +msgstr "Ratio RX" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "Controlador inalámbrico 802.11%s RaLink" + +msgid "Radius-Accounting-Port" +msgstr "Puerto de contabilidad Radius" + +msgid "Radius-Accounting-Secret" +msgstr "Secreto de contabilidad Radius" + +msgid "Radius-Accounting-Server" +msgstr "Servidor de contabilidad Radius" + +msgid "Radius-Authentication-Port" +msgstr "Puerto de autentificación Radius" + +msgid "Radius-Authentication-Secret" +msgstr "Secreto de autentificación Radius" + +msgid "Radius-Authentication-Server" +msgstr "Servidor de autentificación Radius" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"Leer /etc/ethers para configurar el servidor DHCP" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" +"¿Está seguro de borrar esta interfaz?. ¡No será posible deshacer el " +"borrado!\n" +"Puede perder el acceso a este dispositivo si está conectado por esta " +"interfaz." + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" +"¿Está seguro de borrar esta red inalámbrica?. ¡No será posible deshacer el " +"borrado!\n" +"Puede perder el acceso a este dispositivo si está conectado por esta red." + +msgid "Really reset all changes?" +msgstr "¿Está seguro de querer reiniciar todos los cambios?" + +#, fuzzy +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" +"¿Está seguro de querer apagar esta red?.\n" +"Puede perder el acceso a este dispositivo si está conectado por esta red." + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" +"¿Está seguro de apagar la interfaz \"%s\"?.\n" +"Puede perder el acceso a este dispositivo si está conectado por interfaz." + +msgid "Really switch protocol?" +msgstr "¿Está seguro de querer cambiar el protocolo?" + +msgid "Realtime Connections" +msgstr "Conexiones en tiempo real" + +msgid "Realtime Graphs" +msgstr "Gráficas en tiempo real" + +msgid "Realtime Load" +msgstr "Carga en tiempo real" + +msgid "Realtime Traffic" +msgstr "Tráfico en tiempo real" + +msgid "Realtime Wireless" +msgstr "Red inalámbrica en tiempo real" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "Protección contra reasociación" + +msgid "Reboot" +msgstr "Rearrancar" + +msgid "Rebooting..." +msgstr "Rearrancando..." + +msgid "Reboots the operating system of your device" +msgstr "Rearranque el sistema operativo de su dispositivo" + +msgid "Receive" +msgstr "Recibir" + +msgid "Receiver Antenna" +msgstr "Antena Receptora" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "Reconectar esta interfaz" + +msgid "Reconnecting interface" +msgstr "Reconectando la interfaz" + +msgid "References" +msgstr "Referencias" + +msgid "Regulatory Domain" +msgstr "Dominio Regulador" + +msgid "Relay" +msgstr "Relé" + +msgid "Relay Bridge" +msgstr "Puente relé" + +msgid "Relay between networks" +msgstr "Relé entre redes" + +msgid "Relay bridge" +msgstr "Puente relé" + +msgid "Remote IPv4 address" +msgstr "Dirección IPv4 remota" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "Desinstalar" + +msgid "Repeat scan" +msgstr "Repetir exploración" + +msgid "Replace entry" +msgstr "Reemplazar entrada" + +msgid "Replace wireless configuration" +msgstr "Cambiar la configuración inalámbrica" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "Necesario para ciertos ISPs, por ejemplo Charter con DOCSIS 3" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "Reiniciar" + +msgid "Reset Counters" +msgstr "Reiniciar contadores" + +msgid "Reset to defaults" +msgstr "Reiniciar a valores por defecto" + +msgid "Resolv and Hosts Files" +msgstr "Ficheros Resolv y Hosts" + +msgid "Resolve file" +msgstr "Fichero de resolución" + +msgid "Restart" +msgstr "Rearrancar" + +msgid "Restart Firewall" +msgstr "Rearrancar cortafuegos" + +msgid "Restore backup" +msgstr "Restaurar copia de seguridad" + +msgid "Reveal/hide password" +msgstr "Mostrar/ocultar contraseña" + +msgid "Revert" +msgstr "Anular" + +msgid "Root" +msgstr "Raíz" + +msgid "Root directory for files served via TFTP" +msgstr "Directorio raíz para los ficheros servidos por TFTP" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "Contraseña del router" + +msgid "Routes" +msgstr "Rutas" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"Las rutas especifican sobre qué interfaz y pasarela se puede llegar a una " +"cierta máquina o red." + +msgid "Run a filesystem check before mounting the device" +msgstr "Comprobar el sistema de ficheros antes de montar el dispositivo" + +msgid "Run filesystem check" +msgstr "Comprobar el sistema de ficheros" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "Acceso SSH" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "Claves SSH" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "Guardar" + +msgid "Save & Apply" +msgstr "Guardar y aplicar" + +msgid "Save & Apply" +msgstr "Guardar y aplicar" + +msgid "Scan" +msgstr "Explorar" + +msgid "Scheduled Tasks" +msgstr "Tareas programadas" + +msgid "Section added" +msgstr "Sección añadida" + +msgid "Section removed" +msgstr "Sección eliminada" + +msgid "See \"mount\" manpage for details" +msgstr "Vea la página del manual de \"mount\" para detalles" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" +"Enviar peticiones de echo LCP cada intervalo de segundos dado, solo efectivo " +"usado conjuntamente con el umbral de fallo" + +msgid "Separate Clients" +msgstr "Aislar clientes" + +msgid "Separate WDS" +msgstr "WDS aislado" + +msgid "Server Settings" +msgstr "Configuración del servidor" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "Nombre de servicio" + +msgid "Service Type" +msgstr "Tipo de servicio" + +msgid "Services" +msgstr "Servicios" + +#, fuzzy +msgid "Set up Time Synchronization" +msgstr "Sincronización horaria" + +msgid "Setup DHCP Server" +msgstr "Configuración del servidor DHCP" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "Mostrar lista de ficheros a salvar" + +msgid "Shutdown this interface" +msgstr "Apagar esta interfaz" + +msgid "Shutdown this network" +msgstr "Apagar esta red" + +msgid "Signal" +msgstr "Señal" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "Señal:" + +msgid "Size" +msgstr "Tamaño" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "Saltar" + +msgid "Skip to content" +msgstr "Saltar al contenido" + +msgid "Skip to navigation" +msgstr "Saltar a navegación" + +msgid "Slot time" +msgstr "Tiempo asignado" + +msgid "Software" +msgstr "Instalación de programas" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "Algunos campos no son válidos, ¡no se pueden guardar!" + +msgid "Sorry, the object you requested was not found." +msgstr "Objeto no encontrado." + +msgid "Sorry, the server encountered an unexpected error." +msgstr "El servidor encontró un error inesperado." + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" +"No está instalado el soporte para el sysupgrade, la nueva imagen debe " +"grabarse manualmente. Por favor, mire el wiki para instrucciones de " +"instalación específicas." + +msgid "Sort" +msgstr "Ordenar" + +msgid "Source" +msgstr "Origen" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "Especifica el estado de botón a manejar" + +msgid "Specifies the directory the device is attached to" +msgstr "Especifica el directorio al que está enlazado el dispositivo" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "" +"Especifica los puertos de escucha de esta instancia de Dropbear" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" +"Especifica la cantidad de peticiones ARP fallidas hasta suponer muerta una " +"máquina" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" +"Especifica la cantidad de segundos a transcurrir hasta suponer muerta una " +"máquina" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "Especifica la clave secreta de encriptado." + +msgid "Start" +msgstr "Arrancar" + +msgid "Start priority" +msgstr "Prioridad de arranque" + +msgid "Startup" +msgstr "Arranque" + +msgid "Static IPv4 Routes" +msgstr "Rutas estáticas IPv4" + +msgid "Static IPv6 Routes" +msgstr "Rutas estáticas IPv6" + +msgid "Static Leases" +msgstr "Cesiones estáticas" + +msgid "Static Routes" +msgstr "Rutas estáticas" + +msgid "Static WDS" +msgstr "WDS estático" + +msgid "Static address" +msgstr "Dirección estática" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" +"Las cesiones estáticas se usan para asignar direcciones IP fijas y nombres " +"simbólicos de máquina a clientes DHCP. También son necesarias para " +"configuraciones de interfaz no dinámica en las que a cada máquina siempre se " +"le quiere servir la misma dirección IP." + +msgid "Status" +msgstr "Estado" + +msgid "Stop" +msgstr "Parar" + +msgid "Strict order" +msgstr "Orden estricto" + +msgid "Submit" +msgstr "Guardar" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "Entrada de intercambio" + +msgid "Switch" +msgstr "Switch" + +msgid "Switch %q" +msgstr "Switch %q" + +msgid "Switch %q (%s)" +msgstr "Switch %q (%s)" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "Intercambiar protocolo" + +msgid "Sync with browser" +msgstr "Sincronizar con el navegador" + +msgid "Synchronizing..." +msgstr "Sincronizando..." + +msgid "System" +msgstr "Sistema" + +msgid "System Log" +msgstr "Registro del sistema" + +msgid "System Properties" +msgstr "Propiedades del sistema" + +msgid "System log buffer size" +msgstr "Tamaño del buffer de registro del sistema" + +msgid "TCP:" +msgstr "TCP:" + +msgid "TFTP Settings" +msgstr "Configuración TFTP" + +msgid "TFTP server root" +msgstr "Raíz del servidor TFTP" + +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "Ratio TX" + +msgid "Table" +msgstr "Tabla" + +# Target = Meta --> Objetivo --> Destino? +msgid "Target" +msgstr "Objetivo" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "Terminar" + +#, fuzzy +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" +"La sección de Configuración del dispositivo ocupa la configuración " +"física del hardware de radio como el canal, la potencia de transmisión o la " +"selección de antena que se comparte entre todas las redes inalámbricas " +"definidas (si el hardware de radio es capaz de ser multi-SSID). " +"Configuración por red como encriptado o modo de operación se agrupan en " +"Configuración del interfaz." + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" +"El paquete libiwinfo-lua no está instalado. ¡Debe instalarlo para " +"poder configurar la conectividad inalambrica!" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" +"El prefijo IPv6 asignado por el proveedor, suele termina con ::" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" +"Los caracteres permitidos son: A-Z, a-z, " +"0-9 y _" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" +"El archivo de dispositivo de memoria o partición (e.j. /dev/sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"El sistema de archivo que fue utilizado para dar formato a la memoria (Ej. ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" +"Imagen recibida. Verifique que la comprobación y tamaño del fichero recibido " +"coinciden con los del original.
Pulse \"Proceder\" para empezar el " +"grabado." + +msgid "The following changes have been committed" +msgstr "Se han hecho los siguientes cambios" + +msgid "The following changes have been reverted" +msgstr "Se han anulado los siguientes cambios" + +msgid "The following rules are currently active on this system." +msgstr "Rutas activas." + +msgid "The given network name is not unique" +msgstr "Nombre de red repetido" + +#, fuzzy +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" +"El hardware no es capaz de multi-SSD y la configuración actual se cambiará " +"si continúa." + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" +"Longitud del prefijo IPv4 en bits, el resto se usará en direcciones IPv6." + +msgid "The length of the IPv6 prefix in bits" +msgstr "Longitud del prefijo IPv6 en bits" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" +"Los puertos de red de este dispositivo se pueden combinar en varias VLANs en las que los ordenadores " +"se pueden comunicar directamente entre ellos. Las VLANs se usan a menudo para separar diferentes " +"segmentos de red. Es común que exista un puerto por defecto para subida " +"hacia una red mayor como internet y el resto se dediquen a la red local." + +msgid "The selected protocol needs a device assigned" +msgstr "Este protocolo necesita estar asignado a un dispositivo" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" +"El sistema está borrando la partición de configuración y rearrancará cuando " +"termine." + +#, fuzzy +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"Escribiendo en la memoria flash.
¡NO APAGUE EL DISPOSITIVO!
" +"Espere unos minutos antes de reconectar. Es posible que tenga que renovar la " +"conexión de su ordenador para poder acceder de nuevo al dispositivo." + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"El archivo con la imagen de firmware subido no tiene un formato adecuado. " +"Asegúrese de haber elegido la imagen correcta para su plataforma." + +msgid "There are no active leases." +msgstr "Sin cesiones activas." + +msgid "There are no pending changes to apply!" +msgstr "¡No hay cambios pendientes!" + +msgid "There are no pending changes to revert!" +msgstr "¡No hay cambios a anular!" + +msgid "There are no pending changes!" +msgstr "¡Sin cambios pendientes!" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" +"No hay dispositivo asignado aún. Por favor, enlace un dispositivo de red en " +"la pestaña \"Configuración física\"" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" +"No hay contraseñas en este router. Por favor, configure una contraseña para " +"proteger el interfaz web y activar SSH." + +msgid "This IPv4 address of the relay" +msgstr "Dirección IPv4 del relé" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" +"Lista de patrones shell con los ficheros y directorios que se deben incluir " +"en un sysupgrade. Los ficheros modificados en /etc/config/ y ciertas otras " +"configuraciones se guardarán automáticamente." + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" +"Contenido de /etc/rc.local. Ponga sus propios comandos aquí (antes de 'exit " +"0') para ejecutarlos al final del proceso de inicio." + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" +"Esta es la dirección de punto final asignada por el broker del túnel, suele " +"terminar con :2" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" +"Este es el único servidor DHCP en la red de área local" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "Definición de tareas programadas para crontab." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" +"Esta es normalmente la dirección del PoP más cercano operada por el broker " +"del túnel" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "Procesos de sistema que se están ejecutando actualmente y su estado." + +msgid "This page allows the configuration of custom button actions" +msgstr "Configuración de acciones personalizadas para los botones" + +msgid "This page gives an overview over currently active network connections." +msgstr "Conexiones de red activas." + +msgid "This section contains no values yet" +msgstr "No hay reglas definidas" + +msgid "Time Synchronization" +msgstr "Sincronización horaria" + +msgid "Time Synchronization is not configured yet." +msgstr "Sincronización horaria no configurada." + +msgid "Timezone" +msgstr "Zona horaria" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" +"Para restaurar los ficheros de configuración, debe subir primero una copia " +"de seguridad." + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "Total disponible" + +msgid "Traceroute" +msgstr "Traceroute" + +msgid "Traffic" +msgstr "Tráfico" + +msgid "Transfer" +msgstr "Transferencia" + +msgid "Transmission Rate" +msgstr "Tasa de Transmisión" + +msgid "Transmit" +msgstr "Transmitir" + +msgid "Transmit Power" +msgstr "Potencia de transmisión" + +msgid "Transmitter Antenna" +msgstr "Antena Transmisora" + +msgid "Trigger" +msgstr "Disparador" + +msgid "Trigger Mode" +msgstr "Modo de disparador" + +msgid "Tunnel ID" +msgstr "ID de túnel" + +msgid "Tunnel Interface" +msgstr "Interfaz de túnel" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "Modo Turbo" + +msgid "Tx-Power" +msgstr "Potencia-TX" + +msgid "Type" +msgstr "Tipo" + +msgid "UDP:" +msgstr "UDP:" + +msgid "UMTS only" +msgstr "Sólo UMTS" + +msgid "UMTS/GPRS/EV-DO" +msgstr "UMTS/GPRS/EV-DO" + +msgid "USB Device" +msgstr "Dispositivo USB" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "UUID" + +msgid "Unable to dispatch" +msgstr "Imposible repartir" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "Desconocido" + +msgid "Unknown Error, password not changed!" +msgstr "Error desconocido, ¡no se ha cambiado la contraseña!" + +msgid "Unmanaged" +msgstr "No gestionado" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "Cambios no guardados" + +msgid "Unsupported protocol type." +msgstr "Tipo de protocolo no soportado." + +msgid "Update lists" +msgstr "Actualizar listas" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" +"Suba una imagen compatible con sysupgrade para reemplazar el firmware " +"actual. Puede marcar \"Conservar la configuración\" si lo desea (es " +"necesario que la imagen sea compatible)." + +msgid "Upload archive..." +msgstr "Subir archivo..." + +msgid "Uploaded File" +msgstr "Archivo subido" + +msgid "Uptime" +msgstr "Tiempo activo" + +msgid "Use /etc/ethers" +msgstr "Usar /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "Usar pasarela DHCP" + +msgid "Use DNS servers advertised by peer" +msgstr "Utiliza servidores DNS anunciados por otros" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "Usa códigos de país ISO/IEC 3166 alpha2." + +msgid "Use MTU on tunnel interface" +msgstr "MTU a usar en el interfaz de túnel" + +msgid "Use TTL on tunnel interface" +msgstr "TTL a usar en el interfaz de túnel" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "Usar marca de propagación" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "Usar servidores DNS personalizados" + +msgid "Use default gateway" +msgstr "Usar pasarela por defecto" + +msgid "Use gateway metric" +msgstr "Usar métrica de la pasarela" + +msgid "Use routing table" +msgstr "Usar tabla de rutas" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" +"Pulse el botón Añadir para insertar una nueva cesión. Dirección " +"MAC identificará la máquina, dirección IPv4 especificará la " +"dirección fija a usar y Nombre de máquina se asignará como nombre " +"simbólico." + +msgid "Used" +msgstr "Usado" + +msgid "Used Key Slot" +msgstr "Espacio de clave usado" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "Nombre de usuario" + +msgid "VC-Mux" +msgstr "VC-Mux" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "VLANs en %q" + +msgid "VLANs on %q (%s)" +msgstr "VLANs en %q (%s)" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "Servidor VPN" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "Clase de vendedor a enviar cuando solicite DHCP" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "Verificar" + +msgid "Version" +msgstr "Versión" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "Sistema abierto WEP" + +msgid "WEP Shared Key" +msgstr "Clave compartida WEP" + +msgid "WEP passphrase" +msgstr "Frase de paso WEP" + +msgid "WMM Mode" +msgstr "Modo WMM" + +msgid "WPA passphrase" +msgstr "Frase de paso WPA" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"WPA-Encryption necesita que estén instalados wpa_supplicant (para el modo " +"cliente o hostapd (para los modos AP y ad-hoc)." + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "Esperando a que se realicen los cambios..." + +msgid "Waiting for command to complete..." +msgstr "Esperando a que termine el comando..." + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "Aviso" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "Red inalámbrica" + +msgid "Wireless Adapter" +msgstr "Adaptador inalámbrico" + +msgid "Wireless Network" +msgstr "Red inalámbrica" + +msgid "Wireless Overview" +msgstr "Redes inalámbricas" + +msgid "Wireless Security" +msgstr "Seguridad inalámbrica" + +msgid "Wireless is disabled or not associated" +msgstr "Red inalámbrica desconectada o no asociada" + +msgid "Wireless is restarting..." +msgstr "Rearrancando red inalámbrica..." + +msgid "Wireless network is disabled" +msgstr "Red inalámbrica desconectada" + +msgid "Wireless network is enabled" +msgstr "Red inalámbrica conectada" + +msgid "Wireless restarted" +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" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "Soporte de XR" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"Gestione los scripts de inicio. Los cambios serán aplicados tras reiniciar " +"el equipo.
ADVERTENCIA: ¡Si desactiva scripts de inicio " +"esenciales como\"network\", su equipo puede no arrancar o quedar " +"inaccesible!." + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" +"Debe activar JavaScript en su navegador o LuCI no funcionará correctamente." + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "cualquiera" + +msgid "auto" +msgstr "auto" + +msgid "baseT" +msgstr "baseT" + +msgid "bridged" +msgstr "puenteado" + +msgid "create:" +msgstr "crear:" + +msgid "creates a bridge over specified interface(s)" +msgstr "crea un puente sobre la interfaz o interfaces asociadas" + +msgid "dB" +msgstr "dB" + +msgid "dBm" +msgstr "dBm" + +msgid "disable" +msgstr "desabilitar" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "expirado" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" +"archivo en el que se guardarán las direcciones DHCP cedidas" + +msgid "forward" +msgstr "retransmisión" + +msgid "full-duplex" +msgstr "full dúplex" + +msgid "half-duplex" +msgstr "half dúplex" + +msgid "help" +msgstr "ayuda" + +msgid "hidden" +msgstr "oculto" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "si el destino es una red" + +msgid "input" +msgstr "entrada" + +msgid "kB" +msgstr "KB" + +msgid "kB/s" +msgstr "KB/s" + +msgid "kbit/s" +msgstr "Kbit/s" + +msgid "local DNS file" +msgstr "Archvo DNS local" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "no" + +msgid "no link" +msgstr "sin enlace" + +msgid "none" +msgstr "ninguno" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "parado" + +msgid "on" +msgstr "activo" + +msgid "open" +msgstr "abierto" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "enrutado" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "marcado" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "desconocido" + +msgid "unlimited" +msgstr "ilimitado" + +msgid "unspecified" +msgstr "no especificado" + +msgid "unspecified -or- create:" +msgstr "no especificado -o- crear:" + +msgid "untagged" +msgstr "desmarcado" + +msgid "yes" +msgstr "sí" + +msgid "« Back" +msgstr "« Volver" + +#~ msgid "Leasetime" +#~ msgstr "Tiempo de cesión" + +#, fuzzy +#~ msgid "automatic" +#~ msgstr "estático" + +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "Se creará una red adicional si deja esto desmarcado." + +#~ msgid "Join Network: Settings" +#~ msgstr "Unirse a Red: Configuración" + +#~ msgid "CPU" +#~ msgstr "CPU" + +#~ msgid "Port %d" +#~ msgstr "Puerto %d" + +#~ msgid "Port %d is untagged in multiple VLANs!" +#~ msgstr "¡El puerto %d está desmarcado en múltiples VLANs!" + +#~ msgid "VLAN Interface" +#~ msgstr "Interfaz VLAN" diff --git a/luci-base/po/fr/base.po b/luci-base/po/fr/base.po new file mode 100644 index 000000000..c42715037 --- /dev/null +++ b/luci-base/po/fr/base.po @@ -0,0 +1,3998 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-06-10 03:40+0200\n" +"PO-Revision-Date: 2013-12-22 17:11+0200\n" +"Last-Translator: goofy \n" +"Language-Team: LANGUAGE \n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Generator: Pootle 2.0.6\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(fenêtre de %d minutes, intervalle de %d secondes)" + +msgid "(%s available)" +msgstr "(%s disponible)" + +msgid "(empty)" +msgstr "(vide)" + +msgid "(no interfaces attached)" +msgstr "(pas d'interface connectée)" + +msgid "-- Additional Field --" +msgstr "-- Champ Supplémentaire --" + +msgid "-- Please choose --" +msgstr "-- Choisir --" + +msgid "-- custom --" +msgstr "-- autre --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "Charge sur 1 minute :" + +msgid "15 Minute Load:" +msgstr "Charge sur 15 minutes :" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "Charge sur 5 minutes :" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "DNS query port" +msgstr "Port des requêtes DNS" + +msgid "DNS server port" +msgstr "Port du serveur DNS" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" +"Les serveurs DNS seront
interrogés dans l'ordre du fichier de résolution" + +msgid "ESSID" +msgstr "ESSID" + +msgid "IPv4-Address" +msgstr "Adresse IPv4" + +msgid "IPv4-Gateway" +msgstr "Passerelle IPv4" + +msgid "IPv4-Netmask" +msgstr "Masque réseau IPv4" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"Adresse ou réseau IPv6 " +"(notation CIDR)" + +msgid "IPv6-Gateway" +msgstr "Passerelle IPv6" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "" +"Configuration des DELs" + +msgid "LED Name" +msgstr "Nom de la DEL" + +msgid "MAC-Address" +msgstr "Adresse MAC" + +msgid "" +"Max. DHCP leases" +msgstr "" +"Nombre de baux DHCP maximum" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"taille maximum des paquets EDNS0" + +msgid "Max. concurrent queries" +msgstr "Maximum de requêtes concurrentes" + +msgid "%s - %s" +msgstr "%s - %s" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "Gestion du mode AR" + +msgid "ARP retry threshold" +msgstr "Niveau de ré-essai ARP" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "Ponts ATM" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "" +"Identifiant de canal virtuel (VCI) ATM" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "" +"Identifiant de chemin virtuel (VPI) ATM" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"Les ponts ATM présentent l'Ethernet encapsulé dans des connexions AAL5 comme " +"des interfaces réseau virtuelles Linux qui peuvent être utilisées avec DHCP " +"ou PPP pour se connecter au réseau du fournisseur d'accès." + +msgid "ATM device number" +msgstr "Numéro de périphérique ATM" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "Concentrateur d'accès" + +msgid "Access Point" +msgstr "Point d'accès" + +msgid "Action" +msgstr "Action" + +msgid "Actions" +msgstr "Actions" + +msgid "Activate this network" +msgstr "Activer ce réseau" + +msgid "Active IPv4-Routes" +msgstr "Routes IPv4 actives" + +msgid "Active IPv6-Routes" +msgstr "Routes IPv6 actives" + +msgid "Active Connections" +msgstr "Connexions actives" + +msgid "Active DHCP Leases" +msgstr "Bails DHCP actifs" + +msgid "Active DHCPv6 Leases" +msgstr "Bails DHCPv6 actifs" + +msgid "Ad-Hoc" +msgstr "Ad-hoc" + +msgid "Add" +msgstr "Ajouter" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "" +"Ajouter le suffixe du domaine local aux noms résolus d'après le fichier hosts" + +msgid "Add new interface..." +msgstr "Ajout d'une nouvelle interface..." + +msgid "Additional Hosts files" +msgstr "Fichiers hosts supplémetaires" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "Adresse" + +msgid "Address to access local relay bridge" +msgstr "Adresse pour accéder au pont-relais local" + +msgid "Administration" +msgstr "Administration" + +msgid "Advanced Settings" +msgstr "Paramètres avancés" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "Alerte" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "" +"Autoriser l'authentification SSH par mot " +"de passe" + +msgid "Allow all except listed" +msgstr "Autoriser tout sauf ce qui est listé" + +msgid "Allow listed only" +msgstr "Autoriser seulement ce qui est listé" + +msgid "Allow localhost" +msgstr "Autoriser l'hôte local" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" +"Permettre à des hôtes distants de se conecter à des ports SSH locaux " +"correspondants (« forwarded »)" + +msgid "Allow root logins with password" +msgstr "Autoriser les connexions administrateur avec mot de passe" + +msgid "Allow the root user to login with password" +msgstr "" +"Autoriser l'utilisateur root à se connecter avec un mot de passe" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" +"Autorise les réponses de l'amont dans la plage 127.0.0.0/8, par ex. pour les " +"services RBL" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "Antenne 1" + +msgid "Antenna 2" +msgstr "Antenne 2" + +msgid "Antenna Configuration" +msgstr "Configuration de l'antenne" + +msgid "Any zone" +msgstr "N'importe quelle zone" + +msgid "Apply" +msgstr "Appliquer" + +msgid "Applying changes" +msgstr "Changements en cours" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "Affecte les interfaces…" + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "Équipements associés" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Contrôleur sans fil Atheros 802.11%s " + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "Authentification" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "Autoritaire" + +msgid "Authorization Required" +msgstr "Autorisation requise" + +msgid "Auto Refresh" +msgstr "Rafraîchissement automatique" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "Disponible" + +msgid "Available packages" +msgstr "Paquets disponibles" + +msgid "Average:" +msgstr "Moyenne :" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "Retour" + +msgid "Back to Overview" +msgstr "Retour à la vue générale" + +msgid "Back to configuration" +msgstr "Retour à la configuration" + +msgid "Back to overview" +msgstr "Retour à la vue générale" + +msgid "Back to scan results" +msgstr "Retour aux résultats de la recherche" + +msgid "Background Scan" +msgstr "Recherche en arrière-plan" + +msgid "Backup / Flash Firmware" +msgstr "Sauvegarde / Mise à jour du micrologiciel" + +msgid "Backup / Restore" +msgstr "Sauvegarder / Restaurer" + +msgid "Backup file list" +msgstr "Liste des fichiers de sauvegarde" + +msgid "Bad address specified!" +msgstr "Adresse spécifiée incorrecte!" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"Voici la liste des fichiers à sauvegarder. Elle est constituée des fichiers " +"de configuration modifiés marqués par opkg, des fichiers de base essentiels, " +"et des motifs de sauvegarde définis par l'utilisateur." + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "Débit" + +msgid "Bogus NX Domain Override" +msgstr "Contourne les «  NX Domain » bogués" + +msgid "Bridge" +msgstr "Pont" + +msgid "Bridge interfaces" +msgstr "Interfaces en pont" + +msgid "Bridge unit number" +msgstr "Numéro d'unité du pont" + +msgid "Bring up on boot" +msgstr "L'activer au démarrage" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "Contrôleur sans fil Broadcom 802.11%s" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "Contrôleur sans fil Broadcom BCM%04x 802.11" + +msgid "Buffered" +msgstr "Temporisé" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "Boutons" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "Utilisation CPU (%)" + +msgid "Cancel" +msgstr "Annuler" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "Chaîne" + +msgid "Changes" +msgstr "Changements" + +msgid "Changes applied." +msgstr "Changements appliqués." + +msgid "Changes the administrator password for accessing the device" +msgstr "Change le mot de passe administrateur pour accéder à l'équipement" + +msgid "Channel" +msgstr "Canal" + +msgid "Check" +msgstr "Vérification" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "Somme de contrôle" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"Choisissez la zone de pare-feu à laquelle vous voulez affecter cette " +"interface. Sélectionnez non précisé pour retirer l'interface de la " +"zone associée, ou remplissez le champ créer pour définir une " +"nouvelle zone et y inclure cette interface." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" +"Choisissez le(s) réseau(x) que vous souhaitez attachez a cette interface " +"sans-fil ou remplissez le créer champ pour définir un nouveau " +"réseau. " + +msgid "Cipher" +msgstr "Code de chiffrement" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"Cliquer sur \"Construire l'archive\" pour télécharger une archive tar des " +"fichiers de la configuration actuelle. Pour réinitialiser le micrologiciel " +"dans son état initial, cliquer sur \"Réinitialiser\" (possible seulement " +"avec les images de type squashfs)." + +msgid "Client" +msgstr "Client" + +msgid "Client ID to send when requesting DHCP" +msgstr "Identifiant client à envoyer dans les requêtes DHCP" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" +"Fermer une connexion inactive après le délai donné en secondes, mettre 0 " +"pour garder les connexions" + +msgid "Close list..." +msgstr "Fermer la liste…" + +msgid "Collecting data..." +msgstr "Récupération de données..." + +msgid "Command" +msgstr "Commande" + +msgid "Common Configuration" +msgstr "Configuration commune" + +msgid "Compression" +msgstr "Compression" + +msgid "Configuration" +msgstr "Configuration" + +msgid "Configuration applied." +msgstr "Configuration appliquée." + +msgid "Configuration files will be kept." +msgstr "Les fichiers de configuration seront préservés." + +msgid "Confirmation" +msgstr "Confirmation" + +msgid "Connect" +msgstr "Se connecter" + +msgid "Connected" +msgstr "Connecté" + +msgid "Connection Limit" +msgstr "Limite de connexion" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "Connexions" + +msgid "Country" +msgstr "Pays" + +msgid "Country Code" +msgstr "Code pays" + +msgid "Cover the following interface" +msgstr "Couvre l'interface suivante" + +msgid "Cover the following interfaces" +msgstr "Couvre les interfaces suivantes" + +msgid "Create / Assign firewall-zone" +msgstr "Créer / Assigner une zone du pare-feu" + +msgid "Create Interface" +msgstr "Créer une interface" + +msgid "Create a bridge over multiple interfaces" +msgstr "Créer un pont par dessus plusieurs interfaces" + +msgid "Critical" +msgstr "Critique" + +msgid "Cron Log Level" +msgstr "Niveau de journalisation de Cron" + +msgid "Custom Interface" +msgstr "Interface spécifique" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"Personnaliser le comportement des DELs si possible." + +msgid "DHCP Leases" +msgstr "Baux DHCP" + +msgid "DHCP Server" +msgstr "Serveur DHCP" + +msgid "DHCP and DNS" +msgstr "DHCP et DNS" + +msgid "DHCP client" +msgstr "client DHCP" + +msgid "DHCP-Options" +msgstr "Options DHCP" + +msgid "DHCPv6 Leases" +msgstr "Bails DHCPv6" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "transmissions DNS" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "DUID" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "Deboguage" + +msgid "Default %d" +msgstr "%d par défaut" + +msgid "Default gateway" +msgstr "Passerelle par défaut" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "État par défaut" + +msgid "Define a name for this network." +msgstr "Donne un nom à ce réseau." + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"Définir des options DHCP supplémentaires, par exemple " +"\"6,192.168.2.1,192.168.2.2\" qui publie différents serveurs " +"DNS à ses clients." + +msgid "Delete" +msgstr "Effacer" + +msgid "Delete this network" +msgstr "Supprimer ce réseau" + +msgid "Description" +msgstr "Description" + +msgid "Design" +msgstr "Apparence" + +msgid "Destination" +msgstr "Destination" + +msgid "Device" +msgstr "Équipement" + +msgid "Device Configuration" +msgstr "Configuration de l'équipement" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "Diagnostics" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "Répertoire" + +msgid "Disable" +msgstr "Désactiver" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +"Désactiver DHCP " +"pour cette interface." + +msgid "Disable DNS setup" +msgstr "Désactiver la configuration DNS" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "Désactiver l'émission périodique de balises wifi (« HW-Beacon »)" + +msgid "Disabled" +msgstr "Désactivé" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "Jeter les réponses en RFC1918 amont" + +msgid "Displaying only packages containing" +msgstr "N'afficher que les paquets contenant" + +msgid "Distance Optimization" +msgstr "Optimisation de la distance" + +msgid "Distance to farthest network member in meters." +msgstr "Distance au membre du réseau le plus éloigné, en mètres." + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "Diversité" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Dnsmasq est un serveur DHCP combiné à un relais DNS pour les pare-feu NAT" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" +"Ne pas mettre en cache les réponses négatives, par ex. pour des domaines " +"inexistants" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" +"Ne pas transmettre les requêtes qui ne peuvent être résolues par les " +"serveurs de noms publics" + +msgid "Do not forward reverse lookups for local networks" +msgstr "" +"Ne pas transmettre les requêtes de recherche inverse pour les réseaux locaux" + +msgid "Do not send probe responses" +msgstr "Ne pas envoyer de réponses de test" + +msgid "Domain required" +msgstr "Domaine nécessaire" + +msgid "Domain whitelist" +msgstr "Liste blanche de domaines" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" +"Ne pas transmettre de requêtes DNS " +"sans nom DNS" + +msgid "Download and install package" +msgstr "Télécharge et installe le paquet" + +msgid "Download backup" +msgstr "Télécharger la sauvegarde" + +msgid "Dropbear Instance" +msgstr "Session Dropbear" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear est un serveur SSH et intègre " +"un serveur SCP" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" +"DHCP dynamique" + +msgid "Dynamic tunnel" +msgstr "Tunnel dynamique" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" +"Alloue dynamiquement des adresses pour les clients du DHCP. Si désactivé, " +"seuls les clients ayant des baux statiques seront gérés." + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "Méthode EAP" + +msgid "Edit" +msgstr "Éditer" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "Éditer cette interface" + +msgid "Edit this network" +msgstr "Éditer ce réseau" + +msgid "Emergency" +msgstr "Urgence" + +msgid "Enable" +msgstr "Activer" + +msgid "Enable STP" +msgstr "Activer le protocole STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "Activer la mise à jour dynamique de l'extrémité du tunnel chez HE.net" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "Activer la négociation IPv6 sur le lien PPP" + +msgid "Enable Jumbo Frame passthrough" +msgstr "Activer la circulation de très grandes trames (Jumbo)" + +msgid "Enable NTP client" +msgstr "Activer client NTP" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "Activer le serveur TFTP" + +msgid "Enable VLAN functionality" +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" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "Activer ce montage" + +msgid "Enable this swap" +msgstr "Activer cette mémoire d'échange (swap)" + +msgid "Enable/Disable" +msgstr "Activer/Désactiver" + +msgid "Enabled" +msgstr "Activé" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "" +"Activer le protocole STP sur " +"ce pont" + +msgid "Encapsulation mode" +msgstr "Mode encapsulé" + +msgid "Encryption" +msgstr "Chiffrement" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "Effacement…" + +msgid "Error" +msgstr "Erreur" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "Module Ethernet" + +msgid "Ethernet Switch" +msgstr "Commutateur Ethernet" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "Étendre le nom d'hôte" + +msgid "Expires" +msgstr "Expire" + +#, fuzzy +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" +"Délai d'expiration des adresses allouées, le minimum est de 2 minutes " +"(2m)." + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "Serveur distant de journaux système" + +msgid "External system log server port" +msgstr "Port du serveur distant de journaux système" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "Trames rapides" + +msgid "File" +msgstr "Fichier" + +msgid "Filename of the boot image advertised to clients" +msgstr "Nom de fichier d'une image de démarrage publiée aux clients" + +msgid "Filesystem" +msgstr "Système de fichiers" + +msgid "Filter" +msgstr "Filtrer" + +msgid "Filter private" +msgstr "Filtrer les requêtes privées" + +msgid "Filter useless" +msgstr "Filtrer les requêtes inutiles" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "Cherche et rejoint un réseau" + +msgid "Find package" +msgstr "Trouver un paquet" + +msgid "Finish" +msgstr "Terminer" + +msgid "Firewall" +msgstr "Pare-feu" + +msgid "Firewall Settings" +msgstr "Paramètres du pare-feu" + +msgid "Firewall Status" +msgstr "État du pare-feu" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "Version du micrologiciel" + +msgid "Fixed source port for outbound DNS queries" +msgstr "Port source fixe pour les requêtes DNS sortantes" + +msgid "Flash Firmware" +msgstr "Mise à jour du micrologiciel" + +msgid "Flash image..." +msgstr "Écriture de l'image…" + +msgid "Flash new firmware image" +msgstr "Écrire l'image du nouveau micrologiciel" + +msgid "Flash operations" +msgstr "Opérations d'écriture" + +msgid "Flashing..." +msgstr "Écriture…" + +msgid "Force" +msgstr "Forcer" + +msgid "Force CCMP (AES)" +msgstr "Forcer CCMP (AES)" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "Force le DHCP sur ce réseau même si un autre serveur est détecté." + +msgid "Force TKIP" +msgstr "Forcer TKIP" + +msgid "Force TKIP and CCMP (AES)" +msgstr "Forcer TKIP et CCMP (AES)" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "Transmettre le trafic DHCP" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "Transmettre le trafic de diffusion" + +msgid "Forwarding mode" +msgstr "Mode de transmission" + +msgid "Fragmentation Threshold" +msgstr "Seuil de fragmentation" + +msgid "Frame Bursting" +msgstr "Rafale de trames" + +msgid "Free" +msgstr "Libre" + +msgid "Free space" +msgstr "Espace libre" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "Ghz" + +msgid "GPRS only" +msgstr "seulement GPRS" + +msgid "Gateway" +msgstr "Passerelle" + +msgid "Gateway ports" +msgstr "Ports de la passerelle" + +msgid "General Settings" +msgstr "Paramètres généraux" + +msgid "General Setup" +msgstr "Configuration générale" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "Construire l'archive" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "Contrôleur sans fil générique 802.11%s" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "" +"La confirmation du nouveau mot de passe ne correspond pas, changement " +"annulé !" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "Aller à la configuration du mot de passe…" + +msgid "Go to relevant configuration page" +msgstr "Aller à la page de configuration correspondante" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "Mot de passe HE.net" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "Gestionnaire" + +msgid "Hang Up" +msgstr "Signal (HUP)" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"Ici, vous pouvez configurer les aspects basiques de votre routeur comme son " +"nom ou son fuseau horaire." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" +"Vous pouvez copier ici des clés SSH publiques (une par ligne) pour une " +"authentification SSH sur clés publiques." + +msgid "Hermes 802.11b Wireless Controller" +msgstr "Contrôleur sans fil Hermes 802.11b" + +msgid "Hide ESSID" +msgstr "Cacher le ESSID" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "Entrées d'hôtes" + +msgid "Host expiry timeout" +msgstr "Délai d'expiration pour les hôtes" + +msgid "Host-IP or Network" +msgstr "adresse IP ou réseau" + +msgid "Hostname" +msgstr "Nom d hôte" + +msgid "Hostname to send when requesting DHCP" +msgstr "Nom d'hôte à envoyer dans une requête DHCP" + +msgid "Hostnames" +msgstr "Noms d'hôtes" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "Adresse IP" + +msgid "IPv4" +msgstr "IPv4" + +msgid "IPv4 Firewall" +msgstr "Pare-feu IPv4" + +msgid "IPv4 WAN Status" +msgstr "État IPv4 du WAN" + +msgid "IPv4 address" +msgstr "Adresse IPv4" + +msgid "IPv4 and IPv6" +msgstr "IPv4 et IPv6" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "Diffusion IPv4" + +msgid "IPv4 gateway" +msgstr "Passerelle IPv4" + +msgid "IPv4 netmask" +msgstr "Masque-réseau IPv4" + +msgid "IPv4 only" +msgstr "IPv4 seulement" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "longueur du préfixe IPv4" + +msgid "IPv4-Address" +msgstr "Adresse IPv4" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "Pare-feu IPv6" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "État IPv6 du WAN" + +msgid "IPv6 address" +msgstr "Adresse IPv6" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "Passerelle IPv6" + +msgid "IPv6 only" +msgstr "IPv6 seulement" + +msgid "IPv6 prefix" +msgstr "Préfixe IPv6" + +msgid "IPv6 prefix length" +msgstr "longueur du préfixe IPv6" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "Adresse IPv6" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "IPv6 dans IPv4 (RFC 4213)" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "IPv6 sur IPv4 (6ème)" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "IPv6 sur IPv4 (6 vers 4)" + +msgid "Identity" +msgstr "Identité" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" +"Monte le périphérique identifié par cet UUID au lieu d'un nom de " +"périphérique fixe" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" +"Monte le périphérique identifié par cette étiquette au lieu d'un nom de " +"périphérique fixe" + +msgid "If unchecked, no default route is configured" +msgstr "Décoché, aucune route par défaut n'est configurée" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "Décoché, les adresses des serveurs DNS publiés sont ignorées" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"Si la mémoire physique n'est pas en quantité suffisante, les données " +"inutilisées peuvent être temporairement transférée sur une partition " +"d'échange, relevant la quantité de RAM disponible. Ce processus est lent car " +"la mémoire d'échange ne peut être accédée aux taux de transfert de la RAM." + +msgid "Ignore /etc/hosts" +msgstr "Ignorer /etc/hosts" + +msgid "Ignore interface" +msgstr "Ignorer l'interface" + +msgid "Ignore resolve file" +msgstr "Ignorer le fichier de résolution" + +msgid "Image" +msgstr "Image" + +msgid "In" +msgstr "Entrée" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "Délai d'inactivité" + +msgid "Inbound:" +msgstr "Intérieur :" + +msgid "Info" +msgstr "Info" + +msgid "Initscript" +msgstr "Script d'initialisation" + +msgid "Initscripts" +msgstr "Scripts d'initialisation" + +msgid "Install" +msgstr "Installer" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "Installer le paquet %q" + +msgid "Install protocol extensions..." +msgstr "Installation des extensions de protocole…" + +msgid "Installed packages" +msgstr "Paquets installés" + +msgid "Interface" +msgstr "Interface" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "Configuration de l'interface" + +msgid "Interface Overview" +msgstr "Vue d'ensemble de l'interface" + +msgid "Interface is reconnecting..." +msgstr "L'interface se reconnecte…" + +msgid "Interface is shutting down..." +msgstr "L'interface s'arrête…" + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "L'interface n'est pas présente ou pas encore connectée." + +msgid "Interface reconnected" +msgstr "Interface reconnectée" + +msgid "Interface shut down" +msgstr "Interface arrêtée" + +msgid "Interfaces" +msgstr "Interfaces" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "Erreur Serveur Interne" + +msgid "Invalid" +msgstr "Erreur : donnée entrée invalide" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" +"Identifiant VLAN invalide !Seuls les IDs entre %d et %d sont autorisés." + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "" +"Identifiant VLAN donné invalide ! Seuls les identifiants uniques sont " +"autorisés" + +msgid "Invalid username and/or password! Please try again." +msgstr "Nom d'utilisateur et/ou mot de passe invalides ! Réessayez !" + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"Il semble que vous essayez de programmer votre routeur avec une image qui ne " +"tient pas dans sa mémoire flash, vérifiez s'il vous plait votre fichier-" +"image !" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "Nécessite un Script Java !" + +msgid "Join Network" +msgstr "Rejoindre un réseau" + +msgid "Join Network: Wireless Scan" +msgstr "Rejoindre un réseau : recherche des réseaux sans-fil" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "Garder le paramètrage" + +msgid "Kernel Log" +msgstr "Journal du noyau" + +msgid "Kernel Version" +msgstr "Version du noyau" + +msgid "Key" +msgstr "Clé" + +msgid "Key #%d" +msgstr "Clé n° %d" + +msgid "Kill" +msgstr "Tuer" + +msgid "L2TP" +msgstr "L2TP" + +msgid "L2TP Server" +msgstr "Serveur L2TP" + +msgid "LCP echo failure threshold" +msgstr "Seuil d'erreur des échos LCP" + +msgid "LCP echo interval" +msgstr "Intervalle entre échos LCP" + +msgid "LLC" +msgstr "LLC" + +msgid "Label" +msgstr "Étiquette" + +msgid "Language" +msgstr "Langue" + +msgid "Language and Style" +msgstr "Langue et apparence" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "Durée de validité d'un bail" + +msgid "Leasefile" +msgstr "Fichier de baux" + +msgid "Leasetime remaining" +msgstr "Durée de validité" + +msgid "Leave empty to autodetect" +msgstr "Laisser vide pour l'auto-détection" + +msgid "Leave empty to use the current WAN address" +msgstr "Laisser vide pour utiliser l'adresse WAN actuelle" + +msgid "Legend:" +msgstr "Légende :" + +msgid "Limit" +msgstr "Limite" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "Lien établi" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" +"Liste des serveurs auquels sont transmis les requêtes DNS" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "Liste des domaines où sont permises les réponses de type RFC1918" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "" +"Liste des hôtes qui fournissent des résultats avec des « NX domain » bogués" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "Écouter seulement sur l'interface spécifié, sinon sur toutes" + +msgid "Listening port for inbound DNS queries" +msgstr "Port d'écoute des requêtes DNS entrantes" + +msgid "Load" +msgstr "Charger" + +msgid "Load Average" +msgstr "Charge moyenne" + +msgid "Loading" +msgstr "Chargement" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "Adresse IPv4 locale" + +msgid "Local IPv6 address" +msgstr "Adresse IPv6 locale" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "Démarrage local" + +msgid "Local Time" +msgstr "Heure Locale" + +msgid "Local domain" +msgstr "Domaine local" + +#, fuzzy +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" +"Domaine local à préciser. Les noms correspondants à ce domaine ne sont " +"jamais transmis, mais résolus seulement depuis le serveur DHCP ou le fichier " +"Hosts" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" +"Suffixe du domaine local ajouté aux noms du serveur DHCP et du fichier Hosts" + +msgid "Local server" +msgstr "Serveur local" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" +"Trouve le nom d'hôte suivant le sous-réseau d'où vient la requête si " +"plusieurs adresses IPs sont possibles" + +msgid "Localise queries" +msgstr "Localiser les requêtes" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "Niveau de journalisation" + +msgid "Log queries" +msgstr "Journaliser les requêtes" + +msgid "Logging" +msgstr "Journalisation" + +msgid "Login" +msgstr "Connexion" + +msgid "Logout" +msgstr "Déconnexion" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "" +"Adresse allouée la plus basse, spécifiée par un décalage à partir de " +"l'adresse réseau." + +msgid "MAC-Address" +msgstr "Adresse MAC" + +msgid "MAC-Address Filter" +msgstr "Filtrage par adresses MAC" + +msgid "MAC-Filter" +msgstr "Filtrage par adresses MAC" + +msgid "MAC-List" +msgstr "Liste des adresses MAC" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "MB/s" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "MHz" + +msgid "MTU" +msgstr "MTU" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "Débit maximum" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "Nombre maximum de baux DHCP actifs" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "Nombre maximum de requêtes DNS au même moment" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "Taille maximum autorisée des paquets UDP EDNS.0" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "Délai d'attente maximum que le modem soit prêt" + +msgid "Maximum hold time" +msgstr "Temps de maintien maximum" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "Nombre maximum d'adresses allouées." + +msgid "Mbit/s" +msgstr "Mbit/s" + +msgid "Memory" +msgstr "Mémoire" + +msgid "Memory usage (%)" +msgstr "Utilisation Mémoire (%)" + +msgid "Metric" +msgstr "Metrique" + +msgid "Minimum Rate" +msgstr "Débit minimum" + +msgid "Minimum hold time" +msgstr "Temps de maintien mimimum" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "Extention de protocole manquante pour le proto %q" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "Mode" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "Interface Modem" + +msgid "Modem init timeout" +msgstr "Délai max. d'initialisation du modem" + +msgid "Monitor" +msgstr "Monitor" + +msgid "Mount Entry" +msgstr "Montage" + +msgid "Mount Point" +msgstr "Point de montage" + +msgid "Mount Points" +msgstr "Point de montage" + +msgid "Mount Points - Mount Entry" +msgstr "Points de montage - élément à monter" + +msgid "Mount Points - Swap Entry" +msgstr "Points de montage - partition d'échange" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"Les points de montage définissent l'attachement d'un périphérique au système " +"de fichier" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "Options de montage" + +msgid "Mount point" +msgstr "Point de montage" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "Systèmes de fichiers montés" + +msgid "Move down" +msgstr "Descendre" + +msgid "Move up" +msgstr "Monter" + +msgid "Multicast Rate" +msgstr "Débit multidiffusion" + +msgid "Multicast address" +msgstr "Adresse multidiffusion" + +msgid "NAS ID" +msgstr "NAS ID" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "Serveurs NTP candidats" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "Nom" + +msgid "Name of the new interface" +msgstr "Nom de la nouvelle interface" + +msgid "Name of the new network" +msgstr "Nom du nouveau réseau" + +msgid "Navigation" +msgstr "Navigation" + +msgid "Netmask" +msgstr "Masque de réseau" + +msgid "Network" +msgstr "Réseau" + +msgid "Network Utilities" +msgstr "Utilitaires réseau" + +msgid "Network boot image" +msgstr "Image de démarrage réseau" + +msgid "Network without interfaces." +msgstr "Réseau sans interfaces." + +msgid "Next »" +msgstr "Prochain »" + +msgid "No DHCP Server configured for this interface" +msgstr "Aucun serveur DHCP configuré sur cette interface" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "Aucune chaîne dans cette table" + +msgid "No files found" +msgstr "Aucun fichier trouvé" + +msgid "No information available" +msgstr "Information indisponible" + +msgid "No negative cache" +msgstr "Pas de cache négatif" + +msgid "No network configured on this device" +msgstr "Ce périphérique n'a aucune adresse configurée" + +msgid "No network name specified" +msgstr "Aucun nom de réseau donné" + +msgid "No package lists available" +msgstr "Aucune liste de paquets disponible" + +msgid "No password set!" +msgstr "Pas de mot de passe positionné !" + +msgid "No rules in this chain" +msgstr "Aucune règle dans cette chaîne" + +msgid "No zone assigned" +msgstr "Aucune zone attribuée" + +msgid "Noise" +msgstr "Bruit" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "Bruit :" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "Vide" + +msgid "Normal" +msgstr "Normal" + +msgid "Not Found" +msgstr "Pas trouvé" + +msgid "Not associated" +msgstr "Pas associé" + +msgid "Not connected" +msgstr "Non connecté" + +msgid "Note: Configuration files will be erased." +msgstr "Note : les fichiers de configuration seront effacés." + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "Note" + +msgid "Nslookup" +msgstr "Nslookup" + +msgid "OK" +msgstr "OK" + +msgid "OPKG-Configuration" +msgstr "Configuration OPKG" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "Durée éteinte" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"Dans cette page vous pourrez configurer les interfaces réseaux. Vous pouvez " +"bridger différentes interfaces en cochant le champ \"bridger les interfaces" +"\" et en saisissant les noms des interfaces réseau séparées par des espaces. " +"Vous pouvez aussi utiliser la notation VLAN, INTERFACE.VLANNB (ex : eth0.1)." + +msgid "On-State Delay" +msgstr "Durée allumée" + +msgid "One of hostname or mac address must be specified!" +msgstr "Il faut indiquer un nom d'hôte ou une adresse MAC !" + +msgid "One or more fields contain invalid values!" +msgstr "Un ou plusieurs champs contiennent des valeurs incorrectes !" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "Un ou plusieurs champs n'ont pas de valeur !" + +msgid "Open list..." +msgstr "Ouvrir la liste…" + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "Option modifiée" + +msgid "Option removed" +msgstr "Option retirée" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "Options" + +msgid "Other:" +msgstr "Autres :" + +msgid "Out" +msgstr "Sortie" + +msgid "Outbound:" +msgstr "Extérieur :" + +msgid "Outdoor Channels" +msgstr "Canaux en extérieur" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "Modifier l'adresse MAC" + +msgid "Override MTU" +msgstr "Modifier le MTU" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "Modifier la passerelle dans les réponses DHCP" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" +"Remplacer le masque réseau envoyés aux clients. Il est normalement calculé à " +"partir du sous-réseau géré." + +msgid "Override the table used for internal routes" +msgstr "Modifier la table utilisée pour les routes internes" + +msgid "Overview" +msgstr "Vue d ensemble" + +msgid "Owner" +msgstr "Propriétaire" + +msgid "PAP/CHAP password" +msgstr "Mot de passe PAP/CHAP" + +msgid "PAP/CHAP username" +msgstr "Identifiant PAP/CHAP" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "code PIN" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "PPP" + +msgid "PPPoA Encapsulation" +msgstr "PPPoA Encapsulation" + +msgid "PPPoATM" +msgstr "PPPoATM" + +msgid "PPPoE" +msgstr "PPPoE" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "PPtP" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "Nécessite le paquet libiwinfo !" + +msgid "Package lists are older than 24 hours" +msgstr "Les listes de paquets ont plus de 24 heures" + +msgid "Package name" +msgstr "Nom du paquet" + +msgid "Packets" +msgstr "Paquets" + +msgid "Part of zone %q" +msgstr "Fait partie de la zone %q" + +msgid "Password" +msgstr "Mot de passe" + +msgid "Password authentication" +msgstr "Authentification par mot de passe" + +msgid "Password of Private Key" +msgstr "Mot de passe de la clé privée" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "Mot de passe changé avec succès !" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "Chemin de la CA" + +msgid "Path to Client-Certificate" +msgstr "Chemin du certificat-client" + +msgid "Path to Private Key" +msgstr "Chemin de la clé privée" + +msgid "Path to executable which handles the button event" +msgstr "Chemin du programme exécutable gérant les évènements liés au bouton" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "Pic :" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "Redémarrer" + +msgid "Perform reset" +msgstr "Réinitialiser" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "Débit de la puce:" + +msgid "Physical Settings" +msgstr "Paramètres physiques" + +msgid "Ping" +msgstr "Ping" + +msgid "Pkts." +msgstr "Pqts." + +msgid "Please enter your username and password." +msgstr "Saisissez votre nom d'utilisateur et mot de passe." + +msgid "Policy" +msgstr "Politique" + +msgid "Port" +msgstr "Port" + +msgid "Port status:" +msgstr "Statut du port :" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" +"Suppose que le distant a disparu une fois le nombre donné d'erreurs d'échos " +"LCP ; utiliser 0 pour ignorer ces erreurs" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "Empêche la communication directe entre clients" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "Contrôleur sans fil Prism2/2.5/3 802.11b" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "Continuer" + +msgid "Processes" +msgstr "Processus" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "Prot." + +msgid "Protocol" +msgstr "Protocole" + +msgid "Protocol family" +msgstr "Famille du protocole" + +msgid "Protocol of the new interface" +msgstr "Protocole de la nouvelle interface" + +msgid "Protocol support is not installed" +msgstr "La gestion du protocole n'est pas installée" + +msgid "Provide NTP server" +msgstr "Fournir serveur NTP" + +msgid "Provide new network" +msgstr "Donner un nouveau réseau" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "Pseudo Ad-Hoc (ahdemo)" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "Qualitée" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "Seuil RTS/CTS" + +msgid "RX" +msgstr "Reçu" + +msgid "RX Rate" +msgstr "Débit en réception" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "Contrôleur sans fil RaLink 802.11%s" + +msgid "Radius-Accounting-Port" +msgstr "Port de la comptabilisation Radius" + +msgid "Radius-Accounting-Secret" +msgstr "Secret de la comptabilisation Radius" + +msgid "Radius-Accounting-Server" +msgstr "Serveur de la comptabilisation Radius" + +msgid "Radius-Authentication-Port" +msgstr "Port de l'authentification Radius" + +msgid "Radius-Authentication-Secret" +msgstr "Secret de l'authentification Radius" + +msgid "Radius-Authentication-Server" +msgstr "Serveur de l'authentification Radius" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "Lire /etc/ethers pour configurer le serveur DHCP" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" +"Voulez-vous vraiment supprimer cette interface? L'effacement ne peut être " +"annulé!\n" +"Vous pourriez perdre l'accès à l'équipement si vous y êtes connecté par " +"cette interface." + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" +"Voulez-vous vraiment supprimer ce réseau sans-fil? L'effacement ne peut être " +"annulé!\n" +"Vous pourriez perdre l'accès à l'équipement si vous y êtes connecté par ce " +"réseau." + +msgid "Really reset all changes?" +msgstr "Voulez-vous vraiment ré-initialiser toutes les modifications ?" + +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" +"Voulez-vous vraiment arrêter l'interface %s ?\n" +"Vous pourriez perdre l'accès à l'équipement si vous y êtes connecté par " +"cette interface." + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" +"Voulez-vous vraiment arrêter l'interface %s ?\n" +"Vous pourriez perdre l'accès à l'équipement si vous y êtes connecté par " +"cette interface." + +msgid "Really switch protocol?" +msgstr "Voulez-vous vraiment changer de protocole ?" + +msgid "Realtime Connections" +msgstr "Connexions temps-réel" + +msgid "Realtime Graphs" +msgstr "Graphiques temps-réel" + +msgid "Realtime Load" +msgstr "Charge temps-réel" + +msgid "Realtime Traffic" +msgstr "Trafic temps-réel" + +msgid "Realtime Wireless" +msgstr "Qualité de réception actuelle" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "Protection contre l'attaque « rebind »" + +msgid "Reboot" +msgstr "Redémarrage" + +msgid "Rebooting..." +msgstr "Redémarre…" + +msgid "Reboots the operating system of your device" +msgstr "Redémarrage du système d'exploitation de votre équipement" + +msgid "Receive" +msgstr "Reçoit" + +msgid "Receiver Antenna" +msgstr "Antenne émettrice" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "Reconnecter cet interface" + +msgid "Reconnecting interface" +msgstr "Reconnecte cet interface" + +msgid "References" +msgstr "Références" + +msgid "Regulatory Domain" +msgstr "Domaine de certification" + +msgid "Relay" +msgstr "Relais" + +msgid "Relay Bridge" +msgstr "Pont-relais" + +msgid "Relay between networks" +msgstr "Relais entre réseaux" + +msgid "Relay bridge" +msgstr "Pont-relais" + +msgid "Remote IPv4 address" +msgstr "Adresse IPv4 distante" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "Désinstaller" + +msgid "Repeat scan" +msgstr "Répéter la recherche" + +msgid "Replace entry" +msgstr "Remplacer l'entrée" + +msgid "Replace wireless configuration" +msgstr "Remplacer la configuration sans-fil" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "Nécessaire avec certains FAIs, par ex. : Charter avec DOCSIS 3" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "Remise à zéro" + +msgid "Reset Counters" +msgstr "Remise à zéro des compteurs" + +msgid "Reset to defaults" +msgstr "Ré-initialisation" + +msgid "Resolv and Hosts Files" +msgstr "Fichiers Resolv et Hosts" + +msgid "Resolve file" +msgstr "Fichier de résolution des noms" + +msgid "Restart" +msgstr "Redémarrer" + +msgid "Restart Firewall" +msgstr "Redémarrer le pare-feu" + +msgid "Restore backup" +msgstr "Restaurer une sauvegarde" + +msgid "Reveal/hide password" +msgstr "Montrer/cacher le mot de passe" + +msgid "Revert" +msgstr "Revenir" + +msgid "Root" +msgstr "Racine" + +msgid "Root directory for files served via TFTP" +msgstr "Répertoire racine des fichiers fournis par TFTP" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "Mot de passe du routeur" + +msgid "Routes" +msgstr "Routes" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"Avec les routes statiques vous pouvez spécifier à travers quelle interface " +"ou passerelle un réseau peut être contacté." + +msgid "Run a filesystem check before mounting the device" +msgstr "" +"Faire un vérification du système de fichiers avant de monter le périphérique" + +msgid "Run filesystem check" +msgstr "Faire une vérification du système de fichiers" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "Accès SSH" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "Clés SSH" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "Sauvegarder" + +msgid "Save & Apply" +msgstr "Sauvegarder et Appliquer" + +msgid "Save & Apply" +msgstr "Sauvegarder et appliquer" + +msgid "Scan" +msgstr "Scan" + +msgid "Scheduled Tasks" +msgstr "Tâches Régulières" + +msgid "Section added" +msgstr "Section ajoutée" + +msgid "Section removed" +msgstr "Section retirée" + +msgid "See \"mount\" manpage for details" +msgstr "Voir le manuel de « mount » pour les détails" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" +"Envoyer des demandes d'échos LCP à intervalles donnés, en secondes ; utile " +"uniqument associé à un seuil d'erreurs" + +msgid "Separate Clients" +msgstr "Isoler les clients" + +msgid "Separate WDS" +msgstr "WDS séparé" + +msgid "Server Settings" +msgstr "Paramètres du serveur" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "Nom du service" + +msgid "Service Type" +msgstr "Type du service" + +msgid "Services" +msgstr "Services" + +#, fuzzy +msgid "Set up Time Synchronization" +msgstr "Configurer la synchronisation de l'heure" + +msgid "Setup DHCP Server" +msgstr "Configurer le serveur DHCP" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "Afficher la liste des fichiers de la sauvegarde actuelle" + +msgid "Shutdown this interface" +msgstr "Arrêter cet interface" + +msgid "Shutdown this network" +msgstr "Arrêter ce réseau" + +msgid "Signal" +msgstr "Signal" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "Signal :" + +msgid "Size" +msgstr "Taille" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "Passer au suivant" + +msgid "Skip to content" +msgstr "Skip to content" + +msgid "Skip to navigation" +msgstr "Skip to navigation" + +msgid "Slot time" +msgstr "Tranche de temps" + +msgid "Software" +msgstr "Logiciels" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "Certains champs sont invalides, ne peut sauvegarder les valeurs !" + +msgid "Sorry, the object you requested was not found." +msgstr "Désolé, l'objet que vous avez demandé n'as pas été trouvé." + +msgid "Sorry, the server encountered an unexpected error." +msgstr "Désolé, le serveur à rencontré une erreur inattendue." + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" +"Désolé, il n'y a pas de gestion de mise à jour disponible, une nouvelle " +"image du micrologiciel doit être écrite manuellement. Reportez-vous S.V.P. " +"au wiki pour connaître les instructions d'installation spécifiques à votre " +"matériel." + +msgid "Sort" +msgstr "Trier" + +msgid "Source" +msgstr "Source" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "Indique l'état du bouton à gérer" + +msgid "Specifies the directory the device is attached to" +msgstr "Indique le répertoire auquel le périphérique est rattaché" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "Indique le port d'écoute de cette instance Dropbear" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" +"Indique le nombre de requêtes ARP ratées au delà duquel les hôtes seront " +"supposés disparus" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "Indique le délai après quoi les hôtes seront supposés disparus" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "Spécifiez ici la clé secrète de chiffrage." + +msgid "Start" +msgstr "Démarrer" + +msgid "Start priority" +msgstr "Priorité de démarrage" + +msgid "Startup" +msgstr "Démarrage" + +msgid "Static IPv4 Routes" +msgstr "Routes IPv4 statiques" + +msgid "Static IPv6 Routes" +msgstr "Routes IPv6 statiques" + +msgid "Static Leases" +msgstr "Baux Statiques" + +msgid "Static Routes" +msgstr "Routes statiques" + +msgid "Static WDS" +msgstr "WDS statique" + +msgid "Static address" +msgstr "Adresse statique" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" +"Les baux statiques sont utilisés pour donner des adresses IP fixes et des " +"noms symboliques à des clients DHCP. Il sont également nécessaires pour les " +"interfaces sans configuration dynamique où l'on fournit un bail aux seuls " +"hôtes configurés." + +msgid "Status" +msgstr "Status" + +msgid "Stop" +msgstr "Arrêter" + +msgid "Strict order" +msgstr "Ordre stricte" + +msgid "Submit" +msgstr "Soumettre" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "Élement de partition d'échange" + +msgid "Switch" +msgstr "Commutateur" + +msgid "Switch %q" +msgstr "Commutateur %q" + +msgid "Switch %q (%s)" +msgstr "Commutateur %q (%s)" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "Protocole du commutateur" + +msgid "Sync with browser" +msgstr "Synchro avec le navigateur" + +msgid "Synchronizing..." +msgstr "Synchronisation…" + +msgid "System" +msgstr "Système" + +msgid "System Log" +msgstr "Journal système" + +msgid "System Properties" +msgstr "Propriétés système" + +msgid "System log buffer size" +msgstr "Taille du tampon du journal système" + +msgid "TCP:" +msgstr "TCP :" + +msgid "TFTP Settings" +msgstr "Paramètres TFTP" + +msgid "TFTP server root" +msgstr "Racine du serveur TFTP" + +msgid "TX" +msgstr "Transmis" + +msgid "TX Rate" +msgstr "Débit en émission" + +msgid "Table" +msgstr "Table" + +msgid "Target" +msgstr "Cible" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "Terminer" + +#, fuzzy +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" +"La section Configuration de l'équipement couvre les paramètres " +"physiques du matériel radio comme le canal, la puissance d'émission ou la " +"sélection de l'antenne, qui sont partagés entre tous les réseaux sans-fil " +"définis (si le matériel radio gère plusieurs réseaux SSID). Les paramètres " +"dépendant de chaque réseau comme le chiffrage ou le mode de fonctionnement " +"sont groupés dans Configuration de l'interface." + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" +"Le paquet libiwinfo-lua n'est pas installé. Vous devez l'installer " +"pour une configuration sans-fil fonctionnelle !" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" +"Le préfixe IPv6 attribué par le fournisseur, se termine généralement par " +"::" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" +"Les caractères autorisés sont : A-Z, a-z, " +"0-9 et _" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "Le périphérique de bloc contenant la partition (ex : /dev/sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"Le système de fichiers utilisé pour formatter le support de stockage (ex : " +"ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" +"L'image du micrologiciel a été chargée. Ci-dessous la taille et la somme de " +"contrôle de cette image, comparez-les avec le fichier original pour vous " +"assurer de son intégrité.
Cliquez sur \"Continuer\" pour lancer la " +"procédure d'écriture." + +msgid "The following changes have been committed" +msgstr "Les changements suivants ont été appliqués" + +msgid "The following changes have been reverted" +msgstr "Les changements suivants ont été annulés" + +msgid "The following rules are currently active on this system." +msgstr "Les règles suivantes sont actuellement actives sur ce système." + +msgid "The given network name is not unique" +msgstr "Le nom de réseau donné n'est pas unique" + +#, fuzzy +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" +"Le matériel ne sait pas gérer plusieurs SSID et la configuration existante " +"sera remplacée si vous continuez." + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" +"La longueur du préfixe IPv4 en bits, le reste est utilisé dans les adresses " +"IPv6" + +msgid "The length of the IPv6 prefix in bits" +msgstr "La longueur du préfixe IPv6 en bits" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" +"Les ports de votre équipement peuvent être configurés pour combiner " +"plusieurs VLANs dans " +"lesquels les machines connectées peuvent dialoguer directement l'une avec " +"l'autre. Les VLANs sont " +"souvent utilisés pour séparer différences sous-réseaux. Bien souvent il y a " +"un port d'uplink pour une connexion vers un réseau plus vaste, comme " +"internet et les autres ports sont réservés au réseau local." + +msgid "The selected protocol needs a device assigned" +msgstr "Le protocole sélectionné nécessite l'attribution d'un périphérique" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" +"Le système est en train d'effacer la partition de configuration et " +"redémarrera tout seul une fois cela fini." + +#, fuzzy +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes until you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." + +msgid "There are no active leases." +msgstr "Il n'y a aucun bail actif." + +msgid "There are no pending changes to apply!" +msgstr "Il n'y a aucun changement en attente d'être appliqués !" + +msgid "There are no pending changes to revert!" +msgstr "Il n'y a aucun changement à annuler !" + +msgid "There are no pending changes!" +msgstr "Il n'y a aucun changement en attente !" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" +"Il n'y a aucun périphérique attribué pour l'instant, liez s.v.p. un " +"périphérique réseau dans l'onglet \"Paramètres du matériel\"" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" +"Ce routeur n'a pas de mot de passe configuré. Veuillez configurer un mot de " +"passe pour l'utilisateur root pour protéger l'accès de votre interface web " +"et activer l'accès par SSH." + +msgid "This IPv4 address of the relay" +msgstr "L'adresse IPv4 du relais" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" +"Voici la liste des motifs de type glob shell utilisés pour sélectionner les " +"fichiers et répertoires à inclure durant la mise à jour système. Les " +"fichiers modifiés dans /etc/config/ et certains autres sont automatiquement " +"conservés." + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" +"Voici le contenu de /etc/rc.local. Placez-y vos propres commandes (avant le " +"« exit 0 ») pour qu'ils soient exécutés en fin de démarrage." + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" +"Il s'agit de l'adresse de l'extrémité locale attribuée par le fournisseur de " +"tunnels, elle se termine habituellement avec :2" + +msgid "" +"This is the only DHCP in the local network" +msgstr "C'est le seul serveur DHCP sur le réseau local" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "" +"Ceci est le système crontab avec lequel sont définies les tâches récurrentes." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" +"Il s'agit habituellement de l'adresse du plus proche PoP géré par le " +"fournisseur de tunnels" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" +"Cette liste donne une vue d'ensemble des processus en exécution et leur " +"statut." + +msgid "This page allows the configuration of custom button actions" +msgstr "Cette page permet la configuration d'actions spécifiques des boutons" + +msgid "This page gives an overview over currently active network connections." +msgstr "" +"Cette page donne une vue d'ensemble des connexions réseaux actuellement " +"actives." + +msgid "This section contains no values yet" +msgstr "Cette section ne contient pas encore de valeur" + +msgid "Time Synchronization" +msgstr "Synchronisation de l'heure" + +msgid "Time Synchronization is not configured yet." +msgstr "La synchronisation de l'heure n'est pas encore configurée." + +msgid "Timezone" +msgstr "Fuseau horaire" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" +"Pour restaurer les fichiers de configuration, vous pouvez charger ici une " +"archive de sauvegarde construite précédemment." + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "Total disponible" + +msgid "Traceroute" +msgstr "Traceroute" + +msgid "Traffic" +msgstr "Trafic" + +msgid "Transfer" +msgstr "Transfert" + +msgid "Transmission Rate" +msgstr "Débit d'émission" + +msgid "Transmit" +msgstr "Transmet" + +msgid "Transmit Power" +msgstr "Puissance d'émission" + +msgid "Transmitter Antenna" +msgstr "Antenne émettrice" + +msgid "Trigger" +msgstr "Déclenchement" + +msgid "Trigger Mode" +msgstr "Mode de déclenchement" + +msgid "Tunnel ID" +msgstr "ID du tunnel" + +msgid "Tunnel Interface" +msgstr "Interface du tunnel" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "Mode Turbo" + +msgid "Tx-Power" +msgstr "Puissance d'émission" + +msgid "Type" +msgstr "Type" + +msgid "UDP:" +msgstr "UDP :" + +msgid "UMTS only" +msgstr "seulement UMTS" + +msgid "UMTS/GPRS/EV-DO" +msgstr "UMTS/GPRS/EV-DO" + +msgid "USB Device" +msgstr "Périphérique USB" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "UUID" + +msgid "Unable to dispatch" +msgstr "Impossible d'envoyer" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "Inconnu" + +msgid "Unknown Error, password not changed!" +msgstr "Erreur inconnue, mot de passe inchangé !" + +msgid "Unmanaged" +msgstr "non-géré" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "Changements non appliqués" + +msgid "Unsupported protocol type." +msgstr "Type de protocole non pris en charge." + +msgid "Update lists" +msgstr "Mettre les listes à jour" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" +"Envoyer ici une image compatible avec le système de mise à jour pour " +"remplacer le micrologiciel actuel. Cochez \"Garder la configuration\" pour " +"maintenir la configuration actuelle (nécessite une image de micrologiciel " +"compatible)." + +msgid "Upload archive..." +msgstr "Envoi de l'archive…" + +msgid "Uploaded File" +msgstr "Fichier Uploadé" + +msgid "Uptime" +msgstr "Uptime" + +msgid "Use /etc/ethers" +msgstr "Utiliser /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "Utiliser la passerelle DHCP" + +msgid "Use DNS servers advertised by peer" +msgstr "Utiliser les serveurs DNS publiés par le distant" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "Utiliser les codes-pays ISO/IEC 3166 alpha2." + +msgid "Use MTU on tunnel interface" +msgstr "Utiliser le MTU sur l'interface du tunnel" + +msgid "Use TTL on tunnel interface" +msgstr "Utiliser le TTL sur l'interface du tunnel" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "Utiliser une marque de diffusion" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "Utiliser des serveurs DNS spécifiques" + +msgid "Use default gateway" +msgstr "Utiliser la passerelle par défaut" + +msgid "Use gateway metric" +msgstr "Utiliser la métrique de la passerelle" + +msgid "Use routing table" +msgstr "Utiliser la table de routage" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" +"Utiliser le bouton Ajouter pour créer un nouveau bail. " +"L'adresse MAC identifie l'hôte, l'adresse IPv4 décrit " +"l'adresse fixe à utiliser et le nom d'hôte sera le nom symbolique " +"attribué à l'hôte qui fait la demande." + +msgid "Used" +msgstr "Utilisé" + +msgid "Used Key Slot" +msgstr "Clé utilisée" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "Nom d'utilisateur" + +msgid "VC-Mux" +msgstr "VC-Mux" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "VLANs sur %q" + +msgid "VLANs on %q (%s)" +msgstr "VLANs sur %q (%s)" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "Serveur VPN" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "Classe de fournisseur à envoyer dans les requêtes DHCP" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "Vérifier" + +msgid "Version" +msgstr "Version" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "Système ouvert WEP" + +msgid "WEP Shared Key" +msgstr "Clé partagée WEP" + +msgid "WEP passphrase" +msgstr "Mot de passe WEP" + +msgid "WMM Mode" +msgstr "Mode WMM" + +msgid "WPA passphrase" +msgstr "Mot de passe WPA" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"Le chiffrage WPA nécessite l'installation du paquet wpa_supplicant (en mode " +"client) ou hostapd (en mode Point d'accès ou Ad-hoc)." + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "En attente de l'application des changements..." + +msgid "Waiting for command to complete..." +msgstr "En attente de la fin de la commande..." + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "Attention" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "Sans-fil" + +msgid "Wireless Adapter" +msgstr "Module Wi-Fi" + +msgid "Wireless Network" +msgstr "Réseau sans-fil" + +msgid "Wireless Overview" +msgstr "Présentation des réseaux sans-fil" + +msgid "Wireless Security" +msgstr "Sécurité des réseaux sans-fil" + +msgid "Wireless is disabled or not associated" +msgstr "Le Wi-Fi est désactivé ou non associé" + +msgid "Wireless is restarting..." +msgstr "Le Wi-Fi est ré-initialisé…" + +msgid "Wireless network is disabled" +msgstr "Le réseau Wi-Fi est désactivé" + +msgid "Wireless network is enabled" +msgstr "Le réseau Wi-Fi est activé" + +msgid "Wireless restarted" +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" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "Gestion du mode XR" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"Vous pouvez ici activer ou désactiver les scripts d'initialisation " +"installés. Les changements seront pris en compte après un redémarrage.
Attention: Si vous désactivez des scripts essentiels comme \"réseau" +"\", votre équipement pourrait ne plus être accessible !" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" +"Vous devez activer JavaScript dans votre navigateur pour que LuCI fonctionne " +"correctement." + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "n'importe lequel" + +msgid "auto" +msgstr "auto" + +msgid "baseT" +msgstr "baseT" + +msgid "bridged" +msgstr "ponté" + +msgid "create:" +msgstr "créer:" + +msgid "creates a bridge over specified interface(s)" +msgstr "créer un bridge entre plusieurs interfaces" + +msgid "dB" +msgstr "dB" + +msgid "dBm" +msgstr "dBm" + +msgid "disable" +msgstr "désactiver" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "expiré" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "fichier dans lequel les baux DHCP seront stockés" + +msgid "forward" +msgstr "transfert" + +msgid "full-duplex" +msgstr "full-duplex" + +msgid "half-duplex" +msgstr "half-duplex" + +msgid "help" +msgstr "aide" + +msgid "hidden" +msgstr "cacher" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "si la destination est un réseau" + +msgid "input" +msgstr "entrée" + +msgid "kB" +msgstr "kB" + +msgid "kB/s" +msgstr "kB/s" + +msgid "kbit/s" +msgstr "kbit/s" + +msgid "local DNS file" +msgstr "fichier de résolution local" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "non" + +msgid "no link" +msgstr "pas de lien" + +msgid "none" +msgstr "aucun" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "Arrêté" + +msgid "on" +msgstr "Actif" + +msgid "open" +msgstr "ouvrir" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "routé" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "marqué" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "inconnu" + +msgid "unlimited" +msgstr "non limité" + +msgid "unspecified" +msgstr "non précisé" + +msgid "unspecified -or- create:" +msgstr "non précisé -ou- créer :" + +msgid "untagged" +msgstr "non marqué" + +msgid "yes" +msgstr "oui" + +msgid "« Back" +msgstr "« Retour" + +#~ msgid "Leasetime" +#~ msgstr "Durée du bail" + +#, fuzzy +#~ msgid "automatic" +#~ msgstr "statique" + +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "Un réseau supplémentaire sera créé si vous laissé ceci décoché." + +#~ msgid "Join Network: Settings" +#~ msgstr "Rejoindre un réseau : paramètres" + +#~ msgid "CPU" +#~ msgstr "CPU" + +#~ msgid "Port %d" +#~ msgstr "Port %d" + +#~ msgid "Port %d is untagged in multiple VLANs!" +#~ msgstr "Le port %d n'est pas marqué dans plusieurs VLANs !" + +#~ msgid "VLAN Interface" +#~ msgstr "Interface du VLAN" diff --git a/luci-base/po/he/base.po b/luci-base/po/he/base.po new file mode 100644 index 000000000..b488fc29c --- /dev/null +++ b/luci-base/po/he/base.po @@ -0,0 +1,3795 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"PO-Revision-Date: 2013-02-02 14:32+0200\n" +"Last-Translator: oranav \n" +"Language-Team: none\n" +"Language: he\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Pootle 2.0.6\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "" + +msgid "(%s available)" +msgstr "(%s פנוי)" + +msgid "(empty)" +msgstr "(ריק)" + +msgid "(no interfaces attached)" +msgstr "(אין ממשק מצורף)" + +msgid "-- Additional Field --" +msgstr "-- שדה נוסף --" + +msgid "-- Please choose --" +msgstr "-- נא לבחור --" + +msgid "-- custom --" +msgstr "-- מותאם אישית --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "עומס במשך דקה:" + +msgid "15 Minute Load:" +msgstr "עומס במשך רבע שעה:" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "עומס במשך 5 דקות:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "" + +msgid "DNS query port" +msgstr "DNS יציאת שאילתא" + +msgid "DNS server port" +msgstr "DNS יציאת שרת" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" + +msgid "ESSID" +msgstr "" + +msgid "IPv4-Address" +msgstr "כתובות IPv4" + +msgid "IPv4-Gateway" +msgstr "" + +msgid "IPv4-Netmask" +msgstr "" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"כתובת או רשת (CIDR) IPv6" + +msgid "IPv6-Gateway" +msgstr "" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "הגדרות LED" + +msgid "LED Name" +msgstr "שם LED" + +msgid "MAC-Address" +msgstr "כתובת-MAC" + +msgid "" +"Max. DHCP leases" +msgstr "" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" + +msgid "Max. concurrent queries" +msgstr "" + +msgid "%s - %s" +msgstr "" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "" + +msgid "AR Support" +msgstr "תמיכת AR" + +#, fuzzy +msgid "ARP retry threshold" +msgstr "סף נסיונות של ARP" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +#, fuzzy +msgid "ATM Bridges" +msgstr "גשרי ATM" + +#, fuzzy +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "מזהה ערוצים ווירטואליים של ATM" + +#, fuzzy +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "מזהה נתיבים ווירטואליים של ATM (VPI)" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" + +msgid "ATM device number" +msgstr "מס' התקן של ATM" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +#, fuzzy +msgid "Access Concentrator" +msgstr "מרכז גישות" + +msgid "Access Point" +msgstr "נקודת גישה" + +msgid "Action" +msgstr "פעולה" + +msgid "Actions" +msgstr "פעולות" + +msgid "Activate this network" +msgstr "הפעל רשת זו" + +msgid "Active IPv4-Routes" +msgstr "" + +msgid "Active IPv6-Routes" +msgstr "" + +msgid "Active Connections" +msgstr "חיבורים פעילים" + +msgid "Active DHCP Leases" +msgstr "הרשאות DHCP פעילות" + +msgid "Active DHCPv6 Leases" +msgstr "הרשאות DHCPv6 פעילות" + +# צריך אימות של מישהו שמבין יותר במושגים האלו אם צריך בכלל לתרגם את זה או להשאיר כמו שזה +#, fuzzy +msgid "Ad-Hoc" +msgstr "אד-הוק" + +msgid "Add" +msgstr "הוסף" + +#, fuzzy +msgid "Add local domain suffix to names served from hosts files" +msgstr "הוסף דומיין מקומי לשמות המוגשים מהקבצים של המארח" + +msgid "Add new interface..." +msgstr "הוסף ממשק חדש..." + +msgid "Additional Hosts files" +msgstr "קבצי מארח נוספים" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "כתובת" + +msgid "Address to access local relay bridge" +msgstr "" + +#, fuzzy +msgid "Administration" +msgstr "מנהלה" + +msgid "Advanced Settings" +msgstr "הגדרות מתקדמות" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +#, fuzzy +msgid "Alert" +msgstr "אזעקה" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "" + +#, fuzzy +msgid "Allow all except listed" +msgstr "אפשר הכל חוץ מהרשומים" + +msgid "Allow listed only" +msgstr "אפשר רשומים בלבד" + +#, fuzzy +msgid "Allow localhost" +msgstr "אפשר localhost" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" + +msgid "Allow root logins with password" +msgstr "" + +msgid "Allow the root user to login with password" +msgstr "" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "אנטנה 1" + +msgid "Antenna 2" +msgstr "אנטנה 2" + +msgid "Antenna Configuration" +msgstr "הגדרות אנטנה" + +# אזור? +#, fuzzy +msgid "Any zone" +msgstr "כל תחום" + +msgid "Apply" +msgstr "החל" + +msgid "Applying changes" +msgstr "מחיל הגדרות" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "הקצה ממשקים" + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "תחנות קשורות" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "שלט אלחוטי Atheros 802.11%s" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "אימות" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "מוסמך" + +msgid "Authorization Required" +msgstr "דרוש אימות" + +msgid "Auto Refresh" +msgstr "רענון אוטומטי" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "זמין" + +msgid "Available packages" +msgstr "חבילות זמינות" + +msgid "Average:" +msgstr "ממוצע:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "חזרה" + +msgid "Back to Overview" +msgstr "חזרה לסקירה" + +msgid "Back to configuration" +msgstr "חזרה להגדרות" + +msgid "Back to overview" +msgstr "חזרה לסקירה" + +msgid "Back to scan results" +msgstr "חזרה לתוצאות סריקה" + +msgid "Background Scan" +msgstr "סריקת רקע" + +msgid "Backup / Flash Firmware" +msgstr "גיבוי / קושחת פלאש" + +msgid "Backup / Restore" +msgstr "גיבוי / שחזור" + +msgid "Backup file list" +msgstr "גיבוי רשימת קבצים" + +msgid "Bad address specified!" +msgstr "פורטה כתובת לא תקינה" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"למטה יש את הרשימה הסופית של קבצים לגיבוי. היא מורכבת ע\"י קבצי הגדרות ששונו, " +"המסומנים ב opkg ׁOpen PacKaGe Managementׂ, קבצי בסיס חיוניים ותבניות הגיבוי " +"המוגדרות ע\"י המשתמש." + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "" + +msgid "Bogus NX Domain Override" +msgstr "" + +msgid "Bridge" +msgstr "גשר" + +msgid "Bridge interfaces" +msgstr "ממשקי גשר" + +msgid "Bridge unit number" +msgstr "מס' יח' גשר" + +#, fuzzy +msgid "Bring up on boot" +msgstr "הבא באיתחול" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "שלט אלחוטי Broadcom 802.11%s" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "שלט אלחוטי Broadcom BCM%04x 802.11" + +msgid "Buffered" +msgstr "" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "כפתורים" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "שימוש מעבד (%)" + +msgid "Cancel" +msgstr "בטל" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "שרשרת" + +msgid "Changes" +msgstr "שינויים" + +msgid "Changes applied." +msgstr "השינויים הוחלו" + +msgid "Changes the administrator password for accessing the device" +msgstr "משנה את סיסמת המנהל לגישה למכשיר" + +msgid "Channel" +msgstr "ערוץ" + +msgid "Check" +msgstr "לבדוק" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" + +msgid "Cipher" +msgstr "" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" + +msgid "Client" +msgstr "" + +msgid "Client ID to send when requesting DHCP" +msgstr "" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "סגור חיבורים לא פעילים אחרי מספר השניות שהוגדר, הזן 0 על-מנת לא לסגור" + +msgid "Close list..." +msgstr "סגור רשימה..." + +msgid "Collecting data..." +msgstr "אוסף מידע..." + +msgid "Command" +msgstr "פקודה" + +msgid "Common Configuration" +msgstr "הגדרות נפוצות" + +msgid "Compression" +msgstr "דחיסה" + +msgid "Configuration" +msgstr "הגדרות" + +msgid "Configuration applied." +msgstr "הגדרות הוחלו" + +msgid "Configuration files will be kept." +msgstr "קבצי ההגדרות ישמרו." + +msgid "Confirmation" +msgstr "אישור" + +msgid "Connect" +msgstr "התחבר" + +msgid "Connected" +msgstr "מחובר" + +msgid "Connection Limit" +msgstr "מגבלת חיבורים" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "חיבורים" + +msgid "Country" +msgstr "מדינה" + +msgid "Country Code" +msgstr "קוד מדינה" + +msgid "Cover the following interface" +msgstr "כסה את הממשק הבא" + +msgid "Cover the following interfaces" +msgstr "כסה את הממשקים הבאים" + +msgid "Create / Assign firewall-zone" +msgstr "צור / הקצה תחום-חומת אש" + +msgid "Create Interface" +msgstr "צור ממשק" + +msgid "Create a bridge over multiple interfaces" +msgstr "צור גשר בין מספר ממשקים" + +msgid "Critical" +msgstr "קריטי" + +msgid "Cron Log Level" +msgstr "" + +msgid "Custom Interface" +msgstr "ממשק מותאם אישית" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"מתאים את הגדרות ה-LED-ים במכשיר " +"(אם אפשרי)." + +msgid "DHCP Leases" +msgstr "הרשאות DHCP" + +msgid "DHCP Server" +msgstr "שרת DHCP" + +msgid "DHCP and DNS" +msgstr "DHCP ו- DNS" + +msgid "DHCP client" +msgstr "לקוח DHCP" + +msgid "DHCP-Options" +msgstr "אפשרויות-DHCP" + +msgid "DHCPv6 Leases" +msgstr "הרשאות DHCPv6" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "" + +msgid "Default %d" +msgstr "" + +msgid "Default gateway" +msgstr "" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "" + +msgid "Define a name for this network." +msgstr "הגדר שם לרשת זו" + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"הגדר אפשרויות DHCP נוספות, למשל \"6,192.168.2.1,192.168.2.2\" " +"אשר מציגות שרתי DNS שונים ללקוח" + +msgid "Delete" +msgstr "למחוק" + +msgid "Delete this network" +msgstr "מחק רשת זו" + +msgid "Description" +msgstr "תיאור" + +msgid "Design" +msgstr "עיצוב" + +msgid "Destination" +msgstr "יעד" + +msgid "Device" +msgstr "מכשיר" + +msgid "Device Configuration" +msgstr "הגדרות מכשיר" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "אבחון" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "" + +msgid "Disable" +msgstr "" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" + +msgid "Disable DNS setup" +msgstr "" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "" + +msgid "Disabled" +msgstr "" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "" + +msgid "Displaying only packages containing" +msgstr "מציג רק חבילות המכילות" + +msgid "Distance Optimization" +msgstr "" + +msgid "Distance to farthest network member in meters." +msgstr "מרחק לנק' הרשת הרחוקה ביותר במטרים" + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "גיוון" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" + +msgid "Do not forward reverse lookups for local networks" +msgstr "" + +msgid "Do not send probe responses" +msgstr "" + +msgid "Domain required" +msgstr "" + +msgid "Domain whitelist" +msgstr "" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" + +msgid "Download and install package" +msgstr "הורד והתקן חבילות" + +msgid "Download backup" +msgstr "הורד גיבוי" + +msgid "Dropbear Instance" +msgstr "" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear מאפשר גישת SSH רשתית ושרת SCP מובנה" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "DHCP דינאמי" + +msgid "Dynamic tunnel" +msgstr "" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "" + +msgid "Edit" +msgstr "ערוך" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "ערוך ממשק זה" + +msgid "Edit this network" +msgstr "ערוך רשת זו" + +msgid "Emergency" +msgstr "מצב חרום" + +msgid "Enable" +msgstr "אפשר" + +msgid "Enable STP" +msgstr "אפשר STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "" + +msgid "Enable Jumbo Frame passthrough" +msgstr "" + +msgid "Enable NTP client" +msgstr "" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "אפשר שרת TFTP" + +msgid "Enable VLAN functionality" +msgstr "אפשר תפקוד VLAN" + +msgid "Enable WPS pushbutton, requires WPA(2)-PSK" +msgstr "" + +msgid "Enable key reinstallation (KRACK) countermeasures" +msgstr "" + +msgid "Enable learning and aging" +msgstr "אפשר למידה והזדקנות" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "" + +msgid "Enable this swap" +msgstr "" + +msgid "Enable/Disable" +msgstr "" + +msgid "Enabled" +msgstr "אפשר" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "" + +msgid "Encapsulation mode" +msgstr "" + +msgid "Encryption" +msgstr "הצפנה" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "מוחק..." + +msgid "Error" +msgstr "שגיאה" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "" + +msgid "Ethernet Switch" +msgstr "" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "" + +msgid "Expires" +msgstr "" + +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "" + +msgid "External system log server port" +msgstr "" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "" + +msgid "File" +msgstr "" + +msgid "Filename of the boot image advertised to clients" +msgstr "" + +msgid "Filesystem" +msgstr "" + +msgid "Filter" +msgstr "" + +msgid "Filter private" +msgstr "" + +msgid "Filter useless" +msgstr "" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "" + +msgid "Find package" +msgstr "" + +msgid "Finish" +msgstr "" + +msgid "Firewall" +msgstr "" + +msgid "Firewall Settings" +msgstr "" + +msgid "Firewall Status" +msgstr "" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "" + +msgid "Fixed source port for outbound DNS queries" +msgstr "" + +msgid "Flash Firmware" +msgstr "" + +msgid "Flash image..." +msgstr "" + +msgid "Flash new firmware image" +msgstr "" + +msgid "Flash operations" +msgstr "" + +msgid "Flashing..." +msgstr "" + +msgid "Force" +msgstr "" + +msgid "Force CCMP (AES)" +msgstr "" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "" + +msgid "Force TKIP" +msgstr "" + +msgid "Force TKIP and CCMP (AES)" +msgstr "" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "" + +msgid "Forwarding mode" +msgstr "" + +msgid "Fragmentation Threshold" +msgstr "" + +msgid "Frame Bursting" +msgstr "" + +msgid "Free" +msgstr "" + +msgid "Free space" +msgstr "" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "" + +msgid "GPRS only" +msgstr "" + +msgid "Gateway" +msgstr "" + +msgid "Gateway ports" +msgstr "" + +msgid "General Settings" +msgstr "" + +msgid "General Setup" +msgstr "" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "" + +msgid "Go to relevant configuration page" +msgstr "" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "" + +msgid "Hang Up" +msgstr "" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" + +msgid "Hermes 802.11b Wireless Controller" +msgstr "" + +msgid "Hide ESSID" +msgstr "" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "" + +msgid "Host expiry timeout" +msgstr "" + +msgid "Host-IP or Network" +msgstr "" + +msgid "Hostname" +msgstr "" + +msgid "Hostname to send when requesting DHCP" +msgstr "" + +msgid "Hostnames" +msgstr "" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "" + +msgid "IPv4" +msgstr "" + +msgid "IPv4 Firewall" +msgstr "" + +msgid "IPv4 WAN Status" +msgstr "" + +msgid "IPv4 address" +msgstr "כתבות IPv4" + +msgid "IPv4 and IPv6" +msgstr "IPv4 ו-IPv6" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "" + +msgid "IPv4 gateway" +msgstr "" + +msgid "IPv4 netmask" +msgstr "" + +msgid "IPv4 only" +msgstr "" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "" + +msgid "IPv4-Address" +msgstr "" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "" + +msgid "IPv6 Firewall" +msgstr "" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "" + +msgid "IPv6 address" +msgstr "" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "" + +msgid "IPv6 only" +msgstr "" + +msgid "IPv6 prefix" +msgstr "" + +msgid "IPv6 prefix length" +msgstr "" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "" + +msgid "Identity" +msgstr "" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" + +msgid "If unchecked, no default route is configured" +msgstr "" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" + +msgid "Ignore /etc/hosts" +msgstr "" + +msgid "Ignore interface" +msgstr "" + +msgid "Ignore resolve file" +msgstr "" + +msgid "Image" +msgstr "" + +msgid "In" +msgstr "" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "" + +msgid "Inbound:" +msgstr "" + +msgid "Info" +msgstr "" + +msgid "Initscript" +msgstr "" + +msgid "Initscripts" +msgstr "" + +msgid "Install" +msgstr "" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "" + +msgid "Install protocol extensions..." +msgstr "" + +msgid "Installed packages" +msgstr "" + +msgid "Interface" +msgstr "" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "" + +msgid "Interface Overview" +msgstr "" + +msgid "Interface is reconnecting..." +msgstr "" + +msgid "Interface is shutting down..." +msgstr "" + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "" + +msgid "Interface reconnected" +msgstr "" + +msgid "Interface shut down" +msgstr "" + +msgid "Interfaces" +msgstr "" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "" + +msgid "Invalid" +msgstr "" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "מספר VLAN שגוי! רק ערכים בין %d לבין %d הם חוקיים." + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "" + +msgid "Invalid username and/or password! Please try again." +msgstr "שם משתמש ו/או סיסמה שגויים! אנא נסה שנית." + +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "" + +msgid "Join Network" +msgstr "" + +msgid "Join Network: Wireless Scan" +msgstr "" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "" + +msgid "Kernel Log" +msgstr "" + +msgid "Kernel Version" +msgstr "" + +msgid "Key" +msgstr "" + +msgid "Key #%d" +msgstr "" + +msgid "Kill" +msgstr "" + +msgid "L2TP" +msgstr "" + +msgid "L2TP Server" +msgstr "" + +msgid "LCP echo failure threshold" +msgstr "" + +msgid "LCP echo interval" +msgstr "" + +msgid "LLC" +msgstr "" + +msgid "Label" +msgstr "" + +msgid "Language" +msgstr "" + +msgid "Language and Style" +msgstr "" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "" + +msgid "Leasefile" +msgstr "" + +msgid "Leasetime remaining" +msgstr "" + +msgid "Leave empty to autodetect" +msgstr "" + +msgid "Leave empty to use the current WAN address" +msgstr "" + +msgid "Legend:" +msgstr "" + +msgid "Limit" +msgstr "" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" + +msgid "Listening port for inbound DNS queries" +msgstr "" + +msgid "Load" +msgstr "עומס" + +msgid "Load Average" +msgstr "עומס ממוצע" + +msgid "Loading" +msgstr "טוען" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "כתובת IPv4 מקומית" + +msgid "Local IPv6 address" +msgstr "כתובת IPv6 מקומית" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "" + +msgid "Local Time" +msgstr "" + +msgid "Local domain" +msgstr "" + +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" + +msgid "Local server" +msgstr "שרת מקומי" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" + +msgid "Localise queries" +msgstr "" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "" + +msgid "Log queries" +msgstr "" + +msgid "Logging" +msgstr "" + +msgid "Login" +msgstr "" + +msgid "Logout" +msgstr "" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "" + +msgid "MAC-Address" +msgstr "" + +msgid "MAC-Address Filter" +msgstr "" + +msgid "MAC-Filter" +msgstr "" + +msgid "MAC-List" +msgstr "" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "" + +msgid "MTU" +msgstr "" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "" + +msgid "Maximum hold time" +msgstr "" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "" + +msgid "Mbit/s" +msgstr "" + +msgid "Memory" +msgstr "" + +msgid "Memory usage (%)" +msgstr "" + +msgid "Metric" +msgstr "" + +msgid "Minimum Rate" +msgstr "" + +msgid "Minimum hold time" +msgstr "" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "" + +msgid "Modem init timeout" +msgstr "" + +msgid "Monitor" +msgstr "" + +msgid "Mount Entry" +msgstr "" + +msgid "Mount Point" +msgstr "" + +msgid "Mount Points" +msgstr "" + +msgid "Mount Points - Mount Entry" +msgstr "" + +msgid "Mount Points - Swap Entry" +msgstr "" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "" + +msgid "Mount point" +msgstr "" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "" + +msgid "Move down" +msgstr "" + +msgid "Move up" +msgstr "" + +msgid "Multicast Rate" +msgstr "" + +msgid "Multicast address" +msgstr "" + +msgid "NAS ID" +msgstr "" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "שם" + +msgid "Name of the new interface" +msgstr "" + +msgid "Name of the new network" +msgstr "" + +msgid "Navigation" +msgstr "" + +msgid "Netmask" +msgstr "" + +msgid "Network" +msgstr "" + +msgid "Network Utilities" +msgstr "" + +msgid "Network boot image" +msgstr "" + +msgid "Network without interfaces." +msgstr "" + +msgid "Next »" +msgstr "" + +msgid "No DHCP Server configured for this interface" +msgstr "" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "" + +msgid "No files found" +msgstr "" + +msgid "No information available" +msgstr "" + +msgid "No negative cache" +msgstr "" + +msgid "No network configured on this device" +msgstr "" + +msgid "No network name specified" +msgstr "" + +msgid "No package lists available" +msgstr "אין רשימת חבילות זמינה" + +msgid "No password set!" +msgstr "לא הוגדרה סיסמה!" + +msgid "No rules in this chain" +msgstr "" + +msgid "No zone assigned" +msgstr "" + +msgid "Noise" +msgstr "" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "" + +msgid "Normal" +msgstr "" + +msgid "Not Found" +msgstr "" + +msgid "Not associated" +msgstr "" + +msgid "Not connected" +msgstr "לא מחובר" + +msgid "Note: Configuration files will be erased." +msgstr "" + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "" + +msgid "Nslookup" +msgstr "" + +msgid "OK" +msgstr "" + +msgid "OPKG-Configuration" +msgstr "" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" + +msgid "On-State Delay" +msgstr "" + +msgid "One of hostname or mac address must be specified!" +msgstr "" + +msgid "One or more fields contain invalid values!" +msgstr "ישנם שדות המכילים ערכים בלתי חוקיים!" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "" + +msgid "Open list..." +msgstr "" + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "" + +msgid "Option removed" +msgstr "" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "" + +msgid "Other:" +msgstr "" + +msgid "Out" +msgstr "" + +msgid "Outbound:" +msgstr "" + +msgid "Outdoor Channels" +msgstr "" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "" + +msgid "Override MTU" +msgstr "" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" + +msgid "Override the table used for internal routes" +msgstr "" + +msgid "Overview" +msgstr "" + +msgid "Owner" +msgstr "" + +msgid "PAP/CHAP password" +msgstr "" + +msgid "PAP/CHAP username" +msgstr "" + +msgid "PID" +msgstr "" + +msgid "PIN" +msgstr "" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "" + +msgid "PPPoA Encapsulation" +msgstr "" + +msgid "PPPoATM" +msgstr "" + +msgid "PPPoE" +msgstr "" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "" + +msgid "Package lists are older than 24 hours" +msgstr "" + +msgid "Package name" +msgstr "שם החבילה" + +msgid "Packets" +msgstr "" + +msgid "Part of zone %q" +msgstr "" + +msgid "Password" +msgstr "" + +msgid "Password authentication" +msgstr "" + +msgid "Password of Private Key" +msgstr "" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "" + +msgid "Path to Client-Certificate" +msgstr "" + +msgid "Path to Private Key" +msgstr "נתיב למפתח הפרטי" + +msgid "Path to executable which handles the button event" +msgstr "" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "" + +msgid "Perform reset" +msgstr "" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "" + +msgid "Physical Settings" +msgstr "" + +msgid "Ping" +msgstr "" + +msgid "Pkts." +msgstr "" + +msgid "Please enter your username and password." +msgstr "אנא הזן את שם המשתמש והסיסמה שלך:" + +msgid "Policy" +msgstr "" + +msgid "Port" +msgstr "" + +msgid "Port status:" +msgstr "" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "" + +msgid "Processes" +msgstr "" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "" + +msgid "Protocol" +msgstr "" + +msgid "Protocol family" +msgstr "" + +msgid "Protocol of the new interface" +msgstr "" + +msgid "Protocol support is not installed" +msgstr "" + +msgid "Provide NTP server" +msgstr "" + +msgid "Provide new network" +msgstr "" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "" + +msgid "RX" +msgstr "" + +msgid "RX Rate" +msgstr "קצב קליטה" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "" + +msgid "Radius-Accounting-Port" +msgstr "" + +msgid "Radius-Accounting-Secret" +msgstr "" + +msgid "Radius-Accounting-Server" +msgstr "" + +msgid "Radius-Authentication-Port" +msgstr "" + +msgid "Radius-Authentication-Secret" +msgstr "" + +msgid "Radius-Authentication-Server" +msgstr "" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" + +msgid "Really reset all changes?" +msgstr "" + +#, fuzzy +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" +"האם למחוק את הרשת האלחוטית הזו? המחיקה אינה ניתנת לביטול!\n" +"ייתכן ותאבד גישה לנתב הזה אם אתה מחובר דרך השרת הזו." + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" + +msgid "Really switch protocol?" +msgstr "" + +msgid "Realtime Connections" +msgstr "" + +msgid "Realtime Graphs" +msgstr "" + +msgid "Realtime Load" +msgstr "" + +msgid "Realtime Traffic" +msgstr "" + +msgid "Realtime Wireless" +msgstr "" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "" + +msgid "Reboot" +msgstr "" + +msgid "Rebooting..." +msgstr "" + +msgid "Reboots the operating system of your device" +msgstr "" + +msgid "Receive" +msgstr "" + +msgid "Receiver Antenna" +msgstr "" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "" + +msgid "Reconnecting interface" +msgstr "" + +msgid "References" +msgstr "" + +msgid "Regulatory Domain" +msgstr "" + +msgid "Relay" +msgstr "" + +msgid "Relay Bridge" +msgstr "" + +msgid "Relay between networks" +msgstr "" + +msgid "Relay bridge" +msgstr "" + +msgid "Remote IPv4 address" +msgstr "" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "" + +msgid "Repeat scan" +msgstr "" + +msgid "Replace entry" +msgstr "" + +msgid "Replace wireless configuration" +msgstr "" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "" + +msgid "Reset Counters" +msgstr "" + +msgid "Reset to defaults" +msgstr "" + +msgid "Resolv and Hosts Files" +msgstr "" + +msgid "Resolve file" +msgstr "" + +msgid "Restart" +msgstr "" + +msgid "Restart Firewall" +msgstr "" + +msgid "Restore backup" +msgstr "" + +msgid "Reveal/hide password" +msgstr "" + +msgid "Revert" +msgstr "" + +msgid "Root" +msgstr "" + +msgid "Root directory for files served via TFTP" +msgstr "" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "" + +msgid "Routes" +msgstr "" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" + +msgid "Run a filesystem check before mounting the device" +msgstr "" + +msgid "Run filesystem check" +msgstr "הרץ בדיקת מערכת קבצים" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "" + +msgid "SSID" +msgstr "" + +msgid "Save" +msgstr "" + +msgid "Save & Apply" +msgstr "" + +msgid "Save & Apply" +msgstr "" + +msgid "Scan" +msgstr "" + +msgid "Scheduled Tasks" +msgstr "" + +msgid "Section added" +msgstr "" + +msgid "Section removed" +msgstr "" + +msgid "See \"mount\" manpage for details" +msgstr "" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" + +msgid "Separate Clients" +msgstr "" + +msgid "Separate WDS" +msgstr "" + +msgid "Server Settings" +msgstr "" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "" + +msgid "Service Type" +msgstr "" + +msgid "Services" +msgstr "שירותים" + +#, fuzzy +msgid "Set up Time Synchronization" +msgstr "סנכרון זמן" + +msgid "Setup DHCP Server" +msgstr "" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "" + +msgid "Shutdown this interface" +msgstr "" + +msgid "Shutdown this network" +msgstr "" + +msgid "Signal" +msgstr "" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "" + +msgid "Size" +msgstr "" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "" + +msgid "Skip to content" +msgstr "דלג אל התוכן" + +msgid "Skip to navigation" +msgstr "דלג אל הניווט" + +msgid "Slot time" +msgstr "" + +msgid "Software" +msgstr "תוכנה" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "חלק מהשדות אינם תקינים, אין אפשרות לשמור את הערכים!" + +msgid "Sorry, the object you requested was not found." +msgstr "סליחה, אך האובייקט שביקשת אינו נמצא." + +msgid "Sorry, the server encountered an unexpected error." +msgstr "סליחה, השרת נתקל בשגיאה לא צפויה." + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" +"סליחה, אין תמיכה בעדכון מערכת, ולכן קושחה חדשה חייבת להיצרב ידנית. אנא פנה " +"אל ה-wiki של OpenWrt/LEDE עבור הוראות ספציפיות למכשיר שלך." + +msgid "Sort" +msgstr "מיין" + +msgid "Source" +msgstr "מקור" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "" + +msgid "Specifies the directory the device is attached to" +msgstr "" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "" + +msgid "Start" +msgstr "" + +msgid "Start priority" +msgstr "" + +msgid "Startup" +msgstr "אתחול" + +msgid "Static IPv4 Routes" +msgstr "ניתובי IPv4 סטטיים" + +msgid "Static IPv6 Routes" +msgstr "ניתובי IPv6 סטטיים" + +msgid "Static Leases" +msgstr "הקצאות סטטיות" + +msgid "Static Routes" +msgstr "ניתובים סטטיים" + +msgid "Static WDS" +msgstr "WDS סטטי" + +msgid "Static address" +msgstr "כתובת סטטית" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" +"הקצאות סטטיות נועדו להקצות כתובות IP קבועות ואת שם הרשת שלהן ללקוחות DHCP. " +"הן נחוצות גם עבור הגדרות ממשק שאינן דינאמיות, בהן מטופלות רק ישויות בעלות " +"הקצאה מתאימה." + +msgid "Status" +msgstr "מצב" + +msgid "Stop" +msgstr "עצור" + +msgid "Strict order" +msgstr "" + +msgid "Submit" +msgstr "שלח" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "" + +msgid "Switch" +msgstr "" + +msgid "Switch %q" +msgstr "" + +msgid "Switch %q (%s)" +msgstr "" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "" + +msgid "Sync with browser" +msgstr "" + +msgid "Synchronizing..." +msgstr "" + +msgid "System" +msgstr "" + +msgid "System Log" +msgstr "" + +msgid "System Properties" +msgstr "" + +msgid "System log buffer size" +msgstr "" + +msgid "TCP:" +msgstr "TCP:" + +msgid "TFTP Settings" +msgstr "הגדרות TFTP" + +msgid "TFTP server root" +msgstr "" + +msgid "TX" +msgstr "שידור" + +msgid "TX Rate" +msgstr "קצב שידור" + +msgid "Table" +msgstr "טבלה" + +msgid "Target" +msgstr "יעד" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "" + +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" + +msgid "The following changes have been committed" +msgstr "" + +msgid "The following changes have been reverted" +msgstr "" + +msgid "The following rules are currently active on this system." +msgstr "החוקים הבאים מאופשרים כרגע במערכת זו." + +msgid "The given network name is not unique" +msgstr "השם שניתן לרשת איננו ייחודי" + +#, fuzzy +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "החומרה אינה תומכת בריבוי SSID ולכן ההגדרות הנוכחיות יוחלפו אם תמשיך." + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" + +msgid "The length of the IPv6 prefix in bits" +msgstr "" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" + +msgid "The selected protocol needs a device assigned" +msgstr "" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" + +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" + +msgid "There are no active leases." +msgstr "" + +msgid "There are no pending changes to apply!" +msgstr "" + +msgid "There are no pending changes to revert!" +msgstr "" + +msgid "There are no pending changes!" +msgstr "" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" + +msgid "This IPv4 address of the relay" +msgstr "" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "" + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "רשימה זו מציגה סקירה של תהליכי המערכת הרצים כרגע ואת מצבם." + +msgid "This page allows the configuration of custom button actions" +msgstr "דף זה מאפשר להגדיר פעולות מיוחדות עבור הלחצנים." + +msgid "This page gives an overview over currently active network connections." +msgstr "דף זה מציג סקירה של חיבורי הרשת הפעילים כרגע." + +msgid "This section contains no values yet" +msgstr "אזור זה עדיין לא מכיל ערכים." + +msgid "Time Synchronization" +msgstr "סנכרון זמן" + +msgid "Time Synchronization is not configured yet." +msgstr "סנכרון זמן עדיין לא הוגדר." + +msgid "Timezone" +msgstr "אזור זמן" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" +"על מנת לשחזר את קבצי ההגדרות, באפשרותך להעלות ארכיון גיבוי שנוצר לפני כן." + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "סה\"כ פנוי" + +msgid "Traceroute" +msgstr "" + +msgid "Traffic" +msgstr "תעבורה" + +msgid "Transfer" +msgstr "העברה" + +msgid "Transmission Rate" +msgstr "קצב שידור" + +msgid "Transmit" +msgstr "שידור" + +msgid "Transmit Power" +msgstr "עוצמת שידור" + +msgid "Transmitter Antenna" +msgstr "אנטנת שידור" + +msgid "Trigger" +msgstr "" + +msgid "Trigger Mode" +msgstr "" + +msgid "Tunnel ID" +msgstr "" + +msgid "Tunnel Interface" +msgstr "" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "" + +msgid "Tx-Power" +msgstr "עוצמת שידור" + +msgid "Type" +msgstr "" + +msgid "UDP:" +msgstr "UDP:" + +msgid "UMTS only" +msgstr "" + +msgid "UMTS/GPRS/EV-DO" +msgstr "" + +msgid "USB Device" +msgstr "" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "" + +msgid "Unable to dispatch" +msgstr "" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "" + +msgid "Unknown Error, password not changed!" +msgstr "" + +msgid "Unmanaged" +msgstr "" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "" + +msgid "Unsupported protocol type." +msgstr "" + +msgid "Update lists" +msgstr "" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" + +msgid "Upload archive..." +msgstr "" + +msgid "Uploaded File" +msgstr "" + +msgid "Uptime" +msgstr "" + +msgid "Use /etc/ethers" +msgstr "" + +msgid "Use DHCP gateway" +msgstr "" + +msgid "Use DNS servers advertised by peer" +msgstr "" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "" + +msgid "Use MTU on tunnel interface" +msgstr "" + +msgid "Use TTL on tunnel interface" +msgstr "" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "השתמש בדגל broadcast" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "השתמש בשרתי DNS מותאמים אישית" + +msgid "Use default gateway" +msgstr "" + +msgid "Use gateway metric" +msgstr "" + +msgid "Use routing table" +msgstr "השתמש בטבלת ניתוב" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" + +msgid "Used" +msgstr "" + +msgid "Used Key Slot" +msgstr "" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "שם משתמש" + +msgid "VC-Mux" +msgstr "" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "" + +msgid "VLANs on %q (%s)" +msgstr "" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "שרת VPN" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "" + +msgid "Version" +msgstr "גרסה" + +msgid "WDS" +msgstr "" + +msgid "WEP Open System" +msgstr "" + +msgid "WEP Shared Key" +msgstr "" + +msgid "WEP passphrase" +msgstr "סיסמת WEP" + +msgid "WMM Mode" +msgstr "" + +msgid "WPA passphrase" +msgstr "סיסמת WPA" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "" + +msgid "Waiting for command to complete..." +msgstr "" + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "אזהרה" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "" + +msgid "Wireless Adapter" +msgstr "" + +msgid "Wireless Network" +msgstr "" + +msgid "Wireless Overview" +msgstr "" + +msgid "Wireless Security" +msgstr "" + +msgid "Wireless is disabled or not associated" +msgstr "" + +msgid "Wireless is restarting..." +msgstr "" + +msgid "Wireless network is disabled" +msgstr "רשת אלחוטית מנוטרלת" + +msgid "Wireless network is enabled" +msgstr "רשת אלחוטית מאופשרת" + +msgid "Wireless restarted" +msgstr "" + +msgid "Wireless shut down" +msgstr "" + +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 "" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "אתה חייב להפעיל את JavaScript בדפדפן שלך; אחרת, LuCI לא יפעל כראוי." + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "כלשהו" + +msgid "auto" +msgstr "אוטומטי" + +msgid "baseT" +msgstr "" + +msgid "bridged" +msgstr "" + +msgid "create:" +msgstr "" + +msgid "creates a bridge over specified interface(s)" +msgstr "" + +msgid "dB" +msgstr "" + +msgid "dBm" +msgstr "" + +msgid "disable" +msgstr "בטל" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" + +msgid "forward" +msgstr "קדימה" + +msgid "full-duplex" +msgstr "" + +msgid "half-duplex" +msgstr "" + +msgid "help" +msgstr "עזרה" + +msgid "hidden" +msgstr "" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "אם היעד הוא רשת" + +msgid "input" +msgstr "קלט" + +msgid "kB" +msgstr "" + +msgid "kB/s" +msgstr "" + +msgid "kbit/s" +msgstr "" + +msgid "local DNS file" +msgstr "" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "לא" + +msgid "no link" +msgstr "" + +msgid "none" +msgstr "ללא" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "כבוי" + +msgid "on" +msgstr "פועל" + +msgid "open" +msgstr "" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "מנותב" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "מתויג" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "" + +msgid "unlimited" +msgstr "ללא הגבלה" + +msgid "unspecified" +msgstr "לא מוגדר" + +msgid "unspecified -or- create:" +msgstr "לא מוגדר -או- יצר" + +msgid "untagged" +msgstr "לא מתויג" + +msgid "yes" +msgstr "כן" + +msgid "« Back" +msgstr "<< אחורה" + +#, fuzzy +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "רשת נוספת תווצר אם תשאיר את זה לא מסומן" + +#~ msgid "CPU" +#~ msgstr "מעבד" diff --git a/luci-base/po/hu/base.po b/luci-base/po/hu/base.po new file mode 100644 index 000000000..2e762139e --- /dev/null +++ b/luci-base/po/hu/base.po @@ -0,0 +1,3983 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"PO-Revision-Date: 2014-01-31 09:59+0200\n" +"Last-Translator: Gabor \n" +"Language-Team: none\n" +"Language: hu\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Pootle 2.0.6\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(%d perces ablak, %d másodperces intervallum)" + +msgid "(%s available)" +msgstr "(%s elérhető)" + +msgid "(empty)" +msgstr "(üres)" + +msgid "(no interfaces attached)" +msgstr "(nincs csatalkoztatott interfész)" + +msgid "-- Additional Field --" +msgstr "-- További mező --" + +msgid "-- Please choose --" +msgstr "-- Kérem válasszon --" + +msgid "-- custom --" +msgstr "-- egyéni --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "Terhelés (utolsó 1 perc):" + +msgid "15 Minute Load:" +msgstr "Terhelés (utolsó 15 perc):" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "Terhelés (utolsó 5 perc):" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "DNS query port" +msgstr "DNS lekérdezési port" + +msgid "DNS server port" +msgstr "DNS szerver port" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" +"DNS szerverek a resolv fájl " +"sorrendjében" + +msgid "ESSID" +msgstr "ESSID" + +msgid "IPv4-Address" +msgstr "IPv4-cím" + +msgid "IPv4-Gateway" +msgstr "IPv4-útválasztó" + +msgid "IPv4-Netmask" +msgstr "IPv4-Netmask" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"IPv6-cím, vagy hálózat " +"(CIDR)" + +msgid "IPv6-Gateway" +msgstr "IPv6-útválasztó" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "LED konfiguráció" + +msgid "LED Name" +msgstr "LED Név" + +msgid "MAC-Address" +msgstr "MAC-cím" + +msgid "" +"Max. DHCP leases" +msgstr "" +"Max. DHCP bérlés" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"Max. EDNS0 csomagméret" + +msgid "Max. concurrent queries" +msgstr "Max. párhuzamos lekérdezés" + +msgid "%s - %s" +msgstr "%s - %s" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "AR Támogatás" + +msgid "ARP retry threshold" +msgstr "ARP újrapróbálkozási küszöbérték" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "ATM Hidak" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "ATM Virtuális Csatorna Azonosító (VCI)" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "ATM Virtuális Út Azonosító (VPI)" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"Az ATM hidak az AAL5-be ágyazott ethernet kapcsolatokat mint virtuális Linux " +"hálózati interfész mutatják, mely így DHCP-vel vagy PPP-vel összekapcsolva " +"használható a szolgáltatói hálózatba történő betárcsázáshoz." + +msgid "ATM device number" +msgstr "ATM eszközszám" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "Elérési központ" + +msgid "Access Point" +msgstr "Hozzáférési pont" + +msgid "Action" +msgstr "Művelet" + +msgid "Actions" +msgstr "Műveletek" + +msgid "Activate this network" +msgstr "Hálózat aktiválása" + +msgid "Active IPv4-Routes" +msgstr "" +"Aktív IPv4 útvonalak" + +msgid "Active IPv6-Routes" +msgstr "" +"Aktív IPv6 útvonalak" + +msgid "Active Connections" +msgstr "Aktív kapcsolatok" + +msgid "Active DHCP Leases" +msgstr "Aktív DHCP bérletek" + +msgid "Active DHCPv6 Leases" +msgstr "Aktív DHCPv6 bérletek" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc" + +msgid "Add" +msgstr "Hozzáadás" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "" +"Helyi tartomány utótag hozzáadása a hosts fájlokból kiszolgált nevekhez" + +msgid "Add new interface..." +msgstr "Új interfész hozzáadása..." + +msgid "Additional Hosts files" +msgstr "További 'hosts' fájlok" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "Cím" + +msgid "Address to access local relay bridge" +msgstr "Helyi közvetítő híd elérési címe" + +msgid "Administration" +msgstr "Adminisztráció" + +msgid "Advanced Settings" +msgstr "Haladó beállítások" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "Riasztás" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "" +"SSH jelszó hitelesítés engedélyezése" + +msgid "Allow all except listed" +msgstr "Összes engedélyezése a felsoroltakon kívül" + +msgid "Allow listed only" +msgstr "Csak a felsoroltak engedélyezése" + +msgid "Allow localhost" +msgstr "Lolcalhost engedélyezése" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" +"Távoli hostok csatlakozásának engedélyezése a helyi SSH továbbított " +"portokhoz." + +msgid "Allow root logins with password" +msgstr "root jelszavas bejelentkezésének engedélyezése" + +msgid "Allow the root user to login with password" +msgstr "Engedélyezi a root felhasználó jelszavas bejelentkezését" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" +"A 127.0.0.0/8-as tartományba eső DNS válaszok engedélyezése (pl. RBL " +"szervizek)" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "1-es antenna" + +msgid "Antenna 2" +msgstr "2-es antenna" + +msgid "Antenna Configuration" +msgstr "Antenna beállítások" + +msgid "Any zone" +msgstr "Bármelyik zóna" + +msgid "Apply" +msgstr "Alkalmaz" + +msgid "Applying changes" +msgstr "Módosítások alkalmazása" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "Interfészek összekapcsolása..." + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "Kapcsolódó kliensek" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Atheros 802.11%s vezeték-nélküli vezérlő" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "Hitelesítés" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "Hiteles" + +msgid "Authorization Required" +msgstr "Hitelesítés szükséges" + +msgid "Auto Refresh" +msgstr "Automatikus frissítés" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "Elérhető" + +msgid "Available packages" +msgstr "Elérhető csomagok" + +msgid "Average:" +msgstr "Átlag:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "Vissza" + +msgid "Back to Overview" +msgstr "Vissza az áttekintéshez" + +msgid "Back to configuration" +msgstr "Vissza a beállításokhoz" + +msgid "Back to overview" +msgstr "Vissza az áttekintéshez" + +msgid "Back to scan results" +msgstr "Vissza a felderítési eredményekhez" + +msgid "Background Scan" +msgstr "Felderítés a háttérben" + +msgid "Backup / Flash Firmware" +msgstr "Mentés / Firmware frissítés" + +msgid "Backup / Restore" +msgstr "Mentés / Visszaállítás" + +msgid "Backup file list" +msgstr "Mentési fájl lista" + +msgid "Bad address specified!" +msgstr "Hibás címet adott meg!" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"Alább található a biztonsági mentésbe kerülő fájlok listája. A lista az opkg " +"által megjelölt módosított konfigurációs fájlokból, fontos alapvető " +"fájlokból valamint a felhasználó által megadott mintáknak megfelelő " +"fájlokból áll." + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "Bitráta" + +msgid "Bogus NX Domain Override" +msgstr "Hamis NX tartomány felülbírálása" + +msgid "Bridge" +msgstr "Híd" + +msgid "Bridge interfaces" +msgstr "Híd interfészek" + +msgid "Bridge unit number" +msgstr "Híd eszközszám" + +msgid "Bring up on boot" +msgstr "Hozza fel a rendszer indításakor" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "Broadcom 802.11%s vezeték-nélküli vezérlő" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "Broadcom BCM%04x 802.11 vezeték-nélküli vezérlő" + +msgid "Buffered" +msgstr "Átmeneti tárban van" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "Gombok" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "Processzor használat (%)" + +msgid "Cancel" +msgstr "Mégsem" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "Lánc" + +msgid "Changes" +msgstr "Módosítások" + +msgid "Changes applied." +msgstr "A módosítások alkalmazva." + +msgid "Changes the administrator password for accessing the device" +msgstr "" +"Itt módosíthatja az eszköz eléréséhez szükséges adminisztrátori jelszót" + +msgid "Channel" +msgstr "Csatorna" + +msgid "Check" +msgstr "Ellenőrzés" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "Ellenőrző összeg" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"Válassza ki a tűzfal zónát amit hozzá akar rendelni ehhez az interfészhez. " +"Válassza a nincs megadva elemet az interfésznek a hozzárendelt " +"zónából történő eltávolításához, vagy töltse ki az új mezőt új zóna " +"megadásához és csatlakoztassa az interfészt ahhoz." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" +"Válassza ki azokat a hálózatokat, amelyeket csatlakoztatni akar ehhez a " +"vezetéknélküli interfészhez, vagy töltse ki az új mezőt egy új " +"hálózat definiálásához." + +msgid "Cipher" +msgstr "Titkosító" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"Kattintson az \"Archívum készítése\" gombra a jelenlegi konfiguráció tar " +"archívumként történő letöltéséhez. A firmware kezdeti állapotának " +"visszaállításához kattintson a \"Visszaállítás végrehajtása\" gombra (csak " +"squashfs image-ek esetén lehetséges)." + +msgid "Client" +msgstr "Ügyfél" + +msgid "Client ID to send when requesting DHCP" +msgstr "DHCP kérés során küldendő kliens azonosító" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" +"Inaktív kapcsolatok bezárása a megadott másodpercek után, használjon 0-t " +"állandó kapcsolathoz" + +msgid "Close list..." +msgstr "Lista bezárása..." + +msgid "Collecting data..." +msgstr "Adatok összegyűjtése..." + +msgid "Command" +msgstr "Parancs" + +msgid "Common Configuration" +msgstr "Álatános beállítás" + +msgid "Compression" +msgstr "Tömörítés" + +msgid "Configuration" +msgstr "Beállítás" + +msgid "Configuration applied." +msgstr "Beállítások alkalmazva." + +msgid "Configuration files will be kept." +msgstr "A konfigurációs fájlok megmaradnak." + +msgid "Confirmation" +msgstr "Megerősítés" + +msgid "Connect" +msgstr "Kapcsolódás" + +msgid "Connected" +msgstr "Kapcsolódva" + +msgid "Connection Limit" +msgstr "Kapcsolati korlát" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "Kapcsolatok" + +msgid "Country" +msgstr "Ország" + +msgid "Country Code" +msgstr "Országkód" + +msgid "Cover the following interface" +msgstr "A következő interfészt tartalmazza" + +msgid "Cover the following interfaces" +msgstr "A következő interfészeket tartalmazza" + +msgid "Create / Assign firewall-zone" +msgstr "Tűzfal zóna készítés / hozzárendelés" + +msgid "Create Interface" +msgstr "Új interfész" + +msgid "Create a bridge over multiple interfaces" +msgstr "Híd létrehozása több interfész között" + +msgid "Critical" +msgstr "Kritikus" + +msgid "Cron Log Level" +msgstr "Cron naplózási szint" + +msgid "Custom Interface" +msgstr "Egyéni interfész" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"Az eszköz LED-jei működésének " +"testreszabása." + +msgid "DHCP Leases" +msgstr "DHCP bérletek" + +msgid "DHCP Server" +msgstr "DHCP kiszolgáló" + +msgid "DHCP and DNS" +msgstr "DHCP és DNS" + +msgid "DHCP client" +msgstr "DHCP ügyfél" + +msgid "DHCP-Options" +msgstr "DHCP beállítások" + +msgid "DHCPv6 Leases" +msgstr "DHCPv6 bérletek" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "DNS továbbítások" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "DUID" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "Hibakeresés" + +msgid "Default %d" +msgstr "Alapértelmezés %d" + +msgid "Default gateway" +msgstr "Alapértelmezett átjáró" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "Alapértelmezett állapot" + +msgid "Define a name for this network." +msgstr "Adja meg a hálózat nevét." + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"Adjon meg további DHCP opciókat, például \"6,192.168.2.1,192.168.2.2\", mely különböző DNS kiszolgálókat hirdet az ügyfelek részére." + +msgid "Delete" +msgstr "Törlés" + +msgid "Delete this network" +msgstr "Hálózat törlése" + +msgid "Description" +msgstr "Leírás" + +msgid "Design" +msgstr "Megjelenés" + +msgid "Destination" +msgstr "Cél" + +msgid "Device" +msgstr "Eszköz" + +msgid "Device Configuration" +msgstr "Eszköz beállítások" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "Diagnosztika" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "Könyvtár" + +msgid "Disable" +msgstr "Letiltás" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +"DHCP tiltása ezen " +"az interfészen." + +msgid "Disable DNS setup" +msgstr "DNS beállítás letiltása" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "Hardveres beacon időzítő letiltása" + +msgid "Disabled" +msgstr "Letiltva" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "Beérkező RFC1918 DHCP válaszok elvetése. " + +msgid "Displaying only packages containing" +msgstr "Csak azon csomagok megjelenítése, amelyek tartalmazzák" + +msgid "Distance Optimization" +msgstr "Távolság optimalizáció" + +msgid "Distance to farthest network member in meters." +msgstr "A hálózat legtávolabbi tagjának távolsága méterben." + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "Diverzitás" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"A Dnsmasq egy kombinált DHCP-kiszolgáló és DNS-" +"továbbító NAT tűzfalak " +"számára" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" +"Ne gyorsítótárazza a negatív válaszokat, pl. nem létező domain-ok esetén" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" +"Ne továbbítsa a publikus név szerverek által nem megválaszolható kéréseket" + +msgid "Do not forward reverse lookups for local networks" +msgstr "Ne továbbítson fordított keresési kéréseket a helyi hálózathoz" + +msgid "Do not send probe responses" +msgstr "Ne válaszoljon a szondázásra" + +msgid "Domain required" +msgstr "Tartomány szükséges" + +msgid "Domain whitelist" +msgstr "Tartomány fehérlista" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" +"Ne továbbítsa a DNS-név nélküli " +"DNS-kéréseket " + +msgid "Download and install package" +msgstr "Csomag letöltése és telepítése" + +msgid "Download backup" +msgstr "Biztonsági mentés letöltése" + +msgid "Dropbear Instance" +msgstr "Dropbear példány" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"A Dropbear a hálózaton SSH hozzáférést " +"tesz lehetővé, valamint integrált SCP " +"szolgáltatást nyújt." + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" +"Dinamikus DHCP" + +msgid "Dynamic tunnel" +msgstr "Dinamikus alagút" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" +"Az ügyfelek számára kiosztott DHCP címek dinamikus lefoglalása. Letiltása " +"esetén csak a statikus DHCP bérlettel rendelkező kliensek lesznek " +"kiszolgálva." + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "EAP metódus" + +msgid "Edit" +msgstr "Szerkesztés" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "Interfész szerkesztése" + +msgid "Edit this network" +msgstr "Hálózat szerkesztése" + +msgid "Emergency" +msgstr "Vészhelyzet" + +msgid "Enable" +msgstr "Engedélyezés" + +msgid "Enable STP" +msgstr "STP engedélyezése" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "HE.net dinamikus végpont frissítésének engedélyezése" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "IPv6 egyeztetés engedélyezése a PPP linken" + +msgid "Enable Jumbo Frame passthrough" +msgstr "Óriás keretek átengedésének engedélyezése" + +msgid "Enable NTP client" +msgstr "NTP-kliens engedélyezése" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "TFTP kiszolgáló engedélyezése" + +msgid "Enable VLAN functionality" +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" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "A csatolás engedélyezése" + +msgid "Enable this swap" +msgstr "A lapozó terület engedélyezése" + +msgid "Enable/Disable" +msgstr "Engedélyezés/Letiltás" + +msgid "Enabled" +msgstr "Engedélyezve" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "A Spanning Tree prokoll engedélyezése erre a hídra" + +msgid "Encapsulation mode" +msgstr "Beágyazási mód" + +msgid "Encryption" +msgstr "Titkosítás" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "Törlés..." + +msgid "Error" +msgstr "Hiba" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "Ethernet adapter" + +msgid "Ethernet Switch" +msgstr "Ethernet switch" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "Gépek kibontása" + +msgid "Expires" +msgstr "Lejárat" + +#, fuzzy +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "A bérelt címek lejárati ideje, a minimális érték 2 perc." + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "Külső rendszernapló kiszolgáló" + +msgid "External system log server port" +msgstr "Külső rendszernapló kiszolgáló port" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "Gyors keretek" + +msgid "File" +msgstr "Fájl" + +msgid "Filename of the boot image advertised to clients" +msgstr "A kliensek részére közzétett betöltö kép fájlneve" + +msgid "Filesystem" +msgstr "Fájlrendszer" + +msgid "Filter" +msgstr "Szűrő" + +msgid "Filter private" +msgstr "Privát kérések szűrése" + +msgid "Filter useless" +msgstr "Használhahatlan kérések szűrése" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "Hálózatok keresése és csatlakozás" + +msgid "Find package" +msgstr "Csomag keresése" + +msgid "Finish" +msgstr "Befejezés" + +msgid "Firewall" +msgstr "Tűzfal" + +msgid "Firewall Settings" +msgstr "Tűzfal Beállítások" + +msgid "Firewall Status" +msgstr "Tűzfal Állapot" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "Tűzfal verzió" + +msgid "Fixed source port for outbound DNS queries" +msgstr "Rögzített forrás port a kimenő DNS kérésekhez" + +msgid "Flash Firmware" +msgstr "Firmware flash-elés" + +msgid "Flash image..." +msgstr "Flash image..." + +msgid "Flash new firmware image" +msgstr "Új firmware image flash-elése" + +msgid "Flash operations" +msgstr "Flash műveletek" + +msgid "Flashing..." +msgstr "Flash-elés..." + +msgid "Force" +msgstr "Kényszerítés" + +msgid "Force CCMP (AES)" +msgstr "CCMP (AES) kényszerítése" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "" +"DHCP kényszerítése ezen a hálózaton még akkor is ha van másik szerver " +"észlelve." + +msgid "Force TKIP" +msgstr "TKIP kényszerítése" + +msgid "Force TKIP and CCMP (AES)" +msgstr "TKIP és CCMP (AES) kényszerítése" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "DHCP forgalom továbbítás" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "Broadcast forgalom továbbítás" + +msgid "Forwarding mode" +msgstr "Továbbítás módja" + +msgid "Fragmentation Threshold" +msgstr "Töredezettségi küszöb" + +msgid "Frame Bursting" +msgstr "Keretfűzés" + +msgid "Free" +msgstr "Szabad" + +msgid "Free space" +msgstr "Szabad hely" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "GHz" + +msgid "GPRS only" +msgstr "Csak GPRS" + +msgid "Gateway" +msgstr "Átjáró" + +msgid "Gateway ports" +msgstr "Átjáró portok" + +msgid "General Settings" +msgstr "Általános beállítások" + +msgid "General Setup" +msgstr "Általános beállítások" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "Archívum készítése" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "Általános 802.11%s vezeték-nélküli vezérlő" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "A megadott jelszavak nem egyeznek, a jelszó nem lett megváltoztatva!" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "Ugrás a jelszó beállításhoz..." + +msgid "Go to relevant configuration page" +msgstr "Ugrás a tárgyhoz tartozó beállításokhoz" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "HE.net jelszó" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "Kezelő" + +msgid "Hang Up" +msgstr "Befejezés" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"Itt állíthatja be az eszköz alapvető tulajdonságait, mint például a gépnév " +"vagy az időzóna." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" +"Nyilvános kulcs alapú SSH azonosításhoz itt adhat meg nyilvános SSH " +"kulcsokat (soronként egyet)." + +msgid "Hermes 802.11b Wireless Controller" +msgstr "Hermes 802.11b vezeték nélküli vezérlő" + +msgid "Hide ESSID" +msgstr "ESSID elrejtése" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "Host bejegyzések" + +msgid "Host expiry timeout" +msgstr "Host lejárati idő" + +msgid "Host-IP or Network" +msgstr "Host-IP vagy hálózat" + +msgid "Hostname" +msgstr "Gépnév" + +msgid "Hostname to send when requesting DHCP" +msgstr "DHCP kérés során küldendő gépnév" + +msgid "Hostnames" +msgstr "Gépnevek" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "IP cím" + +msgid "IPv4" +msgstr "IPv4" + +msgid "IPv4 Firewall" +msgstr "IPv4 tűzfal" + +msgid "IPv4 WAN Status" +msgstr "IPv4 WAN állapot" + +msgid "IPv4 address" +msgstr "IPv4 cím" + +msgid "IPv4 and IPv6" +msgstr "IPv4 és IPv6" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "IPv4 broadcast" + +msgid "IPv4 gateway" +msgstr "IPv4 átjáró" + +msgid "IPv4 netmask" +msgstr "IPv4 hálózati maszk" + +msgid "IPv4 only" +msgstr "csak IPv4" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "IPv4 prefix hossza" + +msgid "IPv4-Address" +msgstr "IPv4-cím" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "IPv6 tűzfal" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "IPv6 WAN állapot" + +msgid "IPv6 address" +msgstr "IPv6 cím" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "IPv6 átjáró" + +msgid "IPv6 only" +msgstr "csak IPv6" + +msgid "IPv6 prefix" +msgstr "IPv6 előtag" + +msgid "IPv6 prefix length" +msgstr "IPv6 prefix hossz" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "IPv6-cím" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "IPv6 IPv4-ben (RFC4213)" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "IPv6 IPv4 felett (6rd)" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "IPv6 IPv4 felett (6to4)" + +msgid "Identity" +msgstr "Identitás" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" +"Megadás esetén az eszköz csomópont helyett UUID alapján történő csatolása" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" +"Megadás esetén az eszköz csomópont helyett címke alapján történő csatolása" + +msgid "If unchecked, no default route is configured" +msgstr "Ha nincs kiválasztva, akkor nincs alapértelmezett útvonal beállítva" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "" +"Ha nincs kiválasztva, akkor a hirdetett DNS kiszolgáló címeket nem veszi " +"figyelembe" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"Ha a fizikai memória túl kevés a nem használt adatok ideiglenesen áttehetők " +"egy swap-eszközre mely így nagyobb mennyiségű használható RAM-ot eredményez. Az adatok áttétele egy " +"nagyon lassú folyamat mivel a swap-eszköz nem érhető el akkora sebességgel " +"mint a RAM." + +msgid "Ignore /etc/hosts" +msgstr "" + +msgid "Ignore interface" +msgstr "Interfész figyelmen kívül hagyása" + +msgid "Ignore resolve file" +msgstr "A resolve fájl figyelmen kívül hagyása" + +msgid "Image" +msgstr "Image" + +msgid "In" +msgstr "Be" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "Inaktivitási időtúllépés" + +msgid "Inbound:" +msgstr "Bejövő" + +msgid "Info" +msgstr "Információk" + +msgid "Initscript" +msgstr "Indítási állomány" + +msgid "Initscripts" +msgstr "Indítási állományok" + +msgid "Install" +msgstr "Telepítés" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "%q csomag telepítése" + +msgid "Install protocol extensions..." +msgstr "Protokoll kiterjesztések telepítése..." + +msgid "Installed packages" +msgstr "Telepített csomagok" + +msgid "Interface" +msgstr "Interfész" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "Interfész beállítások" + +msgid "Interface Overview" +msgstr "Interfész áttekintés" + +msgid "Interface is reconnecting..." +msgstr "Interfész újracsatlakoztatása..." + +msgid "Interface is shutting down..." +msgstr "Interfész leállítása..." + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "Az interfész nincs jelen, vagy még nincs csatlakoztatva." + +msgid "Interface reconnected" +msgstr "Interfész újracsatlakoztatva" + +msgid "Interface shut down" +msgstr "Interfész leállítás" + +msgid "Interfaces" +msgstr "Interfészek" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "Belső szerverhiba" + +msgid "Invalid" +msgstr "Érvénytelen" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" +"A megadott VLAN azonosító érvénytelen. Az azonosítónak %d és %d közé kell " +"esnie." + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "" +"A megadott VLAN azonosító érvénytelen! Minden VLAN-hoz egyedi azonosító kell." + +msgid "Invalid username and/or password! Please try again." +msgstr "Érvénytelen felhasználói név és/vagy jelszó! Kérem próbálja újra!" + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"Úgy tűnik, hogy a flash-elendő kép-file nem fér el a Flash-memóriába. Kérem " +"ellenőrizze a kép fájlt!" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "JavaScript szükséges!" + +msgid "Join Network" +msgstr "Csatlakozás a hálózathoz" + +msgid "Join Network: Wireless Scan" +msgstr "Csatlakozás a hálózathoz: vezetéknélküli hálózatok keresése" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "Beállítások megtartása" + +msgid "Kernel Log" +msgstr "Kernel napló" + +msgid "Kernel Version" +msgstr "Kernel verzió" + +msgid "Key" +msgstr "Kulcs" + +msgid "Key #%d" +msgstr "Kulcs #%d" + +msgid "Kill" +msgstr "Kilövés" + +msgid "L2TP" +msgstr "L2TP" + +msgid "L2TP Server" +msgstr "L2TP szerver" + +msgid "LCP echo failure threshold" +msgstr "LCP echo hibaküszöb" + +msgid "LCP echo interval" +msgstr "LCP Echo időtartam" + +msgid "LLC" +msgstr "LLC" + +msgid "Label" +msgstr "Címke" + +msgid "Language" +msgstr "Nyelv" + +msgid "Language and Style" +msgstr "Nyelv és megjelenés" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "Bérlet érvényességi ideje" + +msgid "Leasefile" +msgstr "Bérlet fájl" + +msgid "Leasetime remaining" +msgstr "A bérletből hátralévő idő" + +msgid "Leave empty to autodetect" +msgstr "Automatikus észleléshez hagyja üresen" + +msgid "Leave empty to use the current WAN address" +msgstr "A jelenlegi WAN cím használatához hagyja üresen" + +msgid "Legend:" +msgstr "Jelmagyarázat:" + +msgid "Limit" +msgstr "Korlát" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "Kapcsolat létrehozva" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" +"DNS szerverek listája, ahová a " +"kérések továbbításra kerülnek" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "Domain-ok listája, melyeknél az RFC1918 válaszok megengedettek" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "A hamis NX tartomány eredményeket szolgáltató gépek listája" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" +"Csak a megadott interfészen hallgat, vagy az összesen, amennyiben nem adja " +"meg" + +msgid "Listening port for inbound DNS queries" +msgstr "Szerver port a beérkező DNS kérések számára" + +msgid "Load" +msgstr "Terhelés" + +msgid "Load Average" +msgstr "Átlagos terhelés" + +msgid "Loading" +msgstr "Betöltés" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "Helyi IPv4 cím" + +msgid "Local IPv6 address" +msgstr "Helyi IPv6 cím" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "Helyi indítóscript" + +msgid "Local Time" +msgstr "Helyi idő" + +msgid "Local domain" +msgstr "Helyi tartomány" + +#, fuzzy +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" +"Helyi tartomány meghatározása. Az ezzel a tartománnyal egyező nevek soha " +"nincsenek továbbítva és csak DHCP-n vagy host fájlok által kerülnek " +"feloldásra" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" +"A helyi tartomány utótag csatolása a DHCP nevekhez és hosts fájl " +"bejegyzésekhez" + +msgid "Local server" +msgstr "Helyi kiszolgáló" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" +"Gépnév lokalizációja a lekérdező alhálózattól függően, ha több IP cím is " +"elérhető" + +msgid "Localise queries" +msgstr "Lekérdezések lokalizációja" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "Napló kimeneti szintje" + +msgid "Log queries" +msgstr "Kérések naplózása" + +msgid "Logging" +msgstr "Naplózás" + +msgid "Login" +msgstr "Bejelentkezés" + +msgid "Logout" +msgstr "Kijelentkezés" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "A legalacsonyabb bérleti címnek az interfész címétől való távolsága" + +msgid "MAC-Address" +msgstr "MAC-cím" + +msgid "MAC-Address Filter" +msgstr "MAC-cím szűrő" + +msgid "MAC-Filter" +msgstr "MAC-szűrő" + +msgid "MAC-List" +msgstr "MAC-lista" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "MB/s" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "MHz" + +msgid "MTU" +msgstr "MTU" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "Maximális sebesség" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "Aktív DHCP bérletek maximális száma" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "Párhuzamos DNS kérések maximális száma" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "EDNS.0 UDP csomagok maximális mérete" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "Maximális várakozási idő a modem kész állapotára (másodpercben)" + +msgid "Maximum hold time" +msgstr "Maximális tartási idő" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "DHCP címek maximális száma" + +msgid "Mbit/s" +msgstr "Mbit/s" + +msgid "Memory" +msgstr "Memória" + +msgid "Memory usage (%)" +msgstr "Memória használat (%)" + +msgid "Metric" +msgstr "Metrika" + +msgid "Minimum Rate" +msgstr "Minimális sebesség" + +msgid "Minimum hold time" +msgstr "Minimális tartási idő" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "Hiányzó protokoll kiterjesztés a %q progokoll számára" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "Mód" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "Modemeszköz" + +msgid "Modem init timeout" +msgstr "Modem inicializálás időtúllépés" + +msgid "Monitor" +msgstr "Ellenőrzés" + +msgid "Mount Entry" +msgstr "Csatolási bejegyzés" + +msgid "Mount Point" +msgstr "Csatolási pont" + +msgid "Mount Points" +msgstr "Csatolási pontok" + +msgid "Mount Points - Mount Entry" +msgstr "Csatolási pontok - Csatolási bejegyzés" + +msgid "Mount Points - Swap Entry" +msgstr "Csatolási pontok - Lapozóterület bejegyzés" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"A csatolási pontok határozzák meg, hogy egy memória eszköz hová lesz " +"csatlakoztatva a fájlendszeren belül " + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "Csatolási beállítások" + +msgid "Mount point" +msgstr "Csatolási pont" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "Csatolt fájlrendszerek" + +msgid "Move down" +msgstr "Mozgatás lefelé" + +msgid "Move up" +msgstr "Mozgatás felfelé" + +msgid "Multicast Rate" +msgstr "Multicast sebesség" + +msgid "Multicast address" +msgstr "Multicast cím" + +msgid "NAS ID" +msgstr "NAS azonosító" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "Kijelölt NTP kiszolgálók" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "Név" + +msgid "Name of the new interface" +msgstr "Az új interfész neve" + +msgid "Name of the new network" +msgstr "Az új hálózat neve" + +msgid "Navigation" +msgstr "Navigáció" + +msgid "Netmask" +msgstr "Hálózati maszk" + +msgid "Network" +msgstr "Hálózat" + +msgid "Network Utilities" +msgstr "Hálózati eszközök" + +msgid "Network boot image" +msgstr "Hálózati rendszertöltő lemezkép" + +msgid "Network without interfaces." +msgstr "Interfészhez nem rendelt hálózat" + +msgid "Next »" +msgstr "Következő »" + +msgid "No DHCP Server configured for this interface" +msgstr "Ehhez az interfészhez nincs DHCP kiszolgáló beállítva" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "Ez a tábla nem tartalmaz láncokat." + +msgid "No files found" +msgstr "Nem találhatók fájlok" + +msgid "No information available" +msgstr "Nincs elérhető információ" + +msgid "No negative cache" +msgstr "Nincs negatív gyorsítótár" + +msgid "No network configured on this device" +msgstr "Ehhez az eszközhöz nincs hálózat beállítva" + +msgid "No network name specified" +msgstr "Nincs megadva hálózatnév" + +msgid "No package lists available" +msgstr "Csomaglisták nem állnak rendelkezésre" + +msgid "No password set!" +msgstr "Nincs jelszó!" + +msgid "No rules in this chain" +msgstr "Ez a lánc nem tartalmaz szabályokat" + +msgid "No zone assigned" +msgstr "Nincs hozzárendelt zóna" + +msgid "Noise" +msgstr "Zaj" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "Zaj:" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "Nincs" + +msgid "Normal" +msgstr "Normál" + +msgid "Not Found" +msgstr "Nem található" + +msgid "Not associated" +msgstr "Nincs hozzárendelve" + +msgid "Not connected" +msgstr "Nincs kapcsolódva" + +msgid "Note: Configuration files will be erased." +msgstr "Megjegyzés: konfigurációs fájlok törölve lesznek." + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "Megjegyzés" + +msgid "Nslookup" +msgstr "Nslookup" + +msgid "OK" +msgstr "OK" + +msgid "OPKG-Configuration" +msgstr "OPKG-Beállítások" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "Kikapcsolt állapot késleltetés" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"Ezen az oldalon a hálózati interfészeket állíthatja be. Több interfész " +"között híd hozható létre a \"híd interfész\" mező bejelölésével és több " +"hálózati interfész nevének szóközzel történő elválasztásával. Lehetőség van " +"VLAN jelölés " +"INTERFÉSZ.VLANSZÁM használatára is, pl. eth0.1)." + +msgid "On-State Delay" +msgstr "Bekapcsolt állapot késleltetés" + +msgid "One of hostname or mac address must be specified!" +msgstr "Legalább gépnevet vagy MAC-címet meg kell adni!" + +msgid "One or more fields contain invalid values!" +msgstr "Egy vagy több mező érvénytelen adatot tartalmaz!" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "Egy vagy több kötelezően kitöltendő mező üres!" + +msgid "Open list..." +msgstr "Lista megnyitása..." + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "Beállítás módosítva" + +msgid "Option removed" +msgstr "Beállítás eltávolítva" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "Lehetőségek" + +msgid "Other:" +msgstr "Egyéb:" + +msgid "Out" +msgstr "Ki" + +msgid "Outbound:" +msgstr "Kimenő:" + +msgid "Outdoor Channels" +msgstr "Kültéri csatornák" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "MAC cím felülbírálása" + +msgid "Override MTU" +msgstr "MTU felülbíráslás" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "Átjáró felülbírálása a DHCP válaszokban" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" +"Az ügyfelek részére küldött hálózati masz felülbírálása. Ez alapesetben a " +"kiszolgált alhálózat alapján kerül meghatározásra." + +msgid "Override the table used for internal routes" +msgstr "A belső útvonalakhoz használt tábla felülbírálása" + +msgid "Overview" +msgstr "Áttekintés" + +msgid "Owner" +msgstr "Tulajdonos" + +msgid "PAP/CHAP password" +msgstr "PAP/CHAP jelszó" + +msgid "PAP/CHAP username" +msgstr "PAP/CHAP felhasználói név" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "PIN" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "PPP" + +msgid "PPPoA Encapsulation" +msgstr "PPPoA beágyazás" + +msgid "PPPoATM" +msgstr "PPPoATM" + +msgid "PPPoE" +msgstr "PPPoE" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "PPtP" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "A libiwinfo csomag szükséges!" + +msgid "Package lists are older than 24 hours" +msgstr "A csomag listák 24 óránál régebbiek" + +msgid "Package name" +msgstr "Csomagnév" + +msgid "Packets" +msgstr "Csomagok" + +msgid "Part of zone %q" +msgstr "A %q zóna része" + +msgid "Password" +msgstr "Jelszó" + +msgid "Password authentication" +msgstr "Jelszó hitelesítés" + +msgid "Password of Private Key" +msgstr "A privát kulcsh jelszava" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "A jelszó megváltoztatása sikeres!" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "CA tanúsítvány elérési útja" + +msgid "Path to Client-Certificate" +msgstr "Kliens tanúsítvány elérési útja" + +msgid "Path to Private Key" +msgstr "A privát kulcs elérési útja" + +msgid "Path to executable which handles the button event" +msgstr "A gomb eseményeit kezelő végrehajtható állomány elérési útja" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "Csúcs:" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "Újraindítás végrehajtása" + +msgid "Perform reset" +msgstr "Visszaállítás végrehajtása" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "Phy sebesség:" + +msgid "Physical Settings" +msgstr "Fizikai beállítások" + +msgid "Ping" +msgstr "Ping" + +msgid "Pkts." +msgstr "csom." + +msgid "Please enter your username and password." +msgstr "Adja meg a felhasználónevét és a jelszavát." + +msgid "Policy" +msgstr "Szabály" + +msgid "Port" +msgstr "Port" + +msgid "Port status:" +msgstr "Port állapot:" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" +"A peer halottnak tekintése a megadott számú LCP echo hibák után. Használjon " +"0-t a hibák figyelmen kívül hagyásához." + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "Ügyfél-ügyfél közötti kommunikáció megakadályozása" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "Prism2/2.5/3 802.11b vezeték nélküli vezérlő" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "Folytatás" + +msgid "Processes" +msgstr "Folyamatok" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "Prot." + +msgid "Protocol" +msgstr "Protokoll" + +msgid "Protocol family" +msgstr "Protokoll család" + +msgid "Protocol of the new interface" +msgstr "Az új interfész protokollja" + +msgid "Protocol support is not installed" +msgstr "Protokoll támogatás nincs telepítve" + +msgid "Provide NTP server" +msgstr "NTP kiszolgáló" + +msgid "Provide new network" +msgstr "Új hálózat nyújtása" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "Ál Ad-hoc (ahdemo)" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "Minőség" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "RTS/CTS küszöbérték" + +msgid "RX" +msgstr "RX" + +msgid "RX Rate" +msgstr "RX sebesség" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "RaLink 802.11%s vezeték nélküli vezérlő" + +msgid "Radius-Accounting-Port" +msgstr "Radius-Naplózási-Port" + +msgid "Radius-Accounting-Secret" +msgstr "Radius-Naplózás-Kulcs" + +msgid "Radius-Accounting-Server" +msgstr "Radius-Naplózás-Kiszolgáló" + +msgid "Radius-Authentication-Port" +msgstr "Radius-Hitelesítés-Port" + +msgid "Radius-Authentication-Secret" +msgstr "Radius-Hitelesítés-Kulcs" + +msgid "Radius-Authentication-Server" +msgstr "Radius-Hitelesítés-Kiszolgáló" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"Az /etc/ethers fájl olvasása a DHCP kiszolgáló beállításához" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" +"Biztosan törli az interfészt? A törlés nem visszavonható!\n" +" Lehet, hogy elveszti a hozzáférést az eszközhöz, amennyiben ezen az " +"interfészen keresztül kapcsolódik." + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" +"Biztosan törli ezt a vezetéknélküli hálózatot? A törlés nem visszavonható!\n" +"Lehet, hogy elveszti a hozzáférést az eszközhöz, amennyiben ezen a hálózaton " +"keresztül kapcsolódik." + +msgid "Really reset all changes?" +msgstr "Biztos, hogy visszavonja az összes módosítást?" + +#, fuzzy +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" +"Biztos, hogy leállítja a hálózatot?!\n" +" Lehet, hogy elveszti a hozzáférést az eszközhöz, amennyiben ezen a " +"hálózaton keresztül kapcsolódik." + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" +"Biztos, hogy leállítja a \"%s\" interfészt?\n" +" Lehet, hogy elveszti a hozzáférést az eszközhöz, amennyiben ezen az " +"interfészen keresztül kapcsolódik." + +msgid "Really switch protocol?" +msgstr "Biztos, hogy cserélni szeretné a protokollt?" + +msgid "Realtime Connections" +msgstr "Valósidejű kapcsolatok" + +msgid "Realtime Graphs" +msgstr "Valósidejű grafikonok" + +msgid "Realtime Load" +msgstr "Valósidejű terhelés" + +msgid "Realtime Traffic" +msgstr "Valósidejű forgalom" + +msgid "Realtime Wireless" +msgstr "Valósidejű vezetéknélküli adatok" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "Rebind elleni védelem" + +msgid "Reboot" +msgstr "Újraindítás" + +msgid "Rebooting..." +msgstr "Újraindítás..." + +msgid "Reboots the operating system of your device" +msgstr "Újraindítja az eszköz operációs rendszerét" + +msgid "Receive" +msgstr "Fogadás" + +msgid "Receiver Antenna" +msgstr "Vevő antenna" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "Csatlakoztassa újra az interfészt" + +msgid "Reconnecting interface" +msgstr "Interfész újracsatlakoztatása" + +msgid "References" +msgstr "Hivatkozások" + +msgid "Regulatory Domain" +msgstr "Szabályozó tartomány" + +msgid "Relay" +msgstr "Átjátszás" + +msgid "Relay Bridge" +msgstr "Átjátszó híd" + +msgid "Relay between networks" +msgstr "Átjátszás hálózatok között" + +msgid "Relay bridge" +msgstr "Átjátszó híd" + +msgid "Remote IPv4 address" +msgstr "Távoli IPv4 cím" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "Eltávolítás" + +msgid "Repeat scan" +msgstr "Felderítés ismétlése" + +msgid "Replace entry" +msgstr "Bejegyés lecserélése" + +msgid "Replace wireless configuration" +msgstr "Vezetéknélküli beállítások lecserélése" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "" +"Szükséges bizonyos internetszolgáltatók esetén, pl. Charter 'DOCSIS 3'-al" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "Visszaállítás" + +msgid "Reset Counters" +msgstr "Számlálók nullázása" + +msgid "Reset to defaults" +msgstr "Alapértelmezések visszaállítása" + +msgid "Resolv and Hosts Files" +msgstr "Resolv és hosts fájlok" + +msgid "Resolve file" +msgstr "Resolv fájl" + +msgid "Restart" +msgstr "Újraindítás" + +msgid "Restart Firewall" +msgstr "Tűzfal újraindítása" + +msgid "Restore backup" +msgstr "Biztonsági mentés visszaállítása" + +msgid "Reveal/hide password" +msgstr "Jelszó mutatása/elrejtése" + +msgid "Revert" +msgstr "Visszavonás" + +msgid "Root" +msgstr "Gyökérkönyvtár" + +msgid "Root directory for files served via TFTP" +msgstr "TFTP-n keresztül megosztott fájlok gyökérkönyvtára" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "Router jelszó" + +msgid "Routes" +msgstr "Útvonalak" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"Az útvonalak határozzák meg, hogy bizonyos gépek illetve hálózatok melyik " +"interfészen keresztül érhetők el." + +msgid "Run a filesystem check before mounting the device" +msgstr "Fájlrendszer ellenőrzés futtatása az eszköz csatolása előtt" + +msgid "Run filesystem check" +msgstr "Fájlrendszer ellenőrzés futtatása" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "SSH hozzáférés" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "SSH kulcsok" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "Mentés" + +msgid "Save & Apply" +msgstr "Mentés & Alkalmazás" + +msgid "Save & Apply" +msgstr "Mentés & Alkalmazás" + +msgid "Scan" +msgstr "Felderítés" + +msgid "Scheduled Tasks" +msgstr "Ütemezett feladatok" + +msgid "Section added" +msgstr "Szakasz hozzáadva" + +msgid "Section removed" +msgstr "Szakasz eltávolítva" + +msgid "See \"mount\" manpage for details" +msgstr "Részletekért lásd a 'mount' man oldalát" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" +"LCP echo kérések küldése a másodpercben megadott időközönként, csak a " +"hibaküszöbbel együtt van hatása." + +msgid "Separate Clients" +msgstr "Kliensek szétválasztása" + +msgid "Separate WDS" +msgstr "WDS szétválasztása" + +msgid "Server Settings" +msgstr "Kiszolgáló beállításai" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "Szolgáltatás neve" + +msgid "Service Type" +msgstr "Szolgáltatás típusa" + +msgid "Services" +msgstr "Szolgáltatások" + +#, fuzzy +msgid "Set up Time Synchronization" +msgstr "Idő szinkronizálás beállítása" + +msgid "Setup DHCP Server" +msgstr "DHCP kiszolgáló beállítása" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "Mentendő fájlok aktuális listájának megjelenítése" + +msgid "Shutdown this interface" +msgstr "Interfész leállítása" + +msgid "Shutdown this network" +msgstr "Hálózat leállítása" + +msgid "Signal" +msgstr "Jel" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "Jel:" + +msgid "Size" +msgstr "Méret" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "Ugrás" + +msgid "Skip to content" +msgstr "Ugrás a tartalomhoz" + +msgid "Skip to navigation" +msgstr "Ugrás a navigációhoz" + +msgid "Slot time" +msgstr "Időrés" + +msgid "Software" +msgstr "Szoftver" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "Néhán mező érvénytelen, az értékek nem menthetők!" + +msgid "Sorry, the object you requested was not found." +msgstr "Sajnálom, a kért objektum nem található." + +msgid "Sorry, the server encountered an unexpected error." +msgstr "Sajnálom, a szerver váratlan hibát észlelt." + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" +"Sajnáljuk, a 'sysupgrade' támogatás nem elérhető, az új firmware fájl " +"telepítését manuálisan kell elvégezni. Az eszközhöz tartozó telepítési " +"utasításokért keresse fel az wiki-t." + +msgid "Sort" +msgstr "Sorbarendezés" + +msgid "Source" +msgstr "Forrás" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "Meghatározza a gomb kezelendő állapotát" + +msgid "Specifies the directory the device is attached to" +msgstr "Megadja az eszköz csatlakozási könyvtárát." + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "Megadja a Dropbear példány portját" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" +"Megadja a maximális sikertelen ARP kérések számát, amik után a host nem " +"elérhetőnek tekinthető" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" +"Megadja a másodpercek számát, amik után a host nem elérhetőnek tekinthető" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "Itt adja meg a titkosító kulcsot." + +msgid "Start" +msgstr "Indítás" + +msgid "Start priority" +msgstr "Indítás prioritása" + +msgid "Startup" +msgstr "Rendszerindítás" + +msgid "Static IPv4 Routes" +msgstr "Statikus IPv4 útvonalak" + +msgid "Static IPv6 Routes" +msgstr "Statikus IPv6 útvonalak" + +msgid "Static Leases" +msgstr "Statikus bérletek" + +msgid "Static Routes" +msgstr "Statikus útvonalak" + +msgid "Static WDS" +msgstr "Statikus WDS" + +msgid "Static address" +msgstr "Statikus cím" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" +"A statikus bérletekkel a DHCP kliensekhez fix IP-címet és hostnevet " +"rendelhet. Olyan nem dinamikus interfész konfigurációk esetén is " +"szükségesek, ahol a csak a megfelelő bérlettel rendelkező hosztok kerülnek " +"kiszolgálásra." + +msgid "Status" +msgstr "Állapot" + +msgid "Stop" +msgstr "Leállítás" + +msgid "Strict order" +msgstr "Kötött sorrend" + +msgid "Submit" +msgstr "Elküldés" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "Lapozóterület" + +msgid "Switch" +msgstr "Kapcsoló" + +msgid "Switch %q" +msgstr "Kapcsoló %q" + +msgid "Switch %q (%s)" +msgstr "Kapcsoló %q (%s)" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "Protokoll csere" + +msgid "Sync with browser" +msgstr "Szinkronizálás a böngészővel" + +msgid "Synchronizing..." +msgstr "Szinkronizálás..." + +msgid "System" +msgstr "Rendszer" + +msgid "System Log" +msgstr "Rendszernapló" + +msgid "System Properties" +msgstr "Rendszer tulajdonságok" + +msgid "System log buffer size" +msgstr "Rendszer napló puffer méret" + +msgid "TCP:" +msgstr "TCP:" + +msgid "TFTP Settings" +msgstr "TFTP beállítások" + +msgid "TFTP server root" +msgstr "TFTP szerver gyökér könyvtár" + +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "TX sebesség" + +msgid "Table" +msgstr "Tábla" + +msgid "Target" +msgstr "Cél" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "Megszakítás" + +#, fuzzy +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" +"Az Eszköz beállítások szakasz a rádió hardver fizikai beállításait, " +"úgymint csatorna, adóteljesítmény vagy antenna választás teszi lehetővé, " +"amelyen az összes definiált vezeték nélküli hálózat (ha a rádió hardver " +"multi-SSID képes) osztozik. A hálózatonkénti beállítások, mint az " +"titkosítás, mód az Interfész beállítások alá vannak csoportosítva." + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" +"A libiwinfo-lua nincs telepítve. A vezetéknélküli beállítás " +"működéséhez ezt az összetevőt telepítnei kell." + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" +"A szolgáltatóhoz rendelt IPv6 előtag, általában így végződik: ::" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" +"A következő karakterek használhatók: A-Z, a-z, " +"0-9 and _" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" +"A memória vagy partíció eszköz fájlja (pl. " +"/dev/sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"A memória formázásához használt fájlrendszer típusa (pl. ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" +"Az image feltöltve. Alább található a fájl ellenőrző összege és mérete, " +"hasonlítsa össze az eredeti fájllal a feltöltött adatok sértetlenségének " +"ellenőrzéséhez.
Kattintson az alábbi \"Folytatás\" gombra a flash-elési " +"eljárás elindításához." + +msgid "The following changes have been committed" +msgstr "A következő módosítások lettek alkalmazva" + +msgid "The following changes have been reverted" +msgstr "A következő módosítások lettek visszavonva" + +msgid "The following rules are currently active on this system." +msgstr "Jelenleg a következő szabályok aktívak a rendszeren." + +msgid "The given network name is not unique" +msgstr "A megadott hálózati név már létezik" + +#, fuzzy +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" +"A hardver nem képes többszörös SSID kezelésre ezért a meglévő beállítások " +"elvesznek ha folytatja." + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" +"Az IPv4 előtag hossza bitekben, a maradék az IPv6 címekben használatos." + +msgid "The length of the IPv6 prefix in bits" +msgstr "Az IPv6 előtag hossza bitekben" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" +"Az eszközön található hálózati portok kombinálhatók több VLAN-ba, amelyekben a számítógépek " +"közvetlenül kommunikálhatnak egmással. A VLAN-ok gyakran a hálózati szegmensek elkülönítésére " +"használják. Gyakran van egy alapértelmezett Uplink port a következő nagyobb " +"hálózathoz (pl. az internet) való kapcsolódásra és a többi port a helyi " +"hálózathoz." + +msgid "The selected protocol needs a device assigned" +msgstr "A kiválasztott protokoll eszköz hozzárendelést igényel" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "A rendszer most törli a konfigurációs partíciót majd újraindul." + +#, fuzzy +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"A rendszer frissítése folyamatban.
NE KAPCSOLJA KI AZ ESZKÖZT!
" +"Várjon néhány percet, amíg az eszköz ismételten elérhető. Az eszköz " +"eléréséhez a beállításaitól függően szükséges lehet a számítógépe IP-címének " +"megújítása." + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"A feltöltött image fájl formátuma nem támogatott. Ügyeljen arra, hogy a " +"platformjának megfelelő általános image formátumot válassza ki." + +msgid "There are no active leases." +msgstr "Nincsenek aktív bérletek." + +msgid "There are no pending changes to apply!" +msgstr "Nincsenek alkalmazásra váró módosítások!" + +msgid "There are no pending changes to revert!" +msgstr "Nincsenek visszavonásra váró változtatások!" + +msgid "There are no pending changes!" +msgstr "Nincsenek el nem mentett változtatások!" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" +"Nincs hozzárendelt eszköz, kérem csatoljon egy hálózati eszközt a \"Fizikai " +"beállítások\" fülön." + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" +"A routeren jelenleg nincs jelszó beállítva. Állítsa be a root felhasználó " +"jelszavát a felhasználói felület védelme és az SSH elérés engélyezése " +"érdekében." + +msgid "This IPv4 address of the relay" +msgstr "Az átjátszó IPV4 címe" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" +"Ez egy shell mintákból álló lista a rendszer frissítés során megőrzendő " +"fájlok és könytárak meghatározására. Az /etc/config/ könyvtárban található " +"módosított fájlok és bizonyos további beállítások automatikusan megőrződnek." + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" +"Ez a /etc/rc.local fájl tartalma. Ide írhatja be a saját parancsait (az " +"'exit 0' sor elé) a boot folyamat végén történő futtatásukhoz." + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" +"Ez az alagút közvetítő (tunnel broker) által megadott helyi végpont címe, " +"általában így végződik: :2" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" +"Ez az egyetlen DHCP a helyi hálózaton" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "Ez a rendszer crontab, amiben időzített feladatok definiálhatók." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" +"Ez általában a legközelebbi alagút közvetítő (tunnel broker) által vezérelt " +"jelenléti pont (PoP) címe" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" +"Ez a lista a rendszerben jelenleg futó folyamatokról és azok állapotáról ad " +"áttekintést." + +msgid "This page allows the configuration of custom button actions" +msgstr "Ez a lap a gombok egyedi működésének beállítását teszi lehetővé" + +msgid "This page gives an overview over currently active network connections." +msgstr "" +"Ez a lap a rendszerben jelenleg aktív hálózati kapcsolatokról ad áttekintést." + +msgid "This section contains no values yet" +msgstr "Ez a szakasz még nem tartalmaz értékeket" + +msgid "Time Synchronization" +msgstr "Idő szinkronizálás" + +msgid "Time Synchronization is not configured yet." +msgstr "Idő szinkronizálás még nincs beállítva." + +msgid "Timezone" +msgstr "Időzóna" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" +"Itt tölthet fel egy korábban létrehozott biztonsági mentés archívumot a " +"konfigurációs fájlok visszaállításához." + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "Összes elérhető" + +msgid "Traceroute" +msgstr "Traceroute" + +msgid "Traffic" +msgstr "Forgalom" + +msgid "Transfer" +msgstr "Átvitel" + +msgid "Transmission Rate" +msgstr "Átviteli sebesség" + +msgid "Transmit" +msgstr "Küldés" + +msgid "Transmit Power" +msgstr "Adóteljesítmény" + +msgid "Transmitter Antenna" +msgstr "Adó antenna" + +msgid "Trigger" +msgstr "Trigger" + +msgid "Trigger Mode" +msgstr "Trigger mód" + +msgid "Tunnel ID" +msgstr "Tunnel azonosító" + +msgid "Tunnel Interface" +msgstr "Tunnel interfész" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "Turbó mód" + +msgid "Tx-Power" +msgstr "Adóteljesítmény" + +msgid "Type" +msgstr "Típus" + +msgid "UDP:" +msgstr "UDP:" + +msgid "UMTS only" +msgstr "Csak UTMS" + +msgid "UMTS/GPRS/EV-DO" +msgstr "UMTS/GPRS/EV-DO" + +msgid "USB Device" +msgstr "USB eszköz" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "UUID" + +msgid "Unable to dispatch" +msgstr "Nem indiítható" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "Ismeretlen" + +msgid "Unknown Error, password not changed!" +msgstr "Ismeretlen hiba, a jelszó nem lett megváltoztatva!" + +msgid "Unmanaged" +msgstr "Nem kezelt" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "El nem mentett módosítások" + +msgid "Unsupported protocol type." +msgstr "Nem támogatott protokoll típus." + +msgid "Update lists" +msgstr "Listák frissítése" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" +"Itt tölthet fel egy új sysupgrade-kompatibilis képet a futó firmware " +"lecseréléséhez. A jelenlegi beállítások megtartásához jelölje be a " +"\"Beállítások megtartása\" négyzetet (kompatibilis firmware kép szükséges)." + +msgid "Upload archive..." +msgstr "Archívum feltöltése..." + +msgid "Uploaded File" +msgstr "Feltöltött fájl" + +msgid "Uptime" +msgstr "Működési idő" + +msgid "Use /etc/ethers" +msgstr "/etc/ethers használata" + +msgid "Use DHCP gateway" +msgstr "DHCP kiszolgáló használata" + +msgid "Use DNS servers advertised by peer" +msgstr "Másik fél által ajánlott DNS szerverek használata" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "ISO/IEC 3166 alpha2 országkódok használata" + +msgid "Use MTU on tunnel interface" +msgstr "MTU használata az alagút interfészen" + +msgid "Use TTL on tunnel interface" +msgstr "TTL használata az alagút interfészen" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "Broadcast flag használata" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "Egyedi DNS szerverek használata" + +msgid "Use default gateway" +msgstr "Alapértelmezett átjáró használata" + +msgid "Use gateway metric" +msgstr "Átjáró metrikájának használata" + +msgid "Use routing table" +msgstr "Útválasztó tábla használata" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" +"Használja a Hozzáadás gombot új bérleti bejegyzés hozzáadásához. A " +"MAC-cím azonosítja a gépet. az IPv4-cím adja meg a " +"használandó rögzített IP címet és a Gépnév lesz szimbolikus névként " +"hozzárendelve az igénylő géphez." + +msgid "Used" +msgstr "Használt" + +msgid "Used Key Slot" +msgstr "Használt kulcsindex" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "Felhasználónév" + +msgid "VC-Mux" +msgstr "VC-Mux" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "VLAN-ok %q-n" + +msgid "VLANs on %q (%s)" +msgstr "VLAN-ok %q-n (%s)" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "VPN kiszolgáló" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "DHCP kérés során küldendő 'Vendor Class'" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "Ellenőrzés" + +msgid "Version" +msgstr "Verzió" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "WEP nyílt rendszer" + +msgid "WEP Shared Key" +msgstr "WEP megosztott kulcs" + +msgid "WEP passphrase" +msgstr "WEP jelmondat" + +msgid "WMM Mode" +msgstr "WMM mód" + +msgid "WPA passphrase" +msgstr "WPA jelmondat" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"WPA titkosításhoz kliens módnál 'wpa_supplicant', hozzáférési pont illetve " +"ad-hoc módnál 'hostapd' telepítése szükséges." + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "Várakozás a változtatások alkalmazására..." + +msgid "Waiting for command to complete..." +msgstr "Várakozás a parancs befejezésére..." + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "Figyelmeztetés" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "Vezetéknélküli rész" + +msgid "Wireless Adapter" +msgstr "Vezetéknélküli adapter" + +msgid "Wireless Network" +msgstr "Vezetéknélküli hálózat" + +msgid "Wireless Overview" +msgstr "Vezetéknélküli rész áttekintés" + +msgid "Wireless Security" +msgstr "Vezetéknélküli biztonság" + +msgid "Wireless is disabled or not associated" +msgstr "Vezetéknélküli hálózat le van tiltva vagy nincs kapcsolódva" + +msgid "Wireless is restarting..." +msgstr "Vezetéknélküli rész újraindítása folyamatban..." + +msgid "Wireless network is disabled" +msgstr "Vezetéknélküli hálózat letiltva" + +msgid "Wireless network is enabled" +msgstr "Vezetéknélküli hálózat engedélyezve" + +msgid "Wireless restarted" +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" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "XR támogatás" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"Itt engedélyezheti vagy tilthatja le a telepített indítási állományokat. A " +"módosítások a rendszer újraindítása után lesznek alakalmazva.
Figyelem: alapvető indítási állomány pl. \"network\" letiltása " +"esetén, az eszköz elérhetetlenné válhat!" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" +"Engélyezze a Java Szkripteket a böngészőjében, mert anélkül a LuCI nem fog " +"megfelelően működni." + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "bármelyik" + +msgid "auto" +msgstr "automatikus" + +msgid "baseT" +msgstr "baseT" + +msgid "bridged" +msgstr "áthidalt" + +msgid "create:" +msgstr "új:" + +msgid "creates a bridge over specified interface(s)" +msgstr "híd létrehozása a megadott interfész(ek) között" + +msgid "dB" +msgstr "dB" + +msgid "dBm" +msgstr "dBm" + +msgid "disable" +msgstr "letiltás" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "lejárt" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" +"fájl ahová a DHCP " +"bérletek tárolásra kerülnek" + +msgid "forward" +msgstr "továbbítás" + +msgid "full-duplex" +msgstr "full-duplex" + +msgid "half-duplex" +msgstr "half-duplex" + +msgid "help" +msgstr "súgó" + +msgid "hidden" +msgstr "rejtett" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "ha a cél hálózat" + +msgid "input" +msgstr "bemenet" + +msgid "kB" +msgstr "kB" + +msgid "kB/s" +msgstr "kB/s" + +msgid "kbit/s" +msgstr "kbit/s" + +msgid "local DNS file" +msgstr "helyi DNS fájl" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "nem" + +msgid "no link" +msgstr "nincs link" + +msgid "none" +msgstr "nincs" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "ki" + +msgid "on" +msgstr "be" + +msgid "open" +msgstr "nyitás" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "irányított" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "cimkézett" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "ismeretlen" + +msgid "unlimited" +msgstr "korlátlan" + +msgid "unspecified" +msgstr "nincs meghatározva" + +msgid "unspecified -or- create:" +msgstr "nincs magadva -vagy- új:" + +msgid "untagged" +msgstr "cimkézetlen" + +msgid "yes" +msgstr "igen" + +msgid "« Back" +msgstr "« Vissza" + +#~ msgid "Leasetime" +#~ msgstr "Bérlet időtartama" + +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "Amennyiben ezt jelöletlenül hagyja, egy további hálózat jön létre" + +#~ msgid "Join Network: Settings" +#~ msgstr "Csatlakozás a hálózathoz: Beállítások" + +#~ msgid "CPU" +#~ msgstr "Processzor" + +#~ msgid "Port %d" +#~ msgstr "Port %d" + +#~ msgid "Port %d is untagged in multiple VLANs!" +#~ msgstr "A %d port egyszerre több VLAN-ban is cimkézetlen!" + +#~ msgid "VLAN Interface" +#~ msgstr "VLAN interfész" diff --git a/luci-base/po/it/base.po b/luci-base/po/it/base.po new file mode 100644 index 000000000..12b11f78b --- /dev/null +++ b/luci-base/po/it/base.po @@ -0,0 +1,3936 @@ +msgid "" +msgstr "" +"Project-Id-Version: LuCI\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-06-10 03:40+0200\n" +"PO-Revision-Date: 2015-04-20 10:33+0100\n" +"Last-Translator: muxator \n" +"Language-Team: LANGUAGE \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 1.6.10\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(%d finestra in minuti , %d secondi intervallo)" + +msgid "(%s available)" +msgstr "(%s disponibile)" + +msgid "(empty)" +msgstr "(vuoto)" + +msgid "(no interfaces attached)" +msgstr "(nessuna interfaccia collegata)" + +msgid "-- Additional Field --" +msgstr "-- Campo aggiuntivo --" + +msgid "-- Please choose --" +msgstr "-- Per favore scegli --" + +msgid "-- custom --" +msgstr "-- personalizzato --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "Carico in 1 minuto:" + +msgid "15 Minute Load:" +msgstr "Carico in 15 minut:" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "Carico in 5 minuti:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "" +"BSSID" + +msgid "DNS query port" +msgstr "Richiesta porta DNS" + +msgid "DNS server port" +msgstr "Porta Server DNS" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" +"DNS I server che verranno " +"interrogati nell'ordine del resolv file" + +msgid "ESSID" +msgstr "" +"ESSID" + +msgid "IPv4-Address" +msgstr "Indirizzo IPv4" + +msgid "IPv4-Gateway" +msgstr "Gateway IPv4" + +msgid "IPv4-Netmask" +msgstr "" +"Maschera di rete IPv4" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"Indirizzo IPv6 o rete " +"(CIDR)" + +msgid "IPv6-Gateway" +msgstr "Gateway IPv6" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "Configurazione LED" + +msgid "LED Name" +msgstr "LED Nome" + +msgid "MAC-Address" +msgstr "Indirizzo MAC" + +msgid "" +"Max. DHCP leases" +msgstr "" +"Max. Contratto DHCP" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"Max. dimensione pacchetti EDNS0" + +msgid "Max. concurrent queries" +msgstr "Max. Richiesta in uso" + +msgid "%s - %s" +msgstr "%s - %s" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "Supporto AR" + +msgid "ARP retry threshold" +msgstr "riprova soglia ARP" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "Ponti ATM" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "Identificatore Canale Virtuale ATM (VCI)" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "Identificatore Percorso Virtuale ATM (VPI)" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"I ponti ATM incapsulano connessioni in AAL5, in modo che i dispositivi " +"virtuali si possono interfacciare con le reti virtuali Linux in congiunzione " +"con la comunicazione DHCP o PPP dell'ISP." + +msgid "ATM device number" +msgstr "Numero dispositivo ATM " + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "Accesso Concentratore" + +msgid "Access Point" +msgstr "Punto di Accesso" + +msgid "Action" +msgstr "Azione" + +msgid "Actions" +msgstr "Azioni" + +msgid "Activate this network" +msgstr "Attiva questa rete" + +msgid "Active IPv4-Routes" +msgstr "" +"Instradamento IPv4 " +"attivo" + +msgid "Active IPv6-Routes" +msgstr "" +"Instradamento IPv6 " +"attivo" + +msgid "Active Connections" +msgstr "Connessioni attive" + +msgid "Active DHCP Leases" +msgstr "Attiva contratti DHCP" + +msgid "Active DHCPv6 Leases" +msgstr "Attiva contratti DHCPv6" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc" + +msgid "Add" +msgstr "Aggiungi" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "" +"Aggiungere il suffisso di dominio locale ai nomi serviti dal file hosts" + +msgid "Add new interface..." +msgstr "Aggiungi nuova interfaccia..." + +msgid "Additional Hosts files" +msgstr "File Hosts Aggiuntivo" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "Indirizzo" + +msgid "Address to access local relay bridge" +msgstr "Indirizzo per accedere al ponte locale di trasmissione" + +msgid "Administration" +msgstr "Amministrazione" + +msgid "Advanced Settings" +msgstr "Opzioni Avanzate" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "Avviso" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "" +"Permetti autenticazione SSH tramite " +"password" + +msgid "Allow all except listed" +msgstr "Consenti tutti tranne quelli nell'elenco" + +msgid "Allow listed only" +msgstr "Consenti solo quelli nell'elenco" + +msgid "Allow localhost" +msgstr "Permetti localhost" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" +"Permetti agli host remoti di connettersi tramite ssh reindirizzando le porte" + +msgid "Allow root logins with password" +msgstr "Permetti l'accesso a root con password" + +msgid "Allow the root user to login with password" +msgstr "Abilita l'utente root con l'accesso via password" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" +"Permetti le risposte upstream nell'intervallo 127.0.0.0/8, per esempio nei " +"servizi RBL" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "Antenna 1" + +msgid "Antenna 2" +msgstr "Antenna 2" + +msgid "Antenna Configuration" +msgstr "Configurazione dell'Antenna" + +msgid "Any zone" +msgstr "Qualsiasi Zona" + +msgid "Apply" +msgstr "Applica" + +msgid "Applying changes" +msgstr "Applica modifiche" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "Assegna Interfacce..." + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "Dispositivi Wi-Fi connessi" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Dispositivo Wireless Atheros 802.11%s" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "Autenticazione PEAP" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "Autoritativo" + +msgid "Authorization Required" +msgstr "Autorizzazione richiesta" + +msgid "Auto Refresh" +msgstr "Aggiornamento Automatico" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "Disponibili" + +msgid "Available packages" +msgstr "Pacchetti disponibili" + +msgid "Average:" +msgstr "Media:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "Indietro" + +msgid "Back to Overview" +msgstr "Ritorna alla panoramica" + +msgid "Back to configuration" +msgstr "Indietro alla configurazione" + +msgid "Back to overview" +msgstr "Ritorna alla panoramica" + +msgid "Back to scan results" +msgstr "Ritorno ai risultati della scansione" + +msgid "Background Scan" +msgstr "Scansione in background" + +msgid "Backup / Flash Firmware" +msgstr "Copia di Sicurezza / Flash Firmware" + +msgid "Backup / Restore" +msgstr "Copia di Sicurezza / Ripristina" + +msgid "Backup file list" +msgstr "Elenco dei file di cui effettuare una copia di sicurezza" + +msgid "Bad address specified!" +msgstr "E' stato specificato un indirizzo errato!" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"Di seguito l'elenco dei file di cui effettuare la copia di sicurezza. Essa è " +"composta dai file di configurazione modificati installati da opkg, file di " +"base essenziali e i file di backup definiti dall'utente." + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "Bitrate" + +msgid "Bogus NX Domain Override" +msgstr "Ignora Dominio Bogus NX" + +msgid "Bridge" +msgstr "Ponte" + +msgid "Bridge interfaces" +msgstr "Interfacce Ponte" + +msgid "Bridge unit number" +msgstr "Numero Unità Ponte" + +msgid "Bring up on boot" +msgstr "Attivare all'avvio" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "Dispositivo Wireless Broadcom 802.11%s" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "Dispositivo Wireless Broadcom BCM%04x 802.11" + +msgid "Buffered" +msgstr "Buffered" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "Pulsanti" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "Uso CPU (%)" + +msgid "Cancel" +msgstr "Annulla" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "Catena" + +msgid "Changes" +msgstr "Modifiche" + +msgid "Changes applied." +msgstr "Modifiche applicate." + +msgid "Changes the administrator password for accessing the device" +msgstr "Cambia la password di amministratore per accedere al dispositivo" + +msgid "Channel" +msgstr "Canale" + +msgid "Check" +msgstr "Verifica" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "Checksum" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"Scegli la zona del firewall che si desidera assegnare a questa interfaccia. " +"Selezionare non specificato per rimuovere l'interfaccia dalla zona " +"associata o compilare il campo crea per definire una nuova zona e " +"collegare l'interfaccia ad esso." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" +"Segliere la/le rete/reti a cui vuoi collegare questa interfaccia wireless o " +"riempire il campo crea per definire una nuova rete." + +msgid "Cipher" +msgstr "Cifratura" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"Premi su \"Genera archivio\" per scaricare un archivio tar di backup dei " +"file di configurazione attuali. Per ripristinare il firmware al suo stato " +"iniziale premi \"Esegui RIpristino\" (solo per firmware basati su squashfs)." + +msgid "Client" +msgstr "Cliente" + +msgid "Client ID to send when requesting DHCP" +msgstr "ID Cliente da inviare all'interno della richiesta DHCP" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" +"Chiudi le connessioni inattive dopo x secondi, usa 0 per connessioni " +"persistenti" + +msgid "Close list..." +msgstr "Scegliere dall'elenco..." + +msgid "Collecting data..." +msgstr "Raccolgo i dati..." + +msgid "Command" +msgstr "Comando" + +msgid "Common Configuration" +msgstr "Configurazioni Comuni" + +msgid "Compression" +msgstr "Compressione" + +msgid "Configuration" +msgstr "Configurazione" + +msgid "Configuration applied." +msgstr "Configurazione salvata." + +msgid "Configuration files will be kept." +msgstr "I file di configurazione verranno mantenuti." + +msgid "Confirmation" +msgstr "Conferma" + +msgid "Connect" +msgstr "Connetti" + +msgid "Connected" +msgstr "Connesso" + +msgid "Connection Limit" +msgstr "Limite connessioni" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "Connessioni" + +msgid "Country" +msgstr "Nazione" + +msgid "Country Code" +msgstr "Codice Nazione" + +msgid "Cover the following interface" +msgstr "Coprire la seguente interfaccia" + +msgid "Cover the following interfaces" +msgstr "Coprire le seguenti interfacce" + +msgid "Create / Assign firewall-zone" +msgstr "Crea / Assegna zona firewall" + +msgid "Create Interface" +msgstr "Crea Interfaccia" + +msgid "Create a bridge over multiple interfaces" +msgstr "Crea un ponte tra interfaccie multiple" + +msgid "Critical" +msgstr "Critico" + +msgid "Cron Log Level" +msgstr "Livello di log del Cron" + +msgid "Custom Interface" +msgstr "Interfaccia personalizzata" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"Personalizza la configurazione dei LED del sistema se possibile." + +msgid "DHCP Leases" +msgstr "Contratta DHCP" + +msgid "DHCP Server" +msgstr "Server DHCP" + +msgid "DHCP and DNS" +msgstr "DHCP e DNS" + +msgid "DHCP client" +msgstr "Client DHCP" + +msgid "DHCP-Options" +msgstr "Opzioni DHCP" + +msgid "DHCPv6 Leases" +msgstr "Locazioni DHCPv6" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "Inoltri DNS" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "DUID" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "Debug" + +msgid "Default %d" +msgstr "Predefinito %d" + +msgid "Default gateway" +msgstr "Gateway predefinito" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "Stato Predefinito" + +msgid "Define a name for this network." +msgstr "Definisci un nome per questa rete." + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"Definisci opzioni DHCP aggiuntive, per esempio " +"\"6,192.168.2.1,192.168.2.2\" fornisce differenti server DNS ai " +"client." + +msgid "Delete" +msgstr "Elimina" + +msgid "Delete this network" +msgstr "Rimuovi questa rete" + +msgid "Description" +msgstr "Descrizione" + +msgid "Design" +msgstr "Disegno" + +msgid "Destination" +msgstr "Destinazione" + +msgid "Device" +msgstr "Dispositivo" + +msgid "Device Configuration" +msgstr "Configurazione del dispositivo" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "Diagnostica" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "Cartella" + +msgid "Disable" +msgstr "Disabilita" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +"Disabilita DHCP per questa interfaccia." + +msgid "Disable DNS setup" +msgstr "Disabilita il setup dei DNS" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "Disabilita Timer Beacon HW" + +msgid "Disabled" +msgstr "Disabilitato" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "Ignora risposte RFC1918 upstream" + +msgid "Displaying only packages containing" +msgstr "Visualizza solo i pacchetti contenenti" + +msgid "Distance Optimization" +msgstr "Ottimizzazione distanza" + +msgid "Distance to farthest network member in meters." +msgstr "Distanza del membro più lontano della rete in metri." + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "Diversità" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Dnsmasq è un server DHCP e inoltratore DNS " +"per firewall NAT" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "Non memorizzare le repliche negative, es. per domini non esistenti" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" +"Non inoltrare le richieste che non possono essere risolte dai name server " +"pubblici" + +msgid "Do not forward reverse lookups for local networks" +msgstr "Non proseguire con le ricerche inverse per le reti locali." + +msgid "Do not send probe responses" +msgstr "Disabilita Probe-Responses" + +msgid "Domain required" +msgstr "Dominio richiesto" + +msgid "Domain whitelist" +msgstr "Elenco Domini consentiti" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" +"Non inoltrare le richieste DNS " +"senza nome DNS" + +msgid "Download and install package" +msgstr "Scarica e installa pacchetto" + +msgid "Download backup" +msgstr "Download backup" + +msgid "Dropbear Instance" +msgstr "Instanza di Dropbear" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear offre accesso SSH e integra un " +"server SCP" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" +"DHCP dinamico" + +msgid "Dynamic tunnel" +msgstr "Dynamic tunnel" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" +"Fornisci dinamicamente gli indirizzi DHCP ai client. Se disabilitato, solo i " +"client con un indirizzo statico saranno serviti." + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "Metodo EAP" + +msgid "Edit" +msgstr "Modifica" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "Modifica questa interfaccia" + +msgid "Edit this network" +msgstr "Modifica questa rete" + +msgid "Emergency" +msgstr "Emergenza" + +msgid "Enable" +msgstr "Abilita" + +msgid "Enable STP" +msgstr "Abilita STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "Abilitazione aggiornamento endpoint dinamico HE.net" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "Attiva la negoziazione IPv6 sul collegamento PPP" + +msgid "Enable Jumbo Frame passthrough" +msgstr "Abilita Jumbo Frame passthrough" + +msgid "Enable NTP client" +msgstr "Attiva il client NTP" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "Abilita il server TFTP" + +msgid "Enable VLAN functionality" +msgstr "Abilita la funzionalità VLAN" + +msgid "Enable WPS pushbutton, requires WPA(2)-PSK" +msgstr "" + +msgid "Enable key reinstallation (KRACK) countermeasures" +msgstr "" + +msgid "Enable learning and aging" +msgstr "Attivare l'apprendimento e l'invecchiamento" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "Abilita questo mount" + +msgid "Enable this swap" +msgstr "Abilita questo swap" + +msgid "Enable/Disable" +msgstr "Abilita/Disabilita" + +msgid "Enabled" +msgstr "Abilitato" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "Abilita il protocollo di Spanning Tree su questo bridge" + +msgid "Encapsulation mode" +msgstr "Modalità di incapsulamento" + +msgid "Encryption" +msgstr "Crittografia" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "Cancellazione..." + +msgid "Error" +msgstr "Errore" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "Scheda di Rete" + +msgid "Ethernet Switch" +msgstr "Switch di Rete" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "Espandi gli hosts" + +msgid "Expires" +msgstr "Scadenze" + +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" +"Tempo di scadenza di indirizzi localizzati, il minimo è di 2 minuti ( " +"2m )." + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "Server Log di Sistema esterno" + +msgid "External system log server port" +msgstr "Porta Server Log di Sistema esterno" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "Frame veloci" + +msgid "File" +msgstr "File" + +msgid "Filename of the boot image advertised to clients" +msgstr "Nome del file dell'immagine di avvio annunciato ai clienti." + +msgid "Filesystem" +msgstr "Filesystem" + +msgid "Filter" +msgstr "Filtro" + +msgid "Filter private" +msgstr "Filtra privati" + +msgid "Filter useless" +msgstr "Filtra inutili" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "Trova e aggiungi una rete" + +msgid "Find package" +msgstr "Cerca pacchetto" + +msgid "Finish" +msgstr "Fine" + +msgid "Firewall" +msgstr "Firewall" + +msgid "Firewall Settings" +msgstr "Impostazioni Firewall" + +msgid "Firewall Status" +msgstr "Stato del Firewall" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "Versione del Firmware" + +msgid "Fixed source port for outbound DNS queries" +msgstr "Porta di origine fissa per le richieste DNS in uscita" + +msgid "Flash Firmware" +msgstr "Flash Firmware" + +msgid "Flash image..." +msgstr "Flash immagine..." + +msgid "Flash new firmware image" +msgstr "Flash immagine nuovo firmware" + +msgid "Flash operations" +msgstr "Operazioni Flash" + +msgid "Flashing..." +msgstr "Flashing..." + +msgid "Force" +msgstr "Forza" + +msgid "Force CCMP (AES)" +msgstr "Forza CCMP (AES)" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "Forza DHCP su questa rete, anche se un altro server viene rilevato." + +msgid "Force TKIP" +msgstr "Forza TKIP" + +msgid "Force TKIP and CCMP (AES)" +msgstr "Forza TKIP e CCMP (AES)" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "Inoltra il traffico DHCP" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "Inoltra il traffico broadcast" + +msgid "Forwarding mode" +msgstr "Modalità di Inoltro" + +msgid "Fragmentation Threshold" +msgstr "Soglia di frammentazione" + +msgid "Frame Bursting" +msgstr "Frame Bursting" + +msgid "Free" +msgstr "Disponibile" + +msgid "Free space" +msgstr "Spazio libero" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "GHz" + +msgid "GPRS only" +msgstr "Solo GPRS" + +msgid "Gateway" +msgstr "Gateway" + +msgid "Gateway ports" +msgstr "Porte Gateway" + +msgid "General Settings" +msgstr "Opzioni Generali" + +msgid "General Setup" +msgstr "Impostazioni Generali" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "Genera Archivio" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "Dispositivo Wireless 802.11%s Generico" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "" +"La conferma della password assegnata non ha prodotto risultati, la password " +"non è stata cambiata!" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "Opzioni rete globale" + +msgid "Go to password configuration..." +msgstr "Vai alla configurazione della password..." + +msgid "Go to relevant configuration page" +msgstr "Vai alla pagina di configurazione relativa" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "Password HE.net" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "Gestore" + +msgid "Hang Up" +msgstr "Hangup" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"Qui puoi configurare gli aspetti base del tuo dispositivo come l'" +"hostname o il fuso orario." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" +"Qui è possibile incollare le chiavi pubbliche SSH (uno per riga) per " +"l'autenticazione con chiave pubblica SSH." + +msgid "Hermes 802.11b Wireless Controller" +msgstr "Dispositivo Wireless Hermes 802.11b" + +msgid "Hide ESSID" +msgstr "Nascondi ESSID" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "Campi host" + +msgid "Host expiry timeout" +msgstr "Timeout scadenza Host" + +msgid "Host-IP or Network" +msgstr "" +"IP dell'host o rete" + +msgid "Hostname" +msgstr "Hostname" + +msgid "Hostname to send when requesting DHCP" +msgstr "Nome host da inviare al momento della richiesta DHCP" + +msgid "Hostnames" +msgstr "Hostname" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "Indirizzo IP" + +msgid "IPv4" +msgstr "IPv4" + +msgid "IPv4 Firewall" +msgstr "IPv4 Firewall" + +msgid "IPv4 WAN Status" +msgstr "Stato WAN IPv4" + +msgid "IPv4 address" +msgstr "Indirizzi IPv4" + +msgid "IPv4 and IPv6" +msgstr "IPv4 e IPv6" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "trasmissione IPv4" + +msgid "IPv4 gateway" +msgstr "Gateway IPv4" + +msgid "IPv4 netmask" +msgstr "Maschera rete IPv4" + +msgid "IPv4 only" +msgstr "Solo IPv4" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "Lunghezza prefisso IPv4" + +msgid "IPv4-Address" +msgstr "Indirizzo-IPv4" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "IPv6 Firewall" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "Stato WAN IPv6" + +msgid "IPv6 address" +msgstr "Indirizzi IPv6" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "Gateway IPv6" + +msgid "IPv6 only" +msgstr "Solo IPv6" + +msgid "IPv6 prefix" +msgstr "Prefisso IPv6" + +msgid "IPv6 prefix length" +msgstr "Lunghezza prefisso IPv6" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "Indirizzo-IPv6" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "IPv6-in-IPv4 (RFC4213)" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "IPv6-su-IPv4 (6rd)" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "IPv6-su-IPv4 (6to4)" + +msgid "Identity" +msgstr "Identità PEAP" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" +"Se specificato, montare il dispositivo dal suo UUID invece che dal nodo di " +"dispositivo fisso" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" +"Se specificato, montare il dispositivo dall'etichetta della partizione al " +"posto di un nodo di un dispositivo fisso" + +msgid "If unchecked, no default route is configured" +msgstr "Se deselezionata, alcun percorso predefinito è configurato" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "" +"Se deselezionata, gli indirizzi ai Server DNS annunciati saranno ignorati" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"Se la tua memoria è insufficiente i dati non usati possono venire " +"temporaneamente spostati in un'area di swap risultando in un più grande " +"quantitativo di RAM usabile. " +"Sappi che spostare dati in swap è un processo molto lento e che il " +"dispositivo di swap non può essere acceduto alle alte velocità della RAM." + +msgid "Ignore /etc/hosts" +msgstr "Ignora /etc/hosts" + +msgid "Ignore interface" +msgstr "Ignora interfaccia" + +msgid "Ignore resolve file" +msgstr "Ignora file resolv" + +msgid "Image" +msgstr "Immagine" + +msgid "In" +msgstr "In" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "Tempo di Inattività" + +msgid "Inbound:" +msgstr "In entrata:" + +msgid "Info" +msgstr "Informazioni" + +msgid "Initscript" +msgstr "Script di avvio" + +msgid "Initscripts" +msgstr "Scripts di avvio" + +msgid "Install" +msgstr "Installa" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "Installa il pacchetto %q" + +msgid "Install protocol extensions..." +msgstr "Installa le estensioni del protocollo..." + +msgid "Installed packages" +msgstr "Pacchetti installati" + +msgid "Interface" +msgstr "Interfaccia" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "Configurazione Interfaccia" + +msgid "Interface Overview" +msgstr "Riassunto Interfaccia" + +msgid "Interface is reconnecting..." +msgstr "L'interfaccia si sta ricollegando..." + +msgid "Interface is shutting down..." +msgstr "L'intefaccia si sta spegnendo..." + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "Interfaccia non presente o non ancora connessa." + +msgid "Interface reconnected" +msgstr "Interfaccia ricollegata." + +msgid "Interface shut down" +msgstr "Interfaccia spenta" + +msgid "Interfaces" +msgstr "Interfacce" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "Errore del Server Interno" + +msgid "Invalid" +msgstr "Valore immesso non valido" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "ID VLAN non valido! Solo gli ID compresi tra %d e %d sono consentiti." + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "ID VLAN non valido! Solo gli ID unici sono consentiti" + +msgid "Invalid username and/or password! Please try again." +msgstr "Username o password non validi! Per favore riprova." + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"Sembra tu stia provando a flashare un'immagine più grande delle dimensioni " +"della memoria flash, per favore controlla il file!" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "Richiesto JavaScript!" + +msgid "Join Network" +msgstr "Aggiungi Rete" + +msgid "Join Network: Wireless Scan" +msgstr "Aggiunta Rete: Rilevamento Wireless" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "Mantieni le Impostazioni" + +msgid "Kernel Log" +msgstr "Log del kernel" + +msgid "Kernel Version" +msgstr "Versione del kernel" + +msgid "Key" +msgstr "Chiave" + +msgid "Key #%d" +msgstr "Chiave #%d" + +msgid "Kill" +msgstr "Uccidi" + +msgid "L2TP" +msgstr "L2TP" + +msgid "L2TP Server" +msgstr "Server L2TP" + +msgid "LCP echo failure threshold" +msgstr "Fallimento soglia echo LCP" + +msgid "LCP echo interval" +msgstr "Intervallo echo LCP" + +msgid "LLC" +msgstr "LLC" + +msgid "Label" +msgstr "Etichetta" + +msgid "Language" +msgstr "Lingua" + +msgid "Language and Style" +msgstr "Lingua e Stile" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "Periodo di Validità del Lease" + +msgid "Leasefile" +msgstr "File di lease" + +msgid "Leasetime remaining" +msgstr "Tempo lease residuo" + +msgid "Leave empty to autodetect" +msgstr "Lasciare vuoto per l'autorilevamento" + +msgid "Leave empty to use the current WAN address" +msgstr "Lasciare vuoto per usare l'indirizzo WAN attuale" + +msgid "Legend:" +msgstr "Legenda:" + +msgid "Limit" +msgstr "Limite" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "Collegamento on" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" +"Elenco di Server DNSa cui " +"inoltrare le richieste in" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "Elenco di domini da consentire le risposte RFC1918 per" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "Elenco degli host che forniscono falsi risultati di dominio NX" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "Ascolta solo l'interfaccia data o, se non specificato, su tutte" + +msgid "Listening port for inbound DNS queries" +msgstr "Porta di ascolto per le richieste DNS in entrata" + +msgid "Load" +msgstr "Carico" + +msgid "Load Average" +msgstr "Carico Medio" + +msgid "Loading" +msgstr "Caricamento" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "Indirizzo IPv4 locale" + +msgid "Local IPv6 address" +msgstr "Indirizzo IPv6 locale" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "Avvio Locale" + +msgid "Local Time" +msgstr "Ora locale" + +msgid "Local domain" +msgstr "Dominio Locale" + +#, fuzzy +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" +"Specifiche dominio locale. I nomi di dominio corrispondenti a questi criteri " +"non sono mai inoltrate e risolti solo da DHCP o file hosts" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" +"Suffisso di dominio locale aggiunto ai nomi dei DHCP e voci del file hosts" + +msgid "Local server" +msgstr "Server Locale" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" +"Localizzare nome host a seconda della sottorete richiedente se sono " +"disponibili IP multipli" + +msgid "Localise queries" +msgstr "Localizza richieste" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "Livello di dettaglio registro" + +msgid "Log queries" +msgstr "Logga richieste" + +msgid "Logging" +msgstr "Logging" + +msgid "Login" +msgstr "Login" + +msgid "Logout" +msgstr "Slogga" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "" + +msgid "MAC-Address" +msgstr "" + +msgid "MAC-Address Filter" +msgstr "Filtro dei MAC-Address" + +msgid "MAC-Filter" +msgstr "Filtro MAC" + +msgid "MAC-List" +msgstr "Lista MAC" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "" + +msgid "MTU" +msgstr "MTU" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "Velocità massima" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "" + +msgid "Maximum hold time" +msgstr "Velocità massima" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "" + +msgid "Mbit/s" +msgstr "" + +msgid "Memory" +msgstr "Memoria" + +msgid "Memory usage (%)" +msgstr "Uso Memory (%)" + +msgid "Metric" +msgstr "Metrica" + +msgid "Minimum Rate" +msgstr "Velocità minima" + +msgid "Minimum hold time" +msgstr "Velocità minima" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "Modalità" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "Dispositivo modem" + +msgid "Modem init timeout" +msgstr "" + +msgid "Monitor" +msgstr "Monitor" + +msgid "Mount Entry" +msgstr "" + +msgid "Mount Point" +msgstr "Punto di mount" + +msgid "Mount Points" +msgstr "Punto di mount" + +msgid "Mount Points - Mount Entry" +msgstr "" + +msgid "Mount Points - Swap Entry" +msgstr "" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"I punti di mount definiscono in quale punto un dispositivo di memoria verrà " +"attaccato al tuo filesystem" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "Opzioni di mount" + +msgid "Mount point" +msgstr "Punto di mount" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "File system montati" + +msgid "Move down" +msgstr "" + +msgid "Move up" +msgstr "" + +msgid "Multicast Rate" +msgstr "Velocità multicast" + +msgid "Multicast address" +msgstr "" + +msgid "NAS ID" +msgstr "ID della NAS" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "Nome" + +msgid "Name of the new interface" +msgstr "Nome della nuova interfaccia" + +msgid "Name of the new network" +msgstr "Nome della nuova rete" + +msgid "Navigation" +msgstr "Navigazione" + +msgid "Netmask" +msgstr "Maschera di rete" + +msgid "Network" +msgstr "Rete" + +msgid "Network Utilities" +msgstr "Utilità di Rete" + +msgid "Network boot image" +msgstr "" + +msgid "Network without interfaces." +msgstr "Rete senza interfaccia" + +msgid "Next »" +msgstr "Prossimo »" + +msgid "No DHCP Server configured for this interface" +msgstr "" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "" + +msgid "No files found" +msgstr "Nessun file trovato" + +msgid "No information available" +msgstr "Nessuna informazione disponibile" + +msgid "No negative cache" +msgstr "" + +msgid "No network configured on this device" +msgstr "Nessuna rete è configurata su questo dispositivo" + +msgid "No network name specified" +msgstr "" + +msgid "No package lists available" +msgstr "" + +msgid "No password set!" +msgstr "" + +msgid "No rules in this chain" +msgstr "" + +msgid "No zone assigned" +msgstr "" + +msgid "Noise" +msgstr "Rumore" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "Nessuno" + +msgid "Normal" +msgstr "Normale" + +msgid "Not Found" +msgstr "" + +msgid "Not associated" +msgstr "Non associato" + +msgid "Not connected" +msgstr "" + +msgid "Note: Configuration files will be erased." +msgstr "" + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "Avviso" + +msgid "Nslookup" +msgstr "" + +msgid "OK" +msgstr "OK" + +msgid "OPKG-Configuration" +msgstr "Configurazione di OPKG" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"In questa pagina puoi configurare le interfacce di rete.Puoi unire più " +"interfacce spuntando la voce \"unisci interfacce\" e inserendo i nomi di più " +"interfacce di rete separate da spazi. Puoi anche usare la notazione VLAN INTERFACCIA.VLANNUM (e.s.: eth0.1)." + +msgid "On-State Delay" +msgstr "" + +msgid "One of hostname or mac address must be specified!" +msgstr "" + +msgid "One or more fields contain invalid values!" +msgstr "Uno o più campi contengono valori non validi!" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "Uno o più campi obbligatori sono vuoti!" + +msgid "Open list..." +msgstr "" + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "Opzione cambiata" + +msgid "Option removed" +msgstr "Opzione cancellata" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "Opzioni" + +msgid "Other:" +msgstr "Altro:" + +msgid "Out" +msgstr "" + +msgid "Outbound:" +msgstr "In uscita:" + +msgid "Outdoor Channels" +msgstr "" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "" + +msgid "Override MTU" +msgstr "Sovrascivi MTU" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" + +msgid "Override the table used for internal routes" +msgstr "" + +msgid "Overview" +msgstr "Riassunto" + +msgid "Owner" +msgstr "Proprietario" + +msgid "PAP/CHAP password" +msgstr "" + +msgid "PAP/CHAP username" +msgstr "" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "" + +msgid "PPPoA Encapsulation" +msgstr "Incapsulamento PPPoA" + +msgid "PPPoATM" +msgstr "" + +msgid "PPPoE" +msgstr "" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "E' richiesto il pacchetto libiwinfo!" + +msgid "Package lists are older than 24 hours" +msgstr "" + +msgid "Package name" +msgstr "Nome pacchetto" + +msgid "Packets" +msgstr "Pacchetti" + +msgid "Part of zone %q" +msgstr "" + +msgid "Password" +msgstr "Password" + +msgid "Password authentication" +msgstr "Password di authenticazione" + +msgid "Password of Private Key" +msgstr "Password della chiave privata" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "Password cambiata con successo!" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "Percorso al certificato CA" + +msgid "Path to Client-Certificate" +msgstr "" + +msgid "Path to Private Key" +msgstr "Percorso alla chiave privata" + +msgid "Path to executable which handles the button event" +msgstr "" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "Picco:" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "Esegui un riavvio" + +msgid "Perform reset" +msgstr "" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "" + +msgid "Physical Settings" +msgstr "" + +msgid "Ping" +msgstr "" + +msgid "Pkts." +msgstr "" + +msgid "Please enter your username and password." +msgstr "Per favore inserisci il tuo username e la password." + +msgid "Policy" +msgstr "" + +msgid "Port" +msgstr "Porta" + +msgid "Port status:" +msgstr "" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "Impedisci la comunicazione fra Client" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "Continuare" + +msgid "Processes" +msgstr "Processi" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "Prot." + +msgid "Protocol" +msgstr "Protocollo" + +msgid "Protocol family" +msgstr "" + +msgid "Protocol of the new interface" +msgstr "" + +msgid "Protocol support is not installed" +msgstr "" + +msgid "Provide NTP server" +msgstr "" + +msgid "Provide new network" +msgstr "" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "Pseudo Ad-Hoc (ahdemo)" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "Soglia RTS/CTS" + +msgid "RX" +msgstr "" + +msgid "RX Rate" +msgstr "" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "" + +msgid "Radius-Accounting-Port" +msgstr "" + +msgid "Radius-Accounting-Secret" +msgstr "" + +msgid "Radius-Accounting-Server" +msgstr "" + +msgid "Radius-Authentication-Port" +msgstr "" + +msgid "Radius-Authentication-Secret" +msgstr "" + +msgid "Radius-Authentication-Server" +msgstr "" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"Leggi /etc/ethers per configurare il server DHCP" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" + +msgid "Really reset all changes?" +msgstr "" + +#, fuzzy +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" +"Vuoi davvero spegnere questa interfaccia \"%s\" ?\\nPotresti perdere " +"l'accesso a questo router se stai usando questa interfaccia." + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" + +msgid "Really switch protocol?" +msgstr "" + +msgid "Realtime Connections" +msgstr "Connessioni in tempo reale" + +msgid "Realtime Graphs" +msgstr "" + +msgid "Realtime Load" +msgstr "Carico in tempo reale" + +msgid "Realtime Traffic" +msgstr "Traffico in tempo reale" + +msgid "Realtime Wireless" +msgstr "" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "" + +msgid "Reboot" +msgstr "Riavvia" + +msgid "Rebooting..." +msgstr "" + +msgid "Reboots the operating system of your device" +msgstr "Riavvia il sistema operativo del tuo dispositivo" + +msgid "Receive" +msgstr "Ricezione" + +msgid "Receiver Antenna" +msgstr "Antenna ricevente" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "Ricollega questa interfaccia" + +msgid "Reconnecting interface" +msgstr "Sto ricollegando l'interfaccia" + +msgid "References" +msgstr "" + +msgid "Regulatory Domain" +msgstr "" + +msgid "Relay" +msgstr "" + +msgid "Relay Bridge" +msgstr "" + +msgid "Relay between networks" +msgstr "" + +msgid "Relay bridge" +msgstr "" + +msgid "Remote IPv4 address" +msgstr "" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "Rimuovi" + +msgid "Repeat scan" +msgstr "" + +msgid "Replace entry" +msgstr "Sostituisci campo" + +msgid "Replace wireless configuration" +msgstr "" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "Reset" + +msgid "Reset Counters" +msgstr "Azzera Contatori" + +msgid "Reset to defaults" +msgstr "" + +msgid "Resolv and Hosts Files" +msgstr "" + +msgid "Resolve file" +msgstr "File Resolve" + +msgid "Restart" +msgstr "Riavvia" + +msgid "Restart Firewall" +msgstr "Riavvia Firewall" + +msgid "Restore backup" +msgstr "Ripristina backup" + +msgid "Reveal/hide password" +msgstr "" + +msgid "Revert" +msgstr "Ripristina" + +msgid "Root" +msgstr "" + +msgid "Root directory for files served via TFTP" +msgstr "" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "" + +msgid "Routes" +msgstr "Route" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"Le route specificano attraverso quale interfaccia e gateway un certo host o " +"rete può essere raggiunto." + +msgid "Run a filesystem check before mounting the device" +msgstr "" + +msgid "Run filesystem check" +msgstr "" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "" + +msgid "SSID" +msgstr "" + +msgid "Save" +msgstr "Salva" + +msgid "Save & Apply" +msgstr "Salva & applica" + +msgid "Save & Apply" +msgstr "" + +msgid "Scan" +msgstr "Scan" + +msgid "Scheduled Tasks" +msgstr "Operazioni programmate" + +msgid "Section added" +msgstr "" + +msgid "Section removed" +msgstr "" + +msgid "See \"mount\" manpage for details" +msgstr "" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" + +msgid "Separate Clients" +msgstr "Isola utenti" + +msgid "Separate WDS" +msgstr "WDS separati" + +msgid "Server Settings" +msgstr "" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "" + +msgid "Service Type" +msgstr "" + +msgid "Services" +msgstr "Servizi" + +msgid "Set up Time Synchronization" +msgstr "" + +msgid "Setup DHCP Server" +msgstr "" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "" + +msgid "Shutdown this interface" +msgstr "" + +msgid "Shutdown this network" +msgstr "" + +msgid "Signal" +msgstr "Segnale" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "" + +msgid "Size" +msgstr "Dimensione" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "Salta" + +msgid "Skip to content" +msgstr "Salta a contenuto" + +msgid "Skip to navigation" +msgstr "Salta a navigazione" + +msgid "Slot time" +msgstr "Slot time" + +msgid "Software" +msgstr "Software" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "Alcuni campi non sono validi, non è possibile salvare i valori!" + +msgid "Sorry, the object you requested was not found." +msgstr "Siamo spiacenti, l'oggetto che hai richiesto non è stato trovato." + +msgid "Sorry, the server encountered an unexpected error." +msgstr "Spiacente, il server ha rilevato un errore imprevisto." + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" +"Spiacenti, non è presente alcun supporto sysupgrade, una nuova immagine " +"firmware deve essere memorizzata (Flash) manualmente. Si prega di fare " +"riferimento al wiki per le istruzioni di installazione di dispositivi " +"specifici." + +msgid "Sort" +msgstr "Elenca" + +msgid "Source" +msgstr "Origine" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "Specifica lo stato del pulsante da gestire" + +msgid "Specifies the directory the device is attached to" +msgstr "Specifica la cartella a cui è collegato il dispositivo in" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "Specifica la porta di ascolto di questa istanza Dropbear" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" +"Consente di specificare la quantità massima di richieste ARP fallite finché " +"gli host si presume siano morti." + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" +"Specifica la quantità massima di secondi dopo di che si presume che gli host " +"siano morti." + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "Specificare la chiave di cifratura qui." + +msgid "Start" +msgstr "Inizio" + +msgid "Start priority" +msgstr "Priorità di avvio" + +msgid "Startup" +msgstr "Avvio" + +msgid "Static IPv4 Routes" +msgstr "Instradamento statico IPv4" + +msgid "Static IPv6 Routes" +msgstr "Instradamento statico IPv6" + +msgid "Static Leases" +msgstr "Leases statici" + +msgid "Static Routes" +msgstr "Instradamenti Statici" + +msgid "Static WDS" +msgstr "WDS statico" + +msgid "Static address" +msgstr "Indirizzo Statico" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" +"Leasing 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 con lease corrispondente " +"servito vengono serviti." + +msgid "Status" +msgstr "Stato" + +msgid "Stop" +msgstr "Ferma" + +msgid "Strict order" +msgstr "Ordine severo" + +msgid "Submit" +msgstr "Invia" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "Scambia ingresso" + +msgid "Switch" +msgstr "Switch" + +msgid "Switch %q" +msgstr "Switch %q" + +msgid "Switch %q (%s)" +msgstr "Switch %q (%s)" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "Cambia protocollo" + +msgid "Sync with browser" +msgstr "Sincronizza con il browser" + +msgid "Synchronizing..." +msgstr "Sincronizzazione..." + +msgid "System" +msgstr "Sistema" + +msgid "System Log" +msgstr "Log di sistema" + +msgid "System Properties" +msgstr "Proprietà di Sistema" + +msgid "System log buffer size" +msgstr "Dimensione Buffer Log di Sistema" + +msgid "TCP:" +msgstr "TCP:" + +msgid "TFTP Settings" +msgstr "Impostazioni TFTP" + +msgid "TFTP server root" +msgstr "Server TFTP principale" + +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "Velocità di TX" + +msgid "Table" +msgstr "Tabella" + +msgid "Target" +msgstr "Destinazione" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "Termina" + +#, fuzzy +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" +"La sezione Configurazione del Dispositivo illustra le impostazioni " +"fisiche del hardware radio come canale, la potenza di trasmissione o la " +"selezione dell'antenna che viene condiviso tra tutte le reti wireless " +"definite (se l'hardware radio è multi-SSID compatibilie). Per le " +"impostazioni di rete come la crittografia o la modalità di funzionamento " +"sono raggruppati nella configurazione dell'interfaccia." + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" +"Il pacchetto libiwinfo-lua non è installato. È necessario " +"installare questo componente per il lavoro di configurazione wireless!" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" +"Il prefisso IPv6 assegnati dal provider, si conclude di solito con ::" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" +"Il file del dispositivo di memoria o della partizione (e.s. /dev/sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"Il filesystem usato per formattare la memoria (e." +"s. ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" + +msgid "The following changes have been committed" +msgstr "" + +msgid "The following changes have been reverted" +msgstr "Le seguenti modifiche sono state annullate" + +msgid "The following rules are currently active on this system." +msgstr "Le seguenti regole sono al momento attive su questo sistema." + +msgid "The given network name is not unique" +msgstr "" + +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" + +msgid "The length of the IPv6 prefix in bits" +msgstr "" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" + +msgid "The selected protocol needs a device assigned" +msgstr "" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" + +#, fuzzy +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes until you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." + +msgid "There are no active leases." +msgstr "" + +msgid "There are no pending changes to apply!" +msgstr "" + +msgid "There are no pending changes to revert!" +msgstr "" + +msgid "There are no pending changes!" +msgstr "" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" + +msgid "This IPv4 address of the relay" +msgstr "" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" +"Questo è l'unico server DHCP nella tua rete locale" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "" +"Questa è la crontab del sistema nella quale possono essere definiti le " +"operazioni da programmare." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" +"Questa lista da un riassunto dei processi correntemente attivi e del loro " +"stato." + +msgid "This page allows the configuration of custom button actions" +msgstr "" + +msgid "This page gives an overview over currently active network connections." +msgstr "Questa pagina ti da una riassunto delle connessioni al momento attive." + +msgid "This section contains no values yet" +msgstr "Questa sezione non contiene ancora valori" + +msgid "Time Synchronization" +msgstr "" + +msgid "Time Synchronization is not configured yet." +msgstr "" + +msgid "Timezone" +msgstr "Fuso orario" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "Totale" + +msgid "Traceroute" +msgstr "" + +msgid "Traffic" +msgstr "Traffico" + +msgid "Transfer" +msgstr "" + +msgid "Transmission Rate" +msgstr "Velocità di transmissione" + +msgid "Transmit" +msgstr "Trasmissione" + +msgid "Transmit Power" +msgstr "Potenza di trasmissione" + +msgid "Transmitter Antenna" +msgstr "Antenna trasmettente" + +msgid "Trigger" +msgstr "" + +msgid "Trigger Mode" +msgstr "" + +msgid "Tunnel ID" +msgstr "" + +msgid "Tunnel Interface" +msgstr "" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "Modalità turbo" + +msgid "Tx-Power" +msgstr "" + +msgid "Type" +msgstr "Tipo" + +msgid "UDP:" +msgstr "" + +msgid "UMTS only" +msgstr "" + +msgid "UMTS/GPRS/EV-DO" +msgstr "" + +msgid "USB Device" +msgstr "" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "" + +msgid "Unable to dispatch" +msgstr "" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "" + +msgid "Unknown Error, password not changed!" +msgstr "" + +msgid "Unmanaged" +msgstr "" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "Modifiche non salvate" + +msgid "Unsupported protocol type." +msgstr "" + +msgid "Update lists" +msgstr "" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" +"Carica un'immagine sysupgrade compatibile quì per sostituire il firmware in " +"esecuzione. Attivare la spunta \"Mantieni Impostazioni\" per mantenere la " +"configurazione corrente (richiede un immagine del firmware compatibile)." + +msgid "Upload archive..." +msgstr "Carica archivio..." + +msgid "Uploaded File" +msgstr "Invia file" + +msgid "Uptime" +msgstr "Tempo di attività" + +msgid "Use /etc/ethers" +msgstr "Usa /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "Usa il DHCP del gateway" + +msgid "Use DNS servers advertised by peer" +msgstr "Usa i server DNS annunciati dal peer" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "Usa i codici delle nazioni ISO/IEC 3166 alpha2." + +msgid "Use MTU on tunnel interface" +msgstr "Usa MTU nel tunnel dell'interfaccia" + +msgid "Use TTL on tunnel interface" +msgstr "Usa TTL nel tunnel dell'interfaccia" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "Usa flag broadcast" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "Usa server DNS personalizzati" + +msgid "Use default gateway" +msgstr "Usa il gateway predefinito" + +msgid "Use gateway metric" +msgstr "Usa la metrica del gateway" + +msgid "Use routing table" +msgstr "Utilizzare tabella di instradamento" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" +"Utilizzare il pulsante Aggiungi per aggiungere una nuova voce di " +"locazione. L'Indirizzo-MAC identifica l'host, l'Indirizzo-IPv4 specifica l'indirizzo fisso da utilizzare e il Nome Host è " +"assegnato come nome simbolico alla richiesta dell'host." + +msgid "Used" +msgstr "Usato" + +msgid "Used Key Slot" +msgstr "Slot Chiave Usata" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "Nome Utente" + +msgid "VC-Mux" +msgstr "VC-Mux" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "VLANs su %q" + +msgid "VLANs on %q (%s)" +msgstr "VLANs su %q (%s)" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "Server VPN" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "Classe del Produttore da 'inviare al momento della richiesta DHCP" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "Verifica" + +msgid "Version" +msgstr "Versione" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "Sistema Aperto WEP" + +msgid "WEP Shared Key" +msgstr "Chiave Condivisa WEP" + +msgid "WEP passphrase" +msgstr "frase di accesso WEP" + +msgid "WMM Mode" +msgstr "Modalità WMM" + +msgid "WPA passphrase" +msgstr "frase di accesso WPA" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"La crittografia WPA richiede wpa_supplicant (per la modalità client) o " +"hostapd (per AP e modalità ad hoc) per essere installato." + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "In attesa delle modifiche da applicare ..." + +msgid "Waiting for command to complete..." +msgstr "In attesa del comando da completare..." + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "Avviso" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "Wireless" + +msgid "Wireless Adapter" +msgstr "Dispositivo Wireless" + +msgid "Wireless Network" +msgstr "Rete Wireless" + +msgid "Wireless Overview" +msgstr "Panoramica Wireless" + +msgid "Wireless Security" +msgstr "Sicurezza Wireless" + +msgid "Wireless is disabled or not associated" +msgstr "La rete Wireless è disattivata o non associata" + +msgid "Wireless is restarting..." +msgstr "Riavvio della Wireless..." + +msgid "Wireless network is disabled" +msgstr "La rete Wireless è disattivata" + +msgid "Wireless network is enabled" +msgstr "La rete wireless è attivata" + +msgid "Wireless restarted" +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" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "Supporto XR" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"È possibile abilitare o disabilitare gli script di inizializzazione " +"installati qui. Le modifiche saranno applicate dopo il riavvio del " +"dispositivo
Attenzione: Se si disattiva gli script di " +"inizializzazione essenziali come ad esempio la \"rete\", il dispositivo " +"potrebbe diventare inaccessibile!" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" +"È necessario attivare JavaScript nel tuo browser o LuCI non funzionerà " +"correttamente." + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "qualsiasi" + +msgid "auto" +msgstr "auto" + +msgid "baseT" +msgstr "baseT" + +msgid "bridged" +msgstr "ponte" + +msgid "create:" +msgstr "crea:" + +msgid "creates a bridge over specified interface(s)" +msgstr "Crea un ponte sulle interfacce selezionate" + +msgid "dB" +msgstr "dB" + +msgid "dBm" +msgstr "dBm" + +msgid "disable" +msgstr "disabilita" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "scaduto" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" +"file dove vengono salvati le richieste DHCP assegnate" + +msgid "forward" +msgstr "inoltro" + +msgid "full-duplex" +msgstr "full-duplex" + +msgid "half-duplex" +msgstr "half-duplex" + +msgid "help" +msgstr "aiuto" + +msgid "hidden" +msgstr "nascosto" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "se la destinazione è una rete" + +msgid "input" +msgstr "ingresso" + +msgid "kB" +msgstr "kB" + +msgid "kB/s" +msgstr "kB/s" + +msgid "kbit/s" +msgstr "kbit/s" + +msgid "local DNS file" +msgstr "File DNS locale" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "no" + +msgid "no link" +msgstr "Nessun collegamento" + +msgid "none" +msgstr "nessuna" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "spento" + +msgid "on" +msgstr "acceso" + +msgid "open" +msgstr "apri" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "instradato" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "etichettato" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "sconosciuto" + +msgid "unlimited" +msgstr "illimitato" + +msgid "unspecified" +msgstr "non specificato" + +msgid "unspecified -or- create:" +msgstr "non specificato - o - creato:" + +msgid "untagged" +msgstr "non etichettato" + +msgid "yes" +msgstr "Sì" + +msgid "« Back" +msgstr "« Indietro" + +#~ msgid "Leasetime" +#~ msgstr "Tempo di lease" + +#, fuzzy +#~ msgid "automatic" +#~ msgstr "statico" + +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "Sarà creata una rete aggiuntiva se lasci questo senza spunta." + +#~ msgid "Join Network: Settings" +#~ msgstr "Aggiunta Rete: Impostazioni" + +#~ msgid "CPU" +#~ msgstr "CPU" + +#~ msgid "Port %d" +#~ msgstr "Porta %d" + +#~ msgid "VLAN Interface" +#~ msgstr "Interfaccia VLAN" diff --git a/luci-base/po/ja/base.po b/luci-base/po/ja/base.po new file mode 100644 index 000000000..af813e8f8 --- /dev/null +++ b/luci-base/po/ja/base.po @@ -0,0 +1,3970 @@ +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-06-10 03:40+0200\n" +"PO-Revision-Date: 2017-04-03 02:32+0900\n" +"Last-Translator: INAGAKI Hiroshi \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\n" +"Language-Team: \n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "%s は複数のVLANにUntaggedしています!" + +msgid "(%d minute window, %d second interval)" +msgstr "(%d 分幅, %d 秒間隔)" + +msgid "(%s available)" +msgstr "(%s 使用可能)" + +msgid "(empty)" +msgstr "(空)" + +msgid "(no interfaces attached)" +msgstr "(インターフェースが接続されていません)" + +msgid "-- Additional Field --" +msgstr "-- 追加項目 --" + +msgid "-- Please choose --" +msgstr "-- 選択してください --" + +msgid "-- custom --" +msgstr "-- 手動設定 --" + +msgid "-- match by device --" +msgstr "-- デバイスを指定 --" + +msgid "-- match by label --" +msgstr "-- ラベルを指定 --" + +msgid "-- match by uuid --" +msgstr "-- UUIDを指定 --" + +msgid "1 Minute Load:" +msgstr "過去1分の負荷:" + +msgid "15 Minute Load:" +msgstr "過去15分の負荷:" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "464XLAT (CLAT)" + +msgid "5 Minute Load:" +msgstr "過去5分の負荷:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "802.11r 高速ローミング" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "802.11w アソシエーションSAクエリの最大タイムアウト時間です。" + +msgid "802.11w Association SA Query retry timeout" +msgstr "802.11w アソシエーションSAクエリの再試行タイムアウト時間です。" + +msgid "802.11w Management Frame Protection" +msgstr "802.11w 管理フレーム保護" + +msgid "802.11w maximum timeout" +msgstr "802.11w 最大タイムアウト" + +msgid "802.11w retry timeout" +msgstr "802.11w 再試行タイムアウト" + +msgid "BSSID" +msgstr "BSSID" + +msgid "DNS query port" +msgstr "DNS クエリポート" + +msgid "DNS server port" +msgstr "DNS サーバーポート" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" +"リゾルバファイルの順番に、DNSサー" +"バーに問い合わせを行います" + +msgid "ESSID" +msgstr "ESSID" + +msgid "IPv4-Address" +msgstr "IPv4-アドレス" + +msgid "IPv4-Gateway" +msgstr "IPv4-ゲートウェイ" + +msgid "IPv4-Netmask" +msgstr "IPv4-ネットマスク" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"IPv6-アドレス又はネット" +"ワーク (CIDR)" + +msgid "IPv6-Gateway" +msgstr "IPv6-ゲートウェイ" + +msgid "IPv6-Suffix (hex)" +msgstr "" +"IPv6-サフィックス (16進数)" + +msgid "LED Configuration" +msgstr "LED 設定" + +msgid "LED Name" +msgstr "LED 名" + +msgid "MAC-Address" +msgstr "MAC-アドレス" + +msgid "" +"Max. DHCP leases" +msgstr "" +"最大 DHCP リース" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"最大 EDNS0 パケットサイズ" + +msgid "Max. concurrent queries" +msgstr "最大 並列処理クエリ" + +msgid "%s - %s" +msgstr "" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "ADSL" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "ARサポート" + +msgid "ARP retry threshold" +msgstr "ARP再試行しきい値" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "ATMブリッジ" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "ATM仮想チャネル識別子 (VCI)" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "ATM仮想パス識別子 (VPI)" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" + +msgid "ATM device number" +msgstr "ATMデバイス番号" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "Access Concentrator" + +msgid "Access Point" +msgstr "アクセスポイント" + +msgid "Action" +msgstr "動作" + +msgid "Actions" +msgstr "動作" + +msgid "Activate this network" +msgstr "このネットワークを有効にする" + +msgid "Active IPv4-Routes" +msgstr "" +"稼働中の IPv4-経路情報" + +msgid "Active IPv6-Routes" +msgstr "" +"稼働中の IPv6-経路情報" + +msgid "Active Connections" +msgstr "アクティブ コネクション" + +msgid "Active DHCP Leases" +msgstr "アクティブなDHCPリース" + +msgid "Active DHCPv6 Leases" +msgstr "アクティブなDHCPv6リース" + +msgid "Ad-Hoc" +msgstr "アドホック" + +msgid "Add" +msgstr "追加" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "" + +msgid "Add new interface..." +msgstr "インターフェースの新規作成..." + +msgid "Additional Hosts files" +msgstr "追加のホストファイル" + +msgid "Additional servers file" +msgstr "追加のサーバー ファイル" + +msgid "Address" +msgstr "アドレス" + +msgid "Address to access local relay bridge" +msgstr "ローカル リレーブリッジにアクセスするためのIPアドレス" + +msgid "Administration" +msgstr "管理画面" + +msgid "Advanced Settings" +msgstr "詳細設定" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "警告" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "SSH パスワード認証を許可します" + +msgid "Allow all except listed" +msgstr "リスト内の端末からのアクセスを禁止" + +msgid "Allow listed only" +msgstr "リスト内の端末からのアクセスを許可" + +msgid "Allow localhost" +msgstr "ローカルホストを許可する" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" +"リモートホストがSSH転送されたローカルのポートに接続することを許可します" + +msgid "Allow root logins with password" +msgstr "パスワードを使用したroot権限でのログインを許可する" + +msgid "Allow the root user to login with password" +msgstr "パスワードを使用したroot権限でのログインを許可する" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" + +msgid "Allowed IPs" +msgstr "許可されるIP" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "常にデフォルト ルーターとして通知する" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" +"利用可能なパブリック プレフィクスが無くても、デフォルトのルーターとして通知し" +"ます。" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "アノニマス マウント" + +msgid "Anonymous Swap" +msgstr "アノニマス スワップ" + +msgid "Antenna 1" +msgstr "アンテナ 1" + +msgid "Antenna 2" +msgstr "アンテナ 2" + +msgid "Antenna Configuration" +msgstr "アンテナ設定" + +msgid "Any zone" +msgstr "全てのゾーン" + +msgid "Apply" +msgstr "適用" + +msgid "Applying changes" +msgstr "変更を適用" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "" + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "認証済み端末" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Atheros 802.11%s 無線LANコントローラ" + +msgid "Auth Group" +msgstr "認証グループ" + +msgid "Authentication" +msgstr "認証" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "Authoritative" + +msgid "Authorization Required" +msgstr "ログイン認証" + +msgid "Auto Refresh" +msgstr "自動更新" + +msgid "Automatic" +msgstr "自動" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "マウント実行前にファイルシステムのエラーを自動的にチェックします。" + +msgid "Automatically mount filesystems on hotplug" +msgstr "ホットプラグによってファイルシステムを自動的にマウントします。" + +msgid "Automatically mount swap on hotplug" +msgstr "ホットプラグによってスワップ パーティションを自動的にマウントします。" + +msgid "Automount Filesystem" +msgstr "ファイルシステム 自動マウント" + +msgid "Automount Swap" +msgstr "スワップ 自動マウント" + +msgid "Available" +msgstr "使用可" + +msgid "Available packages" +msgstr "インストール可能なパッケージ" + +msgid "Average:" +msgstr "平均値:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "戻る" + +msgid "Back to Overview" +msgstr "概要へ戻る" + +msgid "Back to configuration" +msgstr "設定へ戻る" + +msgid "Back to overview" +msgstr "概要へ戻る" + +msgid "Back to scan results" +msgstr "スキャン結果へ戻る" + +msgid "Background Scan" +msgstr "バックグラウンドスキャン" + +msgid "Backup / Flash Firmware" +msgstr "バックアップ / ファームウェア更新" + +msgid "Backup / Restore" +msgstr "バックアップ / 復元" + +msgid "Backup file list" +msgstr "バックアップファイル リスト" + +msgid "Bad address specified!" +msgstr "無効なアドレスです!" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"以下は、バックアップの際に含まれるファイルのリストです。このリストは、opkgに" +"よって認識されている設定ファイル、重要なベースファイル、ユーザーが設定した正" +"規表現に一致したファイルの一覧です。" + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" +"ワイルドカード アドレスではなく、特定のインターフェースのみにバインドします。" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "ビットレート" + +msgid "Bogus NX Domain Override" +msgstr "" + +msgid "Bridge" +msgstr "ブリッジ" + +msgid "Bridge interfaces" +msgstr "ブリッジ インターフェース" + +msgid "Bridge unit number" +msgstr "ブリッジ ユニット番号" + +msgid "Bring up on boot" +msgstr "デフォルトで起動する" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "Broadcom 802.11%s 無線LANコントローラ" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "Broadcom BCM%04x 802.11 無線LANコントローラ" + +msgid "Buffered" +msgstr "バッファ" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" +"ビルド/ディストリビューション固有のフィード定義です。このファイルはsysupgrade" +"の際に引き継がれません。" + +msgid "Buttons" +msgstr "ボタン" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "CA証明書(空白の場合、初回の接続後に保存されます。)" + +msgid "CPU usage (%)" +msgstr "CPU使用率 (%)" + +msgid "Cancel" +msgstr "キャンセル" + +msgid "Category" +msgstr "カテゴリー" + +msgid "Chain" +msgstr "チェイン" + +msgid "Changes" +msgstr "変更" + +msgid "Changes applied." +msgstr "変更が適用されました。" + +msgid "Changes the administrator password for accessing the device" +msgstr "デバイスの管理者パスワードを変更します" + +msgid "Channel" +msgstr "チャネル" + +msgid "Check" +msgstr "チェック" + +msgid "Check fileystems before mount" +msgstr "マウント前にファイルシステムをチェックする" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" +"この無線から既存のネットワークを削除する場合、このオプションを有効にします。" + +msgid "Checksum" +msgstr "チェックサム" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"このインターフェースに設定するファイウォール ゾーンを選択してください。設" +"定しないを選択すると、設定済みのゾーンを削除します。また、作成" +"フィールドにゾーン名を入力すると、新しくゾーンを作成し、このインターフェース" +"に設定します。" + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" +"無線インターフェースをアタッチするネットワークを選択してください。または、" +"作成欄を選択すると新しいネットワークを作成します。" + +msgid "Cipher" +msgstr "暗号化方式" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"\"バックアップ アーカイブの作成\"をクリックすると、現在の設定ファイルをtar形" +"式のアーカイブファイルとしてダウンロードします。設定のリセットを行う場" +"合、\"設定リセット\"をクリックしてください。(ただし、squashfsをお使いの場合の" +"み使用可能です)" + +msgid "Client" +msgstr "クライアント" + +msgid "Client ID to send when requesting DHCP" +msgstr "DHCPリクエスト時に送信するクライアントID" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" +"設定した秒数後に、使用していない接続を閉じます。0を設定した場合、接続を維持し" +"ます" + +msgid "Close list..." +msgstr "リストを閉じる" + +msgid "Collecting data..." +msgstr "データ収集中です..." + +msgid "Command" +msgstr "コマンド" + +msgid "Common Configuration" +msgstr "一般設定" + +msgid "Compression" +msgstr "圧縮" + +msgid "Configuration" +msgstr "設定" + +msgid "Configuration applied." +msgstr "設定を適用しました。" + +msgid "Configuration files will be kept." +msgstr "設定ファイルは保持されます。" + +msgid "Confirmation" +msgstr "確認" + +msgid "Connect" +msgstr "接続" + +msgid "Connected" +msgstr "接続中" + +msgid "Connection Limit" +msgstr "接続制限" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "TLSが使用できないとき、サーバーへの接続は失敗します。" + +msgid "Connections" +msgstr "ネットワーク接続" + +msgid "Country" +msgstr "国" + +msgid "Country Code" +msgstr "国コード" + +msgid "Cover the following interface" +msgstr "インターフェースの指定" + +msgid "Cover the following interfaces" +msgstr "インターフェースの指定" + +msgid "Create / Assign firewall-zone" +msgstr "ファイアウォール ゾーンの作成 / 割り当て" + +msgid "Create Interface" +msgstr "インターフェースの作成" + +msgid "Create a bridge over multiple interfaces" +msgstr "複数のインタフェースを指定してブリッジを作成します" + +msgid "Critical" +msgstr "重大" + +msgid "Cron Log Level" +msgstr "Cronのログ出力レベル" + +msgid "Custom Interface" +msgstr "新しいインターフェース" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" +"プライベート フィードなどのカスタム フィード定義です。このファイルは" +"sysupgrade時に引き継ぐことができます。" + +msgid "Custom feeds" +msgstr "カスタム フィード" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"LED デバイスの挙動をカスタマイズ" +"します。" + +msgid "DHCP Leases" +msgstr "DHCPリース" + +msgid "DHCP Server" +msgstr "DHCPサーバー" + +msgid "DHCP and DNS" +msgstr "DHCP 及び DNS" + +msgid "DHCP client" +msgstr "DHCP クライアント" + +msgid "DHCP-Options" +msgstr "DHCPオプション" + +msgid "DHCPv6 Leases" +msgstr "DHCPv6 リース" + +msgid "DHCPv6 client" +msgstr "DHCPv6 クライアント" + +msgid "DHCPv6-Mode" +msgstr "DHCPv6-モード" + +msgid "DHCPv6-Service" +msgstr "DHCPv6-サービス" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "DNSフォワーディング" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "DNSSEC" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "DS-Lite AFTR アドレス" + +msgid "DSL" +msgstr "DSL" + +msgid "DSL Status" +msgstr "DSL ステータス" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "DUID" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "デバッグ" + +msgid "Default %d" +msgstr "標準設定 %d" + +msgid "Default gateway" +msgstr "デフォルト ゲートウェイ" + +msgid "Default is stateless + stateful" +msgstr "デフォルトは ステートレス + ステートフル です。" + +msgid "Default route" +msgstr "デフォルト ルート" + +msgid "Default state" +msgstr "標準状態" + +msgid "Define a name for this network." +msgstr "ネットワーク名を設定してください。" + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"追加のDHCPオプションを設定します。(例:\"6,192.168.2.1,192.168.2.2\" と設定することで、クライアントに指定のDNSサーバーを通知します。)" + +msgid "Delete" +msgstr "削除" + +msgid "Delete this network" +msgstr "ネットワークを削除します" + +msgid "Description" +msgstr "詳細" + +msgid "Design" +msgstr "デザイン" + +msgid "Destination" +msgstr "宛先" + +msgid "Device" +msgstr "デバイス" + +msgid "Device Configuration" +msgstr "デバイス設定" + +msgid "Device is rebooting..." +msgstr "デバイスを再起動中です..." + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "診断機能" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "ディレクトリ" + +msgid "Disable" +msgstr "無効" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +"このインターフェースではDHCP機能を使用しません。" + +msgid "Disable DNS setup" +msgstr "DNSセットアップを無効にする" + +msgid "Disable Encryption" +msgstr "暗号化を無効にする" + +msgid "Disable HW-Beacon timer" +msgstr "HWビーコンタイマーを無効にする" + +msgid "Disabled" +msgstr "無効" + +msgid "Disabled (default)" +msgstr "無効(デフォルト)" + +msgid "Discard upstream RFC1918 responses" +msgstr "RFC1918の応答を破棄します" + +msgid "Displaying only packages containing" +msgstr "右記の文字列を含んだパッケージのみを表示中" + +msgid "Distance Optimization" +msgstr "距離の最適化" + +msgid "Distance to farthest network member in meters." +msgstr "最も遠い端末との距離(メートル)を設定してください。" + +msgid "Distribution feeds" +msgstr "ディストリビューション フィード" + +msgid "Diversity" +msgstr "ダイバシティ" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Dnsmasq は DHCP" +"サーバーと NATファイア" +"ウォールの為の DNSフォワーダーを複" +"合したサービスです。" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" +"無効なリプライをキャッシュしません (例:存在しないドメインからの返答など)" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "パブリック DNSサーバーが返答できなかったリクエストを転送しません" + +msgid "Do not forward reverse lookups for local networks" +msgstr "ローカル ネットワークへの逆引きを転送しません" + +msgid "Do not send probe responses" +msgstr "プローブレスポンスを送信しない" + +msgid "Domain required" +msgstr "ドメイン必須" + +msgid "Domain whitelist" +msgstr "ドメイン ホワイトリスト" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" +"DNS名の無い DNSリクエストを転送しません" + +msgid "Download and install package" +msgstr "パッケージのダウンロードとインストール" + +msgid "Download backup" +msgstr "バックアップ アーカイブのダウンロード" + +msgid "Dropbear Instance" +msgstr "Dropbear設定" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear は SSH ネットワークへのシェルア" +"クセスと統合された SCP サーバーを提供しま" +"す。" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "Dual-Stack Lite (RFC6333)" + +msgid "Dynamic DHCP" +msgstr "動的 DHCP" + +msgid "Dynamic tunnel" +msgstr "動的トンネル機能" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" +"クライアントに対して動的にDHCPアドレスを割り振ります。無効に設定した場合、静" +"的リースのみを行います。" + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "EAPメソッド" + +msgid "Edit" +msgstr "編集" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "インターフェースを編集" + +msgid "Edit this network" +msgstr "ネットワークを編集" + +msgid "Emergency" +msgstr "緊急" + +msgid "Enable" +msgstr "有効" + +msgid "Enable STP" +msgstr "STPを有効にする" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "HE.netの動的endpoint更新を有効にします" + +msgid "Enable IPv6 negotiation" +msgstr "IPv6 ネゴシエーションの有効化" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "PPPリンクのIPv6 ネゴシエーションを有効にする" + +msgid "Enable Jumbo Frame passthrough" +msgstr "ジャンボフレーム パススルーを有効にする" + +msgid "Enable NTP client" +msgstr "NTPクライアント機能を有効にする" + +msgid "Enable Single DES" +msgstr "シングルDESの有効化" + +msgid "Enable TFTP server" +msgstr "TFTPサーバーを有効にする" + +msgid "Enable VLAN functionality" +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 "ラーニング エイジング機能を有効にする" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "マウント設定を有効にする" + +msgid "Enable this swap" +msgstr "スワップ設定を有効にする" + +msgid "Enable/Disable" +msgstr "有効/無効" + +msgid "Enabled" +msgstr "有効" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "スパニングツリー プロトコルを有効にする" + +msgid "Encapsulation mode" +msgstr "カプセル化モード" + +msgid "Encryption" +msgstr "暗号化モード" + +msgid "Endpoint Host" +msgstr "エンドポイント ホスト" + +msgid "Endpoint Port" +msgstr "エンドポイント ポート" + +msgid "Erasing..." +msgstr "消去中..." + +msgid "Error" +msgstr "エラー" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "イーサネットアダプタ" + +msgid "Ethernet Switch" +msgstr "イーサネットスイッチ" + +msgid "Exclude interfaces" +msgstr "除外インターフェース" + +msgid "Expand hosts" +msgstr "拡張ホスト設定" + +msgid "Expires" +msgstr "期限切れ" + +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" +"リースアドレスの有効時間を入力します。最小設定値は2分です。 (2m)." + +msgid "External" +msgstr "外部" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "外部システムログ サーバー" + +msgid "External system log server port" +msgstr "外部システムログ・サーバー ポート" + +msgid "External system log server protocol" +msgstr "外部システムログ・サーバー プロトコル" + +msgid "Extra SSH command options" +msgstr "拡張 SSHコマンドオプション" + +msgid "Fast Frames" +msgstr "ファスト・フレーム" + +msgid "File" +msgstr "ファイル" + +msgid "Filename of the boot image advertised to clients" +msgstr "クライアントに通知するブートイメージのファイル名" + +msgid "Filesystem" +msgstr "ファイルシステム" + +msgid "Filter" +msgstr "フィルタ" + +msgid "Filter private" +msgstr "プライベートフィルター" + +msgid "Filter useless" +msgstr "" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" +"現在アタッチされている全てのファイルシステムとスワップを検索し、検出結果に基" +"づいてデフォルト設定を置き換えます。" + +msgid "Find and join network" +msgstr "ネットワークの検索と参加" + +msgid "Find package" +msgstr "パッケージを検索" + +msgid "Finish" +msgstr "終了" + +msgid "Firewall" +msgstr "ファイアウォール" + +msgid "Firewall Settings" +msgstr "ファイアウォール設定" + +msgid "Firewall Status" +msgstr "ファイアウォール ステータス" + +msgid "Firmware File" +msgstr "ファームウェア ファイル" + +msgid "Firmware Version" +msgstr "ファームウェア バージョン" + +msgid "Fixed source port for outbound DNS queries" +msgstr "DNSクエリを送信する送信元ポートを固定します" + +msgid "Flash Firmware" +msgstr "ファームウェアの更新" + +msgid "Flash image..." +msgstr "更新" + +msgid "Flash new firmware image" +msgstr "ファームウェアの更新" + +msgid "Flash operations" +msgstr "更新機能" + +msgid "Flashing..." +msgstr "更新中..." + +msgid "Force" +msgstr "強制" + +msgid "Force CCMP (AES)" +msgstr "CCMP (AES) を使用" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "" +"別のDHCPサーバーが検出された場合でも、DHCPサーバー機能を強制的に起動します。" + +msgid "Force TKIP" +msgstr "TKIP を使用" + +msgid "Force TKIP and CCMP (AES)" +msgstr "TKIP 及びCCMP (AES) を使用" + +msgid "Force use of NAT-T" +msgstr "NAT-Tの強制使用" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "DHCPトラフィックを転送する" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "ブロードキャスト トラフィックを転送する" + +msgid "Forwarding mode" +msgstr "転送モード" + +msgid "Fragmentation Threshold" +msgstr "フラグメンテーションしきい値" + +msgid "Frame Bursting" +msgstr "フレームバースト" + +msgid "Free" +msgstr "空き" + +msgid "Free space" +msgstr "ディスクの空き容量" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" +"WireGuard インターフェースとピアについての詳細情報: wireguard.io" + +msgid "GHz" +msgstr "GHz" + +msgid "GPRS only" +msgstr "GPRSのみ" + +msgid "Gateway" +msgstr "ゲートウェイ" + +msgid "Gateway ports" +msgstr "ゲートウェイ ポート" + +msgid "General Settings" +msgstr "一般設定" + +msgid "General Setup" +msgstr "一般設定" + +msgid "General options for opkg" +msgstr "opkgの一般設定" + +msgid "Generate Config" +msgstr "コンフィグ生成" + +msgid "Generate archive" +msgstr "バックアップ アーカイブの作成" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "802.11%s 無線LANコントローラ" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "入力されたパスワードが一致しません。パスワードは変更されませんでした!" + +msgid "Global Settings" +msgstr "全体設定" + +msgid "Global network options" +msgstr "グローバル ネットワークオプション" + +msgid "Go to password configuration..." +msgstr "パスワード設定へ移動..." + +msgid "Go to relevant configuration page" +msgstr "関連する設定ページへ移動" + +msgid "Group Password" +msgstr "グループ パスワード" + +msgid "Guest" +msgstr "ゲスト" + +msgid "HE.net password" +msgstr "HE.net パスワード" + +msgid "HE.net username" +msgstr "HE.net ユーザー名" + +msgid "HT mode (802.11n)" +msgstr "HT モード (802.11n)" + +msgid "Handler" +msgstr "ハンドラ" + +msgid "Hang Up" +msgstr "再起動" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "ハートビート" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"このページではホスト名やタイムゾーンなどの基本的な設定を行うことが出来ます。" + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "SSH公開鍵認証で使用するSSH公開鍵を1行づつペーストしてください。" + +msgid "Hermes 802.11b Wireless Controller" +msgstr "Hermes 802.11b 無線LANコントローラ" + +msgid "Hide ESSID" +msgstr "ESSIDの隠匿" + +msgid "Host" +msgstr "ホスト" + +msgid "Host entries" +msgstr "ホスト エントリー" + +msgid "Host expiry timeout" +msgstr "" + +msgid "Host-IP or Network" +msgstr "" +"ホストIP または ネットワーク" + +msgid "Hostname" +msgstr "ホスト名" + +msgid "Hostname to send when requesting DHCP" +msgstr "DHCPリクエスト時に送信するホスト名" + +msgid "Hostnames" +msgstr "ホスト名" + +msgid "Hybrid" +msgstr "ハイブリッド" + +msgid "IKE DH Group" +msgstr "IKE DHグループ" + +msgid "IP Addresses" +msgstr "IPアドレス" + +msgid "IP address" +msgstr "IPアドレス" + +msgid "IPv4" +msgstr "IPv4" + +msgid "IPv4 Firewall" +msgstr "IPv4 ファイアウォール" + +msgid "IPv4 WAN Status" +msgstr "IPv4 WAN ステータス" + +msgid "IPv4 address" +msgstr "IPv4 アドレス" + +msgid "IPv4 and IPv6" +msgstr "IPv4及びIPv6" + +msgid "IPv4 assignment length" +msgstr "IPv4 割り当て長" + +msgid "IPv4 broadcast" +msgstr "IPv4 ブロードキャスト" + +msgid "IPv4 gateway" +msgstr "IPv4 ゲートウェイ" + +msgid "IPv4 netmask" +msgstr "IPv4 ネットマスク" + +msgid "IPv4 only" +msgstr "IPv4のみ" + +msgid "IPv4 prefix" +msgstr "IPv4 プレフィクス" + +msgid "IPv4 prefix length" +msgstr "IPv4 プレフィクス長" + +msgid "IPv4-Address" +msgstr "IPv4-アドレス" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "IPv4-in-IPv4 (RFC2003)" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "IPv6 ファイアウォール" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "IPv6 設定" + +msgid "IPv6 ULA-Prefix" +msgstr "IPv6 ULA-プレフィクス" + +msgid "IPv6 WAN Status" +msgstr "IPv6 WAN ステータス" + +msgid "IPv6 address" +msgstr "IPv6 アドレス" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "IPv6 割り当て長" + +msgid "IPv6 gateway" +msgstr "IPv6 ゲートウェイ" + +msgid "IPv6 only" +msgstr "IPv6のみ" + +msgid "IPv6 prefix" +msgstr "IPv6 プレフィクス" + +msgid "IPv6 prefix length" +msgstr "IPv6 プレフィクス長" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "IPv6-アドレス" + +msgid "IPv6-PD" +msgstr "IPv6-PD" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "IPv6-in-IPv4 (RFC4213)" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "IPv6-over-IPv4 (6rd)" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "IPv6-over-IPv4 (6to4)" + +msgid "Identity" +msgstr "識別子" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "チェックした場合、暗号化は無効になります。" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" +"固定のデバイス ノード名のかわりに、設定されたUUIDを使用してマウントします" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" +"固定のデバイス ノード名のかわりに、設定されたパーティション ラベルを使用して" +"マウントします。" + +msgid "If unchecked, no default route is configured" +msgstr "チェックされていない場合、デフォルト ルートを設定しません" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "チェックされていない場合、通知されたDNSサーバー アドレスを無視します" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"物理メモリが不足する場合、使用されていないデータを一時的にスワップ デバイスに" +"スワップし、RAMの使用可能領域を増" +"やすことができます。ただし、スワップ デバイスはRAMから高速にアクセスすることができないため、データのスワップ" +"は非常に遅い処理であることに注意します。" + +msgid "Ignore /etc/hosts" +msgstr "/etc/hostsを無視" + +msgid "Ignore interface" +msgstr "インターフェースを無視する" + +msgid "Ignore resolve file" +msgstr "リゾルバ ファイルを無視する" + +msgid "Image" +msgstr "イメージ" + +msgid "In" +msgstr "イン" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "未使用時タイムアウト" + +msgid "Inbound:" +msgstr "受信:" + +msgid "Info" +msgstr "情報" + +msgid "Initscript" +msgstr "起動スクリプト" + +msgid "Initscripts" +msgstr "起動スクリプト" + +msgid "Install" +msgstr "インストール" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "%q パッケージをインストールします" + +msgid "Install protocol extensions..." +msgstr "プロトコル拡張機能をインストールします..." + +msgid "Installed packages" +msgstr "インストール済みパッケージ" + +msgid "Interface" +msgstr "インターフェース" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "インターフェース設定" + +msgid "Interface Overview" +msgstr "インターフェース一覧" + +msgid "Interface is reconnecting..." +msgstr "インターフェース再接続中..." + +msgid "Interface is shutting down..." +msgstr "インターフェース終了中..." + +msgid "Interface name" +msgstr "インターフェース名" + +msgid "Interface not present or not connected yet." +msgstr "インターフェースが存在しないか、接続していません" + +msgid "Interface reconnected" +msgstr "インターフェースの再接続" + +msgid "Interface shut down" +msgstr "インターフェースの終了" + +msgid "Interfaces" +msgstr "インターフェース" + +msgid "Internal" +msgstr "内部" + +msgid "Internal Server Error" +msgstr "内部サーバー エラー" + +msgid "Invalid" +msgstr "入力値が不正です" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "無効なVLAN IDです! IDは%dから%dまでの値のみ入力可能です。" + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "無効なVLAN IDです! ユニークなIDを入力してください。" + +msgid "Invalid username and/or password! Please try again." +msgstr "" +"ユーザー名かパスワード、もしくは両方が不正です!もう一度入力してください。" + +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"更新しようとしたイメージファイルはこのフラッシュメモリに適合しません。イメー" +"ジファイルを確認してください!" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "JavaScriptを有効にしてください!" + +msgid "Join Network" +msgstr "ネットワークに接続する" + +msgid "Join Network: Wireless Scan" +msgstr "ネットワークに接続する: 無線LANスキャン" + +msgid "Joining Network: %q" +msgstr "ネットワークに接続: %q" + +msgid "Keep settings" +msgstr "設定を保持する" + +msgid "Kernel Log" +msgstr "カーネル ログ" + +msgid "Kernel Version" +msgstr "カーネル バージョン" + +msgid "Key" +msgstr "暗号キー" + +msgid "Key #%d" +msgstr "キー #%d" + +msgid "Kill" +msgstr "強制終了" + +msgid "L2TP" +msgstr "L2TP" + +msgid "L2TP Server" +msgstr "L2TP サーバー" + +msgid "LCP echo failure threshold" +msgstr "LCP echo 失敗数しきい値" + +msgid "LCP echo interval" +msgstr "LCP echo 送信間隔" + +msgid "LLC" +msgstr "LLC" + +msgid "Label" +msgstr "ラベル" + +msgid "Language" +msgstr "言語" + +msgid "Language and Style" +msgstr "言語とスタイル" + +msgid "Latency" +msgstr "レイテンシー" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "リース時間" + +msgid "Lease validity time" +msgstr "リース有効時間" + +msgid "Leasefile" +msgstr "リースファイル" + +msgid "Leasetime remaining" +msgstr "残りリース時間" + +msgid "Leave empty to autodetect" +msgstr "空欄の場合、自動検知を行います" + +msgid "Leave empty to use the current WAN address" +msgstr "空欄の場合、現在のWANアドレスを使用します" + +msgid "Legend:" +msgstr "凡例:" + +msgid "Limit" +msgstr "割り当て数" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "待ち受けをこれらのインターフェースとループバックに制限します。" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "リンクオン" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" +"問い合わせを転送するDNS サーバーの" +"リストを設定します" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "認証用 SSH暗号キー ファイルのリスト" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "RFC1918の応答を許可するリスト" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "" + +msgid "Listen Interfaces" +msgstr "待ち受けインターフェース" + +msgid "Listen Port" +msgstr "待ち受けポート" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" +"指定したインターフェースでのみアクセスを有効にします。設定しない場合はすべて" +"のインタフェースが対象です" + +msgid "Listening port for inbound DNS queries" +msgstr "DNSクエリを受信するポート" + +msgid "Load" +msgstr "負荷" + +msgid "Load Average" +msgstr "システム平均負荷" + +msgid "Loading" +msgstr "ロード中" + +msgid "Local IP address to assign" +msgstr "割り当てるローカル IPアドレス" + +msgid "Local IPv4 address" +msgstr "ローカル IPv4 アドレス" + +msgid "Local IPv6 address" +msgstr "ローカル IPv6 アドレス" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "ローカル スタートアップ" + +msgid "Local Time" +msgstr "時刻" + +msgid "Local domain" +msgstr "ローカル ドメイン" + +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" +"DHCP名とhostsファイルのエントリーに付される、ローカルドメイン サフィックスで" +"す。" + +msgid "Local server" +msgstr "ローカル サーバー" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" + +msgid "Localise queries" +msgstr "ローカライズクエリ" + +msgid "Locked to channel %s used by: %s" +msgstr "チャネル %s にロックされています。次で使用されています: %s" + +msgid "Log output level" +msgstr "ログ出力レベル" + +msgid "Log queries" +msgstr "ログ クエリ" + +msgid "Logging" +msgstr "ログ" + +msgid "Login" +msgstr "ログイン" + +msgid "Logout" +msgstr "ログアウト" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "" +"ネットワークアドレスをオフセットとして、最小のアドレスを設定してください" + +msgid "MAC-Address" +msgstr "MAC-アドレス" + +msgid "MAC-Address Filter" +msgstr "MAC-アドレス フィルタ" + +msgid "MAC-Filter" +msgstr "MAC-フィルタ" + +msgid "MAC-List" +msgstr "MAC-リスト" + +msgid "MAP / LW4over6" +msgstr "MAP / LW4over6" + +msgid "MB/s" +msgstr "MB/s" + +msgid "MD5" +msgstr "MD5" + +msgid "MHz" +msgstr "MHz" + +msgid "MTU" +msgstr "MTU" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" +"以下のようなコマンドを使用して、ルート ファイルシステムを複製してください:" + +msgid "Manual" +msgstr "手動" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "最大レート" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "DHCPリースの許可される最大数" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "並列DNSクエリの許可される最大数" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "EDNS.0 UDP パケットサイズの許可される最大数" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "モデムが準備完了状態になるまでの最大待ち時間" + +msgid "Maximum hold time" +msgstr "最大保持時間" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" +"名前の長さは、自動的に含まれるプロトコル/ブリッジ プレフィックス (br-, " +"6in4-, pppoe- など)と合わせて最大15文字です。" + +msgid "Maximum number of leased addresses." +msgstr "リースするアドレスの最大数です" + +msgid "Mbit/s" +msgstr "Mbit/s" + +msgid "Memory" +msgstr "メモリー" + +msgid "Memory usage (%)" +msgstr "メモリ使用率 (%)" + +msgid "Metric" +msgstr "メトリック" + +msgid "Minimum Rate" +msgstr "最小レート" + +msgid "Minimum hold time" +msgstr "最短保持時間" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "プロトコル %qのプロトコル拡張が見つかりません" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "モード" + +msgid "Model" +msgstr "モデル" + +msgid "Modem device" +msgstr "モデム デバイス" + +msgid "Modem init timeout" +msgstr "モデム初期化タイムアウト" + +msgid "Monitor" +msgstr "モニター" + +msgid "Mount Entry" +msgstr "マウント機能" + +msgid "Mount Point" +msgstr "マウントポイント" + +msgid "Mount Points" +msgstr "マウントポイント" + +msgid "Mount Points - Mount Entry" +msgstr "マウントポイント - マウント" + +msgid "Mount Points - Swap Entry" +msgstr "マウントポイント - スワップ" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"マウントポイントは、記憶デバイスがファイルシステムのどこに接続されているかを" +"表示しています。" + +msgid "Mount filesystems not specifically configured" +msgstr "明確に設定されていないファイルシステムをマウントします。" + +msgid "Mount options" +msgstr "マウントオプション" + +msgid "Mount point" +msgstr "マウントポイント" + +msgid "Mount swap not specifically configured" +msgstr "明確に設定されていないスワップ パーティションをマウントします。" + +msgid "Mounted file systems" +msgstr "マウント中のファイルシステム" + +msgid "Move down" +msgstr "下へ" + +msgid "Move up" +msgstr "上へ" + +msgid "Multicast Rate" +msgstr "マルチキャストレート" + +msgid "Multicast address" +msgstr "マルチキャスト アドレス" + +msgid "NAS ID" +msgstr "NAS ID" + +msgid "NAT-T Mode" +msgstr "NAT-T モード" + +msgid "NAT64 Prefix" +msgstr "NAT64 プレフィクス" + +msgid "NDP-Proxy" +msgstr "NDP-プロキシ" + +msgid "NT Domain" +msgstr "NT ドメイン" + +msgid "NTP server candidates" +msgstr "NTPサーバー候補" + +msgid "NTP sync time-out" +msgstr "NTP 同期タイムアウト" + +msgid "Name" +msgstr "名前" + +msgid "Name of the new interface" +msgstr "新しいインターフェースの名前" + +msgid "Name of the new network" +msgstr "新しいネットワークの名前" + +msgid "Navigation" +msgstr "ナビゲーション" + +msgid "Netmask" +msgstr "ネットマスク" + +msgid "Network" +msgstr "ネットワーク" + +msgid "Network Utilities" +msgstr "ネットワーク ユーティリティ" + +msgid "Network boot image" +msgstr "ネットワークブート用イメージ" + +msgid "Network without interfaces." +msgstr "" + +msgid "Next »" +msgstr "次 »" + +msgid "No DHCP Server configured for this interface" +msgstr "このインターフェースにはDHCPサーバーが設定されていません" + +msgid "No NAT-T" +msgstr "NAT-Tを使用しない" + +msgid "No chains in this table" +msgstr "チェイン内にルールがありません" + +msgid "No files found" +msgstr "ファイルが見つかりませんでした" + +msgid "No information available" +msgstr "情報がありません" + +msgid "No negative cache" +msgstr "ネガティブキャッシュを行なわない" + +msgid "No network configured on this device" +msgstr "このデバイスに設定されているネットワークがありません" + +msgid "No network name specified" +msgstr "ネットワーク名が設定されていません" + +msgid "No package lists available" +msgstr "パッケージ リストがありません" + +msgid "No password set!" +msgstr "パスワードが設定されていません!" + +msgid "No rules in this chain" +msgstr "チェイン内にルールがありません" + +msgid "No zone assigned" +msgstr "ゾーンが設定されていません" + +msgid "Noise" +msgstr "ノイズ" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "ノイズ:" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "非ワイルドカード" + +msgid "None" +msgstr "なし" + +msgid "Normal" +msgstr "標準" + +msgid "Not Found" +msgstr "" + +msgid "Not associated" +msgstr "アソシエーションされていません" + +msgid "Not connected" +msgstr "未接続" + +msgid "Note: Configuration files will be erased." +msgstr "注意: 設定ファイルは消去されます。" + +msgid "Note: interface name length" +msgstr "注意: インターフェース名の長さ" + +msgid "Notice" +msgstr "注意" + +msgid "Nslookup" +msgstr "Nslookup" + +msgid "OK" +msgstr "OK" + +msgid "OPKG-Configuration" +msgstr "OPKG-設定" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "消灯時間" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"このページではネットワーク インターフェースの設定を行うことが出来ます。\"ブ" +"リッジインターフェース\"フィールドにチェックを付け、複数のネットワーク イン" +"ターフェースをリストから選択することで複数のインターフェースをブリッジするこ" +"とが出来ます。また、INTERFACE.VLANNRという表記によりVLANも使用することが出来ます。(: eth0.1)" + +msgid "On-State Delay" +msgstr "点灯時間" + +msgid "One of hostname or mac address must be specified!" +msgstr "1つ以上のホスト名またはMACアドレスを設定してください!" + +msgid "One or more fields contain invalid values!" +msgstr "1つ以上のフィールドに無効な値が設定されています!" + +msgid "One or more invalid/required values on tab" +msgstr "タブに1つ以上の 無効/必須 の値があります。" + +msgid "One or more required fields have no value!" +msgstr "1つ以上のフィールドに値が設定されていません!" + +msgid "Open list..." +msgstr "リストを開く" + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "OpenConnect (CISCO AnyConnect)" + +msgid "Operating frequency" +msgstr "動作周波数" + +msgid "Option changed" +msgstr "変更されるオプション" + +msgid "Option removed" +msgstr "削除されるオプション" + +msgid "Optional" +msgstr "オプション" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" +"ピアのホストです。名前はインターフェースの起動前に解決されます。(オプショ" +"ン)" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "トンネル インターフェースのMaximum Transmission Unit(オプション)" + +msgid "Optional. Port of peer." +msgstr "ピアのポート(オプション)" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" +"キープアライブ メッセージの送信間隔(秒)です。既定値: 0。このデバイスがNAT" +"以下に存在する場合の推奨値は25です。(オプション)" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "発信パケットと受信パケットに使用されるUDPポート(オプション)" + +msgid "Options" +msgstr "オプション" + +msgid "Other:" +msgstr "その他:" + +msgid "Out" +msgstr "アウト" + +msgid "Outbound:" +msgstr "送信:" + +msgid "Outdoor Channels" +msgstr "屋外用周波数" + +msgid "Output Interface" +msgstr "出力インターフェース" + +msgid "Override MAC address" +msgstr "MACアドレスを上書きする" + +msgid "Override MTU" +msgstr "MTUを上書きする" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "デフォルトのインターフェース名を上書きします。" + +msgid "Override the gateway in DHCP responses" +msgstr "DHCPレスポンス内のゲートウェイアドレスを上書きする" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" +"クライアントへ通知するネットマスクを上書きします。通常は、設定されているサブ" +"ネットから計算されます。" + +msgid "Override the table used for internal routes" +msgstr "" + +msgid "Overview" +msgstr "概要" + +msgid "Owner" +msgstr "所有者" + +msgid "PAP/CHAP password" +msgstr "PAP/CHAP パスワード" + +msgid "PAP/CHAP username" +msgstr "PAP/CHAP ユーザー名" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "PIN" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "PPP" + +msgid "PPPoA Encapsulation" +msgstr "PPPoAカプセル化" + +msgid "PPPoATM" +msgstr "PPPoATM" + +msgid "PPPoE" +msgstr "PPPoE" + +msgid "PPPoSSH" +msgstr "PPPoSSH" + +msgid "PPtP" +msgstr "PPtP" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "libiwinfo パッケージをインストールしてください!" + +msgid "Package lists are older than 24 hours" +msgstr "パッケージ リストは24時間以上前のものです" + +msgid "Package name" +msgstr "パッケージ名" + +msgid "Packets" +msgstr "パケット" + +msgid "Part of zone %q" +msgstr "ゾーン %qの一部" + +msgid "Password" +msgstr "パスワード" + +msgid "Password authentication" +msgstr "パスワード認証" + +msgid "Password of Private Key" +msgstr "秘密鍵のパスワード" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "パスワードを変更しました" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "CA証明書のパス" + +msgid "Path to Client-Certificate" +msgstr "クライアント証明書のパス" + +msgid "Path to Private Key" +msgstr "秘密鍵のパス" + +msgid "Path to executable which handles the button event" +msgstr "ボタンイベントをハンドルする実行ファイルのパス" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "ピーク:" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "ピア" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "再起動を実行" + +msgid "Perform reset" +msgstr "設定リセットを実行" + +msgid "Persistent Keep Alive" +msgstr "永続的なキープアライブ" + +msgid "Phy Rate:" +msgstr "物理レート:" + +msgid "Physical Settings" +msgstr "デバイス設定" + +msgid "Ping" +msgstr "Ping" + +msgid "Pkts." +msgstr "パケット" + +msgid "Please enter your username and password." +msgstr "ユーザー名とパスワードを入力してください。" + +msgid "Policy" +msgstr "ポリシー" + +msgid "Port" +msgstr "ポート" + +msgid "Port status:" +msgstr "ポート ステータス:" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "委任されたプレフィクス (PD)" + +msgid "Preshared Key" +msgstr "事前共有鍵" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" +"設定回数のLCP echo 確認失敗後、ピアノードがダウンしているものと見なします。0" +"を設定した場合、失敗しても無視します" + +msgid "Prevent listening on these interfaces." +msgstr "これらのインターフェースでの待ち受けを停止します。" + +msgid "Prevents client-to-client communication" +msgstr "クライアント同士の通信を制限します" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "Prism2/2.5/3 802.11b 無線LANコントローラ" + +msgid "Private Key" +msgstr "秘密鍵" + +msgid "Proceed" +msgstr "続行" + +msgid "Processes" +msgstr "プロセス" + +msgid "Profile" +msgstr "プロファイル" + +msgid "Prot." +msgstr "プロトコル" + +msgid "Protocol" +msgstr "プロトコル" + +msgid "Protocol family" +msgstr "プロトコルファミリ" + +msgid "Protocol of the new interface" +msgstr "新しいインターフェースのプロトコル" + +msgid "Protocol support is not installed" +msgstr "プロトコル サポートがインストールされていません" + +msgid "Provide NTP server" +msgstr "NTPサーバー機能を有効にする" + +msgid "Provide new network" +msgstr "新しいネットワークを設定する" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "擬似アドホック (ahdemo)" + +msgid "Public Key" +msgstr "公開鍵" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "クオリティ" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "RFC3947 NAT-Tモード" + +msgid "RTS/CTS Threshold" +msgstr "RTS/CTSしきい値" + +msgid "RX" +msgstr "RX" + +msgid "RX Rate" +msgstr "受信レート" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "RaLink 802.11%s 無線LANコントローラ" + +msgid "Radius-Accounting-Port" +msgstr "Radiusアカウントサーバー ポート番号" + +msgid "Radius-Accounting-Secret" +msgstr "Radiusアカウント秘密鍵" + +msgid "Radius-Accounting-Server" +msgstr "Radiusアカウントサーバー" + +msgid "Radius-Authentication-Port" +msgstr "Radius認証サーバー ポート番号" + +msgid "Radius-Authentication-Secret" +msgstr "Radius認証秘密鍵" + +msgid "Radius-Authentication-Server" +msgstr "Radius認証サーバー" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"DHCPサーバーの設定" +"として/etc/ethers をロードします" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" +"本当にこのインターフェースを削除しますか?一度削除すると、元に戻すことはできま" +"せん!\n" +"このインターフェースを経由して接続している場合、デバイスにアクセスできなくな" +"る場合があります。" + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" +"本当にこの無線ネットワークを削除しますか?一度削除すると、元に戻すことはできま" +"せん!\n" +"このネットワークを経由して接続している場合、デバイスにアクセスできなくなる場" +"合があります。" + +msgid "Really reset all changes?" +msgstr "本当に全ての変更をリセットしますか?" + +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" +"本当にネットワークを停止しますか?\n" +"このネットワークを経由して接続している場合、デバイスにアクセスできなくなる場" +"合があります。" + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" +"本当にインターフェース \"%s\" を停止しますか?\n" +"このインターフェースを経由して接続している場合、デバイスにアクセスできなくな" +"る場合があります。" + +msgid "Really switch protocol?" +msgstr "本当にプロトコルを切り替えますか?" + +msgid "Realtime Connections" +msgstr "リアルタイム・コネクション" + +msgid "Realtime Graphs" +msgstr "リアルタイム グラフ" + +msgid "Realtime Load" +msgstr "リアルタイム・ロード" + +msgid "Realtime Traffic" +msgstr "リアルタイム・トラフィック" + +msgid "Realtime Wireless" +msgstr "リアルタイム・無線LAN" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "DNSリバインディング・プロテクション" + +msgid "Reboot" +msgstr "再起動" + +msgid "Rebooting..." +msgstr "再起動中..." + +msgid "Reboots the operating system of your device" +msgstr "デバイスのオペレーティングシステムを再起動します。" + +msgid "Receive" +msgstr "受信" + +msgid "Receiver Antenna" +msgstr "受信アンテナ" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "WireGuard インターフェースのIPアドレスです。(推奨)" + +msgid "Reconnect this interface" +msgstr "インターフェースの再接続" + +msgid "Reconnecting interface" +msgstr "インターフェース再接続中" + +msgid "References" +msgstr "参照カウンタ" + +msgid "Regulatory Domain" +msgstr "規制ドメイン" + +msgid "Relay" +msgstr "リレー" + +msgid "Relay Bridge" +msgstr "リレーブリッジ" + +msgid "Relay between networks" +msgstr "ネットワーク間のリレー設定" + +msgid "Relay bridge" +msgstr "リレーブリッジ" + +msgid "Remote IPv4 address" +msgstr "リモート IPv4アドレス" + +msgid "Remote IPv4 address or FQDN" +msgstr "リモート IPv4アドレス または FQDN" + +msgid "Remove" +msgstr "削除" + +msgid "Repeat scan" +msgstr "再スキャン" + +msgid "Replace entry" +msgstr "エントリーの置換" + +msgid "Replace wireless configuration" +msgstr "無線設定を置換する" + +msgid "Request IPv6-address" +msgstr "IPv6-アドレスのリクエスト" + +msgid "Request IPv6-prefix of length" +msgstr "リクエストするIPv6-プレフィクス長" + +msgid "Require TLS" +msgstr "TLSが必要" + +msgid "Required" +msgstr "必須" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "DOCSIS 3.0を使用するいくつかのISPでは必要になります" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "このインターフェースに使用するBase64-エンコード 秘密鍵(必須)" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "ピアの公開鍵(必須)" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" +"'フル' バージョンの wpad/hostapd と、無線LANドライバーによるサポートが必要で" +"す。
(2017年2月現在: ath9k 及び ath10k、LEDE内では mwlwifi 及び mt76)" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "リセット" + +msgid "Reset Counters" +msgstr "カウンタのリセット" + +msgid "Reset to defaults" +msgstr "標準設定にリセット" + +msgid "Resolv and Hosts Files" +msgstr "名前解決およびホストファイル設定" + +msgid "Resolve file" +msgstr "リゾルバファイル" + +msgid "Restart" +msgstr "再起動" + +msgid "Restart Firewall" +msgstr "ファイアウォールの再起動" + +msgid "Restore backup" +msgstr "バックアップから復元する" + +msgid "Reveal/hide password" +msgstr "パスワードを表示する/隠す" + +msgid "Revert" +msgstr "元に戻す" + +msgid "Root" +msgstr "ルート" + +msgid "Root directory for files served via TFTP" +msgstr "TFTP経由でファイルを取り扱う際のルートディレクトリ" + +msgid "Root preparation" +msgstr "ルートの準備" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "ルート タイプ" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "ルーター アドバタイズメント-サービス" + +msgid "Router Password" +msgstr "ルーター パスワード" + +msgid "Routes" +msgstr "経路情報" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"特定のホスト又はネットワークに、どのインターフェース及びゲートウェイを通して" +"通信を行うか、経路情報を設定します。" + +msgid "Run a filesystem check before mounting the device" +msgstr "デバイスのマウントを行う前にファイルシステムチェックを行う" + +msgid "Run filesystem check" +msgstr "ファイルシステムチェックを行う" + +msgid "SHA256" +msgstr "SHA256" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "SNR" + +msgid "SSH Access" +msgstr "SSHアクセス" + +msgid "SSH server address" +msgstr "SSH サーバーアドレス" + +msgid "SSH server port" +msgstr "SSH サーバーポート" + +msgid "SSH username" +msgstr "SSH ユーザー名" + +msgid "SSH-Keys" +msgstr "SSHキー" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "保存" + +msgid "Save & Apply" +msgstr "保存 & 適用" + +msgid "Save & Apply" +msgstr "保存 & 適用" + +msgid "Scan" +msgstr "スキャン" + +msgid "Scheduled Tasks" +msgstr "スケジュールタスク" + +msgid "Section added" +msgstr "追加されるセクション" + +msgid "Section removed" +msgstr "削除されるセクション" + +msgid "See \"mount\" manpage for details" +msgstr "詳細情報は \"mount\" のmanページを参照してください" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" +"設定された秒間隔でLCP echoリクエストを送信します。失敗数しきい値を設定した場" +"合のみ、機能が有効になります。" + +msgid "Separate Clients" +msgstr "クライアントの分離" + +msgid "Separate WDS" +msgstr "WDSを分離する" + +msgid "Server Settings" +msgstr "サーバー設定" + +msgid "Server password" +msgstr "サーバー パスワード" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "サーバー ユーザー名" + +msgid "Service Name" +msgstr "サービス名" + +msgid "Service Type" +msgstr "サービスタイプ" + +msgid "Services" +msgstr "サービス" + +msgid "Set up Time Synchronization" +msgstr "時刻同期設定" + +msgid "Setup DHCP Server" +msgstr "DHCPサーバーを設定" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "Short GI" + +msgid "Show current backup file list" +msgstr "現在のバックアップファイルのリストを表示する" + +msgid "Shutdown this interface" +msgstr "インターフェースを終了" + +msgid "Shutdown this network" +msgstr "ネットワークを終了" + +msgid "Signal" +msgstr "信号強度" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "信号:" + +msgid "Size" +msgstr "サイズ" + +msgid "Size (.ipk)" +msgstr "サイズ (.ipk)" + +msgid "Skip" +msgstr "スキップ" + +msgid "Skip to content" +msgstr "コンテンツへ移動" + +msgid "Skip to navigation" +msgstr "ナビゲーションへ移動" + +msgid "Slot time" +msgstr "スロット時間" + +msgid "Software" +msgstr "ソフトウェア" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "無効な値が設定されているフィールドがあるため、保存できません。" + +msgid "Sorry, the object you requested was not found." +msgstr "申し訳ありません。リクエストされたオブジェクトは見つかりませんでした。" + +msgid "Sorry, the server encountered an unexpected error." +msgstr "申し訳ありません。サーバーに予期せぬエラーが発生しました。" + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" +"申し訳ありません。現在このボードではsysupgradeがサポートがされていないため、" +"ファームウェア更新は手動で行っていただく必要があります。wikiを参照して、この" +"デバイスのインストール手順を参照してください。" + +msgid "Sort" +msgstr "ソート" + +msgid "Source" +msgstr "送信元" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "" + +msgid "Specifies the directory the device is attached to" +msgstr "デバイスが接続するディレクトリを設定します" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "Dropbearの受信ポートを設定してください" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "暗号鍵を設定します。" + +msgid "Start" +msgstr "開始" + +msgid "Start priority" +msgstr "優先順位" + +msgid "Startup" +msgstr "スタートアップ" + +msgid "Static IPv4 Routes" +msgstr "IPv4 静的ルーティング" + +msgid "Static IPv6 Routes" +msgstr "IPv6 静的ルーティング" + +msgid "Static Leases" +msgstr "静的リース" + +msgid "Static Routes" +msgstr "静的ルーティング" + +msgid "Static WDS" +msgstr "静的WDS" + +msgid "Static address" +msgstr "静的アドレス" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" +"静的リース機能は、DHCPクライアントに対して固定のIPアドレス及び一時的なホスト" +"名をアサインします。また、クライアントは対応するリースを使用するホストがその1" +"台のみで、かつ静的なインターフェース設定にする必要があります。" + +msgid "Status" +msgstr "ステータス" + +msgid "Stop" +msgstr "停止" + +msgid "Strict order" +msgstr "問い合わせの制限" + +msgid "Submit" +msgstr "送信" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "スワップ" + +msgid "Swap Entry" +msgstr "スワップ機能" + +msgid "Switch" +msgstr "スイッチ" + +msgid "Switch %q" +msgstr "スイッチ %q" + +msgid "Switch %q (%s)" +msgstr "スイッチ %q (%s)" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "プロトコルの切り替え" + +msgid "Sync with browser" +msgstr "ブラウザの時刻と同期" + +msgid "Synchronizing..." +msgstr "同期中..." + +msgid "System" +msgstr "システム" + +msgid "System Log" +msgstr "システムログ" + +msgid "System Properties" +msgstr "システム プロパティ" + +msgid "System log buffer size" +msgstr "システムログ バッファサイズ" + +msgid "TCP:" +msgstr "TCP:" + +msgid "TFTP Settings" +msgstr "TFTP設定" + +msgid "TFTP server root" +msgstr "TFTPサーバー・ルート" + +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "送信レート" + +msgid "Table" +msgstr "テーブル" + +msgid "Target" +msgstr "ターゲット" + +msgid "Target network" +msgstr "対象ネットワーク" + +msgid "Terminate" +msgstr "停止" + +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" +"デバイス設定セクションでは、チャネル、送信出力、アンテナ設定などの無" +"線ハードウェアの設定を行います。また、無線ハードウェアがマルチSSID機能をサ" +"ポートしている場合、これらの設定は全て共通の設定として扱われます。暗号化設定" +"や無線モードなどのネットワーク毎の設定は、インターフェース設定で設定" +"を行います。" + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" +"libiwinfo-lua パッケージがインストールされていません。無線設定機能を" +"正しく動作させるために、このパッケージをインストールする必要があります。" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" +"使用可能な文字は右記の通りです: A-Z, a-z, " +"0-9, _" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" +"デバイスファイルまたはパーティション( " +"/dev/sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"記憶領域をフォーマットしているファイルシステムを指定します。( ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" +"更新用イメージがアップロードされました。以下はそのチェックサム及びファイルサ" +"イズです。オリジナルファイルと比較し、整合性を確認してください。
\"続行" +"\"ボタンをクリックすると、更新処理を開始します。" + +msgid "The following changes have been committed" +msgstr "以下の変更が適用されました" + +msgid "The following changes have been reverted" +msgstr "以下の変更が取り消されました" + +msgid "The following rules are currently active on this system." +msgstr "このシステムでは、現在以下のルールが有効になっています。" + +msgid "The given network name is not unique" +msgstr "設定されたネットワーク名はユニークなものではありません" + +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" +"このハードウェアでは複数のESSIDを設定することができないため、続行した場合、設" +"定は既存の設定と置き換えられます。" + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" + +msgid "The length of the IPv6 prefix in bits" +msgstr "" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" + +msgid "The selected protocol needs a device assigned" +msgstr "選択中のプロトコルを使用する場合、デバイスを設定する必要があります" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "システムは設定領域を消去中です。完了後、自動的に再起動します。" + +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"システム更新中です。
絶対に電源を切らないでください!
ルーターの再" +"接続まで数分お待ち下さい。システムが更新されることにより、ルーターの設定が変" +"わる可能性があるため、再接続時にあなたのコンピュータのIPアドレスを変更しなけ" +"ればならない場合があります。" + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"アップロードされたイメージファイルは、このボードでサポートされているフォー" +"マットではありません。このプラットフォームに適合したイメージファイルかどう" +"か、確認してください。" + +msgid "There are no active leases." +msgstr "リース中のIPアドレスはありません。" + +msgid "There are no pending changes to apply!" +msgstr "適用が未完了の変更はありません!" + +msgid "There are no pending changes to revert!" +msgstr "復元が未完了の変更はありません!" + +msgid "There are no pending changes!" +msgstr "未完了の変更はありません!" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" +"デバイスが設定されていません。\"デバイス設定\"タブで、ネットワークデバイスを" +"選択してください。" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" +"ルーターにパスワードが設定されていません。Webインターフェースの保護及びSSH" +"サービスを有効にするために、管理者パスワードを設定してください。" + +msgid "This IPv4 address of the relay" +msgstr "" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" +"以下は、sysupgrade中にバックアップ対象に含めるファイルとディレクトリのパター" +"ンリストです。/etc/config/内の設定ファイル及びその他特定の設定ファイルは自動" +"的に保持されます。" + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" +"/etc/rc.localを表示しています。実行したいコマンドを'exit 0'行より上に入力して" +"ください。これらのコマンドはブートプロセスの最後に実行されます。" + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" +"プロバイダからアサインされた、ローカルのエンドポイント アドレスです。通常、" +":2が終端に設定されます。" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" +"ローカル ネットワーク内のみの DHCPとして使用する" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "" +"スケジュールタスク システムを使用することで、定期的に特定のタスクの実行を行う" +"ことが可能です。" + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" +"このリストは現在システムで動作しているプロセスとそのステータスを表示していま" +"す。" + +msgid "This page allows the configuration of custom button actions" +msgstr "このページでは、ボタンの動作を変更することができます。" + +msgid "This page gives an overview over currently active network connections." +msgstr "このページでは、現在アクティブなネットワーク接続を表示します。" + +msgid "This section contains no values yet" +msgstr "このセクションは未設定です。" + +msgid "Time Synchronization" +msgstr "時刻設定" + +msgid "Time Synchronization is not configured yet." +msgstr "時刻同期機能はまだ設定されていません。" + +msgid "Timezone" +msgstr "タイムゾーン" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" +"設定を復元するには、作成しておいたバックアップ アーカイブをアップロードしてく" +"ださい。" + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "合計" + +msgid "Traceroute" +msgstr "Traceroute" + +msgid "Traffic" +msgstr "トラフィック" + +msgid "Transfer" +msgstr "転送" + +msgid "Transmission Rate" +msgstr "転送レート" + +msgid "Transmit" +msgstr "送信" + +msgid "Transmit Power" +msgstr "電波出力" + +msgid "Transmitter Antenna" +msgstr "送信アンテナ" + +msgid "Trigger" +msgstr "トリガー" + +msgid "Trigger Mode" +msgstr "トリガーモード" + +msgid "Tunnel ID" +msgstr "トンネル ID" + +msgid "Tunnel Interface" +msgstr "トンネルインターフェース" + +msgid "Tunnel Link" +msgstr "トンネルリンク" + +msgid "Tunnel broker protocol" +msgstr "トンネルブローカー プロトコル" + +msgid "Tunnel setup server" +msgstr "トンネルセットアップ サーバー" + +msgid "Tunnel type" +msgstr "トンネルタイプ" + +msgid "Turbo Mode" +msgstr "ターボモード" + +msgid "Tx-Power" +msgstr "送信電力" + +msgid "Type" +msgstr "タイプ" + +msgid "UDP:" +msgstr "UDP:" + +msgid "UMTS only" +msgstr "UMTSのみ" + +msgid "UMTS/GPRS/EV-DO" +msgstr "UMTS/GPRS/EV-DO" + +msgid "USB Device" +msgstr "USBデバイス" + +msgid "USB Ports" +msgstr "USB ポート" + +msgid "UUID" +msgstr "UUID" + +msgid "Unable to dispatch" +msgstr "" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "不明" + +msgid "Unknown Error, password not changed!" +msgstr "不明なエラーです。パスワードは変更されていません!" + +msgid "Unmanaged" +msgstr "Unmanaged" + +msgid "Unmount" +msgstr "アンマウント" + +msgid "Unsaved Changes" +msgstr "保存されていない変更" + +msgid "Unsupported protocol type." +msgstr "サポートされていないプロトコルタイプ" + +msgid "Update lists" +msgstr "リストの更新" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" +"システムをアップデートする場合、sysupgrade機能に互換性のあるファームウェア イ" +"メージをここにアップロードしてください。\"設定の保持\"を有効にすると、現在の" +"設定を維持してアップデートを行います(互換性のあるファームウェア イメージが必" +"要)。" + +msgid "Upload archive..." +msgstr "アーカイブをアップロード..." + +msgid "Uploaded File" +msgstr "アップロード完了" + +msgid "Uptime" +msgstr "起動時間" + +msgid "Use /etc/ethers" +msgstr "/etc/ethers を使用する" + +msgid "Use DHCP gateway" +msgstr "DHCPゲートウェイを使用する" + +msgid "Use DNS servers advertised by peer" +msgstr "ピアから通知されたDNSサーバーを使用する" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "ISO/IEC 3166 alpha2の国コードを使用します。" + +msgid "Use MTU on tunnel interface" +msgstr "トンネル インターフェースのMTUを設定" + +msgid "Use TTL on tunnel interface" +msgstr "トンネル インターフェースのTTLを設定" + +msgid "Use as external overlay (/overlay)" +msgstr "外部オーバーレイとして使用する (/overlay)" + +msgid "Use as root filesystem (/)" +msgstr "ルート ファイルシステムとして使用する (/)" + +msgid "Use broadcast flag" +msgstr "ブロードキャスト フラグを使用する" + +msgid "Use builtin IPv6-management" +msgstr "ビルトインのIPv6-マネジメントを使用する" + +msgid "Use custom DNS servers" +msgstr "DNSサーバーを手動で設定" + +msgid "Use default gateway" +msgstr "デフォルト ゲートウェイを使用する" + +msgid "Use gateway metric" +msgstr "ゲートウェイ メトリックを使用する" + +msgid "Use routing table" +msgstr "" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" +"追加 ボタンを押して、新しくエントリーを作成してください。MAC-ア" +"ドレス はそのホストを識別し, IPv4-アドレス には払いだす固定のア" +"ドレスを設定します。また、ホスト名 はそのホストに対して一時的なホス" +"ト名をアサインします。" + +msgid "Used" +msgstr "使用" + +msgid "Used Key Slot" +msgstr "使用するキースロット" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "ユーザー名" + +msgid "VC-Mux" +msgstr "VC-Mux" + +msgid "VDSL" +msgstr "VDSL" + +msgid "VLANs on %q" +msgstr "%q上のVLANs" + +msgid "VLANs on %q (%s)" +msgstr "%q上のVLAN (%s)" + +msgid "VPN Local address" +msgstr "VPN ローカルアドレス" + +msgid "VPN Local port" +msgstr "VPN ローカルポート" + +msgid "VPN Server" +msgstr "VPN サーバー" + +msgid "VPN Server port" +msgstr "VPN サーバーポート" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "VPN サーバー証明書 SHA1ハッシュ" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "VPNC (CISCO 3000 (またはその他の) VPN)" + +msgid "Vendor" +msgstr "ベンダー" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "DHCPリクエスト送信時のベンダークラスを設定" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "確認" + +msgid "Version" +msgstr "バージョン" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "WEP オープンシステム" + +msgid "WEP Shared Key" +msgstr "WEP 共有キー" + +msgid "WEP passphrase" +msgstr "WEP 暗号フレーズ" + +msgid "WMM Mode" +msgstr "WMM モード" + +msgid "WPA passphrase" +msgstr "WPA 暗号フレーズ" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"WPA暗号化を使用する場合、wpa_supplicant (クライアントモードの場合)又は " +"hostapd (アクセスポイント及びアドホック) がインストールされている必要がありま" +"す。" + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "変更を適用中です..." + +msgid "Waiting for command to complete..." +msgstr "コマンド実行中です..." + +msgid "Waiting for device..." +msgstr "デバイスの起動をお待ちください..." + +msgid "Warning" +msgstr "警告" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "警告: 再起動すると消えてしまう、保存されていない設定があります!" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "帯域幅" + +msgid "WireGuard VPN" +msgstr "WireGuard VPN" + +msgid "Wireless" +msgstr "無線" + +msgid "Wireless Adapter" +msgstr "無線アダプタ" + +msgid "Wireless Network" +msgstr "無線ネットワーク" + +msgid "Wireless Overview" +msgstr "無線LANデバイス一覧" + +msgid "Wireless Security" +msgstr "無線LANセキュリティ" + +msgid "Wireless is disabled or not associated" +msgstr "無線LAN機能が無効になっているか、アソシエーションされていません" + +msgid "Wireless is restarting..." +msgstr "無線LAN機能再起動中..." + +msgid "Wireless network is disabled" +msgstr "無線LAN機能は無効になっています" + +msgid "Wireless network is enabled" +msgstr "無線LAN機能は有効になっています" + +msgid "Wireless restarted" +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 "" + +msgid "Write received DNS requests to syslog" +msgstr "受信したDNSリクエストをsyslogへ記録します" + +msgid "Write system log to file" +msgstr "システムログをファイルに書き込む" + +msgid "XR Support" +msgstr "XRサポート" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"ルーターが起動する際のサービスの有効化/無効化を行うことができます。また、変更" +"は再起動後に適用されます。
警告: \"network\"のような重要なサービ" +"スを無効にすると, ルーターにアクセスできなくなりますので、注意してください。" +"" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "JavaScriptを有効にしない場合、LuCIは正しく動作しません。" + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" +"Internet Explorerが古すぎるため、このページを正しく表示することができません。" +"バージョン 7以上にアップグレードするか、FirefoxやOpera、Safariなど別のブラウ" +"ザーを使用してください。" + +msgid "any" +msgstr "全て" + +msgid "auto" +msgstr "自動" + +msgid "baseT" +msgstr "baseT" + +msgid "bridged" +msgstr "ブリッジ" + +msgid "create:" +msgstr "作成:" + +msgid "creates a bridge over specified interface(s)" +msgstr "指定したインターフェースでブリッジを作成します" + +msgid "dB" +msgstr "dB" + +msgid "dBm" +msgstr "dBm" + +msgid "disable" +msgstr "無効" + +msgid "disabled" +msgstr "無効" + +msgid "expired" +msgstr "期限切れ" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" +"DHCPリース情報を記" +"録するファイル" + +msgid "forward" +msgstr "" + +msgid "full-duplex" +msgstr "全二重" + +msgid "half-duplex" +msgstr "半二重" + +msgid "help" +msgstr "ヘルプ" + +msgid "hidden" +msgstr "(不明)" + +msgid "hybrid mode" +msgstr "ハイブリッド モード" + +msgid "if target is a network" +msgstr "ターゲットがネットワークの場合" + +msgid "input" +msgstr "入力" + +msgid "kB" +msgstr "kB" + +msgid "kB/s" +msgstr "kB/s" + +msgid "kbit/s" +msgstr "kbit/s" + +msgid "local DNS file" +msgstr "ローカル DNSファイル" + +msgid "minimum 1280, maximum 1480" +msgstr "最小値 1280、最大値 1480" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "いいえ" + +msgid "no link" +msgstr "リンクなし" + +msgid "none" +msgstr "なし" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "オフ" + +msgid "on" +msgstr "オン" + +msgid "open" +msgstr "オープン" + +msgid "overlay" +msgstr "オーバーレイ" + +msgid "relay mode" +msgstr "リレー モード" + +msgid "routed" +msgstr "routed" + +msgid "server mode" +msgstr "サーバー モード" + +msgid "stateful-only" +msgstr "ステートフルのみ" + +msgid "stateless" +msgstr "ステートレス" + +msgid "stateless + stateful" +msgstr "ステートレス + ステートフル" + +msgid "tagged" +msgstr "tagged" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "不明" + +msgid "unlimited" +msgstr "無期限" + +msgid "unspecified" +msgstr "設定しない" + +msgid "unspecified -or- create:" +msgstr "設定しない -又は- 作成:" + +msgid "untagged" +msgstr "untagged" + +msgid "yes" +msgstr "はい" + +msgid "« Back" +msgstr "« 戻る" + +#~ msgid "Leasetime" +#~ msgstr "リース時間" + +#~ msgid "Optional." +#~ msgstr "(オプション)" + +#~ msgid "automatic" +#~ 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インターフェース" diff --git a/luci-base/po/ko/base.po b/luci-base/po/ko/base.po new file mode 100644 index 000000000..b52e33454 --- /dev/null +++ b/luci-base/po/ko/base.po @@ -0,0 +1,3849 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-06-10 03:40+0200\n" +"PO-Revision-Date: 2012-04-03 08:44+0200\n" +"Last-Translator: Weongyo Jeong \n" +"Language-Team: LANGUAGE \n" +"Language: en\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Pootle 2.0.4\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(%d 분 window, %d 초 간격)" + +msgid "(%s available)" +msgstr "" + +msgid "(empty)" +msgstr "" + +msgid "(no interfaces attached)" +msgstr "" + +msgid "-- Additional Field --" +msgstr "" + +msgid "-- Please choose --" +msgstr "" + +msgid "-- custom --" +msgstr "" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "1 분 부하:" + +msgid "15 Minute Load:" +msgstr "15 분 부하:" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "5 분 부하:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "" + +msgid "DNS query port" +msgstr "DNS query 포트" + +msgid "DNS server port" +msgstr "DNS 서버 포트" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" + +msgid "ESSID" +msgstr "" + +msgid "IPv4-Address" +msgstr "IPv4-주소" + +msgid "IPv4-Gateway" +msgstr "" + +msgid "IPv4-Netmask" +msgstr "" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" + +msgid "IPv6-Gateway" +msgstr "" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "LED 설정" + +msgid "LED Name" +msgstr "LED 이름" + +msgid "MAC-Address" +msgstr "MAC-주소" + +msgid "" +"Max. DHCP leases" +msgstr "" +"최대 DHCP lease 수" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"최대 EDNS0 패킷 크기" + +msgid "Max. concurrent queries" +msgstr "최대 동시 처리 query 수" + +msgid "%s - %s" +msgstr "" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "" + +msgid "AR Support" +msgstr "" + +msgid "ARP retry threshold" +msgstr "" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" + +msgid "ATM device number" +msgstr "" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "" + +msgid "Access Point" +msgstr "" + +msgid "Action" +msgstr "" + +msgid "Actions" +msgstr "관리 도구" + +msgid "Activate this network" +msgstr "이 네트워를 활성화합니다" + +msgid "Active IPv4-Routes" +msgstr "" +"Active IPv4-Route 경로" + +msgid "Active IPv6-Routes" +msgstr "" +"Active IPv6-Route 경로" + +msgid "Active Connections" +msgstr "Active 연결수" + +msgid "Active DHCP Leases" +msgstr "Active DHCP 임대 목록" + +msgid "Active DHCPv6 Leases" +msgstr "Active DHCPv6 임대 목록" + +msgid "Ad-Hoc" +msgstr "" + +msgid "Add" +msgstr "추가" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "" + +msgid "Add new interface..." +msgstr "새로운 인터페이스 추가..." + +msgid "Additional Hosts files" +msgstr "추가적인 Hosts 파일들" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "주소" + +msgid "Address to access local relay bridge" +msgstr "" + +msgid "Administration" +msgstr "관리" + +msgid "Advanced Settings" +msgstr "고급 설정" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "SSH 암호 인증을 허용합니다" + +msgid "Allow all except listed" +msgstr "" + +msgid "Allow listed only" +msgstr "" + +msgid "Allow localhost" +msgstr "" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" + +msgid "Allow root logins with password" +msgstr "암호를 이용한 root 접근 허용" + +msgid "Allow the root user to login with password" +msgstr "암호를 이용한 root 사용자 접근을 허용합니다" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "" + +msgid "Antenna 2" +msgstr "" + +msgid "Antenna Configuration" +msgstr "" + +msgid "Any zone" +msgstr "" + +msgid "Apply" +msgstr "적용" + +msgid "Applying changes" +msgstr "" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "" + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "연결된 station 들" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "" + +msgid "Authorization Required" +msgstr "인증이 필요합니다" + +msgid "Auto Refresh" +msgstr "자동 Refresh" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "" + +msgid "Available packages" +msgstr "이용 가능한 패키지" + +msgid "Average:" +msgstr "평균:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "" + +msgid "Back" +msgstr "뒤로" + +msgid "Back to Overview" +msgstr "개요로 이동" + +msgid "Back to configuration" +msgstr "설정으로 돌아가기" + +msgid "Back to overview" +msgstr "" + +msgid "Back to scan results" +msgstr "" + +msgid "Background Scan" +msgstr "" + +msgid "Backup / Flash Firmware" +msgstr "Firmware 백업 / Flash" + +msgid "Backup / Restore" +msgstr "백업 / 복구" + +msgid "Backup file list" +msgstr "" + +msgid "Bad address specified!" +msgstr "" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"아래는 백업할 파일 목록입니다. 이 목록은 opkg 이 수정되었다고 판단한 파일, " +"필수 기본 파일 그리고 사용자가 패턴 정의로 백업하도록 지정한 것로 이루어져 있" +"습니다." + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "" + +msgid "Bogus NX Domain Override" +msgstr "" + +msgid "Bridge" +msgstr "" + +msgid "Bridge interfaces" +msgstr "Bridge 인터페이스" + +msgid "Bridge unit number" +msgstr "" + +msgid "Bring up on boot" +msgstr "부팅시 활성화" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "" + +msgid "Buffered" +msgstr "버퍼된 양" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" +"Build/distribution 지정 feed 목록입니다. 이 파일의 내용은 sysupgrade 시 초기" +"화됩니다." + +msgid "Buttons" +msgstr "" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "CPU 사용량 (%)" + +msgid "Cancel" +msgstr "" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "" + +msgid "Changes" +msgstr "변경 사항" + +msgid "Changes applied." +msgstr "" + +msgid "Changes the administrator password for accessing the device" +msgstr "장비 접근을 위한 관리자 암호를 변경합니다" + +msgid "Channel" +msgstr "" + +msgid "Check" +msgstr "" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"이 인터페이스에 할당하고자 하는 firewall zone 을 선택하세요. 연결된 zone 으로" +"부터 인터페이스를 제거하고 싶다면 unspecified 를 선택하세요. 새로" +"운 zone 을 정의하고 인터페이스 연결을 원한다면 create 항목을 입력하" +"세요." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" +"이 무선랜 인터페이스와 연결하고자 하는 네트워크(들)을 선택하세요. 혹은 새로" +"운 네트워크를 정의할려면 create 을 작성하세요." + +msgid "Cipher" +msgstr "" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"현재 설정 파일에 대한 tar 아카이브 다운로드를 원한다면 \"아카이브 생성\" 버튼" +"을 클릭하세요. Firmware 의 초기 설정 reset 을 원한다면 \"Reset 하기\" 를 클" +"릭하세요. (squashfs 이미지들만 가능)." + +msgid "Client" +msgstr "" + +msgid "Client ID to send when requesting DHCP" +msgstr "DHCP 요청시 전송할 Client ID" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" + +msgid "Close list..." +msgstr "목록 닫기..." + +msgid "Collecting data..." +msgstr "Data 를 수집중입니다..." + +msgid "Command" +msgstr "명령어" + +msgid "Common Configuration" +msgstr "공통 설정" + +msgid "Compression" +msgstr "" + +msgid "Configuration" +msgstr "설정" + +msgid "Configuration applied." +msgstr "" + +msgid "Configuration files will be kept." +msgstr "" + +msgid "Confirmation" +msgstr "다시 확인" + +msgid "Connect" +msgstr "연결" + +msgid "Connected" +msgstr "연결 시간" + +msgid "Connection Limit" +msgstr "" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "연결" + +msgid "Country" +msgstr "" + +msgid "Country Code" +msgstr "" + +msgid "Cover the following interface" +msgstr "" + +msgid "Cover the following interfaces" +msgstr "" + +msgid "Create / Assign firewall-zone" +msgstr "Firewall-zone 생성 / 할당" + +msgid "Create Interface" +msgstr "" + +msgid "Create a bridge over multiple interfaces" +msgstr "" + +msgid "Critical" +msgstr "" + +msgid "Cron Log Level" +msgstr "" + +msgid "Custom Interface" +msgstr "임의의 인터페이스" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" +"개인이 운영하는 feed 같은 정보를 입력할 수 있는 custom feed 목록입니다. 이 파" +"일은 sysupgrade 시 입력된 정보가 유지됩니다." + +msgid "Custom feeds" +msgstr "Custom feed 들" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"원한다면 장치에 부착된 LED 들의 " +"행동을 마음대로 변경할 수 있습니다." + +msgid "DHCP Leases" +msgstr "DHCP 임대 정보" + +msgid "DHCP Server" +msgstr "DHCP 서버" + +msgid "DHCP and DNS" +msgstr "DHCP 와 DNS" + +msgid "DHCP client" +msgstr "DHCP client" + +msgid "DHCP-Options" +msgstr "DHCP-옵션들" + +msgid "DHCPv6 Leases" +msgstr "DHCPv6 임대 정보" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "" + +msgid "DNS forwardings" +msgstr "" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "" + +msgid "Default %d" +msgstr "" + +msgid "Default gateway" +msgstr "" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "기본 상태" + +msgid "Define a name for this network." +msgstr "" + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"추가적인 DHCP 옵션을 정의합니다. 예를 들어 " +"\"6,192.168.2.1,192.168.2.2\" 는 client 에게 다른 DNS 서버를 세" +"팅하도록 권고할 수 있습니다." + +msgid "Delete" +msgstr "삭제" + +msgid "Delete this network" +msgstr "이 네트워크를 삭제합니다" + +msgid "Description" +msgstr "설명" + +msgid "Design" +msgstr "디자인" + +msgid "Destination" +msgstr "" + +msgid "Device" +msgstr "" + +msgid "Device Configuration" +msgstr "장치 설정" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "진단" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "" + +msgid "Disable" +msgstr "비활성화" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +"이 인터페이스에 대해 DHCP 기능을 비활성합니다." + +msgid "Disable DNS setup" +msgstr "" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "" + +msgid "Disabled" +msgstr "" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "" + +msgid "Displaying only packages containing" +msgstr "" + +msgid "Distance Optimization" +msgstr "" + +msgid "Distance to farthest network member in meters." +msgstr "" + +msgid "Distribution feeds" +msgstr "Distribution feed 들" + +msgid "Diversity" +msgstr "" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Dnsmasq 는 NAT 방화벽을 위" +"한 DHCP-서버와 " +"DNS-Forwarder 기능을 제공합니다." + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" + +msgid "Do not forward reverse lookups for local networks" +msgstr "" + +msgid "Do not send probe responses" +msgstr "" + +msgid "Domain required" +msgstr "" + +msgid "Domain whitelist" +msgstr "" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" + +msgid "Download and install package" +msgstr "패키지 다운로드 후 설치" + +msgid "Download backup" +msgstr "백업 다운로드" + +msgid "Dropbear Instance" +msgstr "" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear 는 SSH network shell 접근과 " +"SCP 서버 기능을 제공합니다" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" + +msgid "Dynamic tunnel" +msgstr "" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" +"동적으로 DHCP 주소를 client 에게 할당합니다. 만약 비활성화시, static lease " +"가 설정된 client 만 주소 제공이 이루어집니다." + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "" + +msgid "Edit" +msgstr "수정" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "이 인터페이스를 수정합니다" + +msgid "Edit this network" +msgstr "이 네트워크를 수정합니다" + +msgid "Emergency" +msgstr "" + +msgid "Enable" +msgstr "활성화" + +msgid "Enable STP" +msgstr "STP 활성화" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "" + +msgid "Enable Jumbo Frame passthrough" +msgstr "" + +msgid "Enable NTP client" +msgstr "NTP client 활성화" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "TFTP 서버 활성화" + +msgid "Enable VLAN functionality" +msgstr "VLAN 기능 활성화" + +msgid "Enable WPS pushbutton, requires WPA(2)-PSK" +msgstr "" + +msgid "Enable key reinstallation (KRACK) countermeasures" +msgstr "" + +msgid "Enable learning and aging" +msgstr "" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "" + +msgid "Enable this swap" +msgstr "" + +msgid "Enable/Disable" +msgstr "활성/비활성" + +msgid "Enabled" +msgstr "활성화됨" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "이 bridge 에 Spanning Tree Protocol 활성화합니다" + +msgid "Encapsulation mode" +msgstr "" + +msgid "Encryption" +msgstr "암호화" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "" + +msgid "Error" +msgstr "" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "" + +msgid "Ethernet Switch" +msgstr "Ethernet 스위치" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "" + +msgid "Expires" +msgstr "만료 시간" + +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "임대한 주소의 유효 시간. 최소값은 2 분 (2m) 입니다." + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "외부 system log 서버" + +msgid "External system log server port" +msgstr "외부 system log 서버 포트" + +msgid "External system log server protocol" +msgstr "외부 system log 서버 프로토콜" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "" + +msgid "File" +msgstr "" + +msgid "Filename of the boot image advertised to clients" +msgstr "" + +msgid "Filesystem" +msgstr "" + +msgid "Filter" +msgstr "필터" + +msgid "Filter private" +msgstr "" + +msgid "Filter useless" +msgstr "" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "네트워크 검색 및 연결합니다" + +msgid "Find package" +msgstr "패키지 찾기" + +msgid "Finish" +msgstr "" + +msgid "Firewall" +msgstr "방화벽" + +msgid "Firewall Settings" +msgstr "방화벽 설정" + +msgid "Firewall Status" +msgstr "방화벽 상태" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "Firmware 버전" + +msgid "Fixed source port for outbound DNS queries" +msgstr "" + +msgid "Flash Firmware" +msgstr "" + +msgid "Flash image..." +msgstr "이미지로 Flash..." + +msgid "Flash new firmware image" +msgstr "새로운 firmware 이미지로 flash" + +msgid "Flash operations" +msgstr "Flash 작업" + +msgid "Flashing..." +msgstr "" + +msgid "Force" +msgstr "강제하기" + +msgid "Force CCMP (AES)" +msgstr "" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "다른 DHCP 서버가 탐지되더라도 이 네트워크에 DHCP 를 강제합니다." + +msgid "Force TKIP" +msgstr "" + +msgid "Force TKIP and CCMP (AES)" +msgstr "" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "" + +msgid "Forwarding mode" +msgstr "" + +msgid "Fragmentation Threshold" +msgstr "" + +msgid "Frame Bursting" +msgstr "" + +msgid "Free" +msgstr "이용 가능한 양" + +msgid "Free space" +msgstr "여유 공간" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "" + +msgid "GPRS only" +msgstr "" + +msgid "Gateway" +msgstr "" + +msgid "Gateway ports" +msgstr "" + +msgid "General Settings" +msgstr "기본 설정" + +msgid "General Setup" +msgstr "기본 설정" + +msgid "General options for opkg" +msgstr "opkg 명령의 기본 옵션들" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "아카이브 생성" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "암호 설정 하기" + +msgid "Go to relevant configuration page" +msgstr "" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "" + +msgid "Hang Up" +msgstr "" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"여기서 호스트이름이나 시간대와 같은 기본적인 장비 설정을 할 수 있습니다." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" +"아래에 SSH public-key 인증을 위한 공개 SSH-Key 들 (한 줄당 한개) 를 입력할 " +"수 있습니다." + +msgid "Hermes 802.11b Wireless Controller" +msgstr "" + +msgid "Hide ESSID" +msgstr "ESSID 숨기기" + +msgid "Host" +msgstr "호스트" + +msgid "Host entries" +msgstr "호스트 목록들" + +msgid "Host expiry timeout" +msgstr "" + +msgid "Host-IP or Network" +msgstr "Host-IP 혹은 Network" + +msgid "Hostname" +msgstr "호스트이름" + +msgid "Hostname to send when requesting DHCP" +msgstr "DHCP 요청시 전달할 호스트이름" + +msgid "Hostnames" +msgstr "호스트이름" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "IP 주소" + +msgid "IPv4" +msgstr "" + +msgid "IPv4 Firewall" +msgstr "IPv4 방화벽" + +msgid "IPv4 WAN Status" +msgstr "IPv4 WAN 상태" + +msgid "IPv4 address" +msgstr "IPv4 주소" + +msgid "IPv4 and IPv6" +msgstr "IPv4 와 IPv6" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "" + +msgid "IPv4 gateway" +msgstr "" + +msgid "IPv4 netmask" +msgstr "" + +msgid "IPv4 only" +msgstr "" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "" + +msgid "IPv4-Address" +msgstr "IPv4-주소" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "IPv6 방화벽" + +msgid "IPv6 Neighbours" +msgstr "IPv6 Neighbour 들" + +msgid "IPv6 Settings" +msgstr "IPv6 설정" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "IPv6 WAN 상태" + +msgid "IPv6 address" +msgstr "" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "" + +msgid "IPv6 only" +msgstr "" + +msgid "IPv6 prefix" +msgstr "" + +msgid "IPv6 prefix length" +msgstr "" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "IPv6-주소" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "" + +msgid "Identity" +msgstr "" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" + +msgid "If unchecked, no default route is configured" +msgstr "체크하지 않을 경우, 기본 route 가 설정되지 않습니다" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "체크하지 않을 경우, 사용하도록 권장된 DNS 주소는 무시됩니다" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" + +msgid "Ignore /etc/hosts" +msgstr "/etc/hosts 파일 무시" + +msgid "Ignore interface" +msgstr "인터페이스 무시" + +msgid "Ignore resolve file" +msgstr "resolve 파일 무시" + +msgid "Image" +msgstr "이미지" + +msgid "In" +msgstr "In" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "" + +msgid "Inbound:" +msgstr "" + +msgid "Info" +msgstr "" + +msgid "Initscript" +msgstr "" + +msgid "Initscripts" +msgstr "Initscript 들" + +msgid "Install" +msgstr "설치" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "" + +msgid "Install protocol extensions..." +msgstr "" + +msgid "Installed packages" +msgstr "설치된 패키지" + +msgid "Interface" +msgstr "인터페이스" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "인터페이스 설정" + +msgid "Interface Overview" +msgstr "인터페이스 개요" + +msgid "Interface is reconnecting..." +msgstr "" + +msgid "Interface is shutting down..." +msgstr "" + +msgid "Interface name" +msgstr "인터페이스 이름" + +msgid "Interface not present or not connected yet." +msgstr "" + +msgid "Interface reconnected" +msgstr "" + +msgid "Interface shut down" +msgstr "" + +msgid "Interfaces" +msgstr "인터페이스" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "" + +msgid "Invalid" +msgstr "" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "" + +msgid "Invalid username and/or password! Please try again." +msgstr "" + +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "" + +msgid "Join Network" +msgstr "네트워크 연결" + +msgid "Join Network: Wireless Scan" +msgstr "네트워크 연결: 무선랜 스캔 결과" + +msgid "Joining Network: %q" +msgstr "네트워크 연결중: %q" + +msgid "Keep settings" +msgstr "설정 유지" + +msgid "Kernel Log" +msgstr "Kernel 로그" + +msgid "Kernel Version" +msgstr "Kernel 버전" + +msgid "Key" +msgstr "" + +msgid "Key #%d" +msgstr "" + +msgid "Kill" +msgstr "" + +msgid "L2TP" +msgstr "" + +msgid "L2TP Server" +msgstr "" + +msgid "LCP echo failure threshold" +msgstr "" + +msgid "LCP echo interval" +msgstr "" + +msgid "LLC" +msgstr "" + +msgid "Label" +msgstr "" + +msgid "Language" +msgstr "언어" + +msgid "Language and Style" +msgstr "언어와 스타일" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "임대 시간" + +msgid "Lease validity time" +msgstr "" + +msgid "Leasefile" +msgstr "" + +msgid "Leasetime remaining" +msgstr "남아있는 임대 시간" + +msgid "Leave empty to autodetect" +msgstr "" + +msgid "Leave empty to use the current WAN address" +msgstr "" + +msgid "Legend:" +msgstr "" + +msgid "Limit" +msgstr "제한" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" +"DNS 를 제공하기로한 subnet 인터페이스들에 대해서만 DNS 서비스를 제공합니다." + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" +"지정한 인터페이스에만 listening 하며 미지정시 모든 인터페이스에 적용됩니다" + +msgid "Listening port for inbound DNS queries" +msgstr "" + +msgid "Load" +msgstr "부하" + +msgid "Load Average" +msgstr "부하 평균" + +msgid "Loading" +msgstr "" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "" + +msgid "Local IPv6 address" +msgstr "" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "Local 시작 프로그램" + +msgid "Local Time" +msgstr "지역 시간" + +msgid "Local domain" +msgstr "" + +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" + +msgid "Local server" +msgstr "" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" + +msgid "Localise queries" +msgstr "" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "Log output 레벨" + +msgid "Log queries" +msgstr "" + +msgid "Logging" +msgstr "" + +msgid "Login" +msgstr "로그인" + +msgid "Logout" +msgstr "로그아웃" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "임대되는 주소의 최소 시작점. (네트워크 주소로 부터의 offset)" + +msgid "MAC-Address" +msgstr "MAC-주소" + +msgid "MAC-Address Filter" +msgstr "MAC-주소 필터" + +msgid "MAC-Filter" +msgstr "MAC-필터" + +msgid "MAC-List" +msgstr "" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "" + +msgid "MTU" +msgstr "" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "Active DHCP lease 건의 최대 허용 숫자" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "허용되는 최대 동시 DNS query 수" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "허용된 최대 EDNS.0 UDP 패킷 크기" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "" + +msgid "Maximum hold time" +msgstr "" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "임대될 수 있는 주소의 최대 숫자." + +msgid "Mbit/s" +msgstr "" + +msgid "Memory" +msgstr "메모리" + +msgid "Memory usage (%)" +msgstr "메모리 사용량 (%)" + +msgid "Metric" +msgstr "" + +msgid "Minimum Rate" +msgstr "" + +msgid "Minimum hold time" +msgstr "" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "" + +msgid "Model" +msgstr "모델" + +msgid "Modem device" +msgstr "" + +msgid "Modem init timeout" +msgstr "" + +msgid "Monitor" +msgstr "" + +msgid "Mount Entry" +msgstr "" + +msgid "Mount Point" +msgstr "" + +msgid "Mount Points" +msgstr "" + +msgid "Mount Points - Mount Entry" +msgstr "" + +msgid "Mount Points - Swap Entry" +msgstr "" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "" + +msgid "Mount point" +msgstr "" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "" + +msgid "Move down" +msgstr "" + +msgid "Move up" +msgstr "" + +msgid "Multicast Rate" +msgstr "" + +msgid "Multicast address" +msgstr "" + +msgid "NAS ID" +msgstr "" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "NTP 서버 목록" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "이름" + +msgid "Name of the new interface" +msgstr "" + +msgid "Name of the new network" +msgstr "" + +msgid "Navigation" +msgstr "" + +msgid "Netmask" +msgstr "" + +msgid "Network" +msgstr "네트워크" + +msgid "Network Utilities" +msgstr "네트워크 유틸리티" + +msgid "Network boot image" +msgstr "네트워크 boot 이미지" + +msgid "Network without interfaces." +msgstr "" + +msgid "Next »" +msgstr "" + +msgid "No DHCP Server configured for this interface" +msgstr "" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "이 table 에는 정의된 chain 이 없음" + +msgid "No files found" +msgstr "" + +msgid "No information available" +msgstr "이용 가능한 정보가 없습니다" + +msgid "No negative cache" +msgstr "" + +msgid "No network configured on this device" +msgstr "" + +msgid "No network name specified" +msgstr "" + +msgid "No package lists available" +msgstr "" + +msgid "No password set!" +msgstr "암호 설정을 해주세요!" + +msgid "No rules in this chain" +msgstr "" + +msgid "No zone assigned" +msgstr "" + +msgid "Noise" +msgstr "노이즈" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "" + +msgid "Normal" +msgstr "" + +msgid "Not Found" +msgstr "" + +msgid "Not associated" +msgstr "" + +msgid "Not connected" +msgstr "연결되지 않음" + +msgid "Note: Configuration files will be erased." +msgstr "" + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "" + +msgid "Nslookup" +msgstr "" + +msgid "OK" +msgstr "" + +msgid "OPKG-Configuration" +msgstr "OPKG-설정" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"이 페이지에서는 네트워크 인터페이스를 설정할 수 있습니다. \"Bridge 인터페이스" +"\" 항목을 클릭하고, 공백으로 구분된 네트워크 인터페이스들의 이름을 적는 방식" +"으로 여러 인터페이스들을 bridge 할 수 있습니다. 또한 VLAN 표기법인 INTERFACE.VLANNR " +"(: eth0.1) 를 사용하실 수 " +"있습니다." + +msgid "On-State Delay" +msgstr "" + +msgid "One of hostname or mac address must be specified!" +msgstr "" + +msgid "One or more fields contain invalid values!" +msgstr "" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "" + +msgid "Open list..." +msgstr "목록 열람..." + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "동작 주파수" + +msgid "Option changed" +msgstr "변경된 option" + +msgid "Option removed" +msgstr "삭제된 option" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "" + +msgid "Other:" +msgstr "" + +msgid "Out" +msgstr "" + +msgid "Outbound:" +msgstr "" + +msgid "Outdoor Channels" +msgstr "" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "MAC 주소 덮어쓰기" + +msgid "Override MTU" +msgstr "MTU 덮어쓰기" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "기본 인터페이스 이름을 덮어씁니다" + +msgid "Override the gateway in DHCP responses" +msgstr "" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" +"Client 에 전달될 netmask 를 덮어 쓸 수 있습니다. 보통 해당 값은 제공되는 " +"subnet 에 따라 자동 계산됩니다." + +msgid "Override the table used for internal routes" +msgstr "" + +msgid "Overview" +msgstr "개요" + +msgid "Owner" +msgstr "" + +msgid "PAP/CHAP password" +msgstr "" + +msgid "PAP/CHAP username" +msgstr "" + +msgid "PID" +msgstr "" + +msgid "PIN" +msgstr "" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "" + +msgid "PPPoA Encapsulation" +msgstr "" + +msgid "PPPoATM" +msgstr "" + +msgid "PPPoE" +msgstr "" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "" + +msgid "Package lists are older than 24 hours" +msgstr "" + +msgid "Package name" +msgstr "패키지 이름" + +msgid "Packets" +msgstr "" + +msgid "Part of zone %q" +msgstr "" + +msgid "Password" +msgstr "암호" + +msgid "Password authentication" +msgstr "암호 인증" + +msgid "Password of Private Key" +msgstr "" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "" + +msgid "Path to Client-Certificate" +msgstr "" + +msgid "Path to Private Key" +msgstr "" + +msgid "Path to executable which handles the button event" +msgstr "" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "최고치:" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "재부팅하기" + +msgid "Perform reset" +msgstr "Reset 하기" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "" + +msgid "Physical Settings" +msgstr "Physical 설정" + +msgid "Ping" +msgstr "" + +msgid "Pkts." +msgstr "Pkts." + +msgid "Please enter your username and password." +msgstr "사용자이름과 암호를 입력해 주세요." + +msgid "Policy" +msgstr "" + +msgid "Port" +msgstr "포트" + +msgid "Port status:" +msgstr "포트 상태:" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "" + +msgid "Processes" +msgstr "프로세스" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "Prot." + +msgid "Protocol" +msgstr "프로토콜" + +msgid "Protocol family" +msgstr "" + +msgid "Protocol of the new interface" +msgstr "" + +msgid "Protocol support is not installed" +msgstr "" + +msgid "Provide NTP server" +msgstr "" + +msgid "Provide new network" +msgstr "새로운 네트워크를 추가합니다" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "" + +msgid "RX" +msgstr "" + +msgid "RX Rate" +msgstr "" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "" + +msgid "Radius-Accounting-Port" +msgstr "" + +msgid "Radius-Accounting-Secret" +msgstr "" + +msgid "Radius-Accounting-Server" +msgstr "" + +msgid "Radius-Authentication-Port" +msgstr "" + +msgid "Radius-Authentication-Secret" +msgstr "" + +msgid "Radius-Authentication-Server" +msgstr "" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"/etc/ethers 파일을 읽어 DHCP-서버를 설정합니다" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" + +msgid "Really reset all changes?" +msgstr "" + +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" +"정말로 네트워크를 shutdown 하시겠습니까?\\n이 인터페이스를 통해 연결하였다면 " +"접속이 끊어질 수 있습니다." + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" + +msgid "Really switch protocol?" +msgstr "정말 프로토콜 변경을 원하세요?" + +msgid "Realtime Connections" +msgstr "실시간 연결수" + +msgid "Realtime Graphs" +msgstr "실시간 그래프" + +msgid "Realtime Load" +msgstr "실시간 부하" + +msgid "Realtime Traffic" +msgstr "실시간 트래픽" + +msgid "Realtime Wireless" +msgstr "" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "" + +msgid "Reboot" +msgstr "재부팅" + +msgid "Rebooting..." +msgstr "" + +msgid "Reboots the operating system of your device" +msgstr "장치의 운영체제를 재부팅합니다" + +msgid "Receive" +msgstr "" + +msgid "Receiver Antenna" +msgstr "" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "이 인터페이스를 재연결합니다" + +msgid "Reconnecting interface" +msgstr "인터페이스 재연결중입니다" + +msgid "References" +msgstr "" + +msgid "Regulatory Domain" +msgstr "" + +msgid "Relay" +msgstr "" + +msgid "Relay Bridge" +msgstr "" + +msgid "Relay between networks" +msgstr "" + +msgid "Relay bridge" +msgstr "" + +msgid "Remote IPv4 address" +msgstr "" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "제거" + +msgid "Repeat scan" +msgstr "" + +msgid "Replace entry" +msgstr "" + +msgid "Replace wireless configuration" +msgstr "" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "특정 ISP 들에 요구됨. 예: Charter (DOCSIS 3 기반)" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "초기화" + +msgid "Reset Counters" +msgstr "Counter 초기화" + +msgid "Reset to defaults" +msgstr "초기값으로 reset" + +msgid "Resolv and Hosts Files" +msgstr "Resolv 와 Hosts 파일" + +msgid "Resolve file" +msgstr "Resolve 파일" + +msgid "Restart" +msgstr "재시작" + +msgid "Restart Firewall" +msgstr "방화벽 재시작" + +msgid "Restore backup" +msgstr "백업 복구" + +msgid "Reveal/hide password" +msgstr "암호 보이기/숨기기" + +msgid "Revert" +msgstr "변경 취소" + +msgid "Root" +msgstr "" + +msgid "Root directory for files served via TFTP" +msgstr "TFTP 를 통해 제공되는 파일들의 root 디렉토리" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "라우터 암호" + +msgid "Routes" +msgstr "Route 경로" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"Route 경로는 특정 호스트 혹은 네트워크가 사용해야 할 인터페이스와 gateway 정" +"보를 나타냅니다." + +msgid "Run a filesystem check before mounting the device" +msgstr "" + +msgid "Run filesystem check" +msgstr "" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "저장" + +msgid "Save & Apply" +msgstr "저장 & 적용" + +msgid "Save & Apply" +msgstr "저장 & 적용" + +msgid "Scan" +msgstr "Scan 하기" + +msgid "Scheduled Tasks" +msgstr "작업 관리" + +msgid "Section added" +msgstr "추가된 section" + +msgid "Section removed" +msgstr "삭제된 section" + +msgid "See \"mount\" manpage for details" +msgstr "" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" + +msgid "Separate Clients" +msgstr "" + +msgid "Separate WDS" +msgstr "" + +msgid "Server Settings" +msgstr "서버 설정" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "" + +msgid "Service Type" +msgstr "" + +msgid "Services" +msgstr "서비스" + +msgid "Set up Time Synchronization" +msgstr "" + +msgid "Setup DHCP Server" +msgstr "" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "현재 백업 파일 목록 보기" + +msgid "Shutdown this interface" +msgstr "이 인터페이스를 정지합니다" + +msgid "Shutdown this network" +msgstr "이 네트워크를 shutdown 합니다" + +msgid "Signal" +msgstr "신호" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "" + +msgid "Size" +msgstr "Size" + +msgid "Size (.ipk)" +msgstr "크기 (.ipk)" + +msgid "Skip" +msgstr "" + +msgid "Skip to content" +msgstr "" + +msgid "Skip to navigation" +msgstr "" + +msgid "Slot time" +msgstr "" + +msgid "Software" +msgstr "소프트웨어" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "" + +msgid "Sorry, the object you requested was not found." +msgstr "" + +msgid "Sorry, the server encountered an unexpected error." +msgstr "" + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" + +msgid "Sort" +msgstr "순서" + +msgid "Source" +msgstr "" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "" + +msgid "Specifies the directory the device is attached to" +msgstr "" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "Dropbear instance 의 listening 포트를 지정합니다" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "" + +msgid "Start" +msgstr "시작" + +msgid "Start priority" +msgstr "시작 우선순위" + +msgid "Startup" +msgstr "시작 프로그램" + +msgid "Static IPv4 Routes" +msgstr "Static IPv4 Route 경로" + +msgid "Static IPv6 Routes" +msgstr "Static IPv6 Route 경로" + +msgid "Static Leases" +msgstr "Static Lease 들" + +msgid "Static Routes" +msgstr "Static Route 경로" + +msgid "Static WDS" +msgstr "" + +msgid "Static address" +msgstr "" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" +"Static Lease 는 DHCP client 에게 고정된 IP 주소와 symbolic hostname 을 할당" +"할 때 사용됩니다. 이 기능은 또한 지정된 host 에 대해서만 주소 임대를 하도록 " +"하는 non-dynamic 인터페이스 설정에도 사용됩니다." + +msgid "Status" +msgstr "상태" + +msgid "Stop" +msgstr "정지" + +msgid "Strict order" +msgstr "Strict order" + +msgid "Submit" +msgstr "제출하기" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "" + +msgid "Switch" +msgstr "스위치" + +msgid "Switch %q" +msgstr "스위치 %q" + +msgid "Switch %q (%s)" +msgstr "스위치 %q (%s)" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "스위치 VLAN" + +msgid "Switch protocol" +msgstr "프로토콜 변경" + +msgid "Sync with browser" +msgstr "브라우저 시간대로 동기화" + +msgid "Synchronizing..." +msgstr "" + +msgid "System" +msgstr "시스템" + +msgid "System Log" +msgstr "시스템 로그" + +msgid "System Properties" +msgstr "시스템 등록 정보" + +msgid "System log buffer size" +msgstr "System log 버퍼 크기" + +msgid "TCP:" +msgstr "" + +msgid "TFTP Settings" +msgstr "TFTP 설정" + +msgid "TFTP server root" +msgstr "TFTP 서버 root" + +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "" + +msgid "Table" +msgstr "" + +msgid "Target" +msgstr "" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "" + +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" +"장치 설정 섹션은 channel, transmit power 혹은 antenna 선택과 같은 물" +"리적인 설정 내용을 다룹니다. 이 설정은 (만약 radio 하드웨어가 multi-SSID 지" +"원이 가능하다면) 정의된 모든 무선 네트워크에 공통적으로 적용됩니다. 암호화 혹" +"은 operation mode 와 같은 각 네트워크 설정들은 인터페이스 설정에서 " +"다루어집니다." + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" + +msgid "The following changes have been committed" +msgstr "" + +msgid "The following changes have been reverted" +msgstr "다음의 변경 사항들이 취소되었습니다" + +msgid "The following rules are currently active on this system." +msgstr "다음의 rule 들이 현재 이 시스템에 적용 중입니다." + +msgid "The given network name is not unique" +msgstr "" + +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" + +msgid "The length of the IPv6 prefix in bits" +msgstr "" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" +"이 장치의 네트워크 포트들은 컴퓨터끼리 직접 통신을 할 수 있도록 여러 VLAN 으로 구성될 수 있습니다. " +"VLAN은 종종 다른 네트워크 " +"segment 들을 분리하는데 사용되기도 합니다. 한 개의 uplink 포트가 인터넷에 연" +"결되어 있고 나머지 포트들은 local 네트워크로 연결되는 구성에 자주 사용됩니다." + +msgid "The selected protocol needs a device assigned" +msgstr "" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" + +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" + +msgid "There are no active leases." +msgstr "" + +msgid "There are no pending changes to apply!" +msgstr "" + +msgid "There are no pending changes to revert!" +msgstr "" + +msgid "There are no pending changes!" +msgstr "" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" +"이 공유기에 암호 설정이 되지 않았습니다. 웹 UI 와 SSH 부분을 보호하기 위해서 " +"꼭 root 암호를 설정해 주세요." + +msgid "This IPv4 address of the relay" +msgstr "" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" +"이것은 sysupgrade 시 유지되어야 하는 파일과 디렉토리 목록에 대한 shell glob " +"패턴들입니다. /etc/config/ 하위의 수정된 파일이나 특정 다른 설정들은 자동적" +"으로 변경 사항이 보존됩니다." + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" +"이것은 /etc/rc.local 파일의 내용입니다. 여기에 ('exit 0' 앞에) 부팅 절차가 " +"끝날 때 실행하고자 하는 명령들을 삽입하세요." + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "아래는 예정된 작업들이 정의된 시스템 crontab 내용입니다." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" +"이 목록은 현재 실행중인 시스템 프로세스와 해당 상태에 대한 개요를 보여줍니다." + +msgid "This page allows the configuration of custom button actions" +msgstr "" + +msgid "This page gives an overview over currently active network connections." +msgstr "이 페이지는 현재 active 상태인 네트워크 연결을 보여줍니다." + +msgid "This section contains no values yet" +msgstr "이 section 은 아직 입력된 값이 없습니다" + +msgid "Time Synchronization" +msgstr "시간 동기화" + +msgid "Time Synchronization is not configured yet." +msgstr "시간 동기화가 아직 설정되지 않았습니다." + +msgid "Timezone" +msgstr "시간대" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" +"설정 파일을 복구하고자 한다면 이전에 백업하신 아카이브 파일을 여기로 업로드" +"할 수 있습니다." + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "총 이용 가능한 양" + +msgid "Traceroute" +msgstr "" + +msgid "Traffic" +msgstr "트래픽" + +msgid "Transfer" +msgstr "전송량" + +msgid "Transmission Rate" +msgstr "" + +msgid "Transmit" +msgstr "" + +msgid "Transmit Power" +msgstr "" + +msgid "Transmitter Antenna" +msgstr "" + +msgid "Trigger" +msgstr "" + +msgid "Trigger Mode" +msgstr "" + +msgid "Tunnel ID" +msgstr "" + +msgid "Tunnel Interface" +msgstr "" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "" + +msgid "Tx-Power" +msgstr "" + +msgid "Type" +msgstr "유형" + +msgid "UDP:" +msgstr "" + +msgid "UMTS only" +msgstr "" + +msgid "UMTS/GPRS/EV-DO" +msgstr "" + +msgid "USB Device" +msgstr "" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "" + +msgid "Unable to dispatch" +msgstr "" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "알수없음" + +msgid "Unknown Error, password not changed!" +msgstr "" + +msgid "Unmanaged" +msgstr "" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "적용 안된 변경 사항" + +msgid "Unsupported protocol type." +msgstr "" + +msgid "Update lists" +msgstr "" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" +"실행중인 firmware 변경을 하고자 한다면 여기에 sysupgrade 호환성이 유지되는 이" +"미지를 업로드하세요. 현재의 설정을 유지하고자 한다면 \"설정 유지\" 를 체크하" +"세요. (이를 지원하는 firmware 이미지 필요)" + +msgid "Upload archive..." +msgstr "아카이브 업로드..." + +msgid "Uploaded File" +msgstr "Uploaded File" + +msgid "Uptime" +msgstr "가동 시간" + +msgid "Use /etc/ethers" +msgstr "/etc/ethers 사용" + +msgid "Use DHCP gateway" +msgstr "" + +msgid "Use DNS servers advertised by peer" +msgstr "Peer 가 권장한 DNS 서버 사용" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "" + +msgid "Use MTU on tunnel interface" +msgstr "" + +msgid "Use TTL on tunnel interface" +msgstr "" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "Broadcast flag 사용" + +msgid "Use builtin IPv6-management" +msgstr "자체 내장 IPv6-관리 기능 사용" + +msgid "Use custom DNS servers" +msgstr "임의의 DNS 서버 사용" + +msgid "Use default gateway" +msgstr "Default gateway 사용" + +msgid "Use gateway metric" +msgstr "Gateway metric 사용" + +msgid "Use routing table" +msgstr "Routing table 사용" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" +"새로운 항목을 추가하기 위해서는 추가 버튼을 사용하세요. MAC-주소" +"는 host 를 나타내며, IPv4-주소는 사용할 고정 주소를 나타내고, " +"요청하는 host 에 대해 hostname 이 symbolic name 으로 부여됩니다. 선" +"택 사항인 임대 시간은 해당 host 에만 해당되는 시각을 설정하는데 사용" +"될 수 있습니다. 예를 들어 12h, 3d 혹은 infinite 값들이 가능합니다." + +msgid "Used" +msgstr "" + +msgid "Used Key Slot" +msgstr "" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "사용자이름" + +msgid "VC-Mux" +msgstr "" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "" + +msgid "VLANs on %q (%s)" +msgstr "VLAN 설정: %q (%s)" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "DHCP 요청시 전송할 Vendor Class" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "" + +msgid "Version" +msgstr "버전" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "" + +msgid "WEP Shared Key" +msgstr "" + +msgid "WEP passphrase" +msgstr "" + +msgid "WMM Mode" +msgstr "WMM Mode" + +msgid "WPA passphrase" +msgstr "" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "변경 사항이 적용되기를 기다리는 중입니다..." + +msgid "Waiting for command to complete..." +msgstr "실행한 명령이 끝나기를 기다리는 중입니다..." + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "무선" + +msgid "Wireless Adapter" +msgstr "" + +msgid "Wireless Network" +msgstr "무선랜 네트워크" + +msgid "Wireless Overview" +msgstr "무선랜 개요" + +msgid "Wireless Security" +msgstr "무선랜 보안" + +msgid "Wireless is disabled or not associated" +msgstr "무선이 비활성화되어 있거나 연결되어 있지 않습니다" + +msgid "Wireless is restarting..." +msgstr "무선랜이 재시작중입니다..." + +msgid "Wireless network is disabled" +msgstr "무선 네트워크가 꺼져 있음" + +msgid "Wireless network is enabled" +msgstr "무선 네트워크가 켜져 있음" + +msgid "Wireless restarted" +msgstr "무선랜이 재시작되었습니다" + +msgid "Wireless shut down" +msgstr "무선랜이 shutdown 되었습니다" + +msgid "" +"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 에 기록합니다" + +msgid "Write system log to file" +msgstr "System log 출력 파일 경로" + +msgid "XR Support" +msgstr "" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"이 메뉴에서 설치된 init script 를 활성화/비활성화 할 수 있습니다. 변경 사항" +"은 장치가 재부팅 될 때 적용되게 됩니다.
경고: 만약 \"network\" " +"와 같은 중요 init script 를 비활성화 할 경우, 장치에 접속을 못하실 수 있습니" +"다!" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "" + +msgid "auto" +msgstr "" + +msgid "baseT" +msgstr "" + +msgid "bridged" +msgstr "" + +msgid "create:" +msgstr "" + +msgid "creates a bridge over specified interface(s)" +msgstr "지정한 인터페이스(들)로 구성된 bridge 를 생성합니다" + +msgid "dB" +msgstr "" + +msgid "dBm" +msgstr "" + +msgid "disable" +msgstr "" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "만료됨" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" +"할당된 DHCP-lease " +"정보가 저장되는 파일" + +msgid "forward" +msgstr "" + +msgid "full-duplex" +msgstr "" + +msgid "half-duplex" +msgstr "" + +msgid "help" +msgstr "" + +msgid "hidden" +msgstr "" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "Target 이 네트워크일 경우" + +msgid "input" +msgstr "" + +msgid "kB" +msgstr "" + +msgid "kB/s" +msgstr "" + +msgid "kbit/s" +msgstr "" + +msgid "local DNS file" +msgstr "local DNS 파일" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "" + +msgid "no link" +msgstr "link 없음" + +msgid "none" +msgstr "" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "" + +msgid "on" +msgstr "" + +msgid "open" +msgstr "" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "" + +msgid "unlimited" +msgstr "" + +msgid "unspecified" +msgstr "" + +msgid "unspecified -or- create:" +msgstr "unspecified -혹은- create:" + +msgid "untagged" +msgstr "" + +msgid "yes" +msgstr "" + +msgid "« Back" +msgstr "" + +#~ msgid "Leasetime" +#~ msgstr "임대 시간" diff --git a/luci-base/po/ms/base.po b/luci-base/po/ms/base.po new file mode 100644 index 000000000..0a3e972d3 --- /dev/null +++ b/luci-base/po/ms/base.po @@ -0,0 +1,3814 @@ +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2010-05-07 17:57+1000\n" +"PO-Revision-Date: 2010-05-07 17:57+1000\n" +"Last-Translator: Wai Chet Teow \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Translate Toolkit 1.1.1\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "" + +msgid "(%s available)" +msgstr "(%s sedia)" + +msgid "(empty)" +msgstr "" + +msgid "(no interfaces attached)" +msgstr "(tiada interface dipasang)" + +msgid "-- Additional Field --" +msgstr "-- Gelanggang Tambahan --" + +msgid "-- Please choose --" +msgstr "-- Sila pilih --" + +msgid "-- custom --" +msgstr "-- memperibadi --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "" + +msgid "15 Minute Load:" +msgstr "" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "DNS query port" +msgstr "" + +msgid "DNS server port" +msgstr "" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" + +msgid "ESSID" +msgstr "" +"ESSID" + +msgid "IPv4-Address" +msgstr "IPv4-Alamat" + +msgid "IPv4-Gateway" +msgstr "IPv4-Pintu gerbang" + +msgid "IPv4-Netmask" +msgstr "IPv4-Netmask" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "IPv6 Host-Alamat atau Rangkaian (CIDR)" + +msgid "IPv6-Gateway" +msgstr "IPv6-Pintu gerbang" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "Konfigurasi lampu LED" + +msgid "LED Name" +msgstr "" + +msgid "MAC-Address" +msgstr "MAC-Alamat" + +msgid "" +"Max. DHCP leases" +msgstr "" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" + +msgid "Max. concurrent queries" +msgstr "" + +msgid "%s - %s" +msgstr "" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "" + +msgid "AR Support" +msgstr "AR-Penyokong" + +msgid "ARP retry threshold" +msgstr "" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" + +msgid "ATM device number" +msgstr "" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "" + +msgid "Access Point" +msgstr "Pusat akses" + +msgid "Action" +msgstr "Aksi" + +msgid "Actions" +msgstr "Aksi" + +msgid "Activate this network" +msgstr "" + +msgid "Active IPv4-Routes" +msgstr "Aktive IPv4-Routen" + +msgid "Active IPv6-Routes" +msgstr "Aktif IPv6-Laluan" + +msgid "Active Connections" +msgstr "Sambungan Aktif" + +msgid "Active DHCP Leases" +msgstr "" + +msgid "Active DHCPv6 Leases" +msgstr "" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc" + +msgid "Add" +msgstr "Tambah" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "" + +msgid "Add new interface..." +msgstr "" + +msgid "Additional Hosts files" +msgstr "" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "" + +msgid "Address to access local relay bridge" +msgstr "" + +msgid "Administration" +msgstr "Pentadbiran" + +msgid "Advanced Settings" +msgstr "Tetapan Lanjutan" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "Membenarkan pengesahan kata laluan SSH" + +msgid "Allow all except listed" +msgstr "Izinkan semua kecualian yang disenaraikan" + +msgid "Allow listed only" +msgstr "Izinkan senarai saja" + +msgid "Allow localhost" +msgstr "" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" + +msgid "Allow root logins with password" +msgstr "" + +msgid "Allow the root user to login with password" +msgstr "" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "Antena 1" + +msgid "Antenna 2" +msgstr "Antena 2" + +msgid "Antenna Configuration" +msgstr "" + +msgid "Any zone" +msgstr "" + +msgid "Apply" +msgstr "Melaksanakan" + +msgid "Applying changes" +msgstr "Melaksanakan perubahan" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "" + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "Associated Stesen" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "Authentifizierung" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "Pengesahan" + +msgid "Authorization Required" +msgstr "Otorisasi Diperlukan" + +msgid "Auto Refresh" +msgstr "" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "Boleh didapati" + +msgid "Available packages" +msgstr "" + +msgid "Average:" +msgstr "" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "" + +msgid "Back" +msgstr "" + +msgid "Back to Overview" +msgstr "" + +msgid "Back to configuration" +msgstr "" + +msgid "Back to overview" +msgstr "Kembali ke ikhtisar" + +msgid "Back to scan results" +msgstr "Kembali ke keputusan scan" + +msgid "Background Scan" +msgstr "Latar Belakang Scan" + +msgid "Backup / Flash Firmware" +msgstr "" + +msgid "Backup / Restore" +msgstr "Sandaran / Mengembalikan" + +msgid "Backup file list" +msgstr "" + +msgid "Bad address specified!" +msgstr "" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "" + +msgid "Bogus NX Domain Override" +msgstr "" + +msgid "Bridge" +msgstr "Bridge" + +msgid "Bridge interfaces" +msgstr "Antara Muka Bridge" + +msgid "Bridge unit number" +msgstr "" + +msgid "Bring up on boot" +msgstr "" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "" + +msgid "Buffered" +msgstr "" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "Butang" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "Penggunaan CPU (%)" + +msgid "Cancel" +msgstr "Batal" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "Rantai" + +msgid "Changes" +msgstr "Laman" + +msgid "Changes applied." +msgstr "Laman diterapkan." + +msgid "Changes the administrator password for accessing the device" +msgstr "" + +msgid "Channel" +msgstr "Saluran" + +msgid "Check" +msgstr "" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "Jumlah disemak " + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "Pilih zon firewall yang anda ingin tetapkan untuk antar muka ini." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" + +msgid "Cipher" +msgstr "" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" + +#, fuzzy +msgid "Client" +msgstr "Pelanggan" + +msgid "Client ID to send when requesting DHCP" +msgstr "" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" + +msgid "Close list..." +msgstr "" + +msgid "Collecting data..." +msgstr "" + +msgid "Command" +msgstr "Perintah" + +msgid "Common Configuration" +msgstr "" + +msgid "Compression" +msgstr "Mampatan" + +msgid "Configuration" +msgstr "Konfigurasi" + +msgid "Configuration applied." +msgstr "" + +msgid "Configuration files will be kept." +msgstr "" + +msgid "Confirmation" +msgstr "Pengesahan" + +msgid "Connect" +msgstr "" + +msgid "Connected" +msgstr "" + +msgid "Connection Limit" +msgstr "Sambungan Batas" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "" + +msgid "Country" +msgstr "" + +msgid "Country Code" +msgstr "Kod negara" + +msgid "Cover the following interface" +msgstr "" + +msgid "Cover the following interfaces" +msgstr "" + +msgid "Create / Assign firewall-zone" +msgstr "Buat / Menetapkan dinding api-zon" + +msgid "Create Interface" +msgstr "" + +msgid "Create a bridge over multiple interfaces" +msgstr "" + +msgid "Critical" +msgstr "" + +msgid "Cron Log Level" +msgstr "" + +msgid "Custom Interface" +msgstr "" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "Mengkustomisasi perilaku peranti LED jika mungkin." + +msgid "DHCP Leases" +msgstr "" + +msgid "DHCP Server" +msgstr "" + +msgid "DHCP and DNS" +msgstr "" + +msgid "DHCP client" +msgstr "" + +msgid "DHCP-Options" +msgstr "DHCP-Pilihan" + +msgid "DHCPv6 Leases" +msgstr "" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "" + +msgid "DNS forwardings" +msgstr "" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "" + +msgid "Default %d" +msgstr "" + +msgid "Default gateway" +msgstr "" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "" + +msgid "Define a name for this network." +msgstr "" + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" + +msgid "Delete" +msgstr "Padam" + +msgid "Delete this network" +msgstr "" + +msgid "Description" +msgstr "Keterangan" + +msgid "Design" +msgstr "Disain" + +msgid "Destination" +msgstr "Tempat tujuan" + +msgid "Device" +msgstr "Alat" + +msgid "Device Configuration" +msgstr "" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "" + +msgid "Disable" +msgstr "" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" + +msgid "Disable DNS setup" +msgstr "" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "Mematikan pemasa HW-Beacon" + +msgid "Disabled" +msgstr "" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "" + +msgid "Displaying only packages containing" +msgstr "" + +msgid "Distance Optimization" +msgstr "Jarak Optimasi" + +msgid "Distance to farthest network member in meters." +msgstr "Jarak ke rangkaian terjauh ahli dalam meter." + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "Keanekaragaman" + +# Nur für NAT-Firewalls? +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Dnsmasq adalah gabungan DHCP-Pelayan danDNS-" +"Forwarder untuk NAT " +"firewall" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" + +msgid "Do not forward reverse lookups for local networks" +msgstr "" + +msgid "Do not send probe responses" +msgstr "Jangan menghantar jawapan penyelidikan" + +msgid "Domain required" +msgstr "Domain diperlukan" + +msgid "Domain whitelist" +msgstr "" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "Jangan hantar permintaan DNS tanpa nama DNS" + +msgid "Download and install package" +msgstr "Turun dan memasang pakej" + +msgid "Download backup" +msgstr "" + +msgid "Dropbear Instance" +msgstr "" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear menawarkan SSH kulit rangkaian aksesdan pelayan yang terintegrasi." + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "Dinamik DHCP" + +msgid "Dynamic tunnel" +msgstr "" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "EAP-Kaedah" + +msgid "Edit" +msgstr "Sunting" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "" + +msgid "Edit this network" +msgstr "" + +msgid "Emergency" +msgstr "" + +msgid "Enable" +msgstr "" + +msgid "Enable STP" +msgstr "Mengaktifkan STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "" + +msgid "Enable Jumbo Frame passthrough" +msgstr "" + +msgid "Enable NTP client" +msgstr "" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "" + +msgid "Enable VLAN functionality" +msgstr "" + +msgid "Enable WPS pushbutton, requires WPA(2)-PSK" +msgstr "" + +msgid "Enable key reinstallation (KRACK) countermeasures" +msgstr "" + +msgid "Enable learning and aging" +msgstr "" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "" + +msgid "Enable this swap" +msgstr "" + +msgid "Enable/Disable" +msgstr "" + +msgid "Enabled" +msgstr "" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "Aktifkan spanning Tree Protokol di jambatan ini" + +msgid "Encapsulation mode" +msgstr "" + +msgid "Encryption" +msgstr "Enkripsi" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "" + +msgid "Error" +msgstr "Kesalahan" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "Ethernet Adapter" + +msgid "Ethernet Switch" +msgstr "Ethernet Beralih" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "" + +msgid "Expires" +msgstr "" + +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "" + +msgid "External system log server port" +msgstr "" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "Frame Cepat" + +msgid "File" +msgstr "" + +msgid "Filename of the boot image advertised to clients" +msgstr "" + +msgid "Filesystem" +msgstr "Fail Sistem" + +msgid "Filter" +msgstr "Penapis" + +msgid "Filter private" +msgstr "Penapis swasta" + +msgid "Filter useless" +msgstr "Penapis tak berguna" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "" + +msgid "Find package" +msgstr "Cari pakej" + +msgid "Finish" +msgstr "Selesai" + +msgid "Firewall" +msgstr "Firewall" + +msgid "Firewall Settings" +msgstr "Tetapan Firewall" + +msgid "Firewall Status" +msgstr "Status Firewall" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "" + +msgid "Fixed source port for outbound DNS queries" +msgstr "" + +msgid "Flash Firmware" +msgstr "Firmware Flash" + +msgid "Flash image..." +msgstr "" + +msgid "Flash new firmware image" +msgstr "" + +msgid "Flash operations" +msgstr "" + +msgid "Flashing..." +msgstr "" + +msgid "Force" +msgstr "Paksa" + +msgid "Force CCMP (AES)" +msgstr "" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "" + +msgid "Force TKIP" +msgstr "" + +msgid "Force TKIP and CCMP (AES)" +msgstr "" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "" + +msgid "Forwarding mode" +msgstr "" + +msgid "Fragmentation Threshold" +msgstr "Fragmentasi Ambang" + +msgid "Frame Bursting" +msgstr "Bingkai Meletup" + +msgid "Free" +msgstr "" + +msgid "Free space" +msgstr "" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "" + +msgid "GPRS only" +msgstr "" + +msgid "Gateway" +msgstr "" + +msgid "Gateway ports" +msgstr "" + +msgid "General Settings" +msgstr "" + +msgid "General Setup" +msgstr "Setup Umum" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "" + +msgid "Go to relevant configuration page" +msgstr "Menuju ke halaman konfigurasi yang relevan" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "Kawalan" + +msgid "Hang Up" +msgstr "Menutup" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"Di sini anda boleh mengkonfigurasi aspek asas peranti anda seperti nama host " +"atau zon." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" + +msgid "Hermes 802.11b Wireless Controller" +msgstr "" + +msgid "Hide ESSID" +msgstr "Menyembunyikan ESSID" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "Entri host" + +msgid "Host expiry timeout" +msgstr "" + +msgid "Host-IP or Network" +msgstr "IP host atau rangkaian" + +msgid "Hostname" +msgstr "Nama Host" + +msgid "Hostname to send when requesting DHCP" +msgstr "" + +msgid "Hostnames" +msgstr "Nama Host" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "Alamat IP" + +msgid "IPv4" +msgstr "" + +msgid "IPv4 Firewall" +msgstr "" + +msgid "IPv4 WAN Status" +msgstr "" + +msgid "IPv4 address" +msgstr "" + +msgid "IPv4 and IPv6" +msgstr "" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "" + +msgid "IPv4 gateway" +msgstr "" + +msgid "IPv4 netmask" +msgstr "" + +msgid "IPv4 only" +msgstr "" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "" + +msgid "IPv4-Address" +msgstr "" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "Konfigurasi IPv6" + +msgid "IPv6 Firewall" +msgstr "" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "" + +msgid "IPv6 address" +msgstr "" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "" + +msgid "IPv6 only" +msgstr "" + +msgid "IPv6 prefix" +msgstr "" + +msgid "IPv6 prefix length" +msgstr "" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "" + +msgid "Identity" +msgstr "Identiti" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" + +msgid "If unchecked, no default route is configured" +msgstr "" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"Jika memori fizikal anda tidak cukup data yang boleh digunakan sementara " +"menukar ke peranti-penukar yang dihasilkan dalam jumlah RAM berguna yang " +"lebih tinggi. Berhati-hatilah bahawa penukaran data adalah proses yang " +"sangat lambat kerana peranti-penukar tidak boleh diakses dengan datarates " +"yang tinggi pada RAM." + +msgid "Ignore /etc/hosts" +msgstr "Mengabaikan /etc/hosts" + +msgid "Ignore interface" +msgstr "Abaikan antara muka" + +msgid "Ignore resolve file" +msgstr "Abaikan fail yang selesai" + +msgid "Image" +msgstr "" + +msgid "In" +msgstr "Masuk" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "" + +msgid "Inbound:" +msgstr "" + +msgid "Info" +msgstr "" + +msgid "Initscript" +msgstr "" + +msgid "Initscripts" +msgstr "" + +msgid "Install" +msgstr "Memasang" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "" + +msgid "Install protocol extensions..." +msgstr "" + +msgid "Installed packages" +msgstr "" + +msgid "Interface" +msgstr "Interface" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "" + +msgid "Interface Overview" +msgstr "" + +msgid "Interface is reconnecting..." +msgstr "" + +msgid "Interface is shutting down..." +msgstr "" + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "" + +msgid "Interface reconnected" +msgstr "" + +msgid "Interface shut down" +msgstr "" + +msgid "Interfaces" +msgstr "Interface" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "" + +msgid "Invalid" +msgstr "Tak Sah" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "" + +msgid "Invalid username and/or password! Please try again." +msgstr "Username dan / atau password tak sah! Sila cuba lagi." + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"Tampak bahawa anda cuba untuk flash fail gambar yang tidak sesuai dengan " +"memori flash, sila buat pengesahan pada fail gambar!" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "" + +#, fuzzy +msgid "Join Network" +msgstr "Gabung Rangkaian" + +msgid "Join Network: Wireless Scan" +msgstr "" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "" + +msgid "Kernel Log" +msgstr "Log Kernel" + +msgid "Kernel Version" +msgstr "" + +msgid "Key" +msgstr "Kunci" + +msgid "Key #%d" +msgstr "" + +msgid "Kill" +msgstr "Tamatkan" + +msgid "L2TP" +msgstr "" + +msgid "L2TP Server" +msgstr "" + +msgid "LCP echo failure threshold" +msgstr "" + +msgid "LCP echo interval" +msgstr "" + +msgid "LLC" +msgstr "" + +msgid "Label" +msgstr "" + +msgid "Language" +msgstr "Bahasa" + +msgid "Language and Style" +msgstr "" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "" + +msgid "Leasefile" +msgstr "Sewa fail" + +msgid "Leasetime remaining" +msgstr "Sisa masa penyewaan" + +msgid "Leave empty to autodetect" +msgstr "" + +msgid "Leave empty to use the current WAN address" +msgstr "" + +msgid "Legend:" +msgstr "" + +msgid "Limit" +msgstr "Batas" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "Link Pada" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" + +msgid "Listening port for inbound DNS queries" +msgstr "" + +msgid "Load" +msgstr "Load" + +msgid "Load Average" +msgstr "" + +msgid "Loading" +msgstr "" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "" + +msgid "Local IPv6 address" +msgstr "" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "" + +msgid "Local Time" +msgstr "Masa Tempatan" + +msgid "Local domain" +msgstr "" + +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" + +msgid "Local server" +msgstr "" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" + +msgid "Localise queries" +msgstr "Soalan tempatan" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "" + +msgid "Log queries" +msgstr "Log soalan" + +msgid "Logging" +msgstr "" + +msgid "Login" +msgstr "Login" + +msgid "Logout" +msgstr "Logout" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "" + +msgid "MAC-Address" +msgstr "" + +msgid "MAC-Address Filter" +msgstr "Penapis alamat MAC" + +msgid "MAC-Filter" +msgstr "Penapis MAC" + +msgid "MAC-List" +msgstr "Senarai MAC" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "" + +msgid "MTU" +msgstr "" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "Rate Maksimum" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "" + +#, fuzzy +msgid "Maximum hold time" +msgstr "Memegang masa maksimum" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "" + +msgid "Mbit/s" +msgstr "" + +msgid "Memory" +msgstr "Memori" + +msgid "Memory usage (%)" +msgstr "Penggunaan Memori (%)" + +msgid "Metric" +msgstr "Metrik" + +msgid "Minimum Rate" +msgstr "Rate Minimum" + +#, fuzzy +msgid "Minimum hold time" +msgstr "Memegang masa minimum" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "Mode" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "Alat modem" + +msgid "Modem init timeout" +msgstr "" + +msgid "Monitor" +msgstr "Monitor" + +msgid "Mount Entry" +msgstr "" + +msgid "Mount Point" +msgstr "Mount Point" + +msgid "Mount Points" +msgstr "Mount Points" + +msgid "Mount Points - Mount Entry" +msgstr "" + +msgid "Mount Points - Swap Entry" +msgstr "" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"Mount Points menentukan di mana titik peranti memori akan melekat pada fail " +"sistem" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "" + +msgid "Mount point" +msgstr "" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "Mounted fail sistems" + +msgid "Move down" +msgstr "" + +msgid "Move up" +msgstr "" + +msgid "Multicast Rate" +msgstr "Multicast Rate" + +msgid "Multicast address" +msgstr "" + +msgid "NAS ID" +msgstr "NAS ID" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "Nama" + +msgid "Name of the new interface" +msgstr "" + +msgid "Name of the new network" +msgstr "Nama rangkaian baru" + +msgid "Navigation" +msgstr "Navigation" + +msgid "Netmask" +msgstr "" + +msgid "Network" +msgstr "Rangkaian" + +msgid "Network Utilities" +msgstr "" + +msgid "Network boot image" +msgstr "" + +msgid "Network without interfaces." +msgstr "" + +msgid "Next »" +msgstr "Kemudian »" + +msgid "No DHCP Server configured for this interface" +msgstr "" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "Tiada rantai dalam jadual ini" + +msgid "No files found" +msgstr "" + +msgid "No information available" +msgstr "" + +msgid "No negative cache" +msgstr "" + +msgid "No network configured on this device" +msgstr "" + +msgid "No network name specified" +msgstr "" + +msgid "No package lists available" +msgstr "" + +msgid "No password set!" +msgstr "" + +msgid "No rules in this chain" +msgstr "Tidak ada peraturan dalam rantai ini" + +msgid "No zone assigned" +msgstr "" + +msgid "Noise" +msgstr "Kebisingan" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "" + +msgid "Normal" +msgstr "" + +msgid "Not Found" +msgstr "" + +msgid "Not associated" +msgstr "" + +msgid "Not connected" +msgstr "" + +msgid "Note: Configuration files will be erased." +msgstr "" + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "" + +msgid "Nslookup" +msgstr "" + +msgid "OK" +msgstr "Baik" + +msgid "OPKG-Configuration" +msgstr "OPKG-Konfigurasi" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"Pada halaman ini anda boleh mengkonfigurasi antara muka rangkaian. Anda " +"boleh menjembatani beberapa antara muka dengan menanda jambatan antara muka " +"gelanggang dan masukkan beberapa nama antara muka rangkaian dipisahkan " +"dengan ruang. Anda juga boleh menggunakan antara muka VLAN notasi. Seperti " +"eth0.1." + +msgid "On-State Delay" +msgstr "" + +msgid "One of hostname or mac address must be specified!" +msgstr "" + +msgid "One or more fields contain invalid values!" +msgstr "" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "" + +msgid "Open list..." +msgstr "" + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "" + +msgid "Option removed" +msgstr "" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "Pilihan" + +msgid "Other:" +msgstr "" + +msgid "Out" +msgstr "Keluar" + +msgid "Outbound:" +msgstr "" + +msgid "Outdoor Channels" +msgstr "Saluran Outdoor" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "" + +msgid "Override MTU" +msgstr "" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" + +msgid "Override the table used for internal routes" +msgstr "" + +msgid "Overview" +msgstr "Keseluruhan" + +msgid "Owner" +msgstr "Pemilik" + +msgid "PAP/CHAP password" +msgstr "" + +msgid "PAP/CHAP username" +msgstr "" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "" + +msgid "PPPoA Encapsulation" +msgstr "Pengkapsulan PPPoA" + +msgid "PPPoATM" +msgstr "" + +msgid "PPPoE" +msgstr "" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "" + +msgid "Package lists are older than 24 hours" +msgstr "" + +msgid "Package name" +msgstr "Nama pakej" + +msgid "Packets" +msgstr "Paket" + +msgid "Part of zone %q" +msgstr "" + +msgid "Password" +msgstr "Kata laluan" + +msgid "Password authentication" +msgstr "Kata laluan pengesahan" + +msgid "Password of Private Key" +msgstr "Kata Laluan Kunci Swasta" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "Path ke CA-Sijil" + +msgid "Path to Client-Certificate" +msgstr "" + +msgid "Path to Private Key" +msgstr "Path ke Kunci Swasta" + +msgid "Path to executable which handles the button event" +msgstr "Path ke eksekusi yang mengendalikan acara butang" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "Lakukan reboot" + +msgid "Perform reset" +msgstr "" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "" + +msgid "Physical Settings" +msgstr "Tetapan Fizikal" + +msgid "Ping" +msgstr "" + +msgid "Pkts." +msgstr "Pkts." + +msgid "Please enter your username and password." +msgstr "Sila masukkan username dan kata laluan anda." + +msgid "Policy" +msgstr "Dasar" + +msgid "Port" +msgstr "Port" + +msgid "Port status:" +msgstr "" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "Mencegah komunikasi sesama Pelanggan" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "Teruskan" + +msgid "Processes" +msgstr "Proses" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "Prot." + +msgid "Protocol" +msgstr "Protokol" + +msgid "Protocol family" +msgstr "" + +msgid "Protocol of the new interface" +msgstr "" + +msgid "Protocol support is not installed" +msgstr "" + +msgid "Provide NTP server" +msgstr "" + +msgid "Provide new network" +msgstr "" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "Pseudo Ad-Hoc (ahdemo)" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "RTS/CTS-Ambang" + +# Ein / Aus, eingehend / ausgehend? +msgid "RX" +msgstr "RX" + +msgid "RX Rate" +msgstr "" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "" + +msgid "Radius-Accounting-Port" +msgstr "" + +msgid "Radius-Accounting-Secret" +msgstr "" + +msgid "Radius-Accounting-Server" +msgstr "" + +msgid "Radius-Authentication-Port" +msgstr "" + +msgid "Radius-Authentication-Secret" +msgstr "" + +msgid "Radius-Authentication-Server" +msgstr "" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "Baca /etc/ethers untuk mengkonfigurasikan DHCP-Server" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" + +msgid "Really reset all changes?" +msgstr "" + +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" + +msgid "Really switch protocol?" +msgstr "" + +msgid "Realtime Connections" +msgstr "" + +msgid "Realtime Graphs" +msgstr "" + +msgid "Realtime Load" +msgstr "" + +msgid "Realtime Traffic" +msgstr "" + +msgid "Realtime Wireless" +msgstr "" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "" + +msgid "Reboot" +msgstr "Reboot" + +msgid "Rebooting..." +msgstr "" + +msgid "Reboots the operating system of your device" +msgstr "Reboot sistem operasi peranti anda" + +msgid "Receive" +msgstr "Menerima" + +msgid "Receiver Antenna" +msgstr "Antena Penerima" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "" + +msgid "Reconnecting interface" +msgstr "" + +msgid "References" +msgstr "Rujukan" + +msgid "Regulatory Domain" +msgstr "Peraturan Domain" + +msgid "Relay" +msgstr "" + +msgid "Relay Bridge" +msgstr "" + +msgid "Relay between networks" +msgstr "" + +msgid "Relay bridge" +msgstr "" + +msgid "Remote IPv4 address" +msgstr "" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "Menghapuskan" + +msgid "Repeat scan" +msgstr "Ulangi scan" + +msgid "Replace entry" +msgstr "Tukar entri" + +msgid "Replace wireless configuration" +msgstr "" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "Reset" + +msgid "Reset Counters" +msgstr "Reset Loket" + +msgid "Reset to defaults" +msgstr "" + +msgid "Resolv and Hosts Files" +msgstr "" + +msgid "Resolve file" +msgstr "" + +msgid "Restart" +msgstr "" + +msgid "Restart Firewall" +msgstr "Restart Firewall" + +msgid "Restore backup" +msgstr "Kembalikan sandaran" + +msgid "Reveal/hide password" +msgstr "" + +msgid "Revert" +msgstr "Kembali" + +msgid "Root" +msgstr "" + +msgid "Root directory for files served via TFTP" +msgstr "" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "" + +msgid "Routes" +msgstr "Laluan" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"Laluan menentukan di mana interface dan gateway host atau rangkaian tertentu " +"yang boleh dicapai." + +msgid "Run a filesystem check before mounting the device" +msgstr "" + +msgid "Run filesystem check" +msgstr "" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "Simpan" + +msgid "Save & Apply" +msgstr "Simpan & Melaksanakan" + +msgid "Save & Apply" +msgstr "" + +msgid "Scan" +msgstr "Scan" + +msgid "Scheduled Tasks" +msgstr "Tugas Jadual" + +msgid "Section added" +msgstr "" + +msgid "Section removed" +msgstr "" + +msgid "See \"mount\" manpage for details" +msgstr "Rujuk \"mount\" laman manual untuk detail" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" + +msgid "Separate Clients" +msgstr "Pisahkan Pelanggan" + +msgid "Separate WDS" +msgstr "Pisahkan WDS" + +msgid "Server Settings" +msgstr "" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "" + +msgid "Service Type" +msgstr "" + +msgid "Services" +msgstr "Perkhidmatan" + +msgid "Set up Time Synchronization" +msgstr "" + +msgid "Setup DHCP Server" +msgstr "" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "" + +msgid "Shutdown this interface" +msgstr "" + +msgid "Shutdown this network" +msgstr "" + +msgid "Signal" +msgstr "Isyarat" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "" + +msgid "Size" +msgstr "Saiz" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "Skip" + +msgid "Skip to content" +msgstr "Skip ke kadar" + +msgid "Skip to navigation" +msgstr "Skip ke navigation" + +msgid "Slot time" +msgstr "Slot masa" + +msgid "Software" +msgstr "Perisian" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "" + +msgid "Sorry, the object you requested was not found." +msgstr "" + +msgid "Sorry, the server encountered an unexpected error." +msgstr "" + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" + +msgid "Sort" +msgstr "" + +msgid "Source" +msgstr "Sumber" + +msgid "Source routing" +msgstr "" + +#, fuzzy +msgid "Specifies the button state to handle" +msgstr "Menentukan state butang untuk melaku" + +msgid "Specifies the directory the device is attached to" +msgstr "" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "" + +msgid "Start" +msgstr "Mula" + +msgid "Start priority" +msgstr "" + +msgid "Startup" +msgstr "" + +msgid "Static IPv4 Routes" +msgstr "Laluan IPv4 Statik" + +msgid "Static IPv6 Routes" +msgstr "Laluan IPv6 Statik" + +msgid "Static Leases" +msgstr "Statische Einträge" + +msgid "Static Routes" +msgstr "Laluan Statik" + +msgid "Static WDS" +msgstr "" + +msgid "Static address" +msgstr "" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" + +msgid "Status" +msgstr "Status" + +msgid "Stop" +msgstr "" + +msgid "Strict order" +msgstr "Order Ketat" + +msgid "Submit" +msgstr "Menyerahkan" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "" + +msgid "Switch" +msgstr "Beralih" + +msgid "Switch %q" +msgstr "" + +msgid "Switch %q (%s)" +msgstr "" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "" + +msgid "Sync with browser" +msgstr "" + +msgid "Synchronizing..." +msgstr "" + +msgid "System" +msgstr "Sistem" + +msgid "System Log" +msgstr "Log Sistem" + +msgid "System Properties" +msgstr "" + +msgid "System log buffer size" +msgstr "" + +msgid "TCP:" +msgstr "" + +msgid "TFTP Settings" +msgstr "" + +msgid "TFTP server root" +msgstr "" + +# same as RX +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "" + +msgid "Table" +msgstr "Meja" + +msgid "Target" +msgstr "Sasaran" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "Menamatkan" + +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" +"Karakter yang diizinkan adalah: A-Z, a-z, " +"0-9 dan _" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "Fail peranti memori atau partisyen, (contohnya: /dev/sda)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "Failsistem yang digunakan untuk memformat memori (contohnya: ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" +"Fail gambar flash telah di-upload. Berikut ini adalah checksum dan saiz fail " +"yang berdaftar, membandingkannya dengan fail gambar asli untuk memastikan " +"integriti data.
Klik butang terus di bawah untuk memulakan prosedur " +"flash." + +msgid "The following changes have been committed" +msgstr "" + +msgid "The following changes have been reverted" +msgstr "Laman berikut telah kembali" + +msgid "The following rules are currently active on this system." +msgstr "Peraturan berikut sedang aktif pada sistem ini." + +msgid "The given network name is not unique" +msgstr "" + +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" + +msgid "The length of the IPv6 prefix in bits" +msgstr "" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" + +msgid "The selected protocol needs a device assigned" +msgstr "" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" + +#, fuzzy +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"Sistem ini sekarang mula flash.
JANGAN TUTUP KUASA UNTUK PERANTI!
Tunggu beberapa minit sehingga anda cuba untuk menyambung kembali. Mungkin " +"anda perlu mengemas kini alamat komputer anda untuk mencapai peranti lagi, " +"bergantung pada tetapan anda." + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"Format Fail gambar yang diupload tidak disokongkan. Pastikan anda memilih " +"fail format gambar yang generik untuk platform anda." + +msgid "There are no active leases." +msgstr "" + +msgid "There are no pending changes to apply!" +msgstr "" + +msgid "There are no pending changes to revert!" +msgstr "" + +msgid "There are no pending changes!" +msgstr "" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" + +msgid "This IPv4 address of the relay" +msgstr "" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" + +msgid "" +"This is the only DHCP in the local network" +msgstr "Ini adalah DHCP hanya dalam rangkaian tempatan." + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "" +"Ini adalah crontab sistem di mana tugas-tugas yang dijadualkan boleh " +"ditakrifkan." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" +"Senarai ini memberikan gambaran lebih pada proses sistem yang sedang " +"berjalan dan statusnya." + +msgid "This page allows the configuration of custom button actions" +msgstr "Laman ini membolehkan konfigurasi butang tindakan peribadi" + +msgid "This page gives an overview over currently active network connections." +msgstr "" +"Laman ini memberikan gambaran lebih dari saat ini sambungan rangkaian yang " +"aktif." + +msgid "This section contains no values yet" +msgstr "Bahagian ini belum mengandungi nilai-nilai lagi" + +msgid "Time Synchronization" +msgstr "" + +msgid "Time Synchronization is not configured yet." +msgstr "" + +msgid "Timezone" +msgstr "Zon masa" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "" + +msgid "Traceroute" +msgstr "" + +msgid "Traffic" +msgstr "Lalu lintas" + +msgid "Transfer" +msgstr "Pemindahan" + +msgid "Transmission Rate" +msgstr "Kelajuan Penghantaran" + +msgid "Transmit" +msgstr "Pancar" + +msgid "Transmit Power" +msgstr "Daya Pancar" + +msgid "Transmitter Antenna" +msgstr "Antena Pemancar" + +msgid "Trigger" +msgstr "" + +msgid "Trigger Mode" +msgstr "" + +msgid "Tunnel ID" +msgstr "" + +msgid "Tunnel Interface" +msgstr "" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "Mod Turbo" + +msgid "Tx-Power" +msgstr "" + +msgid "Type" +msgstr "Jenis" + +msgid "UDP:" +msgstr "" + +msgid "UMTS only" +msgstr "" + +msgid "UMTS/GPRS/EV-DO" +msgstr "" + +msgid "USB Device" +msgstr "" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "" + +msgid "Unable to dispatch" +msgstr "" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "" + +msgid "Unknown Error, password not changed!" +msgstr "" + +msgid "Unmanaged" +msgstr "" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "Perubahan yang belum disimpan" + +msgid "Unsupported protocol type." +msgstr "" + +msgid "Update lists" +msgstr "" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" + +msgid "Upload archive..." +msgstr "" + +msgid "Uploaded File" +msgstr "Uploaded Fail" + +msgid "Uptime" +msgstr "Masa Aktif" + +msgid "Use /etc/ethers" +msgstr "Guna /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "" + +msgid "Use DNS servers advertised by peer" +msgstr "" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "" + +msgid "Use MTU on tunnel interface" +msgstr "" + +msgid "Use TTL on tunnel interface" +msgstr "" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "" + +msgid "Use default gateway" +msgstr "" + +msgid "Use gateway metric" +msgstr "" + +msgid "Use routing table" +msgstr "" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" + +msgid "Used" +msgstr "Diguna" + +msgid "Used Key Slot" +msgstr "" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "Username" + +msgid "VC-Mux" +msgstr "" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "" + +msgid "VLANs on %q (%s)" +msgstr "" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "" + +msgid "Version" +msgstr "Versi" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "" + +msgid "WEP Shared Key" +msgstr "" + +msgid "WEP passphrase" +msgstr "" + +msgid "WMM Mode" +msgstr "WMM Mod" + +msgid "WPA passphrase" +msgstr "" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"WPA-Enkripsi memerlukan pemohan wpa (untuk mod pelanggan) atau hostapd " +"(untuk AP dan mod ad-hoc) yang akan dipasangkan." + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "" + +msgid "Waiting for command to complete..." +msgstr "" + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "" + +msgid "Wireless Adapter" +msgstr "Adapter Wayarles" + +msgid "Wireless Network" +msgstr "Rangkaian Wayarles" + +msgid "Wireless Overview" +msgstr "Gambaran keseluruhan Wayarles" + +msgid "Wireless Security" +msgstr "Keselamatan WLAN" + +msgid "Wireless is disabled or not associated" +msgstr "" + +msgid "Wireless is restarting..." +msgstr "" + +msgid "Wireless network is disabled" +msgstr "" + +msgid "Wireless network is enabled" +msgstr "" + +msgid "Wireless restarted" +msgstr "" + +msgid "Wireless shut down" +msgstr "" + +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 "" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "Sokongan XR" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "" + +msgid "auto" +msgstr "auto" + +msgid "baseT" +msgstr "" + +msgid "bridged" +msgstr "" + +msgid "create:" +msgstr "" + +msgid "creates a bridge over specified interface(s)" +msgstr "mencipta jambatan di antara muka tertentu" + +msgid "dB" +msgstr "" + +msgid "dBm" +msgstr "" + +msgid "disable" +msgstr "mematikan" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "fail dimana DHCP-sewa akan disimpan" + +msgid "forward" +msgstr "" + +msgid "full-duplex" +msgstr "" + +msgid "half-duplex" +msgstr "" + +msgid "help" +msgstr "Membantu" + +msgid "hidden" +msgstr "" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "jika target itu ialah rangkaian" + +msgid "input" +msgstr "" + +msgid "kB" +msgstr "" + +msgid "kB/s" +msgstr "" + +msgid "kbit/s" +msgstr "" + +msgid "local DNS file" +msgstr "Fail DNS tempatan" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "" + +msgid "no link" +msgstr "" + +msgid "none" +msgstr "tidak ada" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "" + +msgid "on" +msgstr "" + +msgid "open" +msgstr "" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "" + +msgid "unlimited" +msgstr "" + +msgid "unspecified" +msgstr "" + +msgid "unspecified -or- create:" +msgstr "Tidak dirinci -atau- buat:" + +msgid "untagged" +msgstr "" + +msgid "yes" +msgstr "" + +msgid "« Back" +msgstr "« Kembali" + +#~ msgid "Leasetime" +#~ msgstr "Masa penyewaan" + +#~ msgid "automatic" +#~ msgstr "automatik" diff --git a/luci-base/po/no/base.po b/luci-base/po/no/base.po new file mode 100644 index 000000000..5b6c45f3f --- /dev/null +++ b/luci-base/po/no/base.po @@ -0,0 +1,3949 @@ +msgid "" +msgstr "" +"PO-Revision-Date: 2013-03-25 23:36+0200\n" +"Last-Translator: protx \n" +"Language: no\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Pootle 2.0.6\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(%d minutters vindu, %d sekunds intervall)" + +msgid "(%s available)" +msgstr "(%s Tilgjengelig)" + +msgid "(empty)" +msgstr "(tom)" + +msgid "(no interfaces attached)" +msgstr "(ingen grensesnitt tilknyttet)" + +msgid "-- Additional Field --" +msgstr "-- Tilleggs Felt --" + +msgid "-- Please choose --" +msgstr "-- Vennligst velg --" + +msgid "-- custom --" +msgstr "-- egendefinert --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "1 minutts belastning:" + +msgid "15 Minute Load:" +msgstr "15 minutters belastning:" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "5 minutters belastning:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "DNS query port" +msgstr "DNS spørre port" + +msgid "DNS server port" +msgstr "DNS server port" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" +"DNS servere skal følge rekkefølgen " +"i oppslagsfilen ved spørringer" + +msgid "ESSID" +msgstr "ESSID" + +msgid "IPv4-Address" +msgstr "IPv4-Adresse" + +msgid "IPv4-Gateway" +msgstr "IPv4-Gateway" + +msgid "IPv4-Netmask" +msgstr "IPv4-Nettmaske" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"IPv6-Adresse eller " +"Nettverk (CIDR)" + +msgid "IPv6-Gateway" +msgstr "IPv6-Gateway" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "LED Konfigurasjon" + +msgid "LED Name" +msgstr "LED Navn" + +msgid "MAC-Address" +msgstr "MAC-Adresse" + +msgid "" +"Max. DHCP leases" +msgstr "" +"Maksimalt antall DHCP leier" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"Maks. EDNS0 pakke størrelse" + +msgid "Max. concurrent queries" +msgstr "Maks. samtidige spørringer" + +msgid "%s - %s" +msgstr "%s - %s" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "AR Støtte" + +msgid "ARP retry threshold" +msgstr "APR terskel for nytt forsøk" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "ATM Broer" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "" +"ATM Virtuell kanal " +"identifikator (VCI)" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "" +"ATM Virtuell plasserings " +"identifikator (VPI)" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"ATM broer viser innkapslede ethernet i AAL5 forbindelser som virtuelle Linux-" +"nettverk grensesnitt, dette kan brukes sammen med DHCP eller PPP for å koble " +"seg mot en leverandørs nettverk." + +msgid "ATM device number" +msgstr "ATM enhetsnummer" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "Tilgangskonsentrator" + +msgid "Access Point" +msgstr "Aksesspunkt" + +msgid "Action" +msgstr "Handling" + +msgid "Actions" +msgstr "Handlinger" + +msgid "Activate this network" +msgstr "Aktiver dette nettverket" + +msgid "Active IPv4-Routes" +msgstr "Aktive IPv4-Ruter" + +msgid "Active IPv6-Routes" +msgstr "Aktive IPv6-Ruter" + +msgid "Active Connections" +msgstr "Aktive Tilkoblinger" + +msgid "Active DHCP Leases" +msgstr "Aktive DHCP Leier" + +msgid "Active DHCPv6 Leases" +msgstr "Aktive DHCPv6 Leier" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc (Uavhengig)" + +msgid "Add" +msgstr "Legg til" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "Legg det lokale domenesuffikset til navn utgitt fra vertsfiler" + +msgid "Add new interface..." +msgstr "Legg til grensesnitt..." + +msgid "Additional Hosts files" +msgstr "Tilleggs vertsfiler" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "Adresse" + +msgid "Address to access local relay bridge" +msgstr "Adresse for tilgang til lokal relébro" + +msgid "Administration" +msgstr "Administrasjon" + +msgid "Advanced Settings" +msgstr "Avanserte Innstillinger" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "Varsle" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "Tillat SSH passord godkjenning" + +msgid "Allow all except listed" +msgstr "Tillat alle unntatt oppførte" + +msgid "Allow listed only" +msgstr "Tillat kun oppførte" + +msgid "Allow localhost" +msgstr "Tillat lokalvert" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "Tillat eksterne verter å koble til lokale SSH videresendt porter" + +msgid "Allow root logins with password" +msgstr "Tillat root pålogginger med passord" + +msgid "Allow the root user to login with password" +msgstr "Tillat bruker root å logge inn med passord" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "Tillat oppstrøms svar i 127.0.0.0/8 nettet, f.eks for RBL tjenester" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "Antenne 1" + +msgid "Antenna 2" +msgstr "Antenne 2" + +msgid "Antenna Configuration" +msgstr "Antennekonfigurasjon" + +msgid "Any zone" +msgstr "Alle soner" + +msgid "Apply" +msgstr "Bruk" + +msgid "Applying changes" +msgstr "Utfører endringer" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "Tilknytt grensesnitt..." + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "Tilkoblede Klienter" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Atheros 802.11%s Trådløs Kontroller" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "Godkjenning" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "Autoritativ" + +msgid "Authorization Required" +msgstr "Autorisasjon er nødvendig" + +msgid "Auto Refresh" +msgstr "Automatisk oppdatering" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "Tilgjengelig" + +msgid "Available packages" +msgstr "Tilgjengelige pakker" + +msgid "Average:" +msgstr "Gjennomsnitt:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "Tilbake" + +msgid "Back to Overview" +msgstr "Tilbake til oversikt" + +msgid "Back to configuration" +msgstr "Tilbake til konfigurasjon" + +msgid "Back to overview" +msgstr "Tilbake til oversikt" + +msgid "Back to scan results" +msgstr "Tilbake til skanne resultat" + +msgid "Background Scan" +msgstr "Bakgrunns Skanning" + +msgid "Backup / Flash Firmware" +msgstr "Sikkerhetskopiering/Firmware oppgradering" + +msgid "Backup / Restore" +msgstr "Sikkerhetskopi/Gjenoppretting" + +msgid "Backup file list" +msgstr "Sikkerhetskopier filliste" + +msgid "Bad address specified!" +msgstr "Ugyldig adresse oppgitt!" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"Nedenfor er listen med filer som blir sikkerthetskopiert. Listen består av " +"konfigurasjonsfiler som er merket av opkg, essensielle enhets filer og andre " +"filer valgt av bruker." + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "Bitrate" + +msgid "Bogus NX Domain Override" +msgstr "Overstyr falske NX Domener" + +msgid "Bridge" +msgstr "Bro" + +msgid "Bridge interfaces" +msgstr "Sammenkoble grensesnitt" + +msgid "Bridge unit number" +msgstr "Bro enhetsnummer" + +msgid "Bring up on boot" +msgstr "Slå på ved oppstart" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "Broadcom 802.11%s Trådløs Kontroller" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "Broadcom BCM%04x 802.11 Trådløs Kontroller" + +msgid "Buffered" +msgstr "Bufret" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "Knapper" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "CPU forbruk (%)" + +msgid "Cancel" +msgstr "Avbryt" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "Lenke" + +msgid "Changes" +msgstr "Endringer" + +msgid "Changes applied." +msgstr "Endringer utført." + +msgid "Changes the administrator password for accessing the device" +msgstr "Endrer administrator passordet for tilgang til enheten" + +msgid "Channel" +msgstr "Kanal" + +msgid "Check" +msgstr "Kontroller" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "Kontrollsum" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"Velg brannmur sonen du ønsker å knytte til dette grensesnittet. Velg " +"uspesifisert for å fjerne grensesnittet fra den tilknyttede sonen. " +"Eller fyll ut Opprett feltet for å definere en ny sone og tilknytte " +"grensesnittet til det." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" +"Velg det eller de nettverk du vil legge til dette trådløse grensesnittet, " +"eller fyll ut Opprett feltet for å definere et nytt nettverk." + +msgid "Cipher" +msgstr "Krypteringsmetode" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"Klikk \"Opprett arkiv\" for å laste ned et tar arkiv av de gjeldende " +"konfigurasjons filer. For å nullstille firmwaren til opprinnelig tilstand, " +"klikker du på \"Utfør nullstilling\" (kun mulig på squashfs firmwarer)." + +msgid "Client" +msgstr "Klient" + +msgid "Client ID to send when requesting DHCP" +msgstr "Klient ID som sendes ved DHCP spørring" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" +"Lukk inaktiver tilkoblinger etter angitt antall sekunder, bruk 0 for en " +"kontinuerlig tilkobling" + +msgid "Close list..." +msgstr "Lukk liste..." + +msgid "Collecting data..." +msgstr "Henter data..." + +msgid "Command" +msgstr "Kommando" + +msgid "Common Configuration" +msgstr "Vanlige Innstillinger" + +msgid "Compression" +msgstr "Komprimering" + +msgid "Configuration" +msgstr "Konfigurasjon" + +msgid "Configuration applied." +msgstr "Konfigurasjons endring utført." + +msgid "Configuration files will be kept." +msgstr "Konfigurasjonsfiler vil bli bevart." + +msgid "Confirmation" +msgstr "Bekreftelse" + +msgid "Connect" +msgstr "Koble til" + +msgid "Connected" +msgstr "Tilkoblet" + +msgid "Connection Limit" +msgstr "Tilkoblingsgrense (antall)" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "Tilkoblinger" + +msgid "Country" +msgstr "Land" + +msgid "Country Code" +msgstr "Landskode" + +msgid "Cover the following interface" +msgstr "Gjelder det følgende grensesnitt" + +msgid "Cover the following interfaces" +msgstr "Gjelder de følgende grensesnitt" + +msgid "Create / Assign firewall-zone" +msgstr "Opprett/Tildel brannmur sone" + +msgid "Create Interface" +msgstr "Opprett Grensesnitt" + +msgid "Create a bridge over multiple interfaces" +msgstr "Opprett en bro over flere grensesnitt" + +msgid "Critical" +msgstr "Kritisk" + +msgid "Cron Log Level" +msgstr "Cron logg nivå" + +msgid "Custom Interface" +msgstr "Egendefinerte Grensesnitt" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"Tilpasser oppførselen til enhetens LEDs om mulig." + +msgid "DHCP Leases" +msgstr "DHCP Leier" + +msgid "DHCP Server" +msgstr "DHCP Server" + +msgid "DHCP and DNS" +msgstr "DHCP og DNS" + +msgid "DHCP client" +msgstr "DHCP klient" + +msgid "DHCP-Options" +msgstr "DHCP-Alternativer" + +msgid "DHCPv6 Leases" +msgstr "DHCPv6 Leier" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "DNS videresendinger" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "DUID" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "Feilsøking" + +msgid "Default %d" +msgstr "Standard %d" + +msgid "Default gateway" +msgstr "Standard gateway" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "Standard tilstand" + +msgid "Define a name for this network." +msgstr "Definer et navn for dette nettverket." + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"Definer flere DHCP valg, f.eks \"192.168.2.1,192.168.2.2\" som " +"annonserer forskjellige DNS servere til klientene." + +msgid "Delete" +msgstr "Fjern" + +msgid "Delete this network" +msgstr "Fjern dette nettverket" + +msgid "Description" +msgstr "Beskrivelse" + +msgid "Design" +msgstr "Design" + +msgid "Destination" +msgstr "Destinasjon" + +msgid "Device" +msgstr "Enhet" + +msgid "Device Configuration" +msgstr "Enhet Konfigurasjon" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "Nettverksdiagnostikk" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "Katalog" + +msgid "Disable" +msgstr "Deaktiver" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +"Deaktiver DHCP " +"for dette nettverket." + +msgid "Disable DNS setup" +msgstr "Deaktiver DNS oppsett" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "Deaktiver HW-Beacon timer" + +msgid "Disabled" +msgstr "Deaktivert" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "Forkast oppstrøms RFC1918 svar" + +msgid "Displaying only packages containing" +msgstr "Viser bare pakker som inneholder" + +msgid "Distance Optimization" +msgstr "Avstand Optimalisering" + +msgid "Distance to farthest network member in meters." +msgstr "Avstand i meter til det medlem av nettverket som er lengst unna." + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "Antennevariasjon" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Dnsmasq er en kombinert DHCP-Server og DNS-" +"Fremsender for NAT " +"brannmurer" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "Ikke cache negative svar, f.eks for ikke eksisterende domener" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" +"Ikke videresend forespørsler som ikke kan besvares med offentlige " +"navneservere" + +msgid "Do not forward reverse lookups for local networks" +msgstr "Ikke videresend reverserte oppslag for lokale nettverk" + +msgid "Do not send probe responses" +msgstr "Ikke send probe svar" + +msgid "Domain required" +msgstr "Domene kreves" + +msgid "Domain whitelist" +msgstr "Domene hviteliste" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" +"Ikke videresend DNS-Forespørsler " +"uten DNS-Navn" + +msgid "Download and install package" +msgstr "Last ned og installer pakken" + +msgid "Download backup" +msgstr "Last ned sikkerhetskopi" + +msgid "Dropbear Instance" +msgstr "Dropbear Instans" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear tilbyr SSH-nettverks shell " +"tilgang og en integrert SCP server" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" +"Dynamisk DHCP" + +msgid "Dynamic tunnel" +msgstr "Dynamisk tunnel" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" +"Dynamisk tildeling av DHCP adresser til klienter. Om deaktivert, kan en kun " +"bruke klienter med statisk leie." + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "EAP-metode" + +msgid "Edit" +msgstr "Endre" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "Endre dette grensesnittet" + +msgid "Edit this network" +msgstr "Endre dette nettverket" + +msgid "Emergency" +msgstr "Krisesituasjon" + +msgid "Enable" +msgstr "Aktiver" + +msgid "Enable STP" +msgstr "Aktiver STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "Aktiver HE,net dynamisk endepunkt oppdatering" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "Aktiver IPv6 på PPP lenke" + +msgid "Enable Jumbo Frame passthrough" +msgstr "Aktiver Jumbo Frames gjennomgang" + +msgid "Enable NTP client" +msgstr "Aktiver NTP klient" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "Aktiver TFTP server" + +msgid "Enable VLAN functionality" +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'" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "Aktiver dette monteringspunktet" + +msgid "Enable this swap" +msgstr "Aktiver denne swapenhet" + +msgid "Enable/Disable" +msgstr "Aktiver/Deaktiver" + +msgid "Enabled" +msgstr "Aktivert" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "Aktiverer Spanning Tree Protocol på denne broen" + +msgid "Encapsulation mode" +msgstr "Innkapsling modus" + +msgid "Encryption" +msgstr "Kryptering" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "Sletter..." + +msgid "Error" +msgstr "Feil" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "Ethernet Tilslutning" + +msgid "Ethernet Switch" +msgstr "Ethernet Svitsj" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "Utvid vertsliste" + +msgid "Expires" +msgstr "Utgår" + +#, fuzzy +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "Utløpstid på leide adresser, minimum er 2 minutter (2m)." + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "Ekstern systemlogg server" + +msgid "External system log server port" +msgstr "Ekstern systemlogg server port" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "Fast Frames" + +msgid "File" +msgstr "Fil" + +msgid "Filename of the boot image advertised to clients" +msgstr "Filnavn fra boot image annonsert til klienter" + +msgid "Filesystem" +msgstr "Filsystem" + +msgid "Filter" +msgstr "Filter" + +msgid "Filter private" +msgstr "Filtrer private" + +msgid "Filter useless" +msgstr "Filtrer ubrukelige" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "Finn og koble til nettverk" + +msgid "Find package" +msgstr "Finn pakke" + +msgid "Finish" +msgstr "Fullfør" + +msgid "Firewall" +msgstr "Brannmur" + +msgid "Firewall Settings" +msgstr "Brannmur Innstillinger" + +msgid "Firewall Status" +msgstr "Brannmur Status" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "Firmware Versjon" + +msgid "Fixed source port for outbound DNS queries" +msgstr "Fast kilde port for utgående DNS-spørringer" + +msgid "Flash Firmware" +msgstr "Firmware Oppradering" + +msgid "Flash image..." +msgstr "Flash firmware..." + +msgid "Flash new firmware image" +msgstr "Flash nytt firmware image" + +msgid "Flash operations" +msgstr "Flash operasjoner" + +msgid "Flashing..." +msgstr "Flasher..." + +msgid "Force" +msgstr "Bruk" + +msgid "Force CCMP (AES)" +msgstr "Bruk CCMP (AES)" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "" +"Bruk DHCP i dette nettverket, selv om en annen DHCP server er oppdaget." + +msgid "Force TKIP" +msgstr "Bruk TKIP" + +msgid "Force TKIP and CCMP (AES)" +msgstr "Bruk TKIP og CCMP (AES)" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "Videresend DHCP trafikk" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "Videresend kringkastingstrafikk" + +msgid "Forwarding mode" +msgstr "Videresending modus" + +msgid "Fragmentation Threshold" +msgstr "Fragmenterings Terskel" + +msgid "Frame Bursting" +msgstr "Frame Bursting" + +msgid "Free" +msgstr "Ledig" + +msgid "Free space" +msgstr "Ledig plass" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "GHz" + +msgid "GPRS only" +msgstr "Kun GPRS" + +msgid "Gateway" +msgstr "Gateway" + +msgid "Gateway ports" +msgstr "Gateway porter" + +msgid "General Settings" +msgstr "Generelle Innstillinger" + +msgid "General Setup" +msgstr "Generelt Oppsett" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "Opprett arkiv" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "Generell 802.11%s Trådløs Kontroller" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "Det oppgitte passordet var ikke korrekt, passord ble ikke endret!" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "Gå til passord konfigurasjon..." + +msgid "Go to relevant configuration page" +msgstr "Gå til relevant konfigurasjonen side" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "HE.net passord" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "Behandler" + +msgid "Hang Up" +msgstr "Slå av" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"Her kan du konfigurere grunnleggende aspekter av enheten som f.eks. dens " +"vertsnavn eller tidssone." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" +"Her kan du lime inn felles SSH-nøkler(en per linje), for SSH godkjenning." + +msgid "Hermes 802.11b Wireless Controller" +msgstr "Hermes 802.11b Trådløs Kontroller" + +msgid "Hide ESSID" +msgstr "Skjul ESSID" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "Vertsoppføringer" + +msgid "Host expiry timeout" +msgstr "Verts utløpstid" + +msgid "Host-IP or Network" +msgstr "" +"Verts-IP eller Nettverk" + +msgid "Hostname" +msgstr "Vertsnavn" + +msgid "Hostname to send when requesting DHCP" +msgstr "Vertsnavn som sendes ved DHCP forespørsel" + +msgid "Hostnames" +msgstr "Vertsnavn" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "IP adresse" + +msgid "IPv4" +msgstr "IPv4" + +msgid "IPv4 Firewall" +msgstr "IPv4 Brannmur" + +msgid "IPv4 WAN Status" +msgstr "IPv4 WAN Status" + +msgid "IPv4 address" +msgstr "IPv4 adresse" + +msgid "IPv4 and IPv6" +msgstr "IPv4 og IPv6" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "IPv4 kringkasting" + +msgid "IPv4 gateway" +msgstr "IPv4 gateway" + +msgid "IPv4 netmask" +msgstr "IPv4 nettmaske" + +msgid "IPv4 only" +msgstr "Kun IPv4" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "IPv4 prefikslengde" + +msgid "IPv4-Address" +msgstr "IPv4-Adresse" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "IPv6 Brannmur" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "IPv6 WAN Status" + +msgid "IPv6 address" +msgstr "IPv6 adresse" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "IPv6 gateway" + +msgid "IPv6 only" +msgstr "Kun IPv6" + +msgid "IPv6 prefix" +msgstr "IPv6 prefiks" + +msgid "IPv6 prefix length" +msgstr "IPv6 prefikslengde" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "IPv6-Adresse" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "IPv6-i-IPv4 (RFC4213)" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "IPv6-over-IPv4 (6rd)" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "IPv6-over-IPv4 (6til4)" + +msgid "Identity" +msgstr "Identitet" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "Hvis oppgitt vil denne enhet monteres ut fra dens UUID" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "Hvis oppgitt vil denne enheten bli montert utfra dens Volumnavn" + +msgid "If unchecked, no default route is configured" +msgstr "Dersom ikke avmerket blir ingen standard rute konfigurert" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "Dersom ikke avmerket blir de annonserte DNS server adresser ignorert" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"Om ruterens fysiske minne er utilstrekkelig, ubrukte data kan midlertidig " +"gjøres om til en swap-enhet som gir deg mere tilgjengelig RAM. Vær oppmerksom på at bruk av swap er " +"mye langsommere en RAM." + +msgid "Ignore /etc/hosts" +msgstr "" + +msgid "Ignore interface" +msgstr "Ignorer grensesnitt" + +msgid "Ignore resolve file" +msgstr "Ignorer oppslagsfil" + +msgid "Image" +msgstr "Firmware" + +msgid "In" +msgstr "i" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "Tidsavbrudd etter innaktivitet" + +msgid "Inbound:" +msgstr "Innkommende:" + +msgid "Info" +msgstr "Informasjon" + +msgid "Initscript" +msgstr "Oppstartskript" + +msgid "Initscripts" +msgstr "Oppstartsskript" + +msgid "Install" +msgstr "Installer" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "Installer pakken %q" + +msgid "Install protocol extensions..." +msgstr "Installer protokoll utvidelser..." + +msgid "Installed packages" +msgstr "Installerte pakker" + +msgid "Interface" +msgstr "Grensesnitt" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "Grensesnitt Konfigurasjon" + +msgid "Interface Overview" +msgstr "Grensesnitt Oversikt" + +msgid "Interface is reconnecting..." +msgstr "Grensesnittet kobler til igjen..." + +msgid "Interface is shutting down..." +msgstr "Grensesnittet slår seg av..." + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "Grensesnittet er ikke tilgjengelig eller er ikke tilknyttet." + +msgid "Interface reconnected" +msgstr "Grensesnittet er koblet til igjen" + +msgid "Interface shut down" +msgstr "Grensesnittet er slått av" + +msgid "Interfaces" +msgstr "Grensesnitt" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "Intern server feil" + +msgid "Invalid" +msgstr "Ugyldig" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "Ugyldig VLAN ID gitt! Bare IDer mellom %d og %d er tillatt." + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "Ugyldig VLAN ID gitt! Bare unike ID'er er tillatt" + +msgid "Invalid username and/or password! Please try again." +msgstr "Ugyldig brukernavn og/eller passord! Vennligst prøv igjen." + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"Det virker som du prøver å flashe med en firmware som ikke passer inn i " +"flash-minnet, vennligst kontroller firmware filen!" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "JavaScript kreves!" + +msgid "Join Network" +msgstr "Koble til nettverket" + +msgid "Join Network: Wireless Scan" +msgstr "Koble til nettverk: Trådløs Skanning" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "Behold innstillinger" + +msgid "Kernel Log" +msgstr "Kjerne Logg" + +msgid "Kernel Version" +msgstr "Kjerne Versjon" + +msgid "Key" +msgstr "Nøkkel" + +msgid "Key #%d" +msgstr "Nøkkel #%d" + +msgid "Kill" +msgstr "Drep" + +msgid "L2TP" +msgstr "L2TP" + +msgid "L2TP Server" +msgstr "L2TP Server" + +msgid "LCP echo failure threshold" +msgstr "LCP ekko feil terskel" + +msgid "LCP echo interval" +msgstr "LCP ekko intervall" + +msgid "LLC" +msgstr "LLC" + +msgid "Label" +msgstr "Volumnavn" + +msgid "Language" +msgstr "Språk" + +msgid "Language and Style" +msgstr "Språk og Utseende" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "Gyldig leietid" + +msgid "Leasefile" +msgstr "Leie-fil" + +msgid "Leasetime remaining" +msgstr "Gjenværende leietid" + +msgid "Leave empty to autodetect" +msgstr "La stå tomt for automatisk oppdagelse" + +msgid "Leave empty to use the current WAN address" +msgstr "La stå tomt for å bruke gjeldene WAN adresse" + +msgid "Legend:" +msgstr "Forklaring:" + +msgid "Limit" +msgstr "Grense" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "Forbindelse" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" +"Liste med DNS servere som " +"forespørsler blir videresendt til" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "Liste over domener hvor en tillater RFC1918 svar" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "Liste over verter som returneren falske NX domene resultater" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" +"Lytt kun på det angitte grensesnitt, om ingen er angitt lyttes det på alle" + +msgid "Listening port for inbound DNS queries" +msgstr "Lytte-port for innkommende DNS-spørring" + +msgid "Load" +msgstr "Belastning" + +msgid "Load Average" +msgstr "Belastning Gjennomsnitt" + +msgid "Loading" +msgstr "Laster" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "Lokal IPv4 adresse" + +msgid "Local IPv6 address" +msgstr "Lokal IPv6 adresse" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "Lokal Oppstart" + +msgid "Local Time" +msgstr "Lokal tid" + +msgid "Local domain" +msgstr "Lokalt domene" + +#, fuzzy +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" +"Lokalt domene spesifikasjon. Navn som passer dette domenet blir aldri " +"videresendt, de blir kun løst av DHCP eller vertsfiler" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "Lokalt domenesuffiks lagt til DHCP navn og vertsfil oppføringer" + +msgid "Local server" +msgstr "Lokal server" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" +"Lokaliser vertsnavn avhengig av subnett hvis flere IP-adresser er " +"tilgjengelig" + +msgid "Localise queries" +msgstr "Lokalisere søk" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "Logg nivå" + +msgid "Log queries" +msgstr "Logg spørringer" + +msgid "Logging" +msgstr "Logging" + +msgid "Login" +msgstr "Logg inn" + +msgid "Logout" +msgstr "Logg ut" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "Laveste leide adresse, forskjøvet fra nettverks adressen." + +msgid "MAC-Address" +msgstr "MAC-Adresse" + +msgid "MAC-Address Filter" +msgstr "MAC-Addresse Filter" + +msgid "MAC-Filter" +msgstr "MAC-Filter" + +msgid "MAC-List" +msgstr "MAC-Liste" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "MB/s" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "MHz" + +msgid "MTU" +msgstr "MTU" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "Maksimal hastighet" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "Maksimalt antall aktive DHCP leieavtaler" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "Maksimalt antall samtidige DNS spørringer" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "Maksimal tillatt størrelse på EDNS.0 UDP-pakker" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "Maksimalt antall sekunder å vente på at modemet skal bli klart" + +msgid "Maximum hold time" +msgstr "Maksimal holde tid" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "Maksimalt antall utleide adresser." + +msgid "Mbit/s" +msgstr "Mbit/s" + +msgid "Memory" +msgstr "Minne" + +msgid "Memory usage (%)" +msgstr "Minne forbruk (%)" + +msgid "Metric" +msgstr "Metrisk" + +msgid "Minimum Rate" +msgstr "Minimum hastighet" + +msgid "Minimum hold time" +msgstr "Minimum holde tid" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "Mangler protokoll utvidelse for proto %q" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "Modus" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "Modem" + +msgid "Modem init timeout" +msgstr "Modem initiering tidsavbrudd" + +msgid "Monitor" +msgstr "Monitor" + +msgid "Mount Entry" +msgstr "Monterings Enhet" + +msgid "Mount Point" +msgstr "Monterings Punkt" + +msgid "Mount Points" +msgstr "Monterings Punkter" + +msgid "Mount Points - Mount Entry" +msgstr "Monterings Punkter - Monterings Enhet" + +msgid "Mount Points - Swap Entry" +msgstr "Monterings Punkter - Swap Enhet" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"Monterings punkter definerer hvor lagrings enheter blir tilsluttet " +"filsystemet" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "Monterings alternativer" + +msgid "Mount point" +msgstr "Monterings punkt" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "Monterte Filsystemer" + +msgid "Move down" +msgstr "Flytt ned" + +msgid "Move up" +msgstr "Flytt opp" + +msgid "Multicast Rate" +msgstr "Multicast hastighet" + +msgid "Multicast address" +msgstr "Multicast adresse" + +msgid "NAS ID" +msgstr "NAS ID" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "NTP server kandidater" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "Navn" + +msgid "Name of the new interface" +msgstr "Navnet til det nye grensesnittet" + +msgid "Name of the new network" +msgstr "Navnet til det nye nettverket" + +msgid "Navigation" +msgstr "Navigasjon" + +msgid "Netmask" +msgstr "Nettmaske" + +msgid "Network" +msgstr "Nettverk" + +msgid "Network Utilities" +msgstr "Nettverks Verktøy" + +msgid "Network boot image" +msgstr "Nettverks boot image" + +msgid "Network without interfaces." +msgstr "Nettverk uten grensesnitt." + +msgid "Next »" +msgstr "Neste »" + +msgid "No DHCP Server configured for this interface" +msgstr "Ingen DHCP server er konfigurert for dette grensesnittet" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "Ingen lenker i denne tabellen" + +msgid "No files found" +msgstr "Ingen filer funnet" + +msgid "No information available" +msgstr "Ingen informasjon tilgjengelig" + +msgid "No negative cache" +msgstr "Ingen negative cache" + +msgid "No network configured on this device" +msgstr "Ingen nettverk er konfigurert på denne enheten" + +msgid "No network name specified" +msgstr "Ingen nettverksnavn spesifisert" + +msgid "No package lists available" +msgstr "Ingen pakkelister tilgjengelig" + +msgid "No password set!" +msgstr "Ruteren er ikke passordbeskyttet!" + +msgid "No rules in this chain" +msgstr "Ingen regler i denne tabellen" + +msgid "No zone assigned" +msgstr "Ingen sone tilknyttet" + +msgid "Noise" +msgstr "Støy" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "Støy:" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "Ingen" + +msgid "Normal" +msgstr "Normal" + +msgid "Not Found" +msgstr "Ikke funnet" + +msgid "Not associated" +msgstr "Ikke tilknyttet" + +msgid "Not connected" +msgstr "Ikke tilkoblet" + +msgid "Note: Configuration files will be erased." +msgstr "Merk: Konfigurasjonsfiler vil bli slettet" + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "Merk" + +msgid "Nslookup" +msgstr "Nslookup" + +msgid "OK" +msgstr "OK" + +msgid "OPKG-Configuration" +msgstr "OPKG-Konfigurasjon" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "Forsinkelse ved tilstand Av" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"På denne siden kan du konfigurere nettverks grensesnittet. Du kan " +"sammenkoble flere grensesnitt ved å hake av \"Sammekoble grensesnitt\" " +"feltet og skrive inn navn på grensesnittene atskilt med mellomrom. Du kan " +"også bruke VLAN betegnelse " +"INTERFACE.VLANNR (f.eks: " +"eth0.1)." + +msgid "On-State Delay" +msgstr "Forsinkelse ved tilstand -På-" + +msgid "One of hostname or mac address must be specified!" +msgstr "Enten Vertsnavn eller Mac-adresse må oppgis!" + +msgid "One or more fields contain invalid values!" +msgstr "Ett eller flere felt inneholder ugyldige verdier!" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "Ett eller flere obligatoriske felter har ingen verdi!" + +msgid "Open list..." +msgstr "Åpne liste..." + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "Innstilling endret" + +msgid "Option removed" +msgstr "Innstilling fjernet" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "Alternativer" + +msgid "Other:" +msgstr "Andre:" + +msgid "Out" +msgstr "Ut" + +msgid "Outbound:" +msgstr "Ugående:" + +msgid "Outdoor Channels" +msgstr "Utendørs Kanaler" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "Overstyr MAC adresse" + +msgid "Override MTU" +msgstr "Overstyr MTU" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "Overstyr gatewayen mottatt av DHCP respons" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" +"Overstyr nettmaske sendt til klienter. Normalt er nettmasken beregnet ut fra " +"subnettet som blir tildelt." + +msgid "Override the table used for internal routes" +msgstr "Overstyr tabellen som brukes for interne ruter" + +msgid "Overview" +msgstr "Oversikt" + +msgid "Owner" +msgstr "Eier" + +msgid "PAP/CHAP password" +msgstr "PAP/CHAP passord" + +msgid "PAP/CHAP username" +msgstr "PAP/CHAP brukernavn" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "PIN" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "PPP" + +msgid "PPPoA Encapsulation" +msgstr "PPPoA Innkapsling" + +msgid "PPPoATM" +msgstr "PPPoATM" + +msgid "PPPoE" +msgstr "PPPoE" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "PPtP" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "Pakken libiwinfo er nødvendig!" + +msgid "Package lists are older than 24 hours" +msgstr "Pakkelistene er eldre enn 24 timer" + +msgid "Package name" +msgstr "Pakkenavn" + +msgid "Packets" +msgstr "Pakker" + +msgid "Part of zone %q" +msgstr "En del av sone %q" + +msgid "Password" +msgstr "Passord" + +msgid "Password authentication" +msgstr "Passord godkjenning" + +msgid "Password of Private Key" +msgstr "Passord for privatnøkkel" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "Passordet er endret!" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "Sti til CA-sertifikat" + +msgid "Path to Client-Certificate" +msgstr "Sti til klient-sertifikat" + +msgid "Path to Private Key" +msgstr "Sti til privatnøkkel" + +msgid "Path to executable which handles the button event" +msgstr "Sti til program som håndterer handling ved bruk av knapp" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "Maksimalt:" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "Omstart nå" + +msgid "Perform reset" +msgstr "Foreta nullstilling" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "Phy Hastighet:" + +msgid "Physical Settings" +msgstr "Fysiske Innstillinger" + +msgid "Ping" +msgstr "Ping" + +msgid "Pkts." +msgstr "Pakker." + +msgid "Please enter your username and password." +msgstr "Skriv inn ditt brukernavn og passord." + +msgid "Policy" +msgstr "Policy" + +msgid "Port" +msgstr "Port" + +msgid "Port status:" +msgstr "Port status:" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" +"Annta at peer er uten forbindelse om angitt LCP ekko feiler, bruk verdi 0 " +"for å overse feil" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "Hindrer klient-til-klient kommunikasjon" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "Prism2/2.5/3 802.11b Trådløs Kontroller" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "Fortsett" + +msgid "Processes" +msgstr "Prosesser" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "Prot." + +msgid "Protocol" +msgstr "Protokoll" + +msgid "Protocol family" +msgstr "Protokoll familie" + +msgid "Protocol of the new interface" +msgstr "Protokoll til det nye grensesnittet" + +msgid "Protocol support is not installed" +msgstr "Protokoll støtte er ikke installert" + +msgid "Provide NTP server" +msgstr "Funger som NTP Server" + +msgid "Provide new network" +msgstr "Lag nytt nettverk" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "Pseudo Ad-Hoc (ahdemo)" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "Kvalitet" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "RTS/CTS Terskel" + +msgid "RX" +msgstr "RX" + +msgid "RX Rate" +msgstr "RX Rate" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "RaLink 802.11%s Trådløs Kontroller" + +msgid "Radius-Accounting-Port" +msgstr "Radius-Accounting-Port" + +msgid "Radius-Accounting-Secret" +msgstr "Radius-Accounting-Secret" + +msgid "Radius-Accounting-Server" +msgstr "Radius-Accounting-Server" + +msgid "Radius-Authentication-Port" +msgstr "Radius-Authentication-Port" + +msgid "Radius-Authentication-Secret" +msgstr "Radius-Authentication-Secret" + +msgid "Radius-Authentication-Server" +msgstr "Radius-Authentication-Server" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"Benytt /etc/ethers for å konfigurere DHCP-Server" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" +"Fjerne dette grensesnittet? Slettingen kan ikke omgjøres!\n" +"Du kan miste kontakten med ruteren om du er tilkoblet via dette " +"grensesnittet." + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" +"Fjerne dette trådløse nettverket? Slettingen kan ikke omgjøres!\n" +"Du kan miste kontakten med ruteren om du er tilkoblet via dette nettverket." + +msgid "Really reset all changes?" +msgstr "Vil du nullstille alle endringer?" + +#, fuzzy +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" +"Slå av dette nettverket ?\n" +"Du kan miste kontakten med ruteren om du er tilkoblet via dette " +"grensesnittet." + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" +"Slå av dette grensesnittet \"%s\" ?\n" +"Du kan miste kontakten med ruteren om du er tilkoblet via dette " +"grensesnittet." + +msgid "Really switch protocol?" +msgstr "Vil du endre protokoll?" + +msgid "Realtime Connections" +msgstr "Tilkoblinger Sanntid" + +msgid "Realtime Graphs" +msgstr "Grafer i sanntid" + +msgid "Realtime Load" +msgstr "Belastning Sanntid" + +msgid "Realtime Traffic" +msgstr "Trafikk Sanntid" + +msgid "Realtime Wireless" +msgstr "Trådløst i sanntid" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "Binde beskyttelse" + +msgid "Reboot" +msgstr "Omstart" + +msgid "Rebooting..." +msgstr "Starter på nytt..." + +msgid "Reboots the operating system of your device" +msgstr "Omstarter operativsystemet på enheten" + +msgid "Receive" +msgstr "Motta" + +msgid "Receiver Antenna" +msgstr "Mottak antenne" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "Koble til igjen" + +msgid "Reconnecting interface" +msgstr "Kobler til igjen" + +msgid "References" +msgstr "Referanser" + +msgid "Regulatory Domain" +msgstr "Regulerende Domene" + +msgid "Relay" +msgstr "Relay" + +msgid "Relay Bridge" +msgstr "Relay bro" + +msgid "Relay between networks" +msgstr "Relay mellom nettverk" + +msgid "Relay bridge" +msgstr "Relay bro" + +msgid "Remote IPv4 address" +msgstr "Ekstern IPv4 adresse" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "Avinstaller" + +msgid "Repeat scan" +msgstr "Skann på nytt" + +msgid "Replace entry" +msgstr "Erstatt oppføring" + +msgid "Replace wireless configuration" +msgstr "Erstatt trådløs konfigurasjon" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "Er nødvendig for noen nettleverandører, f.eks Charter med DOCSIS 3" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "Nullstill" + +msgid "Reset Counters" +msgstr "Nullstill Tellere" + +msgid "Reset to defaults" +msgstr "Nullstill til standard innstilling" + +msgid "Resolv and Hosts Files" +msgstr "Oppslag og Vertsfiler" + +msgid "Resolve file" +msgstr "Oppslagsfil" + +msgid "Restart" +msgstr "Omstart" + +msgid "Restart Firewall" +msgstr "Omstart Brannmur" + +msgid "Restore backup" +msgstr "Gjenopprett sikkerhetskopi" + +msgid "Reveal/hide password" +msgstr "Vis/Skjul passord" + +msgid "Revert" +msgstr "Tilbakestill" + +msgid "Root" +msgstr "Rot" + +msgid "Root directory for files served via TFTP" +msgstr "Rot katalog for filer gitt fra TFTP" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "Ruter Passord" + +msgid "Routes" +msgstr "Ruter" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"Ruter, angir hvilket nettverksgrensesnitt og hvilken gateway som brukes for " +"å nå et gitt nettverk eller vert." + +msgid "Run a filesystem check before mounting the device" +msgstr "Kjør filsystem sjekk før montering av enheten" + +msgid "Run filesystem check" +msgstr "Kjør filsystem sjekk" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "SSH Tilgang" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "SSH-Nøkler" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "Lagre" + +msgid "Save & Apply" +msgstr "Lagre & Aktiver" + +msgid "Save & Apply" +msgstr "Lagre & Aktiver" + +msgid "Scan" +msgstr "Skann" + +msgid "Scheduled Tasks" +msgstr "Planlagte Oppgaver" + +msgid "Section added" +msgstr "Seksjon lagt til" + +msgid "Section removed" +msgstr "Seksjon fjernet" + +msgid "See \"mount\" manpage for details" +msgstr "Se \"mount\" manpage for detaljer" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" +"Send LCP ekko forespørsler etter angitt intervall i sekunder, dette er kun " +"gjeldene dersom feilterskelen er nådd" + +msgid "Separate Clients" +msgstr "Separerte Klienter" + +msgid "Separate WDS" +msgstr "Separert WDS" + +msgid "Server Settings" +msgstr "Server Innstillinger" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "Tjeneste navn" + +msgid "Service Type" +msgstr "Tjeneste type" + +msgid "Services" +msgstr "Tjenester" + +#, fuzzy +msgid "Set up Time Synchronization" +msgstr "Oppsett tidssynkronisering" + +msgid "Setup DHCP Server" +msgstr "Oppsett DHCP server" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "Vis gjeldende liste med sikkerhetskopifiler" + +msgid "Shutdown this interface" +msgstr "Slå av dette grensesnittet" + +msgid "Shutdown this network" +msgstr "Slå av dette nettverket" + +msgid "Signal" +msgstr "Signal" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "Signal:" + +msgid "Size" +msgstr "Størrelse" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "Gå videre" + +msgid "Skip to content" +msgstr "Gå til innhold" + +msgid "Skip to navigation" +msgstr "Gå til navigasjon" + +msgid "Slot time" +msgstr "Slot tid" + +msgid "Software" +msgstr "Programvare" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "Noen felt er ugyldige, kan ikke lagre verdier!" + +msgid "Sorry, the object you requested was not found." +msgstr "Beklager, objektet du spurte om ble ikke funnet." + +msgid "Sorry, the server encountered an unexpected error." +msgstr "Beklager, det oppstod en uventet feil på serveren." + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" +"Beklager, men finner ikke støtte for 'sysupgrade', ny firmware må derfor " +"flashes manuelt. Viser til wiki for installering av firmare på forskjellige " +"enheter." + +msgid "Sort" +msgstr "Sortering" + +msgid "Source" +msgstr "Kilde" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "Spesifiserer knappens handlemønster" + +msgid "Specifies the directory the device is attached to" +msgstr "Hvor lagrings enheten blir tilsluttet filsystemet (f.eks. /mnt/sda1)" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "Angir den lyttende porten for denne Dropbear instansen" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" +"Angir maksimalt antall feilede ARP forespørsler før verter ansees frakoblet" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "Angir maksimalt antall sekunder før verter ansees som frakoblet" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "Angi krypteringsnøkkelen her." + +msgid "Start" +msgstr "Start" + +msgid "Start priority" +msgstr "Start prioritet" + +msgid "Startup" +msgstr "Oppstart" + +msgid "Static IPv4 Routes" +msgstr "Statiske IPv4 Ruter" + +msgid "Static IPv6 Routes" +msgstr "Statiske IPv6 Ruter" + +msgid "Static Leases" +msgstr "Statiske Leier" + +msgid "Static Routes" +msgstr "Statiske Ruter" + +msgid "Static WDS" +msgstr "Statisk WDS" + +msgid "Static address" +msgstr "Statisk adresse" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" +"Statisk leieavtaler brukes til å tildele faste IP adresser og symbolske " +"vertsnavn til DHCP klienter. Dette er nødvendig om grensesnittet ikke er " +"dynamisk konfigurert og kun klienter med dhcp leieavtale får IP." + +msgid "Status" +msgstr "Status" + +msgid "Stop" +msgstr "Stop" + +msgid "Strict order" +msgstr "Streng overholdelse" + +msgid "Submit" +msgstr "Send" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "Swap Enhet" + +msgid "Switch" +msgstr "Svitsj" + +msgid "Switch %q" +msgstr "Svitsj %q" + +msgid "Switch %q (%s)" +msgstr "Svitsj %q (%s)" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "Svitsj protokoll" + +msgid "Sync with browser" +msgstr "Synkroniser med nettleser" + +msgid "Synchronizing..." +msgstr "Synkroniser..." + +msgid "System" +msgstr "System" + +msgid "System Log" +msgstr "System Logg" + +msgid "System Properties" +msgstr "System Egenskaper" + +msgid "System log buffer size" +msgstr "System logg buffer størrelse" + +msgid "TCP:" +msgstr "TCP:" + +msgid "TFTP Settings" +msgstr "TFTP Innstillinger" + +msgid "TFTP server root" +msgstr "TFTP server roten" + +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "TX rate" + +msgid "Table" +msgstr "Tabell" + +msgid "Target" +msgstr "Mål" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "Avslutte" + +#, fuzzy +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" +"Enhet Konfigurasjon seksjonen omhandler innstillingene av den " +"trådløse enheten som kanaler, sende stryke eller antenne valg. Disse " +"innstillingene er delt mellom alle definerte trådløse nettverk opprettet " +"utfra denne enhet. (om den trådløse enheten støtter mulit-SSID). Nettverks " +"innstillinger som kryptering eller kanaler er gruppert i Grensesnitt " +"Konfigurasjon." + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" +"Pakken libiwinfo-lua er ikke installert. Du må installere denne " +"pakken for å kunne konfigurerer trådløse enheter!" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" +"IPv6 prefikset tilordnet mot leverandør, ender som regel med ::" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" +"Gyldige tegn er: A-Z, a-z, 0-9 og " +"_" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" +"Filenheten til partisjonen eller minnet (f.eks." +" /dev/sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"Filsystemet som ble brukt til å formatere partisjonen eller minnet. (f.eks. ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" +"Firmwaren ble lastet opp. Nedenfor er kontrollsum og filstørrelse oppført, " +"sammenlign dem med den opprinnelige filen for å sikre dataintegriteten.
Klikk \"Fortsett\" nedenfor for å starte flash prosedyren." + +msgid "The following changes have been committed" +msgstr "Følgende endringer er foretatt" + +msgid "The following changes have been reverted" +msgstr "Følgende endringer er forkastet" + +msgid "The following rules are currently active on this system." +msgstr "Følgende regler er aktiver på systemet." + +msgid "The given network name is not unique" +msgstr "Det angitte nettverksnavnet er ikke unikt" + +#, fuzzy +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" +"Maskinvaren er ikke multi-SSID kapabel og den ekisterende konfigurasjonen " +"vil bli erstattet om du fortsetter." + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "Lengden IPv4 prefikset i bits, resten brukt i IPv6-adresser." + +msgid "The length of the IPv6 prefix in bits" +msgstr "Lengden på IPv6 prefikset i bits" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" +"Nettverks portene på ruteren kan kombineres til flere VLANs der datamaskiner kan kommunisere direkte " +"med hverandre. VLANs " +"brukes ofte for å skille ulike nettverk segmenter. Det er vanlig og ha en " +"Uplink port for tilkobling til større nettverk som internett og andre porter " +"til lokalt nettverk." + +msgid "The selected protocol needs a device assigned" +msgstr "Den valgte protokoll må ha en enhet tilknyttet" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" +"Systemet sletter konfigurasjonspartisjonen nå, enheten vil bli startet på " +"nytt når dette er utført." + +#, fuzzy +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"Systemet flashes nå.
IKKE SLÅ AV ENHETEN!
Vent noen minutter før " +"du prøver å koble til igjen. Det kan være nødvendig å fornye ip-adressen til " +"datamaskinen din for å nå enheten på nytt. (avhengig av innstillingene dine)" + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"Den opplastede programvaren er av et format som ikke støttes. Sørg for at du " +"velger det generelle firmware-bildet for din plattform." + +msgid "There are no active leases." +msgstr "Det er ingen aktive leieavtaler." + +msgid "There are no pending changes to apply!" +msgstr "Det finnes ingen endringer som kan utføres!" + +msgid "There are no pending changes to revert!" +msgstr "Det finnes ingen endriger å reversere!" + +msgid "There are no pending changes!" +msgstr "Det finnes ingen endringer!" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" +"Det er ingen enhet som er tilordnet ennå, vennligst legg til en " +"nettverksenhet i \"Fysiske Innstillinger\"" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" +"Det er ikke satt noe passord på denne ruter. Vennligst konfigurer et " +"passord, dette beskytter webgrensesnittet og aktiverer SSH." + +msgid "This IPv4 address of the relay" +msgstr "Dette IPv4 adressen til relayet" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" +"Dette er en liste med 'shell glob patterns' for å matche filer og kataloger " +"som skal inkluderes under sysupgrade. Endrede filer i /etc/config/ og " +"enkelte andre konfigurasjoner blir automatisk bevart." + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" +"Dette er innholdet i /etc/rc.local. Her kan du legge til egne kommandoer som " +"blir startet ved slutten av boot sekvensen. (før 'exit 0')" + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" +"Dette er den lokale endepunkt adressen som ble tildelt av tunnel 'broker', " +"adressen ender vanligvis med :2" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" +"Dette er den eneste DHCP server i det lokale nettverket" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "Dette er systemets crontab, hvor planlagte oppgaver kan defineres." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" +"Dette er vanligvis adressen til nærmeste PoP som drives av tunell 'broker'" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "Denne listen gir en oversikt over kjørende prosesser og deres status." + +msgid "This page allows the configuration of custom button actions" +msgstr "" +"Denne siden gir mulighet for å definerte egne knappers handlingsmønster" + +msgid "This page gives an overview over currently active network connections." +msgstr "" +"Denne siden gir en oversikt over gjeldende aktive nettverkstilkoblinger." + +msgid "This section contains no values yet" +msgstr "Denne seksjonen inneholder ennå ingen verdier" + +msgid "Time Synchronization" +msgstr "Tidssynkronisering" + +msgid "Time Synchronization is not configured yet." +msgstr "Tiden Synkroniseringen er ikke konfigurert ennå." + +msgid "Timezone" +msgstr "Tidssone" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" +"For å gjenopprette konfigurasjonsfiler, kan du her laste opp et backup arkiv " +"som ble opprettet tidligere." + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "Totalt Tilgjengelig" + +msgid "Traceroute" +msgstr "Traceroute" + +msgid "Traffic" +msgstr "Trafikk" + +msgid "Transfer" +msgstr "Overføring" + +msgid "Transmission Rate" +msgstr "Overførings rate" + +msgid "Transmit" +msgstr "Sende" + +msgid "Transmit Power" +msgstr "Sende styrke" + +msgid "Transmitter Antenna" +msgstr "Sende Antenne" + +msgid "Trigger" +msgstr "Utløser" + +msgid "Trigger Mode" +msgstr "Utløsende Tilstand" + +msgid "Tunnel ID" +msgstr "Tunnel ID" + +msgid "Tunnel Interface" +msgstr "Tunnel grensesnitt" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "Turbo Modus" + +msgid "Tx-Power" +msgstr "Tx-Styrke" + +msgid "Type" +msgstr "Type" + +msgid "UDP:" +msgstr "UDP:" + +msgid "UMTS only" +msgstr "Kun UMTS" + +msgid "UMTS/GPRS/EV-DO" +msgstr "UMTS/GPRS/EV-DO" + +msgid "USB Device" +msgstr "USB Enhet" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "UUID" + +msgid "Unable to dispatch" +msgstr "Kan ikke sende" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "Ukjent" + +msgid "Unknown Error, password not changed!" +msgstr "Ukjent feil, passordet ble ikke endret!" + +msgid "Unmanaged" +msgstr "Uhåndtert" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "Ulagrede Endringer" + +msgid "Unsupported protocol type." +msgstr "Protokoll type er ikke støttet." + +msgid "Update lists" +msgstr "Oppdater lister" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" +"Last her opp en sysupgrade-kompatibel firmware som skal erstatte den " +"kjørende firmware. Merk av \"Behold innstillinger\" for å beholde gjeldene " +"konfigurasjon. (en kompatibel firmware er nødvendig)" + +msgid "Upload archive..." +msgstr "Last opp arkiv..." + +msgid "Uploaded File" +msgstr "Opplastet Fil" + +msgid "Uptime" +msgstr "Oppetid" + +msgid "Use /etc/ethers" +msgstr "Bruk /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "Bruk DHCP gateway" + +msgid "Use DNS servers advertised by peer" +msgstr "Bruk DNS servere annonsert av peer" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "Bruk ISO/IEC 3166 alpha2 landskoder." + +msgid "Use MTU on tunnel interface" +msgstr "Bruk MTU på tunnel grensesnitt" + +msgid "Use TTL on tunnel interface" +msgstr "Bruk TTL på tunnel grensesnitt" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "Bruk kringkasting flagg" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "Bruk egendefinerte DNS servere" + +msgid "Use default gateway" +msgstr "Bruk standard gateway" + +msgid "Use gateway metric" +msgstr "Bruk gateway metrikk" + +msgid "Use routing table" +msgstr "Bruk rutingtabellen" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" +"Bruk Legg til knappen får å legge til en leieavtale. MAC-" +"Adresse identifiserer verten, IPv4-Adresse angir hvilken " +"statisk IP adresse som skal brukes og Vertsnavn blir symbolsk " +"tilknyttet den anmodende verten." + +msgid "Used" +msgstr "Brukt" + +msgid "Used Key Slot" +msgstr "Brukte Nøkler" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "Brukernavn" + +msgid "VC-Mux" +msgstr "VC-Mux" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "VLANs på %q" + +msgid "VLANs on %q (%s)" +msgstr "VLANs på %q (%s)" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "VPN server" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "Leverandør klasse som sendes ved DHCP spørring" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "Bekreft" + +msgid "Version" +msgstr "Versjon" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "WEP åpent system" + +msgid "WEP Shared Key" +msgstr "WEP delt nøkkel" + +msgid "WEP passphrase" +msgstr "WEP passord" + +msgid "WMM Mode" +msgstr "WMM Modus" + +msgid "WPA passphrase" +msgstr "WPA passord" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"WPA-Kryptering krever at wpa_supplicant (for klient-modus) eller hostapd " +"(for AP og ad-hoc-modus) er installert." + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "Venter på at endringer utføres..." + +msgid "Waiting for command to complete..." +msgstr "Venter på at kommando fullføres..." + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "Advarsel" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "Trådløs" + +msgid "Wireless Adapter" +msgstr "Trådløs Tilslutning" + +msgid "Wireless Network" +msgstr "Trådløst Nettverk" + +msgid "Wireless Overview" +msgstr "Trådløs Oversikt" + +msgid "Wireless Security" +msgstr "Trådløs Sikkerhet" + +msgid "Wireless is disabled or not associated" +msgstr "Trådløs er deaktiver eller ikke tilknyttet" + +msgid "Wireless is restarting..." +msgstr "Trådløst starter på nytt..." + +msgid "Wireless network is disabled" +msgstr "Trådløst nettverk er deaktivert" + +msgid "Wireless network is enabled" +msgstr "Trådløst nettverk er aktivert" + +msgid "Wireless restarted" +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" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "XR Støtte" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"Her kan du aktivere eller deaktivere installerte oppstartsskript. Enheten må " +"omstartes før endringene blir tatt i bruk.
Advarsel: Om du " +"deaktiverer nødvendige init skript som f.eks. \"nettverk\", kan enheten bli " +"utilgjengelig! " + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" +"Du må aktivere JavaScript i nettleseren din ellers vil ikke LuCI fungere " +"skikkelig." + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "enhver" + +msgid "auto" +msgstr "auto" + +msgid "baseT" +msgstr "baseT" + +msgid "bridged" +msgstr "brokoblet" + +msgid "create:" +msgstr "opprett:" + +msgid "creates a bridge over specified interface(s)" +msgstr "Oppretter en bro mellom angitte grensesnitt" + +msgid "dB" +msgstr "dB" + +msgid "dBm" +msgstr "dBm" + +msgid "disable" +msgstr "Deaktiver" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "utgått" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" +"filen der gitt DHCP-leier vil bli lagret" + +msgid "forward" +msgstr "videresend" + +msgid "full-duplex" +msgstr "full-dupleks" + +msgid "half-duplex" +msgstr "halv-dupleks" + +msgid "help" +msgstr "Hjelp" + +msgid "hidden" +msgstr "skjult" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "Dersom målet er et nettverk" + +msgid "input" +msgstr "inndata" + +msgid "kB" +msgstr "kB" + +msgid "kB/s" +msgstr "kB/s" + +msgid "kbit/s" +msgstr "kbit/s" + +msgid "local DNS file" +msgstr "lokal DNS-fil" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "nei" + +msgid "no link" +msgstr "ingen forbindelse" + +msgid "none" +msgstr "ingen" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "av" + +msgid "on" +msgstr "på" + +msgid "open" +msgstr "åpen" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "rutet" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "tagget" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "ukjent" + +msgid "unlimited" +msgstr "ubegrenset" + +msgid "unspecified" +msgstr "uspesifisert" + +msgid "unspecified -or- create:" +msgstr "uspesifisert --eller-- opprett:" + +msgid "untagged" +msgstr "utagget" + +msgid "yes" +msgstr "ja" + +msgid "« Back" +msgstr "« Tilbake" + +#~ msgid "Leasetime" +#~ msgstr "Leietid" + +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "Et nytt nettverk vil bli opprettet hvis du tar bort haken." + +#~ msgid "Join Network: Settings" +#~ msgstr "Koble til nettverk: Innstilling" + +#~ msgid "CPU" +#~ msgstr "CPU" + +#~ msgid "Port %d" +#~ msgstr "Port %d" + +#~ msgid "Port %d is untagged in multiple VLANs!" +#~ msgstr "Port %d er utagget i flere VLANs!" + +#~ msgid "VLAN Interface" +#~ msgstr "VLAN grensesnitt" diff --git a/luci-base/po/pl/base.po b/luci-base/po/pl/base.po new file mode 100644 index 000000000..3b70ca502 --- /dev/null +++ b/luci-base/po/pl/base.po @@ -0,0 +1,4016 @@ +msgid "" +msgstr "" +"Project-Id-Version: LuCI\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2010-04-20 09:40+0200\n" +"PO-Revision-Date: 2014-04-23 19:15+0200\n" +"Last-Translator: goodgod261 \n" +"Language-Team: Polish\n" +"Language: pl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " +"|| n%100>=20) ? 1 : 2);\n" +"X-Generator: Pootle 2.0.6\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(okno %d minut, interwał %d sekund)" + +msgid "(%s available)" +msgstr "(dostępne %s)" + +msgid "(empty)" +msgstr "(pusty)" + +msgid "(no interfaces attached)" +msgstr "(brak podłączonych interfejsów)" + +msgid "-- Additional Field --" +msgstr "-- Dodatkowe pole --" + +msgid "-- Please choose --" +msgstr "-- Proszę wybrać --" + +msgid "-- custom --" +msgstr "-- własne --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "Obciążenie 1 min.:" + +msgid "15 Minute Load:" +msgstr "Obciążenie 15 min.:" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "Obciążenie 5 min.:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "DNS query port" +msgstr "Port wywołania DNS" + +msgid "DNS server port" +msgstr "Port serwera DNS" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" +"Nazwa DNS będzie rozwijana przez " +"kolejne serwery w porządku podanym w resolvfile" + +msgid "ESSID" +msgstr "ESSID" + +msgid "IPv4-Address" +msgstr "Adres IPv4" + +msgid "IPv4-Gateway" +msgstr "Brama IPv4" + +msgid "IPv4-Netmask" +msgstr "Maska sieci IPv4" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"Adres sieci (CIDR) IPv6" + +msgid "IPv6-Gateway" +msgstr "Brama IPv6" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "Konfiguracja diod LED" + +msgid "LED Name" +msgstr "Nazwa diody LED" + +msgid "MAC-Address" +msgstr "Adres MAC" + +msgid "" +"Max. DHCP leases" +msgstr "" +"Maks. dzierżaw DHCP" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"Maks. rozmiar pakietu EDNS0" + +msgid "Max. concurrent queries" +msgstr "Maks. zapytań równoczesnych" + +msgid "%s - %s" +msgstr "%s - %s" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "APN" + +# Wydaje mi się że brakuje litery R... +msgid "AR Support" +msgstr "Wsparcie dla ARP" + +msgid "ARP retry threshold" +msgstr "Próg powtórzeń ARP" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "Mostki ATM" + +# Nie wiem czy to powinno się tłumaczyć wg. mnie lepiej zostawić po angielsku +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "Identyfikator kanału wirtualnego ATM (VCI)" + +# j.w. +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "Identyfikator ścieżki wirtualnej ATM (VPI)" + +# Jak zwykle zakręciłem...niech ktoś poprawi +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"Mostki ATM maskują za-kapsułkowane ramki Ethernet w połączeniach AAL5 jako " +"wirtualne interfejsy w Linuksie. Interfejsy takie mogą być użyte w " +"połączeniu z protokołami DHCP lub PPP do wdzwaniania się do sieci provider`a" + +msgid "ATM device number" +msgstr "Numer urządzenia ATM" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +# co to takiego? +msgid "Access Concentrator" +msgstr "Koncentrator dostępowy ATM" + +msgid "Access Point" +msgstr "Punkt dostępowy" + +msgid "Action" +msgstr "Akcja" + +msgid "Actions" +msgstr "Akcje" + +msgid "Activate this network" +msgstr "Aktywuj tą sieć" + +msgid "Active IPv4-Routes" +msgstr "" +"Aktywne trasy routingu IPv4" + +msgid "Active IPv6-Routes" +msgstr "" +"Aktywne trasy routingu IPv6" + +msgid "Active Connections" +msgstr "Aktywne połączenia" + +msgid "Active DHCP Leases" +msgstr "Aktywne dzierżawy DHCP" + +msgid "Active DHCPv6 Leases" +msgstr "Aktywne dzierżawy DHCPv6" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc" + +msgid "Add" +msgstr "Dodaj" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "Dodaj lokalny sufiks domeny do nazw urządzeń z pliku hosts" + +msgid "Add new interface..." +msgstr "Dodaj nowy interfejs..." + +msgid "Additional Hosts files" +msgstr "Dodatkowe pliki Hosts" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "Adres" + +# Na upartego można by zrobić Adres dostępowy mostu przekaźnikowego - ale kto to zrozumie? +msgid "Address to access local relay bridge" +msgstr "Adres dostępowy do \"relay bridge\"" + +msgid "Administration" +msgstr "Zarządzanie" + +msgid "Advanced Settings" +msgstr "Ustawienia zaawansowane" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "Alarm" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "Pozwól na logowanie SSH" + +msgid "Allow all except listed" +msgstr "Pozwól wszystkim oprócz wymienionych" + +msgid "Allow listed only" +msgstr "Pozwól tylko wymienionym" + +msgid "Allow localhost" +msgstr "Pozwól tylko sobie (localhost)" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" +"Pozwól zdalnym komputerom na połączenia SSH do lokalnych przekierowanych " +"portów" + +msgid "Allow root logins with password" +msgstr "Zezwól na logowanie roota przy pomocy hasła" + +# Brak spacji... +msgid "Allow the root user to login with password" +msgstr "Pozwól użytkownikowi root na logowanie przy pomocy hasła" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" +"Pozwól na ruch wychodzący (odpowiedzi) z podsieci 127.0.0.0/8, np. usługi RBL" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "Antena 1" + +msgid "Antenna 2" +msgstr "Antena 2" + +msgid "Antenna Configuration" +msgstr "Ustawienia anteny" + +msgid "Any zone" +msgstr "Dowolna strefa" + +msgid "Apply" +msgstr "Zatwierdź" + +msgid "Applying changes" +msgstr "Wprowadzam zmiany" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "Przypisz interfejsy..." + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "Połączone stacje" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Bezprzewodowy kontroler Atheros 802.11%s" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "Uwierzytelnianie" + +msgid "Authentication Type" +msgstr "" + +# Nawet M$ tego nie tłumaczy;) +msgid "Authoritative" +msgstr "Autorytatywny" + +msgid "Authorization Required" +msgstr "Wymagana autoryzacja" + +msgid "Auto Refresh" +msgstr "Automatyczne odświeżanie" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "Dostępne" + +msgid "Available packages" +msgstr "Dostępne pakiety" + +msgid "Average:" +msgstr "Średnia:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "Wróć" + +msgid "Back to Overview" +msgstr "Wróć do przeglądu" + +msgid "Back to configuration" +msgstr "Wróć do konfiguracji" + +msgid "Back to overview" +msgstr "Wróć do przeglądu" + +msgid "Back to scan results" +msgstr "Wróć do wyników skanowania" + +msgid "Background Scan" +msgstr "Skanowanie w tle" + +msgid "Backup / Flash Firmware" +msgstr "Kopia zapasowa/aktualizacja firmware" + +# NIe ma powodu skracać tekstu, zmieści się w polu. +msgid "Backup / Restore" +msgstr "Kopia zapasowa/Przywróć" + +msgid "Backup file list" +msgstr "Kopia zapas. listy plików" + +msgid "Bad address specified!" +msgstr "Wprowadzono zły adres" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"Poniżej widoczna jest lista plików przeznaczonych do kopii zapasowej. " +"Zawiera ona zmienione pliki konfiguracyjne oznaczone przez opkg, podstawowe " +"pliki systemowe, oraz pliki oznaczone do kopiowania przez użytkownika." + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "Przepływność" + +msgid "Bogus NX Domain Override" +msgstr "Podrób statystyki NXDOMAIN" + +msgid "Bridge" +msgstr "Most" + +msgid "Bridge interfaces" +msgstr "Interfejs mostu" + +msgid "Bridge unit number" +msgstr "Numer Mostu (urządzenia)" + +# Podejrzewam że chodzi o interfejs? mam rację? +msgid "Bring up on boot" +msgstr "Podnieś przy stracie" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "Bezprzewodowy kontroler Broadcom 802.11%s" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "Bezprzewodowy kontroler Broadcom BCM%04x 802.11" + +msgid "Buffered" +msgstr "Buforowana" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "Przyciski" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "Użycie CPU (%)" + +msgid "Cancel" +msgstr "Anuluj" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "Łańcuch" + +msgid "Changes" +msgstr "Zmiany" + +msgid "Changes applied." +msgstr "Zmiany zostały zastosowane." + +msgid "Changes the administrator password for accessing the device" +msgstr "Zmienia hasło administratora" + +msgid "Channel" +msgstr "Kanał" + +msgid "Check" +msgstr "Sprawdź" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "Suma kontrolna" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"Wybierz strefę firewalla którą chcesz przypisać do tego interfejsu. Wybierz " +"unspecified aby usunąć interfejs z przypisanej strefy lub wybierz " +"pole create aby zdefiniować nową strefę i przypisać ją do " +"interfejsu." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" +"Wybierz sieć/sieci które chcesz przyłączyć do tego interfejsu " +"bezprzewodowego lub wypełnij pole utwórz aby utworzyć nową sieć." + +msgid "Cipher" +msgstr "Szyfr" + +msgid "Cisco UDP encapsulation" +msgstr "" + +# Przyciski nazywają sie "Twórz archiwum" i "Wykonaj reset" a nie Przywróć Ustawienia +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"Wciśnij \"Twórz archiwum\" aby pobrać archiwum tar zawierające bieżące pliki " +"konfiguracyjne. Aby przywrócić ustawienia domyślne wciśnij \"Wykonaj reset" +"\" (możliwe tylko w przypadku obrazu squashfs)." + +msgid "Client" +msgstr "Klient" + +msgid "Client ID to send when requesting DHCP" +msgstr "Nazwa (ID) klienta do wysłania podczas negocjacji DHCP" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" +"Zamykaj nieaktywne połączenia po określonym czasie podanym w sekundach, " +"wpisz 0 aby uzyskać stałe połączenie." + +msgid "Close list..." +msgstr "Zamknij listę..." + +msgid "Collecting data..." +msgstr "Zbieranie danych..." + +msgid "Command" +msgstr "Polecenie" + +msgid "Common Configuration" +msgstr "Konfiguracja podstawowa" + +msgid "Compression" +msgstr "Kompresja" + +msgid "Configuration" +msgstr "Konfiguracja" + +msgid "Configuration applied." +msgstr "Konfiguracja została zastosowana." + +msgid "Configuration files will be kept." +msgstr "Pliki konfiguracyjne zostaną zachowane." + +msgid "Confirmation" +msgstr "Potwierdzenie" + +msgid "Connect" +msgstr "Połącz" + +msgid "Connected" +msgstr "Połączony" + +msgid "Connection Limit" +msgstr "Limit połączeń" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "Połączenia" + +msgid "Country" +msgstr "Kraj" + +msgid "Country Code" +msgstr "Kod kraju" + +# Pokrywa następujące interfejsy +msgid "Cover the following interface" +msgstr "Pokrywa następujący interfejs" + +msgid "Cover the following interfaces" +msgstr "Pokrywa następujące interfejsy" + +msgid "Create / Assign firewall-zone" +msgstr "Utwórz / Przypisz strefę firewalla" + +msgid "Create Interface" +msgstr "Utwórz interfejs" + +msgid "Create a bridge over multiple interfaces" +msgstr "Utwórz most pomiędzy wieloma interfejsami" + +msgid "Critical" +msgstr "Krytyczne" + +msgid "Cron Log Level" +msgstr "Poziom logowania Cron`a" + +msgid "Custom Interface" +msgstr "Interfejs Niestandardowy" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +# Spacji zabrało i napisy się skleiły +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"Dostosuj zachowanie diod LED " +"urządzenia jeśli jest to możliwe." + +msgid "DHCP Leases" +msgstr "Dzierżawy DHCP" + +msgid "DHCP Server" +msgstr "Serwer DHCP" + +msgid "DHCP and DNS" +msgstr "DHCP i DNS" + +msgid "DHCP client" +msgstr "Klient DHCP" + +msgid "DHCP-Options" +msgstr "Opcje DHCP" + +msgid "DHCPv6 Leases" +msgstr "Dzierżawy DHCPv6" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "Przekierowania DNS" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "DUID" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "Debug" + +msgid "Default %d" +msgstr "Domyślne %d" + +msgid "Default gateway" +msgstr "Brama domyślna" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "Stan domyślny" + +msgid "Define a name for this network." +msgstr "Określ nazwę dla tej sieci." + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"Zdefiniuj dodatkowe opcje DHCP, np. \"6,192.168.2.1,192.168.2.2" +"\" rozgłasza domyślne serwery DNS klientom DHCP." + +msgid "Delete" +msgstr "Usuń" + +msgid "Delete this network" +msgstr "Usuń tą sieć" + +msgid "Description" +msgstr "Opis" + +# Ktoś tłumaczył bez zobaczenia tego w gui. Dotyczy zmiany motywu ten opis. +msgid "Design" +msgstr "Motyw" + +msgid "Destination" +msgstr "Przeznaczenie" + +msgid "Device" +msgstr "Urządzenie" + +msgid "Device Configuration" +msgstr "Konfiguracja urządzenia" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "Diagnostyka" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "Katalog" + +msgid "Disable" +msgstr "Wyłącz" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +"Wyłącz DHCP na " +"tym interfejsie." + +msgid "Disable DNS setup" +msgstr "Wyłącz konfigurowanie DNS" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "Wyłącz zegar HW-Beacon" + +msgid "Disabled" +msgstr "Wyłączony" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "Odrzuć wychodzące odpowiedzi RFC1918" + +msgid "Displaying only packages containing" +msgstr "Pokazuję tylko paczki zawierające" + +msgid "Distance Optimization" +msgstr "Optymalizacja odległości" + +msgid "Distance to farthest network member in meters." +msgstr "Odległość do najdalej oddalonego członka sieci w metrach." + +msgid "Distribution feeds" +msgstr "" + +# Jak poprzednio trzymam się konwencji +msgid "Diversity" +msgstr "Wielorakość" + +# Nie wiem czy nie zamotałem ja rozumiem;) +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Dnsmasq jest to serwer DHCP połączony z serwerem DNS. Jest to serwer przekazujący (Fowarder) dla firewalli NAT" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "Nie cache`uj odpowiedzi negatywnych, np. nie dla bieżących domen" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" +"Nie przekazuj zapytań które nie mogą być zrealizowane przez publiczne " +"serwery nazw" + +msgid "Do not forward reverse lookups for local networks" +msgstr "Nie przekazuj odwrotnych lookup`ów do sieci lokalnych" + +msgid "Do not send probe responses" +msgstr "Nie wysyłaj ramek probe response" + +msgid "Domain required" +msgstr "Wymagana domena" + +msgid "Domain whitelist" +msgstr "Whitelist domen (Dozwolone domeny)" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" +"Nie przekazuj zapytań DNS bez " +"nazwy DNS'a" + +msgid "Download and install package" +msgstr "Pobierz i zainstaluj pakiet" + +msgid "Download backup" +msgstr "Pobierz kopię zapasową" + +msgid "Dropbear Instance" +msgstr "Usługa Dropbear" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear oferuje zdalny dostęp do konsoli (shell`a) poprzez swojego klienta " +"SSH oraz serwer SCP" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +# "n" brakowało... +msgid "Dynamic DHCP" +msgstr "" +"DHCP dynamiczne" + +msgid "Dynamic tunnel" +msgstr "Tunel dynamiczny" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" +"Dynamicznie rezerwuje adresy DHCP dla klientów. Jeśli jest wyłączone tylko " +"klienci posiadający stałe dzierżawy będą obsłużeni." + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "Metoda EAP" + +msgid "Edit" +msgstr "Edycja" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "Edytuj ten interfejs" + +msgid "Edit this network" +msgstr "Edytuj tą sieć" + +# dosłownie nagły wypadek +msgid "Emergency" +msgstr "Zagrożenie" + +msgid "Enable" +msgstr "Włącz" + +msgid "Enable STP" +msgstr "Włącz STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "Włącz dynamiczną aktualizację punktu końcowego sieci HE.net" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "Włącz negocjację IPv6 na łączu PPP" + +msgid "Enable Jumbo Frame passthrough" +msgstr "Włącz przechodzenie ramek Jumbo" + +msgid "Enable NTP client" +msgstr "Włącz klienta NTP" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "Włącz serwer TFTP" + +msgid "Enable VLAN functionality" +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" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "Włącz ten punkt montowania" + +msgid "Enable this swap" +msgstr "Włącz ten swap" + +msgid "Enable/Disable" +msgstr "Wlącz/Wyłącz" + +msgid "Enabled" +msgstr "Włączony" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "" +"Włącz protokół STP na tym " +"moście" + +# a może sposób kapsułkowania byłby lepszy? +msgid "Encapsulation mode" +msgstr "Sposób Enkapsulacji" + +msgid "Encryption" +msgstr "Szyfrowanie" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "Usuwanie..." + +msgid "Error" +msgstr "Błąd" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "Karta Ethernet" + +msgid "Ethernet Switch" +msgstr "Switch Ethernet" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "Rozwiń hosty" + +msgid "Expires" +msgstr "Wygasa" + +#, fuzzy +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" +"Czas wygasania dzierżawy adresu, minimum to 2 Minuty (2m)." + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "Zewnętrzny serwer dla loga systemowego" + +msgid "External system log server port" +msgstr "Port zewnętrznego serwera dla loga systemowego" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "Szybkie ramki (Fast Frames)" + +msgid "File" +msgstr "Plik" + +msgid "Filename of the boot image advertised to clients" +msgstr "Rozgłoszono nazwę pliku obrazu startowego do klientów" + +msgid "Filesystem" +msgstr "System plików" + +msgid "Filter" +msgstr "Filtr" + +msgid "Filter private" +msgstr "Filtruj prywatne" + +msgid "Filter useless" +msgstr "Filtruj bezużyteczne" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "Znajdź i podłącz się do sieci" + +msgid "Find package" +msgstr "Znajdź pakiet" + +msgid "Finish" +msgstr "Zakończ" + +msgid "Firewall" +msgstr "Firewall" + +# Nie ma potrzeby pisania z dużej litery +msgid "Firewall Settings" +msgstr "Ustawienia firewalla" + +msgid "Firewall Status" +msgstr "Stan firewalla" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "Wersja firmware" + +msgid "Fixed source port for outbound DNS queries" +msgstr "Stały port źródłowy dla wychodzących zapytań DNS" + +msgid "Flash Firmware" +msgstr "Aktualizuj firmware" + +msgid "Flash image..." +msgstr "Wgraj obraz..." + +msgid "Flash new firmware image" +msgstr "Wgraj nowy firmware" + +msgid "Flash operations" +msgstr "Operacje aktualizacji" + +msgid "Flashing..." +msgstr "Flashowanie..." + +msgid "Force" +msgstr "Wymuś" + +msgid "Force CCMP (AES)" +msgstr "Wymuś CCMP (AES)" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "" +"Wymuś uruchomienie serwera DHCP w tej sieci nawet gdy wykryto inny serwer." + +msgid "Force TKIP" +msgstr "Wymuś TKIP" + +msgid "Force TKIP and CCMP (AES)" +msgstr "Wymuś TKIP i CCMP (AES)" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "Przekazuj ruch DHCP" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "Przekazuj broadcast`y" + +msgid "Forwarding mode" +msgstr "Tryb przekazywania" + +msgid "Fragmentation Threshold" +msgstr "Próg Fragmentacji" + +msgid "Frame Bursting" +msgstr "Dzielenie ramek" + +msgid "Free" +msgstr "Wolna" + +msgid "Free space" +msgstr "Wolna przestrzeń" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "GHz" + +msgid "GPRS only" +msgstr "Tylko GPRS" + +msgid "Gateway" +msgstr "Brama" + +msgid "Gateway ports" +msgstr "Porty bramy" + +msgid "General Settings" +msgstr "Ustawienia główne" + +msgid "General Setup" +msgstr "Ustawienia podstawowe" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "Twórz archiwum" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "Ogólny bezprzewodowy kontroler 802.11%s" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "" +"Hasło nie zostało zmienione, wpisane poprzednie hasło routera jest " +"niewłaściwe!" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "Przejdź do konfiguracji hasła..." + +msgid "Go to relevant configuration page" +msgstr "Przejdź do powiązanych ustawień" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "Hasło HE.net" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "Uchwyt" + +msgid "Hang Up" +msgstr "Rozłącz" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"Tutaj możesz skonfigurować podstawowe ustawienia twojego urządzenia, np. " +"nazwę hosta, strefę czasową." + +# nie ma słowa "autentykacji". Uwierzytelnianie! +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" +"Tutaj wklej swoje klucze publiczne SSH (po jednym w linii), dla " +"uwierzytelniania SSH" + +msgid "Hermes 802.11b Wireless Controller" +msgstr "Kontroler bezprzewodowy Hermes 802.11b" + +msgid "Hide ESSID" +msgstr "" +"Ukryj ESSID" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "Wpisy PC" + +msgid "Host expiry timeout" +msgstr "Czas wygasania hosta" + +msgid "Host-IP or Network" +msgstr "IP lub sieć Hosta" + +msgid "Hostname" +msgstr "Nazwa hosta" + +msgid "Hostname to send when requesting DHCP" +msgstr "Nazwa hosta do wysłania podczas negocjacji DHCP" + +msgid "Hostnames" +msgstr "Nazwy hostów" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "Adres IP" + +msgid "IPv4" +msgstr "IPv4" + +msgid "IPv4 Firewall" +msgstr "Firewall IPv4" + +msgid "IPv4 WAN Status" +msgstr "Status IPv4 WAN" + +msgid "IPv4 address" +msgstr "Adres IPv4" + +msgid "IPv4 and IPv6" +msgstr "IPv4 oraz IPv6" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "Broadcast IPv4" + +msgid "IPv4 gateway" +msgstr "Brama IPv4" + +msgid "IPv4 netmask" +msgstr "Maska IPv4" + +msgid "IPv4 only" +msgstr "Tylko IPv4" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "Długość prefiksu IPv4" + +msgid "IPv4-Address" +msgstr "Adres IPv4" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "Firewall IPv6" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "Status WAN IPv6" + +msgid "IPv6 address" +msgstr "Adres IPv6" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "Brama IPv6" + +msgid "IPv6 only" +msgstr "Tylko IPv6" + +msgid "IPv6 prefix" +msgstr "Prefiks IPv6" + +msgid "IPv6 prefix length" +msgstr "Długość prefiksu IPv6" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "Adres IPv6" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "IPv6-w-IPv4 (RFC4213)" + +# 6rd to nie "szóste", tylko IPv6 rapid deployment +msgid "IPv6-over-IPv4 (6rd)" +msgstr "IPv6-przez-IPv4 (6rd)" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "IPv6-przez-IPv4 (6to4)" + +msgid "Identity" +msgstr "Tożsamość" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" +"Jeśli podano, zainstaluj urządzenie poprzez jego UUID zamiast ustalonego węzła urządzenia" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" +"Jeśli podano, zainstaluj urządzenie poprzez nazwę partycji zamiast ustalonego węzła urządzenia" + +msgid "If unchecked, no default route is configured" +msgstr "Jeśli odznaczone, nie ma zdefiniowanej domyślnej ścieżki routingu" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "Jeśli odznaczone, rozgłoszane adresy serwerów DNS są ignorowane" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"Jeśli ilość twojej pamięci fizycznej jest niewystarczająca, nieużywane " +"miejsce na dysku może być tymczasowo wykorzystane na urządzenie pliku " +"wymiany. W rezultacie większa ilość pamięci RAM będzie dostępna. Uwaga - plik wymiany jest dużo " +"wolniejszy niż pamięć RAM." + +msgid "Ignore /etc/hosts" +msgstr "" + +msgid "Ignore interface" +msgstr "Ignoruj interfejs" + +msgid "Ignore resolve file" +msgstr "Ignoruj pliki resolve" + +msgid "Image" +msgstr "Obraz" + +msgid "In" +msgstr "W" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "Czas bezczynności" + +msgid "Inbound:" +msgstr "Przychodzący:" + +msgid "Info" +msgstr "Info" + +msgid "Initscript" +msgstr "Skrypt startowy" + +msgid "Initscripts" +msgstr "Skrypty startowe" + +msgid "Install" +msgstr "Instaluj" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "Instaluj pakiet %q" + +msgid "Install protocol extensions..." +msgstr "Instaluj rozszerzenia protokołów..." + +msgid "Installed packages" +msgstr "Zainstalowane pakiety" + +msgid "Interface" +msgstr "Interfejs" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "Konfiguracja Interfejsu" + +# Tam jest lista interfejsów.... +msgid "Interface Overview" +msgstr "Przegląd Interfejsów" + +msgid "Interface is reconnecting..." +msgstr "Ponowne łączenie interfejsu..." + +msgid "Interface is shutting down..." +msgstr "Interfejs jest wyłączany..." + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "Interfejs nie istnieje lub nie jest jeszcze podłączony." + +msgid "Interface reconnected" +msgstr "Połączono ponownie interfejs" + +msgid "Interface shut down" +msgstr "Wyłączono interfejs" + +msgid "Interfaces" +msgstr "Interfejsy" + +msgid "Internal" +msgstr "" + +# Nadużycie tagu abbr uważam za uzasadnione. +msgid "Internal Server Error" +msgstr "Wewnętrzny błąd serwera" + +msgid "Invalid" +msgstr "Niewłaściwy" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "Podano niewłaściwy ID VLAN`u! Dozwolone są tylko ID pomiędzy %d a %d." + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "Podano niewłaściwy ID VLAN`u! Dozwolone są tylko unikalne ID." + +msgid "Invalid username and/or password! Please try again." +msgstr "Niewłaściwy login i/lub hasło! Spróbuj ponownie." + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"Wygląda na to, że próbujesz wgrać obraz większy niż twoja pamięć flash, " +"proszę sprawdź czy to właściwy obraz!" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "JavaScript jest wymagany!" + +msgid "Join Network" +msgstr "Połącz z siecią" + +msgid "Join Network: Wireless Scan" +msgstr "Przyłącz do sieci: Skanuj sieci WiFi" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "Zachowaj ustawienia" + +msgid "Kernel Log" +msgstr "Log jądra" + +msgid "Kernel Version" +msgstr "Wersja jądra" + +msgid "Key" +msgstr "Klucz" + +msgid "Key #%d" +msgstr "Klucz #%d" + +msgid "Kill" +msgstr "Zabij" + +msgid "L2TP" +msgstr "L2TP" + +msgid "L2TP Server" +msgstr "Serwer L2TP" + +msgid "LCP echo failure threshold" +msgstr "Próg błędu echa LCP" + +msgid "LCP echo interval" +msgstr "Częstotliwość echa LCP" + +msgid "LLC" +msgstr "LLC" + +msgid "Label" +msgstr "Oznaczenie" + +msgid "Language" +msgstr "Język" + +msgid "Language and Style" +msgstr "Wygląd i język" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "Czas ważności dzierżawy" + +msgid "Leasefile" +msgstr "Plik dzierżaw" + +msgid "Leasetime remaining" +msgstr "Pozostały czas dzierżawy" + +msgid "Leave empty to autodetect" +msgstr "Pozostaw niewypełnione dla autodetekcji" + +msgid "Leave empty to use the current WAN address" +msgstr "Pozostaw niewypełnione aby użyć bieżącego adresu WAN" + +msgid "Legend:" +msgstr "Legenda:" + +msgid "Limit" +msgstr "Limit" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "Połączenie aktywne" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" +"Lista serwerów DNS do których będą " +"przekazywane zapytania" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "Lista domen zezwalających na odpowiedzi RFC1918" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "Lista hostów które dostarczają zafałszowane wyniki NX domain" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" +"Słuchaj tylko na podanym interfejsie, lub jeśli nie podano na wszystkich" + +msgid "Listening port for inbound DNS queries" +msgstr "Port nasłuchu dla przychodzących zapytań DNS" + +msgid "Load" +msgstr "Obciążenie" + +msgid "Load Average" +msgstr "Średnie obciążenie" + +msgid "Loading" +msgstr "Ładowanie" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "Lokalny adres IPv4" + +msgid "Local IPv6 address" +msgstr "Lokalny adres IPv6" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "Lokalny autostart" + +msgid "Local Time" +msgstr "Czas lokalny" + +msgid "Local domain" +msgstr "Domena lokalna" + +#, fuzzy +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" +"Specyfikacja domeny lokalnej. Nazwy należące do tej domeny nie są " +"przekazywane dalej ani rozwijane przez DHCP lub tylko pliki hosts" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" +"Przyrostek (suffiks) domeny przyłączany do nazw DHCP i wpisów w pliku hosts" + +msgid "Local server" +msgstr "Serwer lokalny" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" +"Zlokalizuj nazwę hosta w zależności od odpytującej podsieci jeśli jest " +"dostępne więcej niż jedno IP" + +msgid "Localise queries" +msgstr "Zapytania lokalizujące" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "Poziom logowania" + +msgid "Log queries" +msgstr "Loguj zapytania" + +msgid "Logging" +msgstr "Logowanie" + +msgid "Login" +msgstr "Zaloguj" + +msgid "Logout" +msgstr "Wyloguj" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "Najniższy wydzierżawiony adres jako offset dla adresu sieci." + +msgid "MAC-Address" +msgstr "Adres MAC" + +msgid "MAC-Address Filter" +msgstr "Filtr adresów MAC" + +msgid "MAC-Filter" +msgstr "Filtr adresów MAC" + +msgid "MAC-List" +msgstr "Lista MAC" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "MB/s" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "MHz" + +msgid "MTU" +msgstr "MTU" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "Maksymalna Szybkość" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "Maksymalna dozwolona liczba aktywnych dzierżaw DHCP" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "Maksymalna dozwolona liczba jednoczesnych zapytań DNS" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "Maksymalny dozwolony rozmiar pakietu EDNS.0 UDP" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "Maksymalny czas podany w sekundach do pełnej gotowości modemu" + +msgid "Maximum hold time" +msgstr "Maksymalny czas podtrzymania" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "Maksymalna liczba dzierżawionych adresów." + +msgid "Mbit/s" +msgstr "Mbit/s" + +msgid "Memory" +msgstr "Pamięć" + +msgid "Memory usage (%)" +msgstr "Użycie pamięci (%)" + +msgid "Metric" +msgstr "Metryka" + +msgid "Minimum Rate" +msgstr "Minimalna Szybkość" + +msgid "Minimum hold time" +msgstr "Minimalny czas podtrzymania" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "Brakujące rozszerzenie protokołu dla protokołu %q" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "Tryb" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "Modem" + +msgid "Modem init timeout" +msgstr "Limit czasu inicjacji modemu" + +msgid "Monitor" +msgstr "Monitor" + +msgid "Mount Entry" +msgstr "Wpis montowania" + +msgid "Mount Point" +msgstr "Punkt montowania" + +msgid "Mount Points" +msgstr "Punkty montowania" + +msgid "Mount Points - Mount Entry" +msgstr "Punkty montowania - Wpis montownia" + +msgid "Mount Points - Swap Entry" +msgstr "Punkty montowania - Wpis Swap" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"Punkty montowania definiują gdzie urządzenie pamięci zostanie podłączone do " +"systemu plików" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "Opcje montowania" + +msgid "Mount point" +msgstr "Punkt montownia" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "Zamontowane systemy plików" + +msgid "Move down" +msgstr "Przesuń w dół" + +msgid "Move up" +msgstr "Przesuń w górę" + +msgid "Multicast Rate" +msgstr "Szybkość Multicast`u" + +msgid "Multicast address" +msgstr "Adres Multicast`u" + +msgid "NAS ID" +msgstr "NAS ID" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "Lista serwerów NTP" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "Nazwa" + +msgid "Name of the new interface" +msgstr "Nazwa nowego interfejsu" + +msgid "Name of the new network" +msgstr "Nazwa nowej sieci" + +msgid "Navigation" +msgstr "Nawigacja" + +msgid "Netmask" +msgstr "Maska sieci" + +msgid "Network" +msgstr "Sieć" + +msgid "Network Utilities" +msgstr "Narzędzia sieciowe" + +msgid "Network boot image" +msgstr "Sieciowy obraz startowy" + +msgid "Network without interfaces." +msgstr "Sieć bez interfejsów" + +msgid "Next »" +msgstr "Następna »" + +msgid "No DHCP Server configured for this interface" +msgstr "Brak skonfigurowanego serwera DHCP dla tego interfejsu" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "Brak łańcuchów w tej tablicy" + +msgid "No files found" +msgstr "Nie znaleziono plików" + +msgid "No information available" +msgstr "Brak dostępnych informacji" + +msgid "No negative cache" +msgstr "Brak odwrotnego cache`a" + +msgid "No network configured on this device" +msgstr "Brak skonfigurowanych sieci na tym urządzeniu" + +msgid "No network name specified" +msgstr "Nie podano nazwy sieci" + +msgid "No package lists available" +msgstr "Brak dostępu do listy pakietów" + +msgid "No password set!" +msgstr "Nie ustawiono hasła!" + +msgid "No rules in this chain" +msgstr "Brak zasad w tym łańcuchu" + +msgid "No zone assigned" +msgstr "Brak przypisanej strefy" + +msgid "Noise" +msgstr "Szum" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "Szum:" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "Brak" + +msgid "Normal" +msgstr "Normalny" + +msgid "Not Found" +msgstr "Nie znaleziono" + +msgid "Not associated" +msgstr "Nie powiązany" + +msgid "Not connected" +msgstr "Nie podłączony" + +msgid "Note: Configuration files will be erased." +msgstr "UWAGA: Pliki konfiguracyjne zostaną usunięte." + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "Spostrzeżenie" + +msgid "Nslookup" +msgstr "Nslookup" + +msgid "OK" +msgstr "OK" + +msgid "OPKG-Configuration" +msgstr "Konfiguracja OPKG" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "Zwłoka wyłączenia" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"Na tej stronie można skonfigurować interfejsy urządzenia. Możesz zmostkować " +"kilka interfejsów zaznaczając pole \"mostkuj interfejsy\", a następnie " +"wpisując ich nazwy oddzielone spacjami. Można także użyć notacji VLAN`ów INTERFACE.VLANNR " +"(np.: eth0.1)." + +msgid "On-State Delay" +msgstr "Zwłoka włączenia" + +msgid "One of hostname or mac address must be specified!" +msgstr "Nazwa hosta lub adres MAC musu być podany!" + +msgid "One or more fields contain invalid values!" +msgstr "Jedno lub więcej pól zawiera nieprawidłowe wartości!" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "Jedno lub więcej pól nie posiada wpisanych wartości!" + +msgid "Open list..." +msgstr "Otwórz listę..." + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "Wartość zmieniona" + +msgid "Option removed" +msgstr "Usunięto wartość" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "Opcje" + +msgid "Other:" +msgstr "Inne:" + +msgid "Out" +msgstr "Wychodzące" + +msgid "Outbound:" +msgstr "Wychodzący:" + +msgid "Outdoor Channels" +msgstr "Kanały zewnętrzne" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "Nadpisz adres MAC" + +msgid "Override MTU" +msgstr "Nadpisz MTU" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "Nadpisz adres bramy w odpowiedziach DHCP" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" +"Nadpisz maskę sieci wysyłaną do klientów. Zazwyczaj jest ona wyliczana z " +"podsieci która jest rozsyłana." + +msgid "Override the table used for internal routes" +msgstr "Nadpisz tablicę routingu używaną dla wewnętrznych tras routowania" + +msgid "Overview" +msgstr "Przegląd" + +msgid "Owner" +msgstr "Właściciel" + +msgid "PAP/CHAP password" +msgstr "Hasło PAP/CHAP" + +msgid "PAP/CHAP username" +msgstr "Nazwa użytkownika PAP/CHAP" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "PIN" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "PPP" + +msgid "PPPoA Encapsulation" +msgstr "Enkapsulacja PPPoA" + +msgid "PPPoATM" +msgstr "PPPoATM" + +msgid "PPPoE" +msgstr "PPPoE" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "PPtP" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "Wymagany pakiet libiwinfo!" + +msgid "Package lists are older than 24 hours" +msgstr "Lista pakietów jest starsza niż 24 godziny" + +msgid "Package name" +msgstr "Nazwa pakietu" + +msgid "Packets" +msgstr "Pakiety" + +msgid "Part of zone %q" +msgstr "Część strefy %q" + +msgid "Password" +msgstr "Hasło" + +msgid "Password authentication" +msgstr "Identyfikacja hasłem" + +msgid "Password of Private Key" +msgstr "Hasło lub klucz prywatny" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "Pomyślnie zmieniono hasło!" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "Ścieżka do certyfikatu CA" + +msgid "Path to Client-Certificate" +msgstr "Ścieżka do certyfikatu Klienta" + +msgid "Path to Private Key" +msgstr "Ścieżka do Klucza Prywatnego" + +msgid "Path to executable which handles the button event" +msgstr "" +"Ścieżka do pliku wykonywalnego, który obsługuje zdarzenie dla danego " +"przycisku" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "Szczyt:" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "Wykonaj restart" + +msgid "Perform reset" +msgstr "Wykonaj reset" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "Szybkość Phy:" + +msgid "Physical Settings" +msgstr "Ustawienia sprzętowe" + +msgid "Ping" +msgstr "Ping" + +msgid "Pkts." +msgstr "Pktw." + +msgid "Please enter your username and password." +msgstr "Proszę wprowadź swój login i hasło." + +msgid "Policy" +msgstr "Zasada" + +msgid "Port" +msgstr "Port" + +msgid "Port status:" +msgstr "Status portu:" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" +"Zakładaj że klient jest martwy po danej ilości błedów odpowiedzi echa LCP, " +"wpisz 0 aby zignorować błędy" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "Zapobiegaj komunikacji klientów pomiędzy sobą" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "Kontroler bezprzewodowy Prism2/2.5/3 802.11b" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "Wykonaj" + +msgid "Processes" +msgstr "Procesy" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "Prot." + +msgid "Protocol" +msgstr "Protokół" + +msgid "Protocol family" +msgstr "Rodzina protokołów" + +msgid "Protocol of the new interface" +msgstr "Protokół nowego interfejsu" + +msgid "Protocol support is not installed" +msgstr "Wsparcie dla protokołu nie jest zainstalowane" + +# Opcja dotyczy włączenia serwera czasu, więc "podaj" nie jest właściwym tłumaczeniem w tym miejscu - obsy +msgid "Provide NTP server" +msgstr "Włącz serwer NTP" + +msgid "Provide new network" +msgstr "Utwórz nową sieć" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "Pseudo Ad-Hoc (ahdemo)" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "Jakość" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "Próg RTS/CTS" + +msgid "RX" +msgstr "RX" + +msgid "RX Rate" +msgstr "Szybkość RX" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "Kontroler bezprzewodowy RaLink 802.11%s" + +msgid "Radius-Accounting-Port" +msgstr "Port Radius-Accounting" + +msgid "Radius-Accounting-Secret" +msgstr "Sekret Radius-Accounting" + +msgid "Radius-Accounting-Server" +msgstr "Serwer Radius-Accounting" + +msgid "Radius-Authentication-Port" +msgstr "Port Radius-Authentication" + +msgid "Radius-Authentication-Secret" +msgstr "Sekret Radius-Authentication" + +msgid "Radius-Authentication-Server" +msgstr "Serwer Radius-Authentication" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"Przejrzyj plik /etc/ethers aby skonfigurować serwer DHCP" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" +"Naprawdę usunąć ten interfejs? Usunięcie nie może zostać cofnięte!\n" +"Możesz stracić dostęp do tego urządzenia, jeśli jesteś połączony przez ten " +"interfejs!" + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" +"Naprawdę usunąć tę sieć bezprzewodową? Usunięcie nie może zostać cofnięte!\n" +"Możesz stracić dostęp do tego urządzenia, jeśli jesteś połączony przez tę " +"sieć!" + +msgid "Really reset all changes?" +msgstr "Naprawdę usunąć wszelkie zmiany?" + +#, fuzzy +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" +"Naprawdę wyłączyć tę sieć?\n" +"Możesz stracić dostęp do tego urządzenia jeśli jesteś połączony przez ten " +"interfejs!" + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" +"Naprawdę wyłączyć interfejs \"%s\"?\n" +"Możesz stracić dostęp do tego urządzenia jeśli jesteś połączony przez ten " +"interfejs!" + +msgid "Really switch protocol?" +msgstr "Naprawdę zmienić protokół?" + +msgid "Realtime Connections" +msgstr "Połączenia w czasie rzeczywistym" + +msgid "Realtime Graphs" +msgstr "Wykresy w czasie rzeczywistym" + +msgid "Realtime Load" +msgstr "Obciążenie w czasie rzeczywistym" + +msgid "Realtime Traffic" +msgstr "Ruch w czasie rzeczywistym" + +msgid "Realtime Wireless" +msgstr "WiFi w czasie rzeczywistym" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "Przypisz ochronę" + +msgid "Reboot" +msgstr "Restart" + +msgid "Rebooting..." +msgstr "Ponowne uruchamianie..." + +msgid "Reboots the operating system of your device" +msgstr "Uruchamia ponownie system na twoim urządzeniu" + +msgid "Receive" +msgstr "Odebrane" + +msgid "Receiver Antenna" +msgstr "Antena odbiorcza" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "Połącz ponownie ten interfejs" + +msgid "Reconnecting interface" +msgstr "Łączę ponownie interfejs" + +msgid "References" +msgstr "Referencje" + +msgid "Regulatory Domain" +msgstr "Domena regulacji" + +msgid "Relay" +msgstr "Przekaźnik" + +msgid "Relay Bridge" +msgstr "Most przekaźnikowy" + +msgid "Relay between networks" +msgstr "Przekaźnik pomiędzy sieciami" + +msgid "Relay bridge" +msgstr "Most przekaźnikowy" + +msgid "Remote IPv4 address" +msgstr "Zdalny adres IPv4" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "Usuń" + +msgid "Repeat scan" +msgstr "Powtórz skanowanie" + +msgid "Replace entry" +msgstr "Zamień wpis" + +msgid "Replace wireless configuration" +msgstr "Zamień konfigurację WiFi" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "Wymagany dla niektórych dostawców internetu, np. Charter z DOCSIS 3" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "Resetuj" + +msgid "Reset Counters" +msgstr "Wyczyść liczniki" + +msgid "Reset to defaults" +msgstr "Resetuj do domyślnych" + +msgid "Resolv and Hosts Files" +msgstr "Pliki Resolv i Hosts" + +msgid "Resolve file" +msgstr "Plik Resolve" + +msgid "Restart" +msgstr "Uruchom ponownie" + +msgid "Restart Firewall" +msgstr "Uruchom ponownie firewalla" + +msgid "Restore backup" +msgstr "Przywróć kopię zapasową" + +msgid "Reveal/hide password" +msgstr "Odsłoń/Ukryj hasło" + +msgid "Revert" +msgstr "Przywróć" + +msgid "Root" +msgstr "Root" + +msgid "Root directory for files served via TFTP" +msgstr "Katalog Root`a dla plików udostępnianych przez TFTP" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "Hasło routera" + +msgid "Routes" +msgstr "Ścieżki routingu" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"Ścieżki routingu pokazują routerowi przez który interfejs oraz którą bramę " +"może skomunikować się z daną siecią lub komputerem." + +msgid "Run a filesystem check before mounting the device" +msgstr "" +"Sprawdź czy system plików nie zawiera błędów przed zamontowaniem urządzenia" + +msgid "Run filesystem check" +msgstr "Sprawdź czy system plików nie zawiera błędów" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "Dostęp SSH" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "Klucze SSH" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "Zapisz" + +msgid "Save & Apply" +msgstr "Zapisz i zastosuj" + +msgid "Save & Apply" +msgstr "Zapisz i zastosuj" + +msgid "Scan" +msgstr "Skanuj" + +# Raczej nie stosuje się kilku dużych liter w tym samym +msgid "Scheduled Tasks" +msgstr "Zaplanowane zadania" + +msgid "Section added" +msgstr "Dodano sekcję" + +msgid "Section removed" +msgstr "Usunięto sekcję" + +msgid "See \"mount\" manpage for details" +msgstr "Aby poznać szczegóły przeczytaj stronę instrukcji \"mount\"" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" +"Co podany czas (w sekundach) wyślij zapytania LCP echo, to ustawienie działa " +"tylko gdy ustawiony jest próg błędu LCP echo" + +msgid "Separate Clients" +msgstr "Rozdziel klientów" + +msgid "Separate WDS" +msgstr "Rozdziel WDS" + +msgid "Server Settings" +msgstr "Ustawienia serwera" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "Nazwa serwisu" + +msgid "Service Type" +msgstr "Typ serwisu" + +msgid "Services" +msgstr "Serwisy" + +#, fuzzy +msgid "Set up Time Synchronization" +msgstr "Ustawienia synchronizacji czasu" + +msgid "Setup DHCP Server" +msgstr "Ustawienia serwera DHCP" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "Pokaż aktualną listę plików do backupu" + +msgid "Shutdown this interface" +msgstr "Wyłącz ten interfejs" + +msgid "Shutdown this network" +msgstr "Wyłącz tą sieć" + +msgid "Signal" +msgstr "Sygnał" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "Sygnał:" + +msgid "Size" +msgstr "Rozmiar" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "Pomiń" + +msgid "Skip to content" +msgstr "Pomiń do zawartości" + +msgid "Skip to navigation" +msgstr "Pomiń do nawigacji" + +msgid "Slot time" +msgstr "Szczelina czasowa" + +msgid "Software" +msgstr "Oprogramowanie" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "Wartości pewnych pól są niewłaściwe, nie mogę ich zachować!" + +msgid "Sorry, the object you requested was not found." +msgstr "Przepraszamy, ale żądany obiekt nie został znaleziony." + +msgid "Sorry, the server encountered an unexpected error." +msgstr "Przepraszamy, ale serwer napotkał nieoczekiwany błąd." + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" +"Przepraszamy, ale nie ma wsparcia dla trybu sysupgrade. Nowy firmware musi " +"być wgrany ręcznie. Sprawdź stronę wiki, aby uzyskać instrukcję dla danego " +"urządzenia." + +msgid "Sort" +msgstr "Posortuj" + +msgid "Source" +msgstr "Źródło" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "Określa zachowanie w zależności od stanu przycisku" + +msgid "Specifies the directory the device is attached to" +msgstr "Podaje katalog do którego jest podłączone urządzenie" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "Określa port nasłuchu dla tej instancji Dropbear" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" +"Określa maksymalną ilość błędów dla zapytania ARP przed założeniem, że host " +"jest martwy" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" +"Określa maksymalny czas w sekundach przed założeniem, że host jest martwy" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "Określ tajny klucz szyfrowania." + +msgid "Start" +msgstr "Uruchomienie" + +msgid "Start priority" +msgstr "Priorytet uruchomienia" + +msgid "Startup" +msgstr "Autostart" + +msgid "Static IPv4 Routes" +msgstr "Statyczne ścieżki routingu IPv4" + +msgid "Static IPv6 Routes" +msgstr "Statyczne ścieżki routingu IPv6" + +msgid "Static Leases" +msgstr "Dzierżawy statyczne" + +msgid "Static Routes" +msgstr "Statyczne ścieżki routingu" + +msgid "Static WDS" +msgstr "Statyczny WDS" + +msgid "Static address" +msgstr "Stały adres" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" +"Statyczne dzierżawy są używane do przypisania stałych adresów IP i " +"symbolicznych nazw klientom DHCP. Są one również wymagane dla " +"niedynamicznych konfiguracji interfejsu, gdzie obsługiwane są tylko hosty z " +"odpowiednim dzierżawami." + +msgid "Status" +msgstr "Stan" + +msgid "Stop" +msgstr "Stop" + +msgid "Strict order" +msgstr "Zachowaj kolejność" + +msgid "Submit" +msgstr "Wyślij" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "Zamień wpis" + +msgid "Switch" +msgstr "Przełącznik" + +msgid "Switch %q" +msgstr "Przełącznik %q" + +msgid "Switch %q (%s)" +msgstr "Przełącznik %q (%s)" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "Protokół przełącznika" + +msgid "Sync with browser" +msgstr "Synchronizuj z przeglądarką" + +msgid "Synchronizing..." +msgstr "Synchronizacja..." + +msgid "System" +msgstr "System" + +msgid "System Log" +msgstr "Log systemowy" + +msgid "System Properties" +msgstr "Właściwości systemu" + +# Wszędzie używane jest "loga" z małej litery. +msgid "System log buffer size" +msgstr "Rozmiar bufora loga systemu" + +msgid "TCP:" +msgstr "TCP:" + +msgid "TFTP Settings" +msgstr "Ustawienia TFTP" + +msgid "TFTP server root" +msgstr "Root serwera TFTP" + +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "Szybkość TX" + +msgid "Table" +msgstr "Tablica" + +msgid "Target" +msgstr "Cel" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "Zakończ" + +#, fuzzy +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" +"Sekcja Konfiguracja Urządzenia zawiera sprzętowe ustawienia toru " +"transmisji radiowej takie jak kanał, moc sygnału, czy wybór anteny, które to " +"są wspólne dla wszystkich zdefiniowanych sieci bezprzewodowych (jeśli tor " +"transmisji jest kompatybilny z transmisją multi-SSID). Ustawienia sieci " +"takie jak szyfrowanie lub tryb operacji są zebrane w sekcji Konfiguracja " +"Interfejsu." + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" +"Pakiet libiwinfo-lua nie jest zainstalowany. Musisz go zainstalować " +"aby WiFi prawidłowo zadziałało!" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" +"Prefiks IPv6 przypisany do dostawcy, zazwyczaj kończy się ::" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" +"Dozwolone znaki to: A-Z, a-z, 0-9 " +"oraz _" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" +"Plik urządzenia - pamięci lub partycji (np. /dev/sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"System plików, który został użyty do sformatowania nośnika (np. ext3)" + +# Przycisk nazywa się "Wykonaj", więc taki sam opis ma być w podpowiedzi. +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" +"Obraz flash`a został przesłany. Poniżej znajduje się suma kontrolna i " +"rozmiar obrazu, porównaj je z sumą kontrolną i rozmiarem oryginału, aby " +"upewnić się, że został przesłany poprawnie.
Wciśnij \"Wykonaj\" aby " +"kontynuować aktualizację." + +msgid "The following changes have been committed" +msgstr "Następujące zmiany zostały zatwierdzone" + +msgid "The following changes have been reverted" +msgstr "Następujące zmiany zostały odrzucone" + +msgid "The following rules are currently active on this system." +msgstr "Następujące zasady są obecnie aktywne w tym systemie." + +msgid "The given network name is not unique" +msgstr "Podana sieć NIE jest unikalna" + +#, fuzzy +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" +"Sprzęt nie jest urządzeniem typu multi-SSID, więc bieżąca konfiguracja " +"zostanie nadpisana nową jeśli będziesz kontynuować." + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" +"Długość prefiksu IPv4 w bitach, pozostała część jest używana w adresach IPv6." + +msgid "The length of the IPv6 prefix in bits" +msgstr "Długość prefiksu IPv6 w bitach" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" +"Porty sieciowe na tym urządzeniu mogą być łączone w kilka sieci VLAN, w których komputery mogą " +"komunikować się ze sobą bezpośrednio. Sieci VLAN są często stosowane w celu oddzielenia różnych " +"segmentów sieci. Często domyślnie jeden port typu Uplink jest wykorzystywany " +"do połączenia z większą siecią, taką jak Internet, a inne porty dla sieci " +"lokalnej." + +msgid "The selected protocol needs a device assigned" +msgstr "Wybrany protokół potrzebuje przypisanego urządzenia" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" +"System usuwa teraz partycję konfiguracji i zrestartuje się po zakończeniu." + +#, fuzzy +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"System wykonuje flashowanie.
NIE WYŁĄCZAĆ URZĄDZENIA!
Poczekaj " +"kilka minut, zanim spróbujesz połączyć się ponownie. W zależności od " +"ustawień może być konieczne odnowienie adresu Twojego komputera, aby dostać " +"się do urządzenia." + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"Przesłany plik obrazu nie zawiera obsługiwanego formatu. Upewnij się, że " +"wybrałeś odpowiedni format obrazu dla danej platformy." + +msgid "There are no active leases." +msgstr "Brak aktywnych dzierżaw." + +msgid "There are no pending changes to apply!" +msgstr "Brak oczekujących zmian do zastosowania!" + +msgid "There are no pending changes to revert!" +msgstr "Brak oczekujących zmian do przywrócenia!" + +msgid "There are no pending changes!" +msgstr "Brak oczekujących zmian!" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" +"Żadne urządzenie nie jest jeszcze przypisane. Proszę dołączyć urządzenie " +"sieciowe na karcie \"Ustawienia sprzętowe\"" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" +"Hasło nie zostało ustawione. Proszę skonfigurować hasło roota, aby " +"zabezpieczyć interfejs WWW i włączyć SSH." + +msgid "This IPv4 address of the relay" +msgstr "Ten adres IPv4 przekaźnika" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" +"Jest to lista globalnych wzorców dopasowywania plików i katalogów " +"uwzględnianych podczas przeprowadzania aktualizacji z użyciem \"sysupgrade" +"\". Zmodyfikowane pliki w /etc/config/ i w niektórych innych ustawieniach są " +"automatycznie zachowywane." + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" +"To jest zawartość pliku /etc/rc.local. Wstaw tutaj własne komendy (przed " +"'exit 0'), aby zostały wykonane pod koniec procesu rozruchu." + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" +"To jest lokalny adres końcowy przypisany przez tunnel broker'a, zwykle " +"kończący się z :2" + +# w tłumaczeniu pojawiła się spacja po DHCP
co powoduje niepoprawne wyświetlanie się strony z lang PL +msgid "" +"This is the only DHCP in the local network" +msgstr "" +"To jest jedyny serwer DHCP w sieci lokalnej" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "" +"To jest system crontab, w którym mogą być zdefiniowane zaplanowane zadania." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" +"Zwykle jest to adres najbliższego PoP prowadzonego przez tunnel broker'a" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" +"Poniższa lista przedstawia aktualnie uruchomione procesy systemowe i ich " +"status." + +msgid "This page allows the configuration of custom button actions" +msgstr "" +"Poniższa strona umożliwia konfigurację działania niestandardowych przycisków" + +msgid "This page gives an overview over currently active network connections." +msgstr "Poniższa strona przedstawia aktualnie aktywne połączenia sieciowe." + +msgid "This section contains no values yet" +msgstr "Ta sekcja nie zawiera jeszcze żadnych wartości" + +msgid "Time Synchronization" +msgstr "Synchronizacja czasu" + +msgid "Time Synchronization is not configured yet." +msgstr "Synchronizacja czasu nie jest jeszcze skonfigurowana." + +msgid "Timezone" +msgstr "Strefa czasowa" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" +"Aby przywrócić pliki konfiguracyjne, można tutaj wczytać wcześniej utworzone " +"archiwum kopii zapasowej." + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "Całkowicie dostępna" + +msgid "Traceroute" +msgstr "Trasa routowania" + +msgid "Traffic" +msgstr "Ruch" + +msgid "Transfer" +msgstr "Transfer" + +msgid "Transmission Rate" +msgstr "Prędkość transmisji" + +msgid "Transmit" +msgstr "Nadawanie" + +msgid "Transmit Power" +msgstr "Siła nadawania" + +msgid "Transmitter Antenna" +msgstr "Antena nadajnika" + +msgid "Trigger" +msgstr "Trigger" + +msgid "Trigger Mode" +msgstr "Tryb Trigger" + +msgid "Tunnel ID" +msgstr "Numer identyfikacyjny tunelu" + +msgid "Tunnel Interface" +msgstr "Interfejs tunelu" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "Tryb Turbo" + +msgid "Tx-Power" +msgstr "Moc nadawania" + +msgid "Type" +msgstr "Typ" + +msgid "UDP:" +msgstr "UDP:" + +msgid "UMTS only" +msgstr "Tylko UMTS" + +msgid "UMTS/GPRS/EV-DO" +msgstr "UMTS/GPRS/EV-DO" + +msgid "USB Device" +msgstr "Urządzenie USB" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "UUID" + +msgid "Unable to dispatch" +msgstr "Nie można wysłać" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "Nieznany" + +msgid "Unknown Error, password not changed!" +msgstr "Nieznany błąd, hasło nie zostało zmienione" + +msgid "Unmanaged" +msgstr "Niezarządzalny" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "Niezapisane zmiany" + +msgid "Unsupported protocol type." +msgstr "Nieobsługiwany typ protokołu." + +msgid "Update lists" +msgstr "Aktualizuj listy" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" +"Prześlij zgodny z funkcją sysupgrade obraz tutaj, aby zastąpić aktualnie " +"działające firmware. Zaznacz opcję \"Zachowaj ustawienia\", aby zachować " +"bieżącą konfigurację (wymaga zgodnego obrazu firmware)." + +msgid "Upload archive..." +msgstr "Załaduj archiwum..." + +msgid "Uploaded File" +msgstr "Załaduj plik" + +msgid "Uptime" +msgstr "Czas pracy" + +msgid "Use /etc/ethers" +msgstr "Użyj /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "Użyj bramy DHCP" + +msgid "Use DNS servers advertised by peer" +msgstr "Użyj serwerów DNS rozgłaszanych przez peera" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "Użyj kodów kraju ISO/IEC 3166 alpha2" + +msgid "Use MTU on tunnel interface" +msgstr "Użyj MTU na interfejsie tunelu" + +msgid "Use TTL on tunnel interface" +msgstr "Użyj TTL na interfejsie tunelu" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "Użyj flagi rozgłaszania" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "Użyj własnych serwerów DNS" + +msgid "Use default gateway" +msgstr "Użyj domyślnej bramy" + +msgid "Use gateway metric" +msgstr "Użyj metryki bramy" + +msgid "Use routing table" +msgstr "Użyj tabeli routingu" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" +"Użyj przycisku Dodaj, aby dodać nowy wpis dzierżawy. Adres MAC identyfikuje hosta, Adres IPv4 określa, którego stałego adresu " +"użyć, natomiast Nazwa hosta jest przypisana jako symboliczna nazwa " +"do określonego hosta." + +# Przy liście zamontowanych systemów plików +msgid "Used" +msgstr "Użyte" + +msgid "Used Key Slot" +msgstr "Użyte gniazdo klucza" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "Nazwa użytkownika" + +msgid "VC-Mux" +msgstr "VC-Mux" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "Sieci VLAN na %q" + +msgid "VLANs on %q (%s)" +msgstr "Sieci VLAN na %q (%s)" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "Serwer VPN" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "Klasa producenta do wysłania podczas żądania DHCP" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "Zweryfikuj" + +msgid "Version" +msgstr "Wersja" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "Otwarty system WEP" + +msgid "WEP Shared Key" +msgstr "Współdzielony klucz WEP" + +msgid "WEP passphrase" +msgstr "Hasło WEP" + +msgid "WMM Mode" +msgstr "Tryb WMM" + +msgid "WPA passphrase" +msgstr "Hasło WPA" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"Kodowanie WPA wymaga zainstalowanych modułów wpa_supplicant (na tryb " +"klienta) lub hostapd (dla trybów AP lub ad-hoc)" + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +# obsy: Brzmi to lepiej niż "czekanie na wprowadzanie zmian. +msgid "Waiting for changes to be applied..." +msgstr "Trwa wprowadzenie zmian..." + +msgid "Waiting for command to complete..." +msgstr "Trwa wykonanie polecenia..." + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "Ostrzeżenie" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "Sieć bezprzewodowa" + +msgid "Wireless Adapter" +msgstr "Adapter bezprzewodowy" + +msgid "Wireless Network" +msgstr "Sieć bezprzewodowa" + +msgid "Wireless Overview" +msgstr "Przegląd sieci bezprzewodowych" + +msgid "Wireless Security" +msgstr "Zabezpieczenia sieci bezprzewodowych" + +msgid "Wireless is disabled or not associated" +msgstr "Sieć bezprzewodowa jest wyłączona lub niepołączona" + +msgid "Wireless is restarting..." +msgstr "Restart sieci bezprzewodowej..." + +msgid "Wireless network is disabled" +msgstr "Sieć bezprzewodowa jest wyłączona" + +msgid "Wireless network is enabled" +msgstr "Sieć bezprzewodowa jest włączona" + +msgid "Wireless restarted" +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" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "Wsparcie XR" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"Tutaj można włączyć lub wyłączyć zainstalowane skrypty. Zmiany zostaną " +"zastosowane po ponownym uruchomieniu urządzenia.
Ostrzeżenie: " +"Jeśli wyłączysz podstawowe skrypty typu \"networks\", urządzenie może stać " +"się nieosiągalne!" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" +"Musisz włączyć obsługę JavaScript w swojej przeglądarce, inaczej LuCI nie " +"będzie działać poprawnie." + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "dowolny" + +msgid "auto" +msgstr "auto" + +msgid "baseT" +msgstr "baseT" + +msgid "bridged" +msgstr "bridged" + +msgid "create:" +msgstr "utwórz:" + +msgid "creates a bridge over specified interface(s)" +msgstr "utwórz bridge na określonych interfejsach" + +msgid "dB" +msgstr "dB" + +msgid "dBm" +msgstr "dBm" + +msgid "disable" +msgstr "wyłącz" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "wygasły" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" +"plik, w którym podano żądania DHCP, zostanie zachowany" + +msgid "forward" +msgstr "przekaż" + +msgid "full-duplex" +msgstr "pełny-duplex" + +msgid "half-duplex" +msgstr "pół-duplex" + +msgid "help" +msgstr "pomoc" + +msgid "hidden" +msgstr "ukryty" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "jeżeli celem jest sieć" + +msgid "input" +msgstr "wejście" + +msgid "kB" +msgstr "kB" + +msgid "kB/s" +msgstr "kB/s" + +msgid "kbit/s" +msgstr "kbit/s" + +msgid "local DNS file" +msgstr "lokalny plik DNS" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "nie" + +# skorzystałem z niemieckiego tłumaczenia +msgid "no link" +msgstr "niepowiązane" + +msgid "none" +msgstr "żaden" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "wyłączone" + +msgid "on" +msgstr "włączone" + +msgid "open" +msgstr "otwarte" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "routowane" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "tagowane" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "nieznane" + +msgid "unlimited" +msgstr "nielimitowane" + +msgid "unspecified" +msgstr "nieokreślone" + +msgid "unspecified -or- create:" +msgstr "nieokreślone -lub- utwórz:" + +msgid "untagged" +msgstr "nietagowane" + +msgid "yes" +msgstr "tak" + +msgid "« Back" +msgstr "« Wróć" + +#~ msgid "Leasetime" +#~ msgstr "Czas dzierżawy" + +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "" +#~ "Zostanie utworzona dodatkowa sieć jeśli zostawisz tą opcję niezaznaczoną." + +#~ msgid "Join Network: Settings" +#~ msgstr "Przyłącz do sieci: Ustawienia" + +#~ msgid "CPU" +#~ msgstr "CPU" + +#~ msgid "Port %d" +#~ msgstr "Port %d" + +#~ msgid "Port %d is untagged in multiple VLANs!" +#~ msgstr "Port %d jest nietagowany w wielu VLAN`ach!" + +#~ msgid "VLAN Interface" +#~ msgstr "Interfejs VLAN" diff --git a/luci-base/po/pt-br/base.po b/luci-base/po/pt-br/base.po new file mode 100644 index 000000000..8ac6151c2 --- /dev/null +++ b/luci-base/po/pt-br/base.po @@ -0,0 +1,4171 @@ +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-06-10 03:41+0200\n" +"PO-Revision-Date: 2017-02-22 20:30-0300\n" +"Last-Translator: Luiz Angelo Daros de Luca \n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Generator: Poedit 1.8.11\n" +"Language-Team: \n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "%s está sem etiqueta em múltiplas VLANs!" + +msgid "(%d minute window, %d second interval)" +msgstr "(janela de %d minutos, intervalo de %d segundos)" + +msgid "(%s available)" +msgstr "(%s disponível)" + +msgid "(empty)" +msgstr "(vazio)" + +msgid "(no interfaces attached)" +msgstr "(nenhuma interface conectada)" + +msgid "-- Additional Field --" +msgstr "-- Campo Adicional --" + +msgid "-- Please choose --" +msgstr "-- Por favor, escolha --" + +msgid "-- custom --" +msgstr "-- personalizado --" + +msgid "-- match by device --" +msgstr "-- casar por dispositivo --" + +msgid "-- match by label --" +msgstr "-- casar por rótulo --" + +msgid "-- match by uuid --" +msgstr "" +"-- casar por UUID --" + +msgid "1 Minute Load:" +msgstr "Carga 1 Minuto:" + +msgid "15 Minute Load:" +msgstr "Carga 15 Minutos:" + +msgid "4-character hexadecimal ID" +msgstr "Identificador hexadecimal de 4 caracteres" + +msgid "464XLAT (CLAT)" +msgstr "464XLAT (CLAT)" + +msgid "5 Minute Load:" +msgstr "Carga 5 Minutos:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" +"Identificador de 6 octetos como uma cadeia hexadecimal - sem dois pontos" + +msgid "802.11r Fast Transition" +msgstr "802.11r Fast Transition" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "Tempo de expiração máximo da consulta da Associação SA do 802.11w" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" +"Tempo de expiração de tentativa de consulta da Associação SA do 802.11w" + +msgid "802.11w Management Frame Protection" +msgstr "Proteção do Quadro de Gerenciamento do 802.11w" + +msgid "802.11w maximum timeout" +msgstr "Estouro de tempo máximo do 802.11w" + +msgid "802.11w retry timeout" +msgstr "Estouro de tempo da nova tentativa do 802.11w" + +msgid "BSSID" +msgstr "" +"BSSID" + +msgid "DNS query port" +msgstr "" +"Porta de consulta DNS" + +msgid "DNS server port" +msgstr "" +"Porta do servidor DNS" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" +"O servidor DNS irá " +"consultar na ordem do arquivo resolvfile" + +msgid "ESSID" +msgstr "" +"ESSID" + +msgid "IPv4-Address" +msgstr "Endereço IPv4" + +msgid "IPv4-Gateway" +msgstr "Roteador IPv4" + +msgid "IPv4-Netmask" +msgstr "" +"Máscara de rede IPv4" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"Endereço do IPv6 " +"Endereço ou rede (CIDR)" + +msgid "IPv6-Gateway" +msgstr "Roteador IPv6" + +msgid "IPv6-Suffix (hex)" +msgstr "" +"IPv6-Suffix (hex)" + +msgid "LED Configuration" +msgstr "Configuração do LED" + +msgid "LED Name" +msgstr "Nome do LED" + +msgid "MAC-Address" +msgstr "Endereço MAC" + +msgid "" +"Max. DHCP leases" +msgstr "" +"Numero máximo de alocações DHCP" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"Tamanho máximo do pacote do EDNS0" + +msgid "Max. concurrent queries" +msgstr "Número máximo de consultas concorrentes" + +msgid "%s - %s" +msgstr "%s - %s" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "A43C + J43 + A43" + +msgid "A43C + J43 + A43 + V43" +msgstr "A43C + J43 + A43 + V43" + +msgid "ADSL" +msgstr "" +"ADSL" + +msgid "AICCU (SIXXS)" +msgstr "" +"AICCU (SIXXS)" + +msgid "ANSI T1.413" +msgstr "ANSI T1.413" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "Suporte AR" + +msgid "ARP retry threshold" +msgstr "" +"Limite de retentativas do ARP" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "ATM (Asynchronous Transfer Mode)" + +msgid "ATM Bridges" +msgstr "Ponte ATM" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "" +"Identificador de Canal Virtual ATM (VCI)" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "" +"Identificador de Caminho Virtual ATM (VPI)" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"Pontes ATM expõem ethernet encapsuladas em conexões AAL5 como interfaces de " +"rede virutais no Linux. Estas podem ser usadas em conjunto com o DHCP ou PPP " +"para discar em um provedor de rede." + +msgid "ATM device number" +msgstr "Número do dispositivo ATM" + +msgid "ATU-C System Vendor ID" +msgstr "Identificador de" + +msgid "AYIYA" +msgstr "AYIYA" + +msgid "Access Concentrator" +msgstr "Concentrador de Acesso" + +msgid "Access Point" +msgstr "Ponto de Acceso (AP)" + +msgid "Action" +msgstr "Ação" + +msgid "Actions" +msgstr "Ações" + +msgid "Activate this network" +msgstr "Ativar esta rede" + +msgid "Active IPv4-Routes" +msgstr "" +"Rotas IPv4 ativas" + +msgid "Active IPv6-Routes" +msgstr "" +"Rotas IPv6 ativas" + +msgid "Active Connections" +msgstr "Conexões Ativas" + +msgid "Active DHCP Leases" +msgstr "Alocações DHCP ativas" + +msgid "Active DHCPv6 Leases" +msgstr "Alocações DHCPv6 ativas" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc" + +msgid "Add" +msgstr "Adicionar" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "Adiciona um sufixo de domínio local para equipamentos conhecidos" + +msgid "Add new interface..." +msgstr "Adiciona uma nova interface..." + +msgid "Additional Hosts files" +msgstr "Arquivos adicionais de equipamentos conhecidos (hosts)" + +msgid "Additional servers file" +msgstr "Arquivo de servidores adicionais" + +msgid "Address" +msgstr "Endereço" + +msgid "Address to access local relay bridge" +msgstr "Endereço para acessar a ponte por retransmissão local " + +msgid "Administration" +msgstr "Administração" + +msgid "Advanced Settings" +msgstr "Opções Avançadas" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" +"Potência de Transmissão Agregada (ACTATP)" + +msgid "Alert" +msgstr "Alerta" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" +"Alocar endereços IP sequencialmente, iniciando a partir do endereço mais " +"baixo disponível" + +msgid "Allocate IP sequentially" +msgstr "Alocar endereços IP sequencialmente" + +msgid "Allow SSH password authentication" +msgstr "" +"Permitir autenticação SSH por senha" + +msgid "Allow all except listed" +msgstr "Permitir todos, exceto os listados" + +msgid "Allow listed only" +msgstr "Permitir somente os listados" + +msgid "Allow localhost" +msgstr "Permitir computador local" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" +"Permitir que equipamentos remotos conectem à portas locais encaminhadas por " +"SSH" + +msgid "Allow root logins with password" +msgstr "Permite autenticação do root com senha" + +msgid "Allow the root user to login with password" +msgstr "Permite que o usuário root se autentique utilizando senha" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" +"Permite respostas que apontem para 127.0.0.0/8 de servidores externos, por " +"exemplo, para os serviços RBL" + +msgid "Allowed IPs" +msgstr "Endereços IP autorizados" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" +"Veja também a Comparação de Tunelamentos em SIXXS" + +msgid "Always announce default router" +msgstr "Sempre anuncie o roteador padrão" + +msgid "Annex" +msgstr "Anexo" + +msgid "Annex A + L + M (all)" +msgstr "Anexos A + L + M (todo)" + +msgid "Annex A G.992.1" +msgstr "Anexo A G.992.1" + +msgid "Annex A G.992.2" +msgstr "Anexo A G.992.2" + +msgid "Annex A G.992.3" +msgstr "Anexo A G.992.3" + +msgid "Annex A G.992.5" +msgstr "Anexo A G.992.5" + +msgid "Annex B (all)" +msgstr "Anexo B (todo)" + +msgid "Annex B G.992.1" +msgstr "Anexo B G.992.1" + +msgid "Annex B G.992.3" +msgstr "Anexo B G.992.3" + +msgid "Annex B G.992.5" +msgstr "Anexo B G.992.5" + +msgid "Annex J (all)" +msgstr "Anexo J (todo)" + +msgid "Annex L G.992.3 POTS 1" +msgstr "Anexo L G.992.3 POTS 1" + +msgid "Annex M (all)" +msgstr "Anexo M (todo)" + +msgid "Annex M G.992.3" +msgstr "Anexo M G.992.3" + +msgid "Annex M G.992.5" +msgstr "Anexo M G.992.5" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" +"Anuncie-se como rotador padrão mesmo se não existir um prefixo público." + +msgid "Announced DNS domains" +msgstr "Domínios DNS anunciados" + +msgid "Announced DNS servers" +msgstr "Servidores DNS anunciados" + +msgid "Anonymous Identity" +msgstr "Identidade Anônima" + +msgid "Anonymous Mount" +msgstr "Montagem Anônima" + +msgid "Anonymous Swap" +msgstr "Espaço de Troca (swap) Anônimo" + +msgid "Antenna 1" +msgstr "Antena 1" + +msgid "Antenna 2" +msgstr "Antena 2" + +msgid "Antenna Configuration" +msgstr "configuração de antena" + +msgid "Any zone" +msgstr "Qualquer zona" + +msgid "Apply" +msgstr "Aplicar" + +msgid "Applying changes" +msgstr "Aplicar as alterações" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" +"Atribua uma parte do comprimento de cada prefixo IPv6 público para esta " +"interface" + +msgid "Assign interfaces..." +msgstr "atribuir as interfaces" + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" +"Atribua partes do prefixo usando este identificador hexadecimal do " +"subprefixo para esta interface" + +msgid "Associated Stations" +msgstr "Estações associadas" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Controlador Wireless Atheros 802.11%s" + +msgid "Auth Group" +msgstr "Grupo de Autenticação" + +msgid "Authentication" +msgstr "Autenticação" + +msgid "Authentication Type" +msgstr "Tipo de Autenticação" + +msgid "Authoritative" +msgstr "Autoritário" + +msgid "Authorization Required" +msgstr "Autorização Necessária" + +msgid "Auto Refresh" +msgstr "Atualização Automática" + +msgid "Automatic" +msgstr "Automático" + +msgid "Automatic Homenet (HNCP)" +msgstr "" +"Rede Doméstica Automática (HNCP)" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" +"Execute automaticamente a verificação do sistema de arquivos antes da " +"montagem do dispositivo" + +msgid "Automatically mount filesystems on hotplug" +msgstr "Monte automaticamente o espaço de troca (swap) ao conectar" + +msgid "Automatically mount swap on hotplug" +msgstr "Monte automaticamente o espaço de troca (swap) ao conectar" + +msgid "Automount Filesystem" +msgstr "Montagem Automática de Sistema de Arquivo" + +msgid "Automount Swap" +msgstr "Montagem Automática do Espaço de Troca (swap) " + +msgid "Available" +msgstr "Disponível" + +msgid "Available packages" +msgstr "Pacotes disponíveis" + +msgid "Average:" +msgstr "Média:" + +msgid "B43 + B43C" +msgstr "B43 + B43C" + +msgid "B43 + B43C + V43" +msgstr "B43 + B43C + V43" + +msgid "BR / DMR / AFTR" +msgstr "BR / DMR / AFTR" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "Voltar" + +msgid "Back to Overview" +msgstr "Voltar para Visão Geral" + +msgid "Back to configuration" +msgstr "Voltar para configuração" + +msgid "Back to overview" +msgstr "Voltar para visão geral" + +msgid "Back to scan results" +msgstr "Voltar para os resultados da busca" + +msgid "Background Scan" +msgstr "Busca em Segundo Plano" + +msgid "Backup / Flash Firmware" +msgstr "Cópia de Segurança / Gravar Firmware" + +msgid "Backup / Restore" +msgstr "Cópia de Segurança / Restauração" + +msgid "Backup file list" +msgstr "Lista de arquivos para a cópia de segurança" + +msgid "Bad address specified!" +msgstr "Endereço especificado está incorreto!" + +msgid "Band" +msgstr "Banda" + +msgid "Behind NAT" +msgstr "Atrás da NAT" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"Abaixo estão os arquivos para a cópia de segurança. Ela consiste de arquivos " +"de configuração alterados marcados pelo opkg, arquivos base essenciais e " +"padrões para a cópia de segurança definidos pelo usuário." + +msgid "Bind interface" +msgstr "Interface Vinculada" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" +"Vincule somente para as explicitamenteinterfaces ao invés do endereço " +"coringa." + +msgid "Bind the tunnel to this interface (optional)." +msgstr "Vincule o túnel a esta interface (opcional)" + +msgid "Bitrate" +msgstr "Taxa de bits" + +msgid "Bogus NX Domain Override" +msgstr "Substituir Domínio NX Falsos" + +msgid "Bridge" +msgstr "Ponte" + +msgid "Bridge interfaces" +msgstr "Juntar interfaces em uma ponte" + +msgid "Bridge unit number" +msgstr "Número da ponte" + +msgid "Bring up on boot" +msgstr "Levantar na iniciação" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "Controlador Wireless Broadcom 802.11%s" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "Broadcom BCM%04x 802.11 Wireless Controlador" + +msgid "Buffered" +msgstr "Buffered" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" +"Fonte de pacotes específico da compilação/distribuição. Esta NÃO será " +"preservada em qualquer atualização do sistema." + +msgid "Buttons" +msgstr "Botões" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" +"Certificado da CA; se em branco, será salvo depois da primeira conexão." + +msgid "CPU usage (%)" +msgstr "Uso da CPU (%)" + +msgid "Cancel" +msgstr "Cancelar" + +msgid "Category" +msgstr "Categoria" + +msgid "Chain" +msgstr "Cadeia" + +msgid "Changes" +msgstr "Alterações" + +msgid "Changes applied." +msgstr "Alterações aplicadas." + +msgid "Changes the administrator password for accessing the device" +msgstr "Muda a senha do administrador para acessar este dispositivo" + +msgid "Channel" +msgstr "Canal" + +msgid "Check" +msgstr "Verificar" + +msgid "Check fileystems before mount" +msgstr "" +"Execute a verificação do sistema de arquivos antes da montagem do dispositivo" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "Marque esta opção para remover as redes existentes neste rádio." + +msgid "Checksum" +msgstr "Soma de verificação" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"Escolha a zona do firewall que você quer definir para esta interface. " +"Selecione não especificado -ou- criar para remover a interface da " +"zona associada ou preencha o campo para criar uma nova zona associada a esta " +"interface." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" +"Escolha a rede (s) que deseja anexar a este interface wireless ou preencha o " +" criar campo para definir uma nova rede." + +msgid "Cipher" +msgstr "Cifra" + +msgid "Cisco UDP encapsulation" +msgstr "Encapsulamento UDP da Cisco" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"Clique em \"Gerar arquivo\" para baixar um arquivo tar com os arquivos de " +"configuração atuais. Para retornar o roteador para o seu estado inicial, " +"clique em \"Zerar configuração\" (somente possível para imagens squashfs)." + +msgid "Client" +msgstr "Cliente" + +msgid "Client ID to send when requesting DHCP" +msgstr "" +"Identificador do cliente enviando quando a requisição do DHCP é realizada" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" +"Feche as conexões inativas após uma dada quantidade de segundos. Use 0 para " +"manter as conexões." + +msgid "Close list..." +msgstr "Fechar a lista..." + +msgid "Collecting data..." +msgstr "Coletando dados..." + +msgid "Command" +msgstr "Comando" + +msgid "Common Configuration" +msgstr "Configuração Comum" + +msgid "Compression" +msgstr "Compressão" + +msgid "Configuration" +msgstr "Configuração" + +msgid "Configuration applied." +msgstr "Configuração aplicada." + +msgid "Configuration files will be kept." +msgstr "Os arquivos de configuração serão mantidos." + +msgid "Confirmation" +msgstr "Confirmação" + +msgid "Connect" +msgstr "Conectar" + +msgid "Connected" +msgstr "Conectado" + +msgid "Connection Limit" +msgstr "Limite de conexão" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "A conexão para este servidor falhará quando o TLS não puder ser usado" + +msgid "Connections" +msgstr "Conexões" + +msgid "Country" +msgstr "País" + +msgid "Country Code" +msgstr "Código do País" + +msgid "Cover the following interface" +msgstr "Utilizando a seguinte interface" + +msgid "Cover the following interfaces" +msgstr "Utilizando as seguintes interfaces" + +msgid "Create / Assign firewall-zone" +msgstr "Criar / Atribuir a uma zona de firewall" + +msgid "Create Interface" +msgstr "Criar Interface" + +msgid "Create a bridge over multiple interfaces" +msgstr "Criar uma ponte juntando múltiplas interfaces" + +msgid "Critical" +msgstr "Crítico" + +msgid "Cron Log Level" +msgstr "Nível de Registro da Cron" + +msgid "Custom Interface" +msgstr "Interface Personalizada" + +msgid "Custom delegated IPv6-prefix" +msgstr "Prefixo IPv6 delegado personalizado" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" +"Definições de fonte de pacotes personalizadas, ex: fontes privadas. Este " +"arquivo será preservado em uma atualização do sistema." + +msgid "Custom feeds" +msgstr "Fontes de pacotes customizadas" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"Se possível, personaliza o comportamento dos LEDs." + +msgid "DHCP Leases" +msgstr "Alocações do DHCP" + +msgid "DHCP Server" +msgstr "Servidor DHCP" + +msgid "DHCP and DNS" +msgstr "DHCP e DNS" + +msgid "DHCP client" +msgstr "Cliente DHCP" + +msgid "DHCP-Options" +msgstr "Opções de DHCP" + +msgid "DHCPv6 Leases" +msgstr "Alocações DHCPv6" + +msgid "DHCPv6 client" +msgstr "Cliente DHCPv6" + +msgid "DHCPv6-Mode" +msgstr "Modo DHCPv6" + +msgid "DHCPv6-Service" +msgstr "Serviço DHCPv6" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "Encaminhamentos DNS" + +msgid "DNS-Label / FQDN" +msgstr "Rótulo DNS / FQDN" + +msgid "DNSSEC" +msgstr "DNSSEC" + +msgid "DNSSEC check unsigned" +msgstr "Verificar DNSSEC sem assinatura" + +msgid "DPD Idle Timeout" +msgstr "Tempo de expiração para ociosidade do DPD" + +msgid "DS-Lite AFTR address" +msgstr "Endereço DS-Lite AFTR" + +msgid "DSL" +msgstr "DSL" + +msgid "DSL Status" +msgstr "Estado da DSL" + +msgid "DSL line mode" +msgstr "Modo de linha DSL" + +msgid "DUID" +msgstr "DUID" + +msgid "Data Rate" +msgstr "Taxa de Dados" + +msgid "Debug" +msgstr "Depurar" + +msgid "Default %d" +msgstr "Padrão %d" + +msgid "Default gateway" +msgstr "Roteador Padrão" + +msgid "Default is stateless + stateful" +msgstr "O padrão é sem estado + com estado" + +msgid "Default route" +msgstr "Rota padrão" + +msgid "Default state" +msgstr "Estado padrão" + +msgid "Define a name for this network." +msgstr "Define um nome para esta rede." + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"Define opções adicionais do DHCP. Por exemplo " +"\"6,192.168.2.1,192.168.2.2\" que anuncia diferentes servidores " +"DNS para os clientes." + +msgid "Delete" +msgstr "Apagar" + +msgid "Delete this network" +msgstr "Apagar esta rede" + +msgid "Description" +msgstr "Descrição" + +msgid "Design" +msgstr "Tema" + +msgid "Destination" +msgstr "Destino" + +msgid "Device" +msgstr "Dispositivo" + +msgid "Device Configuration" +msgstr "Configuração do Dispositivo" + +msgid "Device is rebooting..." +msgstr "O dispositivo está reiniciando..." + +msgid "Device unreachable" +msgstr "Dispositivo não alcançável" + +msgid "Diagnostics" +msgstr "Diagnóstico" + +msgid "Dial number" +msgstr "Número de discagem" + +msgid "Directory" +msgstr "Diretório" + +msgid "Disable" +msgstr "Desabilitar" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +"Desabilita DHCP " +"para esta interface." + +msgid "Disable DNS setup" +msgstr "Desabilita a configuração do DNS" + +msgid "Disable Encryption" +msgstr "Desabilitar Cifragem" + +msgid "Disable HW-Beacon timer" +msgstr "Desativar temporizador de Beacon de Hardware" + +msgid "Disabled" +msgstr "Desabilitado" + +msgid "Disabled (default)" +msgstr "Desabilitado (padrão)" + +msgid "Discard upstream RFC1918 responses" +msgstr "" +"Descartar respostas de servidores externos para redes privadas (RFC1918)" + +msgid "Displaying only packages containing" +msgstr "Mostre somente os pacotes contendo" + +msgid "Distance Optimization" +msgstr "Otimização de Distância" + +msgid "Distance to farthest network member in meters." +msgstr "Distância para o computador mais distante da rede (em metros)." + +msgid "Distribution feeds" +msgstr "Fontes de pacotes da distribuição" + +msgid "Diversity" +msgstr "Diversidade" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Dnsmasq é um servidor combinado de DHCP e DNS para firewalls NAT" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" +"Não mantenha em cache para respostas negativas como, por exemplo, para os " +"domínios inexistentes" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" +"Não encaminhe requisições que não podem ser respondidas por servidores de " +"nomes públicos" + +msgid "Do not forward reverse lookups for local networks" +msgstr "Não encaminhe buscas por endereço reverso das redes local" + +msgid "Do not send probe responses" +msgstr "Não enviar respostas de exames" + +msgid "Domain required" +msgstr "Requerer domínio" + +msgid "Domain whitelist" +msgstr "Lista branca de domínios" + +msgid "Don't Fragment" +msgstr "Não Fragmentar" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" +"Não encaminhar consultas DNS sem o nome completo do DNS" + +msgid "Download and install package" +msgstr "Baixe e instale o pacote" + +msgid "Download backup" +msgstr "Baixar a cópia de segurança" + +msgid "Dropbear Instance" +msgstr "Dropbear" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear oferece um acesso shell seguro à rede (SSH) e um servidor SCP " +"integrado" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "Duas Pilhas Leve (RFC6333)" + +msgid "Dynamic DHCP" +msgstr "" +"DHCP " +"Dinâmico" + +msgid "Dynamic tunnel" +msgstr "Túnel dinâmico" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" +"Aloca dinamicamente os endereços do DHCP para os clientes. Se desabilitado, " +"somente os clientes com atribuições estáticas serão servidos. " + +msgid "EA-bits length" +msgstr "Comprimento dos bits EA" + +msgid "EAP-Method" +msgstr "Método EAP" + +msgid "Edit" +msgstr "Editar" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" +"Edite os dados de configuração brutos abaixo para arrumar qualquer erro e " +"clique em \"Salvar\" para recarregar a página." + +msgid "Edit this interface" +msgstr "Editar esta interface" + +msgid "Edit this network" +msgstr "Editar esta rede" + +msgid "Emergency" +msgstr "Emergência" + +msgid "Enable" +msgstr "Ativar" + +msgid "Enable STP" +msgstr "Ativar STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "Ativar a atualização de ponto final dinâmico HE.net" + +msgid "Enable IPv6 negotiation" +msgstr "Ativar a negociação de IPv6" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "Ativar a negociação de IPv6 no enlace PPP" + +msgid "Enable Jumbo Frame passthrough" +msgstr "Ativar o encaminhamento de quadros jumbos (Jumbo Frames)" + +msgid "Enable NTP client" +msgstr "Ativar o cliente NTP" + +msgid "Enable Single DES" +msgstr "Habilitar DES Simples" + +msgid "Enable TFTP server" +msgstr "Ativar servidor TFTP" + +msgid "Enable VLAN functionality" +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" + +msgid "Enable mirroring of incoming packets" +msgstr "Habilitar espelhamento dos pacotes entrantes" + +msgid "Enable mirroring of outgoing packets" +msgstr "Habilitar espelhamento dos pacotes saintes" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "Habilita o campo DF (Não Fragmentar) dos pacotes encapsulados." + +msgid "Enable this mount" +msgstr "Ativar esta montagem" + +msgid "Enable this swap" +msgstr "Ativar este espaço de troca (swap)" + +msgid "Enable/Disable" +msgstr "Ativar/Desativar" + +msgid "Enabled" +msgstr "Ativado" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" +"Ativa a troca rápida entre pontos de acesso que pertencem ao mesmo Domínio " +"de Mobilidade" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "Ativa o protocolo STP nesta ponte" + +msgid "Encapsulation mode" +msgstr "Modo de encapsulamento" + +msgid "Encryption" +msgstr "Cifragem" + +msgid "Endpoint Host" +msgstr "Equipamento do ponto final" + +msgid "Endpoint Port" +msgstr "Porta do ponto final" + +msgid "Erasing..." +msgstr "Apagando..." + +msgid "Error" +msgstr "Erro" + +msgid "Errored seconds (ES)" +msgstr "Segundos com erro (ES)" + +msgid "Ethernet Adapter" +msgstr "Adaptador Ethernet" + +msgid "Ethernet Switch" +msgstr "Switch Ethernet" + +msgid "Exclude interfaces" +msgstr "Excluir interfaces" + +msgid "Expand hosts" +msgstr "Expandir arquivos de equipamentos conhecidos (hosts)" + +msgid "Expires" +msgstr "Expira" + +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" +"Tempo de expiração dos endereços atribuídos. Mínimo é 2 minutos (2m)." + +msgid "External" +msgstr "Externo" + +msgid "External R0 Key Holder List" +msgstr "Lista dos Detentor de Chave R0 Externa" + +msgid "External R1 Key Holder List" +msgstr "Lista dos Detentor de Chave R1 Externa" + +msgid "External system log server" +msgstr "Servidor externo de registros do sistema (syslog)" + +msgid "External system log server port" +msgstr "Porta do servidor externo de registro do sistema (syslog)" + +msgid "External system log server protocol" +msgstr "Protocolo do servidor externo de registro do sistema (syslog)" + +msgid "Extra SSH command options" +msgstr "Opções adicionais do comando SSH" + +msgid "Fast Frames" +msgstr "Quadros Rápidos" + +msgid "File" +msgstr "Arquivo" + +msgid "Filename of the boot image advertised to clients" +msgstr "Nome do arquivo da imagem de boot anunciada para os clientes" + +msgid "Filesystem" +msgstr "Sistema de Arquivos" + +msgid "Filter" +msgstr "Filtro" + +msgid "Filter private" +msgstr "Filtrar endereços privados" + +msgid "Filter useless" +msgstr "Filtrar consultas inúteis" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" +"Encontre todos os sistemas de arquivos e espaços de troca (swap) atualmente " +"conectados e substitua a configuração com valores padrão baseados no que foi " +"detectado" + +msgid "Find and join network" +msgstr "Procurar e conectar à rede" + +msgid "Find package" +msgstr "Procurar pacote" + +msgid "Finish" +msgstr "Terminar" + +msgid "Firewall" +msgstr "Firewall" + +msgid "Firewall Settings" +msgstr "Configurações do Firewall" + +msgid "Firewall Status" +msgstr "Estado do Firewall" + +msgid "Firmware File" +msgstr "Arquivo da Firmware" + +msgid "Firmware Version" +msgstr "Versão do Firmware" + +msgid "Fixed source port for outbound DNS queries" +msgstr "Porta de origem fixa para saída de consultas DNS" + +msgid "Flash Firmware" +msgstr "Gravar Firmware" + +msgid "Flash image..." +msgstr "Gravar imagem..." + +msgid "Flash new firmware image" +msgstr "Gravar nova imagem do firmware" + +msgid "Flash operations" +msgstr "Operações na memória flash" + +msgid "Flashing..." +msgstr "Gravando na flash..." + +msgid "Force" +msgstr "Forçar" + +msgid "Force CCMP (AES)" +msgstr "Forçar CCMP (AES)" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "Forçar o DHCP nesta rede mesmo se outro servidor for detectado." + +msgid "Force TKIP" +msgstr "Forçar TKIP" + +msgid "Force TKIP and CCMP (AES)" +msgstr "Forçar TKIP e CCMP (AES)" + +msgid "Force use of NAT-T" +msgstr "Force o uso do NAT-T" + +msgid "Form token mismatch" +msgstr "Chave eletrônica do formulário não casa" + +msgid "Forward DHCP traffic" +msgstr "Encaminhar tráfego DHCP" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" +"Segundos a frente de correção de erros ( FECS)" + +msgid "Forward broadcast traffic" +msgstr "Encaminhar tráfego broadcast" + +msgid "Forwarding mode" +msgstr "Modo de encaminhamento" + +msgid "Fragmentation Threshold" +msgstr "Limiar de Fragmentação" + +msgid "Frame Bursting" +msgstr "Explosão de Quadros (Frame Bursting)" + +msgid "Free" +msgstr "Livre" + +msgid "Free space" +msgstr "Espaço livre" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" +"Mais informações sobre interfaces e parceiros WireGuard em wireguard.io." + +msgid "GHz" +msgstr "GHz" + +msgid "GPRS only" +msgstr "Somente GPRS" + +msgid "Gateway" +msgstr "Roteador" + +msgid "Gateway ports" +msgstr "Acesso remoto a portas encaminhadas" + +msgid "General Settings" +msgstr "Configurações Gerais" + +msgid "General Setup" +msgstr "Configurações Gerais" + +msgid "General options for opkg" +msgstr "Opções gerais para o opkg" + +msgid "Generate Config" +msgstr "Gerar Configuração" + +msgid "Generate archive" +msgstr "Gerar arquivo" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "Generico 802.11%s Wireless Controlador" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "A senha de confirmação informada não casa. Senha não alterada!" + +msgid "Global Settings" +msgstr "Configurações Globais" + +msgid "Global network options" +msgstr "Opções de rede globais" + +msgid "Go to password configuration..." +msgstr "Ir para a configuração de senha..." + +msgid "Go to relevant configuration page" +msgstr "Ir para a página de configuração pertinente" + +msgid "Group Password" +msgstr "Senha do Grupo" + +msgid "Guest" +msgstr "Convidado\t" + +msgid "HE.net password" +msgstr "Senha HE.net" + +msgid "HE.net username" +msgstr "Usuário do HE.net" + +msgid "HT mode (802.11n)" +msgstr "" +"Modo HT " +"(802.11n)" + +# Não sei que contexto isto está sendo usado +msgid "Handler" +msgstr "Responsável" + +msgid "Hang Up" +msgstr "Suspender" + +msgid "Header Error Code Errors (HEC)" +msgstr "" +"Erros de Código de Erro de Cabeçalho (HEC)" + +msgid "Heartbeat" +msgstr "Pulso de vida" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"Aqui você pode configurar os aspectos básicos do seu equipamento, como o " +"nome do equipamento ou o fuso horário." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" +"Aqui você pode colar as chaves públicas do SSH (uma por linha) para a " +"autenticação por chaves do SSH." + +msgid "Hermes 802.11b Wireless Controller" +msgstr "Hermes 802.11b Wireless Controlador" + +msgid "Hide ESSID" +msgstr "" +"Ocultar ESSID" + +msgid "Host" +msgstr "Equipamento" + +msgid "Host entries" +msgstr "Entradas de Equipamentos" + +msgid "Host expiry timeout" +msgstr "Tempo limite de expiração de equipamento" + +msgid "Host-IP or Network" +msgstr "" +"IP do Equipamento " +"ou Rede" + +msgid "Hostname" +msgstr "Nome do equipamento" + +msgid "Hostname to send when requesting DHCP" +msgstr "Nome do equipamento enviado quando requisitar DHCP" + +msgid "Hostnames" +msgstr "Nome dos equipamentos" + +msgid "Hybrid" +msgstr "Híbrido" + +msgid "IKE DH Group" +msgstr "" +"Grupo DH do IKE" + +msgid "IP Addresses" +msgstr "Endereços IP" + +msgid "IP address" +msgstr "Endereço IP" + +msgid "IPv4" +msgstr "IPv4" + +msgid "IPv4 Firewall" +msgstr "Firewall para IPv4" + +msgid "IPv4 WAN Status" +msgstr "Estado IPv4 da WAN" + +msgid "IPv4 address" +msgstr "Endereço IPv4" + +msgid "IPv4 and IPv6" +msgstr "IPv4 e IPv6" + +msgid "IPv4 assignment length" +msgstr "Tamanho da atribuição IPv4" + +msgid "IPv4 broadcast" +msgstr "Broadcast IPv4" + +msgid "IPv4 gateway" +msgstr "Roteador padrão IPv4" + +msgid "IPv4 netmask" +msgstr "Máscara de rede IPv4" + +msgid "IPv4 only" +msgstr "Somente IPv4" + +msgid "IPv4 prefix" +msgstr "Prefixo IPv4" + +msgid "IPv4 prefix length" +msgstr "Tamanho do prefixo IPv4" + +msgid "IPv4-Address" +msgstr "Endereço IPv4" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "IPv4-in-IPv4 (RFC2003)" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "Firewall para IPv6" + +msgid "IPv6 Neighbours" +msgstr "Vizinhos IPv6" + +msgid "IPv6 Settings" +msgstr "Configurações IPv6" + +msgid "IPv6 ULA-Prefix" +msgstr "" +"Prefixo ULA " +"IPv6" + +msgid "IPv6 WAN Status" +msgstr "Estado IPv6 da WAN" + +msgid "IPv6 address" +msgstr "Endereço IPv6" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "Endereços IPv6 delegados para o ponta local do túnel (opcional)" + +msgid "IPv6 assignment hint" +msgstr "Sugestão de atribuição IPv6" + +msgid "IPv6 assignment length" +msgstr "Tamanho da atribuição IPv6" + +msgid "IPv6 gateway" +msgstr "Roteador padrão do IPv6" + +msgid "IPv6 only" +msgstr "Somente IPv6" + +msgid "IPv6 prefix" +msgstr "Prefixo IPv6" + +msgid "IPv6 prefix length" +msgstr "Tamanho Prefixo IPv6" + +msgid "IPv6 routed prefix" +msgstr "Prefixo roteável IPv6" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "Endereço IPv6" + +msgid "IPv6-PD" +msgstr "IPv6-PD" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "IPv6-in-IPv4 (RFC4213)" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "IPv6-sobre-IPv4 (6rd)" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "IPv6-sobre-IPv4 (6to4)" + +msgid "Identity" +msgstr "Identidade PEAP" + +msgid "If checked, 1DES is enaled" +msgstr "Se marcado, a cifragem 1DES será habilitada" + +msgid "If checked, encryption is disabled" +msgstr "Se marcado, a cifragem estará desabilitada" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" +"Se especificado, monta o dispositivo pelo seu UUID ao invés de um nó de " +"dispositivo fixo" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" +"Se especificado, monta o dispositivo pela etiqueta da partiçãoo ao invés de " +"um nó de dispositivo fixo" + +msgid "If unchecked, no default route is configured" +msgstr "Se desmarcado, nenhuma rota padrão será configurada" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "" +"Se desmarcado, os endereços dos servidores DNS anunciados serão ignorados" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"Se a sua memória física for insuficiente, os dados não utilizados poderão " +"ser armazenados temporariamente em um dispositivo swap, resultando em uma " +"maior quantidade de memória RAM utilizável. Esteja ciente de que a troca de dados (swap) é um processo " +"muito lento, uma vez que o dispositivo swap não pode ser acessado com taxas " +"de transferência tão altas com a memória RAM." + +msgid "Ignore /etc/hosts" +msgstr "Ignorar /etc/hosts" + +msgid "Ignore interface" +msgstr "Ignorar interface" + +msgid "Ignore resolve file" +msgstr "Ignorar arquivo de resolução de nomes (resolv.conf)" + +msgid "Image" +msgstr "Imagem" + +msgid "In" +msgstr "Entrada" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" +"Para prevenir acesso não autorizado neste sistema, sua requisição foi " +"bloqueada. Clique abaixo em \"Continuar »\" para retornar à página anterior." + +msgid "Inactivity timeout" +msgstr "Tempo limite de inatividade" + +msgid "Inbound:" +msgstr "Entrando:" + +msgid "Info" +msgstr "Informação" + +msgid "Initscript" +msgstr "Script de iniciação" + +msgid "Initscripts" +msgstr "Scripts de iniciação" + +msgid "Install" +msgstr "Instalar" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "Instale iputils-traceroute6 para rastrear rotas IPv6" + +msgid "Install package %q" +msgstr "Instalar pacote %q" + +msgid "Install protocol extensions..." +msgstr "Instalar extensões de protocolo..." + +msgid "Installed packages" +msgstr "Pacotes instalados" + +msgid "Interface" +msgstr "Interface" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "Configuração da Interface" + +msgid "Interface Overview" +msgstr "Visão Geral da Interface" + +msgid "Interface is reconnecting..." +msgstr "A interface está reconectando..." + +msgid "Interface is shutting down..." +msgstr "A interface está desligando..." + +msgid "Interface name" +msgstr "Nome da Interface" + +msgid "Interface not present or not connected yet." +msgstr "A interface não está presente ou não está conectada ainda." + +msgid "Interface reconnected" +msgstr "Interface reconectada" + +msgid "Interface shut down" +msgstr "Interface desligada" + +msgid "Interfaces" +msgstr "Interfaces" + +msgid "Internal" +msgstr "Interno" + +msgid "Internal Server Error" +msgstr "erro no servidor interno" + +msgid "Invalid" +msgstr "Valor inválido" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" +"O valor informado do ID da VLAN é inválido! Somente valores entre %d e %d " +"são permitidos." + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "" +"O valor informado do ID da VLAN é inválido! Somente valores únicos são " +"permitidos." + +msgid "Invalid username and/or password! Please try again." +msgstr "Usuário e/ou senha inválida! Por favor, tente novamente." + +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"A imagem que está a tentar carregar aparenta nao caber na flash do " +"equipamento. Por favor verifique o arquivo da imagem!" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "É necessário JavaScript!" + +msgid "Join Network" +msgstr "Conectar à Rede" + +msgid "Join Network: Wireless Scan" +msgstr "Conectar à Rede: Busca por Rede Sem Fio" + +msgid "Joining Network: %q" +msgstr "Juntando-se à rede %q" + +msgid "Keep settings" +msgstr "Manter configurações" + +msgid "Kernel Log" +msgstr "Registo do Kernel" + +msgid "Kernel Version" +msgstr "Versão do Kernel" + +msgid "Key" +msgstr "Chave" + +msgid "Key #%d" +msgstr "Chave #%d" + +msgid "Kill" +msgstr "Matar" + +msgid "L2TP" +msgstr "L2TP" + +msgid "L2TP Server" +msgstr "Servidor L2TP" + +msgid "LCP echo failure threshold" +msgstr "Limite de falha no eco do LCP" + +msgid "LCP echo interval" +msgstr "Intervalo do eco do LCP" + +msgid "LLC" +msgstr "LLC" + +msgid "Label" +msgstr "Etiqueta" + +msgid "Language" +msgstr "Idioma" + +msgid "Language and Style" +msgstr "Idioma e Estilo" + +msgid "Latency" +msgstr "Latência" + +msgid "Leaf" +msgstr "Folha" + +msgid "Lease time" +msgstr "Tempo de concessão" + +msgid "Lease validity time" +msgstr "Tempo de validade da atribuição" + +msgid "Leasefile" +msgstr "Arquivo de atribuições" + +msgid "Leasetime remaining" +msgstr "Tempo restante da atribuição" + +msgid "Leave empty to autodetect" +msgstr "Deixe vazio para detectar automaticamente" + +msgid "Leave empty to use the current WAN address" +msgstr "Deixe vazio para usar o endereço WAN atual" + +msgid "Legend:" +msgstr "Legenda:" + +msgid "Limit" +msgstr "Limite" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" +"Limite o serviço DNS para subredes das interfaces nas quais estamos servindo " +"DNS." + +msgid "Limit listening to these interfaces, and loopback." +msgstr "Escute somente nestas interfaces e na interface local (loopback) " + +msgid "Line Attenuation (LATN)" +msgstr "Atenuação de Linha (LATN)" + +msgid "Line Mode" +msgstr "Modo da Linha" + +msgid "Line State" +msgstr "Estado da Linha" + +msgid "Line Uptime" +msgstr "Tempo de Atividade da Linha" + +msgid "Link On" +msgstr "Enlace Ativo" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" +"Lista dos servidores DNS para " +"encaminhar as requisições" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" +"Lista dos R0KHs no mesmo Domínio de Mobilidade.
Formato: Endereço " +"MAC, Identificador NAS, chave de 128 bits como cadeia hexadecimal.
" +"Esta lista é usada para mapear o Identificador R0KH (Identificador NAS) para " +"um endereço MAC de destino ao solicitar a chave PMK-R1 a partir do R0KH que " +"o STA usado durante a Associação de Domínio de Mobilidade Inicial." + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" +"Lista dos R1KHs no mesmo Domínio de Mobilidade.
Formato: Endereço " +"MAC, R1KH-ID como 6 octetos com dois pontos, chave de 128 bits como cadeia " +"hexadecimal.
Esta lista é usada para mapear o identificador R1KH para " +"um endereço MAC de destino ao enviar a chave PMK-R1 a partir do R0KH. Esta é " +"também a lista de R1KHs autorizados no MD que podem solicitar chaves PMK-R1." + +msgid "List of SSH key files for auth" +msgstr "Lista de arquivos de chaves SSH para autenticação" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "" +"Lista dos domínios para os quais será permitido respostas apontando para " +"redes privadas (RFC1918)" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "" +"Lista de servidores DNS que " +"fornecem resultados errados para consultas a domínios inexistentes (NX)" + +msgid "Listen Interfaces" +msgstr "Interfaces de Escuta" + +msgid "Listen Port" +msgstr "Porta de Escuta" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" +"Escuta apenas na interface especificada. Se não especificado, escuta em todas" + +msgid "Listening port for inbound DNS queries" +msgstr "Porta de escuta para a entrada das consultas DNS" + +msgid "Load" +msgstr "Carga" + +msgid "Load Average" +msgstr "Carga Média" + +msgid "Loading" +msgstr "Carregando" + +msgid "Local IP address to assign" +msgstr "Endereço IP local para atribuir" + +msgid "Local IPv4 address" +msgstr "Endereço IPv4 local" + +msgid "Local IPv6 address" +msgstr "Endereço IPv6 local" + +msgid "Local Service Only" +msgstr "Somente Serviço Local" + +msgid "Local Startup" +msgstr "Iniciação Local" + +msgid "Local Time" +msgstr "Hora Local" + +msgid "Local domain" +msgstr "Domínio Local" + +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" +"Especificação do domínio local. Nomes que casam com este domínio nunca serão " +"encaminhados e são resolvidos somente pelo DHCP ou pelo arquivos de " +"equipamentos conhecidos (hosts)" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" +"Sufixo do domínio local adicionado aos nomes no DHCP e nas entradas dos " +"arquivo de equipamentos conhecidos (hosts)" + +msgid "Local server" +msgstr "Servidor local" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" +"Localizar o nome do equipamento dependendo da subrede requisitante se " +"mútliplos endereços IPs estiverem disponíveis" + +msgid "Localise queries" +msgstr "Localizar consultas" + +msgid "Locked to channel %s used by: %s" +msgstr "Travado no canal %s usado por: %s" + +msgid "Log output level" +msgstr "Nível de detalhamento de saída dos registros" + +msgid "Log queries" +msgstr "Registar as consultas" + +msgid "Logging" +msgstr "Registrando os eventos" + +msgid "Login" +msgstr "Entrar" + +msgid "Logout" +msgstr "Sair" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" +"Segundos de Perda de Sinal (LOSS)" + +msgid "Lowest leased address as offset from the network address." +msgstr "O endereço mais baixo concedido como deslocamento do endereço da rede." + +msgid "MAC-Address" +msgstr "Endereço MAC" + +msgid "MAC-Address Filter" +msgstr "Filtro de Endereço MAC" + +msgid "MAC-Filter" +msgstr "Filtro de MAC" + +msgid "MAC-List" +msgstr "Lista de MAC" + +msgid "MAP / LW4over6" +msgstr "MAP / LW4over6" + +msgid "MB/s" +msgstr "MB/s" + +msgid "MD5" +msgstr "MD5" + +msgid "MHz" +msgstr "MHz" + +msgid "MTU" +msgstr "" +"MTU" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" +"Certifique-se que clonou o sistema de arquivos raiz com algo como o comando " +"abaixo:" + +msgid "Manual" +msgstr "Manual" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" +"Taxa de Dados Atingível Máxima (ATTNDR)" + +msgid "Maximum Rate" +msgstr "Taxa Máxima" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "Número máximo permitido de alocações DHCP ativas" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "Número máximo permitido de consultas DNS concorrentes" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "Tamanho máximo permitido dos pacotes UDP EDNS.0" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "Tempo máximo, em segundos, para esperar que o modem fique pronto" + +# Desconheço o uso +msgid "Maximum hold time" +msgstr "Tempo máximo de espera" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" +"Comprimento máximo do nome é de 15 caracteres, incluindo o prefixo " +"automático do protocolo/ponte (br-, 6in4- pppoe-, etc.)" + +msgid "Maximum number of leased addresses." +msgstr "Número máximo de endereços atribuídos." + +msgid "Mbit/s" +msgstr "Mbit/s" + +msgid "Memory" +msgstr "Memória" + +msgid "Memory usage (%)" +msgstr "Uso da memória (%)" + +msgid "Metric" +msgstr "Métrica" + +msgid "Minimum Rate" +msgstr "Taxa Mínima" + +msgid "Minimum hold time" +msgstr "Tempo mínimo de espera" + +msgid "Mirror monitor port" +msgstr "Porta de monitoramento do espelho" + +msgid "Mirror source port" +msgstr "Porta de origem do espelho" + +msgid "Missing protocol extension for proto %q" +msgstr "Extensão para o protocolo %q está ausente" + +msgid "Mobility Domain" +msgstr "Domínio da Mobilidade" + +msgid "Mode" +msgstr "Modo" + +msgid "Model" +msgstr "Modelo" + +msgid "Modem device" +msgstr "Dispositivo do Modem" + +msgid "Modem init timeout" +msgstr "Estouro de tempo da iniciação do modem" + +msgid "Monitor" +msgstr "Monitor" + +msgid "Mount Entry" +msgstr "Entrada de Montagem" + +msgid "Mount Point" +msgstr "Ponto de Montagem" + +msgid "Mount Points" +msgstr "Pontos de Montagem" + +msgid "Mount Points - Mount Entry" +msgstr "Pontos de Montagem - Entrada de Montagem" + +msgid "Mount Points - Swap Entry" +msgstr "Pontos de Montagem - Entrada da Swap" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"Pontos de montagem definem em que ponto um dispositivo de armazenamento será " +"anexado ao sistema de arquivos" + +msgid "Mount filesystems not specifically configured" +msgstr "Monte sistemas de arquivos não especificamente configurados" + +msgid "Mount options" +msgstr "Opções de montagem" + +msgid "Mount point" +msgstr "Ponto de montagem" + +msgid "Mount swap not specifically configured" +msgstr "Montar espalho de troca (swap) não especificamente configurado" + +msgid "Mounted file systems" +msgstr "Sistemas de arquivos montados" + +msgid "Move down" +msgstr "Mover para baixo" + +msgid "Move up" +msgstr "Mover para cima" + +msgid "Multicast Rate" +msgstr "Taxa de Multicast" + +msgid "Multicast address" +msgstr "Endereço de Multicast" + +msgid "NAS ID" +msgstr "NAS ID" + +msgid "NAT-T Mode" +msgstr "Modo NAT-T" + +msgid "NAT64 Prefix" +msgstr "Prefixo NAT64" + +msgid "NDP-Proxy" +msgstr "Proxy NDP" + +msgid "NT Domain" +msgstr "Domínio NT" + +msgid "NTP server candidates" +msgstr "Candidatos a servidor NTP" + +msgid "NTP sync time-out" +msgstr "Tempo limite da sincronia do NTP" + +msgid "Name" +msgstr "Nome" + +msgid "Name of the new interface" +msgstr "Nome da nova interface" + +msgid "Name of the new network" +msgstr "Nome da nova rede" + +msgid "Navigation" +msgstr "Navegação" + +msgid "Netmask" +msgstr "Máscara de rede" + +msgid "Network" +msgstr "Rede" + +msgid "Network Utilities" +msgstr "Utilitários de Rede" + +msgid "Network boot image" +msgstr "Imagem de boot pela rede" + +msgid "Network without interfaces." +msgstr "Rede sem interfaces." + +msgid "Next »" +msgstr "Próximo »" + +msgid "No DHCP Server configured for this interface" +msgstr "Nenhum Servidor DHCP configurado para esta interface" + +msgid "No NAT-T" +msgstr "Sem NAT-T" + +msgid "No chains in this table" +msgstr "Nenhuma cadeira nesta tabela" + +msgid "No files found" +msgstr "Nenhum arquivo encontrado" + +msgid "No information available" +msgstr "Nenhuma informação disponível" + +msgid "No negative cache" +msgstr "Nenhum cache negativo" + +msgid "No network configured on this device" +msgstr "Nenhuma rede configurada neste dispositivo" + +msgid "No network name specified" +msgstr "Nenhum nome de rede foi especificado" + +msgid "No package lists available" +msgstr "Nenhuma lista de pacotes disponível" + +msgid "No password set!" +msgstr "Nenhuma senha definida!" + +msgid "No rules in this chain" +msgstr "Sem regras nesta cadeia" + +msgid "No zone assigned" +msgstr "Nenhuma zona definida" + +msgid "Noise" +msgstr "Ruído" + +msgid "Noise Margin (SNR)" +msgstr "Margem de Ruído (SNR)" + +msgid "Noise:" +msgstr "Ruído:" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" +"Erros CRC Não PreemptivosCRC_P" + +msgid "Non-wildcard" +msgstr "Sem caracter curinga" + +msgid "None" +msgstr "Nenhum" + +msgid "Normal" +msgstr "Normal" + +msgid "Not Found" +msgstr "Não Encontrado" + +msgid "Not associated" +msgstr "Não conectado" + +msgid "Not connected" +msgstr "Não conectado" + +msgid "Note: Configuration files will be erased." +msgstr "Nota: Os arquivos de configuração serão apagados." + +msgid "Note: interface name length" +msgstr "Aviso: tamanho do nome da interface" + +msgid "Notice" +msgstr "Aviso" + +msgid "Nslookup" +msgstr "Nslookup" + +msgid "OK" +msgstr "OK" + +msgid "OPKG-Configuration" +msgstr "Configuração-OPKG" + +msgid "Obfuscated Group Password" +msgstr "Senha Ofuscada do Grupo" + +msgid "Obfuscated Password" +msgstr "Senha Ofuscada" + +msgid "Off-State Delay" +msgstr "Atraso no estado de desligado" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"Nesta página pode configurar as interfaces de rede. Esta interface pode " +"formar uma ponte juntando várias interfaces. Para isto, marque o campo " +"\"Juntar interfaces em uma ponte\" e informar as várias interfaces de rede. " +"Pode também usar a notação para VLAN INTERFACE.VLANNR (ex.: " +"eth0.1)." + +msgid "On-State Delay" +msgstr "Atraso no estado de conexões" + +msgid "One of hostname or mac address must be specified!" +msgstr "" +"É necessário especificar ao menos um nome de equipamento ou endereço MAC!" + +msgid "One or more fields contain invalid values!" +msgstr "Um ou mais campos contém valores inválidos!" + +msgid "One or more invalid/required values on tab" +msgstr "Um ou mais valores inválidos/obrigatórios na aba" + +msgid "One or more required fields have no value!" +msgstr "Um ou mais campos obrigatórios não tem valor!" + +msgid "Open list..." +msgstr "Abrir lista..." + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "OpenConnect (CISCO AnyConnect)" + +msgid "Operating frequency" +msgstr "Frequência de Operação" + +msgid "Option changed" +msgstr "Opção alterada" + +msgid "Option removed" +msgstr "Opção removida" + +msgid "Optional" +msgstr "Opcional" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" +"Opcional, especifique para sobrescrever o servidor padrão (tic.sixxs.net)" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "Opcional, para usar quando a conta SIXXS tem mais de um túnel" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "Opcional. Cria rotas para endereços IP Autorizados para este parceiro." + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" +"Opcional. Equipamento do parceiro. Nomes serão resolvido antes de levantar a " +"interface." + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "Opcional. Unidade Máxima de Transmissão da interface do túnel." + +msgid "Optional. Port of peer." +msgstr "Opcional. Porta do parceiro." + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" +"Opcional. Segundos entre mensagens para manutenção da conexão. O padrão é 0 " +"(desabilitado). O valor recomendado caso este dispositivo esteja atrás de " +"uma NAT é 25." + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "opcional. Porta UDP usada para pacotes saintes ou entrantes." + +msgid "Options" +msgstr "Opções" + +msgid "Other:" +msgstr "Outro:" + +msgid "Out" +msgstr "Saída" + +msgid "Outbound:" +msgstr "Saindo:" + +msgid "Outdoor Channels" +msgstr "Canais para externo" + +msgid "Output Interface" +msgstr "Interface de Saída" + +msgid "Override MAC address" +msgstr "Sobrescrever o endereço MAC" + +msgid "Override MTU" +msgstr "" +"Sobrescrever o MTU" + +msgid "Override TOS" +msgstr "Sobrescrever o TOS" + +msgid "Override TTL" +msgstr "Sobrescrever o TTL" + +msgid "Override default interface name" +msgstr "Sobrescrever o nome da nova interface" + +msgid "Override the gateway in DHCP responses" +msgstr "Sobrescrever o roteador padrão nas respostas do DHCP" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" +"Sobrescrever a máscara de rede enviada aos clientes. Normalmente, ela é " +"calculada a partir da máscara da subrede de onde o cliente solicitou o " +"endereço." + +msgid "Override the table used for internal routes" +msgstr "Sobrescrever a tabela usada para as rotas internas" + +msgid "Overview" +msgstr "Visão geral" + +msgid "Owner" +msgstr "Dono" + +msgid "PAP/CHAP password" +msgstr "Senha do PAP/CHAP" + +msgid "PAP/CHAP username" +msgstr "Usuário do PAP/CHAP" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "PIN" + +msgid "PMK R1 Push" +msgstr "PMK R1 Push" + +msgid "PPP" +msgstr "PPP" + +msgid "PPPoA Encapsulation" +msgstr "Encapsulamento PPPoA " + +msgid "PPPoATM" +msgstr "PPPoATM" + +msgid "PPPoE" +msgstr "PPPoE" + +msgid "PPPoSSH" +msgstr "PPPoSSH" + +msgid "PPtP" +msgstr "PPtP" + +msgid "PSID offset" +msgstr "Deslocamento PSID" + +msgid "PSID-bits length" +msgstr "Comprimento dos bits PSID" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "PTM/EFM (Modo de Transferência de Pacotes)" + +msgid "Package libiwinfo required!" +msgstr "O pacote libiwinfo é necessário!" + +msgid "Package lists are older than 24 hours" +msgstr "As listas de pacotes são mais antigas do que 24 horas" + +msgid "Package name" +msgstr "Nome do Pacote" + +msgid "Packets" +msgstr "Pacotes" + +msgid "Part of zone %q" +msgstr "Parte da zona %q" + +msgid "Password" +msgstr "Senha" + +msgid "Password authentication" +msgstr "Autenticação por senha" + +msgid "Password of Private Key" +msgstr "Senha da Chave Privada" + +msgid "Password of inner Private Key" +msgstr "Senha da Chave Privada interna" + +msgid "Password successfully changed!" +msgstr "A senha foi alterada com sucesso!" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "Caminho para o Certificado da AC" + +msgid "Path to Client-Certificate" +msgstr "Caminho para o Certificado do Cliente" + +msgid "Path to Private Key" +msgstr "Caminho para a Chave Privada" + +msgid "Path to executable which handles the button event" +msgstr "Caminho para o executável que trata o evento do botão" + +msgid "Path to inner CA-Certificate" +msgstr "Caminho para os certificados CA interno" + +msgid "Path to inner Client-Certificate" +msgstr "Caminho para o Certificado do Cliente interno" + +msgid "Path to inner Private Key" +msgstr "Caminho para a Chave Privada interna" + +msgid "Peak:" +msgstr "Pico:" + +msgid "Peer IP address to assign" +msgstr "Endereço IP do parceiro para atribuir" + +msgid "Peers" +msgstr "Parceiros" + +msgid "Perfect Forward Secrecy" +msgstr "Sigilo Encaminhado Perfeito" + +msgid "Perform reboot" +msgstr "Reiniciar o sistema" + +msgid "Perform reset" +msgstr "Zerar configuração" + +msgid "Persistent Keep Alive" +msgstr "Manutenção da Conexão Persistente" + +msgid "Phy Rate:" +msgstr "Taxa física:" + +msgid "Physical Settings" +msgstr "Configurações Físicas" + +msgid "Ping" +msgstr "Ping" + +msgid "Pkts." +msgstr "Pcts." + +msgid "Please enter your username and password." +msgstr "Entre com o seu usuário e senha." + +msgid "Policy" +msgstr "Política" + +msgid "Port" +msgstr "Porta" + +msgid "Port status:" +msgstr "Status da porta" + +msgid "Power Management Mode" +msgstr "Modo de Gerenciamento de Energia" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" +"Erros CRC PreemptivosCRCP_P" + +msgid "Prefix Delegated" +msgstr "Prefixo Delegado" + +msgid "Preshared Key" +msgstr "Chave Compartilhada" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" +"Assumir que o parceiro está morto depois de uma data quantidade de falhas de " +"echo do LCP. Use 0 para ignorar as falhas" + +msgid "Prevent listening on these interfaces." +msgstr "Evite escutar nestas Interfaces." + +msgid "Prevents client-to-client communication" +msgstr "Impede a comunicação de cliente para cliente" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "Prism2/2.5/3 802.11b Wireless Controlador" + +msgid "Private Key" +msgstr "Chave Privada" + +msgid "Proceed" +msgstr "Proceder" + +msgid "Processes" +msgstr "Processos" + +msgid "Profile" +msgstr "Perfil" + +msgid "Prot." +msgstr "Protocolo" + +msgid "Protocol" +msgstr "Protocolo" + +msgid "Protocol family" +msgstr "Família do protocolo" + +msgid "Protocol of the new interface" +msgstr "Protocolo para a nova interface" + +msgid "Protocol support is not installed" +msgstr "O suporte ao protocolo não está instalado" + +msgid "Provide NTP server" +msgstr "Fornecer serviço NTP" + +msgid "Provide new network" +msgstr "Prover nova rede" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "Ad-Hoc falso (ahdemo)" + +msgid "Public Key" +msgstr "Chave Pública" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" +"Prefixo público roteado para este dispositivo para distribuição a seus " +"clientes." + +msgid "QMI Cellular" +msgstr "Celular QMI" + +msgid "Quality" +msgstr "Qualidade" + +msgid "R0 Key Lifetime" +msgstr "Validade da Chave R0" + +msgid "R1 Key Holder" +msgstr "Detentor da Chave R1" + +msgid "RFC3947 NAT-T mode" +msgstr "Modo NAT-T (RFC3947)" + +msgid "RTS/CTS Threshold" +msgstr "Limiar RTS/CTS" + +msgid "RX" +msgstr "RX" + +msgid "RX Rate" +msgstr "Taxa de RX" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "RaLink 802.11%s Wireless Controlador" + +msgid "Radius-Accounting-Port" +msgstr "Porta de contabilidade do RADIUS" + +msgid "Radius-Accounting-Secret" +msgstr "Segredo da contabilidade do RADIUS" + +msgid "Radius-Accounting-Server" +msgstr "Servidor da contabilidade do RADIUS" + +msgid "Radius-Authentication-Port" +msgstr "Porta de autenticação do RADIUS" + +msgid "Radius-Authentication-Secret" +msgstr "Segredo da autenticação do RADIUS" + +msgid "Radius-Authentication-Server" +msgstr "Servidor da autenticação do RADIUS" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"Ler /etc/ethers para configurar o Servidor-DHCP" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" +"Realmente excluir esta interface? A exclusão não pode ser desfeita!\n" +" Você poderá perder o acesso a este dispositivo se você estiver conectado " +"através desta interface." + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" +"Realmente excluir esta interface Wireless? A exclusão não pode ser " +"desfeita!\n" +"Você poderá perder o acesso a este dispositivo se você estiver conectado " +"através desta interface." + +msgid "Really reset all changes?" +msgstr "Realmente limpar todas as mudanças?" + +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" +"Realmente desligar esta rede\"%s\" ?\n" +"Você poderá perder o acesso a este dispositivo se você estiver conectado " +"através desta interface." + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" +"Realmente desligar esta interface\"%s\" ?\n" +"Você poderá perder o acesso a este dispositivo se você estiver conectado " +"através desta interface." + +msgid "Really switch protocol?" +msgstr "Realmente trocar o protocolo?" + +msgid "Realtime Connections" +msgstr "Conexões em Tempo Real" + +msgid "Realtime Graphs" +msgstr "Gráficos em Tempo Real" + +msgid "Realtime Load" +msgstr "Carga em Tempo Real" + +msgid "Realtime Traffic" +msgstr "Tráfego em Tempo Real" + +msgid "Realtime Wireless" +msgstr "Rede sem fio em Tempo Real" + +msgid "Reassociation Deadline" +msgstr "Limite para Reassociação" + +msgid "Rebind protection" +msgstr "Proteção contra \"Rebind\"" + +msgid "Reboot" +msgstr "Reiniciar" + +msgid "Rebooting..." +msgstr "Reiniciando..." + +msgid "Reboots the operating system of your device" +msgstr "Reinicia o sistema operacional do seu dispositivo" + +msgid "Receive" +msgstr "Receber" + +msgid "Receiver Antenna" +msgstr "Antena de Recepção" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "Recomendado. Endereços IP da interface do WireGuard." + +msgid "Reconnect this interface" +msgstr "Reconectar esta interface" + +msgid "Reconnecting interface" +msgstr "Reconectando interface" + +msgid "References" +msgstr "Referências" + +msgid "Regulatory Domain" +msgstr "Domínio Regulatório" + +msgid "Relay" +msgstr "Retransmissor" + +msgid "Relay Bridge" +msgstr "Ponte por Retransmissão" + +msgid "Relay between networks" +msgstr "Encaminha o tráfego entre as redes" + +msgid "Relay bridge" +msgstr "Ponte por retransmissão" + +msgid "Remote IPv4 address" +msgstr "Endereço IPv4 remoto" + +msgid "Remote IPv4 address or FQDN" +msgstr "Endereço IPv4 remoto ou FQDN" + +msgid "Remove" +msgstr "Remover" + +msgid "Repeat scan" +msgstr "Repetir busca" + +msgid "Replace entry" +msgstr "Substituir entrada" + +msgid "Replace wireless configuration" +msgstr "Substituir a configuração da rede sem fio" + +msgid "Request IPv6-address" +msgstr "Solicita endereço IPv6" + +msgid "Request IPv6-prefix of length" +msgstr "Solicita prefixo IPv6 de tamanho" + +msgid "Require TLS" +msgstr "Requer TLS" + +msgid "Required" +msgstr "Necessário" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "" +"Obrigatório para alguns provedores de internet, ex. Charter com DOCSIS 3" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "Obrigatório. Chave privada codificada em Base64 para esta interface." + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" +"Obrigatório. Endereços IP e prefixos que este parceiro está autorizado a " +"usar dentro do túnel. Normalmente é o endereço IP do parceiro no túnel e as " +"redes que o parceiro roteia através do túnel." + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "Obrigatório. Chave Pública do parceiro." + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" +"Exige o suporte DNSSEC do servidor superior; verifica se resposta não " +"assinadas realmente vẽm de domínios não assinados." + +msgid "Reset" +msgstr "Limpar" + +msgid "Reset Counters" +msgstr "Reiniciar contadores" + +msgid "Reset to defaults" +msgstr "Redefinir para os valores padrão" + +msgid "Resolv and Hosts Files" +msgstr "Arquivos de Resolv e Hosts" + +msgid "Resolve file" +msgstr "Arquivo Resolv" + +msgid "Restart" +msgstr "Reiniciar" + +msgid "Restart Firewall" +msgstr "Reiniciar o firewall" + +msgid "Restore backup" +msgstr "Restaurar cópia de segurança" + +msgid "Reveal/hide password" +msgstr "Relevar/esconder senha" + +msgid "Revert" +msgstr "Reverter" + +msgid "Root" +msgstr "Raiz" + +msgid "Root directory for files served via TFTP" +msgstr "Diretório raiz para arquivos disponibilizados pelo TFTP" + +msgid "Root preparation" +msgstr "Prepação da raiz (/)" + +msgid "Route Allowed IPs" +msgstr "Roteie Andereços IP Autorizados" + +msgid "Route type" +msgstr "Tipo de rota" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "Prefixo roteável IPv6 para interfaces internas" + +msgid "Router Advertisement-Service" +msgstr "Serviço de Anúncio de Roteador" + +msgid "Router Password" +msgstr "Senha do Roteador" + +msgid "Routes" +msgstr "Rotas" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"As rotas especificam através de qual interface e roteador um certo destino " +"podem ser alcançado." + +msgid "Run a filesystem check before mounting the device" +msgstr "" +"Execute a verificação do sistema de arquivos antes da montagem do dispositivo" + +msgid "Run filesystem check" +msgstr "Execute a verificação do sistema de arquivos " + +msgid "SHA256" +msgstr "SHA256" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" +"O SIXXS suporta somente TIC. Use o 6in4 para túneis estáticos usando o " +"protocolo IP 41 (RFC4213)" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "Identificador do SIXXS[/Identificador do Túnel]" + +msgid "SNR" +msgstr "SNR" + +msgid "SSH Access" +msgstr "Acesso SSH" + +msgid "SSH server address" +msgstr "Endereço do servidor SSH" + +msgid "SSH server port" +msgstr "Porta do servidor SSH" + +msgid "SSH username" +msgstr "Usuário do SSH" + +msgid "SSH-Keys" +msgstr "Chaves SSH" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "Salvar" + +msgid "Save & Apply" +msgstr "Salvar & Aplicar" + +msgid "Save & Apply" +msgstr "Save & Aplicar" + +msgid "Scan" +msgstr "Procurar" + +msgid "Scheduled Tasks" +msgstr "Tarefas Agendadas" + +msgid "Section added" +msgstr "Seção adicionada" + +msgid "Section removed" +msgstr "Seção removida" + +msgid "See \"mount\" manpage for details" +msgstr "Veja o manual (man) do comando \"mount\" para detalhes" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" +"Enviar requisições de eco do LCP no dado intervalo em segundos. Somente " +"efetivo em conjunto com o limite de falhas." + +msgid "Separate Clients" +msgstr "Isolar Clientes" + +msgid "Separate WDS" +msgstr "Separar WDS" + +msgid "Server Settings" +msgstr "Configurações do Servidor" + +msgid "Server password" +msgstr "Senha do servidor" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" +"Senha do servidor. Informe a senha para este túnel quando o nome do usuário " +"contiver o identificador do túnel" + +msgid "Server username" +msgstr "Usuário do servidor" + +msgid "Service Name" +msgstr "Nome do Serviço" + +msgid "Service Type" +msgstr "Tipo do Serviço" + +msgid "Services" +msgstr "Serviços" + +msgid "Set up Time Synchronization" +msgstr "Configurar a Sincronização do Horário" + +msgid "Setup DHCP Server" +msgstr "Configurar Servidor DHCP" + +msgid "Severely Errored Seconds (SES)" +msgstr "" +"Segundos com erro severos (SES)" + +msgid "Short GI" +msgstr "Intervalo de guarda curto" + +msgid "Show current backup file list" +msgstr "Mostra a lista atual de arquivos para a cópia de segurança" + +msgid "Shutdown this interface" +msgstr "Desligar esta interface" + +msgid "Shutdown this network" +msgstr "Desligar esta rede" + +msgid "Signal" +msgstr "Sinal" + +msgid "Signal Attenuation (SATN)" +msgstr "Atenuação do Sinal (SATN)" + +msgid "Signal:" +msgstr "Sinal:" + +msgid "Size" +msgstr "Tamanho" + +msgid "Size (.ipk)" +msgstr "Tamanho (.ipk)" + +msgid "Skip" +msgstr "Pular" + +msgid "Skip to content" +msgstr "Pular para o conteúdo" + +msgid "Skip to navigation" +msgstr "Pular para a navegação" + +msgid "Slot time" +msgstr "Intervalo de tempo" + +msgid "Software" +msgstr "Software" + +msgid "Software VLAN" +msgstr "VLAN em Software" + +msgid "Some fields are invalid, cannot save values!" +msgstr "Alguns campos estão inválidos e os valores não podem ser salvos!" + +msgid "Sorry, the object you requested was not found." +msgstr "Desculpe o objeto solicitado não foi encontrado" + +msgid "Sorry, the server encountered an unexpected error." +msgstr "Desculpe, o servidor encontrou um erro inesperado." + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" +"Sinto muito, não existe suporte para o sysupgrade. Uma nova imagem de " +"firmware deve ser gravada manualmente. Por favor, consulte a wiki para " +"instruções específicas da instalação deste dispositivo." + +msgid "Sort" +msgstr "Ordenar" + +msgid "Source" +msgstr "Origem" + +msgid "Source routing" +msgstr "Roteamento pela origem" + +msgid "Specifies the button state to handle" +msgstr "Especifica o estado do botão para ser tratado" + +msgid "Specifies the directory the device is attached to" +msgstr "Especifica o diretório que o dispositivo está conectado" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "Especifica a porta de escuta deste Dropbear" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" +"Especifica a quantidade máxima de requisições ARP falhadas antes de " +"considerar que um equipamento está morto" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" +"Especifica a quantidade máxima de segundos antes de considerar que um " +"equipamento está morto" + +msgid "Specify a TOS (Type of Service)." +msgstr "Especifique um Tipo de Serviço (TOS)" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" +"Especifica o tempo de vida (TTL) para os " +"pacotes encapsulados ao invés do padrão (64)." + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" +"Especifica a unidade máxima de transmissão (MTU) ao invés do valor padrão (1280 bytes)" + +msgid "Specify the secret encryption key here." +msgstr "Especifique a chave de cifragem secreta aqui." + +msgid "Start" +msgstr "Iniciar" + +msgid "Start priority" +msgstr "Prioridade de iniciação" + +msgid "Startup" +msgstr "Iniciação" + +msgid "Static IPv4 Routes" +msgstr "Rotas Estáticas IPv4" + +msgid "Static IPv6 Routes" +msgstr "Rotas Estáticas IPv6" + +msgid "Static Leases" +msgstr "Alocações Estáticas" + +msgid "Static Routes" +msgstr "Rotas Estáticas" + +msgid "Static WDS" +msgstr "WDS Estático" + +msgid "Static address" +msgstr "Endereço Estático" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" +"Alocações estáticas são usadas para definir um endereço IP fixo e nome " +"simbólico para os clientes do DHCP. Elas também são necessárias para " +"configurações não dinâmicas onde um computador com a alocação correspondente " +"é provido." + +msgid "Status" +msgstr "Estado" + +msgid "Stop" +msgstr "Parar" + +msgid "Strict order" +msgstr "Ordem Exata" + +msgid "Submit" +msgstr "Enviar" + +msgid "Suppress logging" +msgstr "Suprimir registros (log)" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "Suprimir registros (log) de operações rotineiras destes protocolos" + +msgid "Swap" +msgstr "Espaço de Troca (swap)" + +msgid "Swap Entry" +msgstr "Entrada do espaço de troca (Swap)" + +msgid "Switch" +msgstr "Switch" + +msgid "Switch %q" +msgstr "Switch %q" + +msgid "Switch %q (%s)" +msgstr "Switch %q (%s)" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" +"O Switch %q tem uma topologia desconhecida - as configurações de VLAN podem " +"não ser precisas." + +msgid "Switch VLAN" +msgstr "Switch VLAN" + +msgid "Switch protocol" +msgstr "Trocar o protocolo" + +msgid "Sync with browser" +msgstr "Sincronizar com o navegador" + +msgid "Synchronizing..." +msgstr "Sincronizando..." + +msgid "System" +msgstr "Sistema" + +msgid "System Log" +msgstr "Registo do Sistema" + +msgid "System Properties" +msgstr "Propriedades do Sistema" + +msgid "System log buffer size" +msgstr "Tamanho do buffer de registro do sistema" + +msgid "TCP:" +msgstr "TCP:" + +msgid "TFTP Settings" +msgstr "Configurações do TFTP" + +msgid "TFTP server root" +msgstr "Raiz do servidor TFTP" + +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "Taxa de TX" + +msgid "Table" +msgstr "Tabela" + +msgid "Target" +msgstr "Destino" + +msgid "Target network" +msgstr "Rede de destino" + +msgid "Terminate" +msgstr "Terminar" + +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" +"A seção da Configuração do Dispositivo engloba as configurações " +"físicas do rádio como canal, potência de transmissão ou seleção da antena. " +"Estas configurações são compartilhadas entre todas as redes sem fio (se o " +"hardware for capaz de utilizar múltiplas SSID). As configurações específicas " +"de cada rede, como cifragem ou modo de operação estão agrupadas na " +"Configuração da Interface." + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" +"O pacote libiwinfo-lua não está instalado. Você precisa instalar " +"este componente para ter uma configuração da rede sem fio funcional!" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" +"A configuração da atualização de pontas HE.net mudou. Você deve agora usar o " +"nome do usuário ao invés do identificador do usuário!" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "O endereço IPv4 ou o nome completo (FQDN) da ponta remota do túnel." + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" +"O prefixo IPv6 atribuído pelo provedor, geralmente termina com::" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" +"Os caracteres permitidos são: A-Z, a-z, 0-9 e _" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" +"O arquivo de configuração não pode ser carregado devido ao seguinte erro:" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" +"O arquivo do dispositivo de armazenamento ou da partição (ex: /dev/" +"sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"O sistema de arquivos que foi usado para formatar a unidade de armazenamento " +"(ex. ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" +"A imagem do firmware foi enviada. Abaixo estão a soma de verificação " +"(checksum) e o tamanho dom arquivo. Compare-os com o arquivo original para " +"garantir a integridade dos dados.
Clique em \"Proceder\" para iniciar " +"o procedimetno de gravação." + +msgid "The following changes have been committed" +msgstr "As seguintes mudanças foram aplicadas" + +msgid "The following changes have been reverted" +msgstr "As seguintes alterações foram revertidas" + +msgid "The following rules are currently active on this system." +msgstr "As seguintes regras estão atualmente ativas neste sistema." + +msgid "The given network name is not unique" +msgstr "O nome de rede informado não é único" + +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" +"Este equipamento não é capaz de utilizar SSID múltiplos e as configurações " +"existentes serão substituídas se você proceder." + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" +"O comprimento do prefixo IPv4 em bits, o restante é usado nos endereços IPv6." + +msgid "The length of the IPv6 prefix in bits" +msgstr "O comprimento do prefixo IPv6 em bits" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "O endereço IPv4 local sobre o qual o túnel será criado (opcional)." + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" +"As portas de rede neste dispositivo podem ser configuradas em diversas VLANs nas quais computadores em uma " +"mesma VLAN podem se comunicar " +"diretamente. VLANs são muitas " +"vezes utilizadas para separar diferentes segmentos de rede. Em geral, existe " +"uma porta para o enlace superior (uplink) e as demais portas são utilizadas " +"para a rede local." + +msgid "The selected protocol needs a device assigned" +msgstr "O protocolo selecionado necessita estar associado a um dispositivo" + +msgid "The submitted security token is invalid or already expired!" +msgstr "A chave eletrônica enviada é inválida ou já expirou!" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" +"O sistema está apagando agora a partição da configuração e irá reiniciar " +"quando terminado." + +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"O sistema está gravando o firmware para a flash.
NÃO DESLIGUE O " +"EQUIPAMENTO!
Espere alguns minutos até tentar reconectar. Dependendo " +"da sua configuração, pode ser necessário renovar o endereço do seu " +"computador para poder conectar novamente ao roteador." + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" +"O final do túnel está atrás de um NAT. Por padrão será desabilitado e " +"somente se aplica a AYIYA" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"A imagem carregada não contém um formato suportado. Confirme que você " +"escolheu uma imagem para a sua plataforma." + +msgid "There are no active leases." +msgstr "Não existem alocações ativas." + +msgid "There are no pending changes to apply!" +msgstr "Não existem modificações pendentes para aplicar!" + +msgid "There are no pending changes to revert!" +msgstr "Não existem modificações pendentes para reverter!" + +msgid "There are no pending changes!" +msgstr "Não existem modificações pendentes!" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" +"Ainda não existe um dispositivo associado. Por favor, associe um dispositivo " +"de rede na aba \"Configurações Físicas\"" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" +"Não existem uma senha definida para este roteador. Por favor, configure uma " +"senha para o root para proteger a interface WEB e habilitar o SSH." + +msgid "This IPv4 address of the relay" +msgstr "Este endereço IPv4 do repassar" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" +"Este arquivo deve conter linhas como 'server=/domain/1.2.3.4' ou " +"'server=1.2.3.4' para servidores DNS por domínio ou completos." + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" +"Esta é a lista dos padrões de expressão shell para casar com os arquivos e " +"diretórios incluídos durante a atualização do sistema. Arquivos modificados " +"em /etc/config/ e alguns outros arquivos de configuração são automaticamente " +"preservados." + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" +"Isto é a \"Update Key\" configurada para o túnel ou a senha da cpnta se não " +"tem uma \"Update Keu\" configurada" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" +"Este é o conteúdo do /etc/rc.local. Insira seus próprios comandos aqui " +"(antes de 'exit 0') para executá-los no final do processo de boot." + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" +"Este é o endereço da ponta local designado pelo agente de túnel. normalmente " +"ele termina com :2" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" +"Este é o único DHCP na rede local" + +msgid "This is the plain username for logging into the account" +msgstr "Este é o nome do usuário em para se autenticar na sua conta" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" +"Este é o prefixo roteado pelo agente do tunel para você usar com seus " +"clientes" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "Este é o sistema de agendamento de tarefas." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" +"Este é normalmente o endereço do PoP mais próximo operado pelo agente de túnel" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" +"Esta lista fornece uma visão geral sobre os processos em execução no sistema." + +msgid "This page allows the configuration of custom button actions" +msgstr "" +"Esta página permite a configuração de ações personalizadas para os botões" + +msgid "This page gives an overview over currently active network connections." +msgstr "Esta página fornece informações sobre as conexões de rede ativas." + +msgid "This section contains no values yet" +msgstr "Esta seção ainda não contêm valores" + +msgid "Time Synchronization" +msgstr "Sincronização de horário" + +msgid "Time Synchronization is not configured yet." +msgstr "A sincronização do horário ainda não está configurada." + +msgid "Timezone" +msgstr "Fuso Horário" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" +"Para recuperar os arquivos de configuração, você pode enviar aqui uma cópia " +"de segurança anterior." + +msgid "Tone" +msgstr "Tom" + +msgid "Total Available" +msgstr "Total Disponível" + +msgid "Traceroute" +msgstr "Traceroute" + +msgid "Traffic" +msgstr "Tráfego" + +msgid "Transfer" +msgstr "Transferências" + +msgid "Transmission Rate" +msgstr "Taxa de Transmissão" + +msgid "Transmit" +msgstr "Transmitir" + +msgid "Transmit Power" +msgstr "Potência de Transmissão" + +msgid "Transmitter Antenna" +msgstr "Antena de Transmissão" + +msgid "Trigger" +msgstr "Disparo" + +msgid "Trigger Mode" +msgstr "Modo de disparo" + +msgid "Tunnel ID" +msgstr "Identificador do Túnel" + +msgid "Tunnel Interface" +msgstr "Interface de Tunelamento" + +msgid "Tunnel Link" +msgstr "Enlace do túnel" + +msgid "Tunnel broker protocol" +msgstr "Protocolo do agente do túnel" + +msgid "Tunnel setup server" +msgstr "Servidor de configuração do túnel" + +msgid "Tunnel type" +msgstr "Tipo de túnel" + +msgid "Turbo Mode" +msgstr "Modo Turbo" + +msgid "Tx-Power" +msgstr "Potência de transmissão" + +msgid "Type" +msgstr "Tipo" + +msgid "UDP:" +msgstr "UDP:" + +msgid "UMTS only" +msgstr "UMTS somente" + +msgid "UMTS/GPRS/EV-DO" +msgstr "UMTS/GPRS/EV-DO" + +msgid "USB Device" +msgstr "Dispositivo USB" + +msgid "USB Ports" +msgstr "Portas USB" + +msgid "UUID" +msgstr "UUID" + +msgid "Unable to dispatch" +msgstr "Não é possível a expedição" + +msgid "Unavailable Seconds (UAS)" +msgstr "" +"Segundos de indisponibilidade (UAS)" + +msgid "Unknown" +msgstr "Desconhecido" + +msgid "Unknown Error, password not changed!" +msgstr "Erro Desconhecido, a senha não foi alterada!" + +msgid "Unmanaged" +msgstr "Não gerenciado" + +msgid "Unmount" +msgstr "Desmontar" + +msgid "Unsaved Changes" +msgstr "Alterações Não Salvas" + +msgid "Unsupported protocol type." +msgstr "Tipo de protocolo não suportado." + +msgid "Update lists" +msgstr "Atualizar listas" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" +"Envia uma imagem compatível do sistema para substituir o firmware em " +"execução. Marque \"Manter configurações\" para manter as configurações " +"atuais (requer uma imagem compatível)." + +msgid "Upload archive..." +msgstr "Enviar arquivo..." + +msgid "Uploaded File" +msgstr "Arquivo Carregado" + +msgid "Uptime" +msgstr "Tempo de atividade" + +msgid "Use /etc/ethers" +msgstr "Usar /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "Use o roteador do DHCP" + +msgid "Use DNS servers advertised by peer" +msgstr "Use os servidores DNS anunciados pelo parceiro" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "Usar códigos de países ISO/IEC 3166 alpha2." + +msgid "Use MTU on tunnel interface" +msgstr "" +"Use o MTU na interface do túnel" + +msgid "Use TTL on tunnel interface" +msgstr "Use TTL na interface do túnel" + +msgid "Use as external overlay (/overlay)" +msgstr "Use como uma sobreposição externa (/overlay)" + +msgid "Use as root filesystem (/)" +msgstr "Usar como o sistema de arquivos raiz (/)" + +msgid "Use broadcast flag" +msgstr "Use a marcação de broadcast" + +msgid "Use builtin IPv6-management" +msgstr "Use o gerenciamento do IPv6 embarcado" + +msgid "Use custom DNS servers" +msgstr "Use servidores DNS personalizados" + +msgid "Use default gateway" +msgstr "Use o roteador padrão" + +msgid "Use gateway metric" +msgstr "Use a métrica do roteador" + +msgid "Use routing table" +msgstr "Use a tabela de roteamento" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" +"Use o botão Adicionar para adicionar uma nova entrada de " +"atribuição. O endereço MAC-Address identifica o equipamento, o " +"endereço IPv4 especifica o endereço fixo para usar e o nome do " +"equipamento é designado como nome simbólico (DNS) para o equipamento " +"requisitante." + +msgid "Used" +msgstr "Usado" + +msgid "Used Key Slot" +msgstr "Posição da Chave Usada" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" +"Usado para dois diferentes propósitos: identificador do RADIUS NAS e do " +"802.11r R0KH. Não necessário com o WPA(2)-PSK normal." + +msgid "User certificate (PEM encoded)" +msgstr "Certificado do usuário (codificado em formato PEM)" + +msgid "User key (PEM encoded)" +msgstr "Chave do usuário (codificada em formato PEM)" + +msgid "Username" +msgstr "Usuário" + +msgid "VC-Mux" +msgstr "VC-Mux" + +msgid "VDSL" +msgstr "VDSL" + +msgid "VLANs on %q" +msgstr "VLANs em %q" + +msgid "VLANs on %q (%s)" +msgstr "VLANs em %q (%s)" + +msgid "VPN Local address" +msgstr "Endereço Local da VPN" + +msgid "VPN Local port" +msgstr "Porta Local da VPN" + +msgid "VPN Server" +msgstr "Servidor VPN" + +msgid "VPN Server port" +msgstr "Porta do Servidor VPN" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "Resumo digital SHA1 do certificado do servidor VPN" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "VPNC (VPN do CISCO 3000 (e outros))" + +msgid "Vendor" +msgstr "Fabricante" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "Classe do fabricante para enviar quando requisitar o DHCP" + +msgid "Verbose" +msgstr "Detalhado" + +msgid "Verbose logging by aiccu daemon" +msgstr "Habilite registros detalhados do serviço AICCU" + +msgid "Verify" +msgstr "Verificar" + +msgid "Version" +msgstr "Versão" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "WEP Sistema Aberto" + +msgid "WEP Shared Key" +msgstr "WEP Chave Compartilhada" + +msgid "WEP passphrase" +msgstr "WEP Senha" + +msgid "WMM Mode" +msgstr "Modo WMM" + +msgid "WPA passphrase" +msgstr "WPA Senha" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"A cifragem WPA requer a instalação do wpa_supplicant (para modo cliente) ou " +"do hostapd (para modo AP ou ad-hoc)." + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" +"Espere esta quantidade de segundos pela sincronia do NTP. Definindo como 0 " +"desabilita a espera (opcional)" + +msgid "Waiting for changes to be applied..." +msgstr "Esperando a aplicação das mudanças..." + +msgid "Waiting for command to complete..." +msgstr "Esperando o término do comando..." + +msgid "Waiting for device..." +msgstr "Esperando pelo dispositivo..." + +msgid "Warning" +msgstr "Atenção" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "Atenção: Existem mudanças não salvas que serão perdidas ao reiniciar!" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "Se deve criar uma rota padrão IPv6 sobre o túnel" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "Se deve rotear somente pacotes de prefixos delegados" + +msgid "Width" +msgstr "Largura" + +msgid "WireGuard VPN" +msgstr "VPN WireGuard" + +msgid "Wireless" +msgstr "Rede sem fio" + +msgid "Wireless Adapter" +msgstr "Dispositivo de Rede sem Fio" + +msgid "Wireless Network" +msgstr "Rede sem Fio" + +msgid "Wireless Overview" +msgstr "Visão Geral da Rede sem Fio" + +msgid "Wireless Security" +msgstr "Segurança da Rede sem Fio" + +msgid "Wireless is disabled or not associated" +msgstr "Rede sem fio está desabilitada ou não conectada" + +msgid "Wireless is restarting..." +msgstr "A rede sem fio está reiniciando..." + +msgid "Wireless network is disabled" +msgstr "A rede sem fio está desabilitada" + +msgid "Wireless network is enabled" +msgstr "A rede sem fio está habilitada" + +msgid "Wireless restarted" +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)" + +msgid "Write system log to file" +msgstr "Escrever registo do sistema (log) no arquivo" + +msgid "XR Support" +msgstr "Suporte a XR" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"Neste local, você pode ativar ou desativar os scripts de iniciação " +"instalados. As mudanças serão aplicadas após a reiniciação do equipamento." +"
Aviso: Se você desativar algum script de iniciação essencial " +"como por exemplo \"rede/network\", o dispositivo poderá tornar-se " +"inacessível!" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" +"Você precisa habilitar o JavaScript no seu navegador ou o LuCI não irá " +"funcionar corretamente." + +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 "" +"Seu Internet Explorer é muito velho para mostrar esta página corretamente. " +"Por favor, atualiza para, ao menos, a versão 7 ou use outro navegador como o " +"Firefox, Opera ou Safari." + +msgid "any" +msgstr "qualquer" + +msgid "auto" +msgstr "automático" + +msgid "baseT" +msgstr "baseT" + +msgid "bridged" +msgstr "em ponte" + +msgid "create:" +msgstr "criar" + +msgid "creates a bridge over specified interface(s)" +msgstr "cria uma ponte sobre determinada(s) interface(s)" + +msgid "dB" +msgstr "dB" + +msgid "dBm" +msgstr "dBm" + +msgid "disable" +msgstr "desativar" + +msgid "disabled" +msgstr "desabilitado" + +msgid "expired" +msgstr "expirado" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" +"Arquivo onde as alocações DHCP são armazenadas" + +msgid "forward" +msgstr "encaminhar" + +msgid "full-duplex" +msgstr "full-duplex" + +msgid "half-duplex" +msgstr "half-duplex" + +msgid "help" +msgstr "ajuda" + +msgid "hidden" +msgstr "ocultar" + +msgid "hybrid mode" +msgstr "Modo Híbrido" + +msgid "if target is a network" +msgstr "se o destino for uma rede" + +msgid "input" +msgstr "entrada" + +msgid "kB" +msgstr "kB" + +msgid "kB/s" +msgstr "kB/s" + +msgid "kbit/s" +msgstr "kbit/s" + +msgid "local DNS file" +msgstr "" +"Arquivo local de DNS" + +msgid "minimum 1280, maximum 1480" +msgstr "mínimo 1280, máximo 1480" + +msgid "minutes" +msgstr "minutos" + +# Is this yes/no or no like in no one? +msgid "no" +msgstr "não" + +msgid "no link" +msgstr "sem link" + +msgid "none" +msgstr "nenhum" + +msgid "not present" +msgstr "não presente " + +msgid "off" +msgstr "desligado" + +msgid "on" +msgstr "ligado" + +msgid "open" +msgstr "aberto" + +msgid "overlay" +msgstr "sobreposição" + +msgid "relay mode" +msgstr "modo retransmissor" + +msgid "routed" +msgstr "roteado" + +msgid "server mode" +msgstr "modo servidor" + +msgid "stateful-only" +msgstr "somente com estado" + +msgid "stateless" +msgstr "sem estado" + +msgid "stateless + stateful" +msgstr "sem estado + com estado" + +msgid "tagged" +msgstr "etiquetado" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "unidades de tempo (TUs / 1.024 ms) [1000-65535]" + +msgid "unknown" +msgstr "desconhecido" + +msgid "unlimited" +msgstr "ilimitado" + +msgid "unspecified" +msgstr "não especificado" + +msgid "unspecified -or- create:" +msgstr "não especificado -ou- criar:" + +msgid "untagged" +msgstr "não etiquetado" + +msgid "yes" +msgstr "sim" + +msgid "« Back" +msgstr "« Voltar" + +#~ msgid "" +#~ "Optional. Base64-encoded preshared key. Adds in an additional layer of " +#~ "symmetric-key cryptography for post-quantum resistance." +#~ msgstr "" +#~ "Opcional. Adiciona uma camada extra de cifragem simétrica para " +#~ "resistência pós quântica." + +#~ msgid "Required. Base64-encoded public key of peer." +#~ msgstr "Necessário. Chave Pública do parceiro codificada como Base64." + +#~ msgid "Leasetime" +#~ msgstr "Tempo de atribuição do DHCP" + +#~ msgid "Optional." +#~ msgstr "Opcional." + +#~ msgid "navigation Navigation" +#~ msgstr "navegação Navegação" + +#~ msgid "skiplink1 Skip to navigation" +#~ msgstr "skiplink1 Pular para a navegação" + +#~ msgid "skiplink2 Skip to content" +#~ msgstr "skiplink2 Pular para o conteúdo" + +#~ msgid "AuthGroup" +#~ msgstr "Grupo de Autenticação" + +#~ msgid "automatic" +#~ msgstr "automático" + +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "Uma rede adicional será criada se você deixar isto desmarcado." + +#~ msgid "Join Network: Settings" +#~ msgstr "Conectar à Rede: Configurações" + +#~ msgid "CPU" +#~ msgstr "CPU" + +#~ msgid "Port %d" +#~ msgstr "Porta %d" + +#~ msgid "Port %d is untagged in multiple VLANs!" +#~ msgstr "Porta %d está sem etiqueta para mútliplas VLANs!" + +#~ msgid "VLAN Interface" +#~ msgstr "Interface VLAN" diff --git a/luci-base/po/pt/base.po b/luci-base/po/pt/base.po new file mode 100644 index 000000000..1c022c83c --- /dev/null +++ b/luci-base/po/pt/base.po @@ -0,0 +1,3946 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-05-26 19:03+0200\n" +"PO-Revision-Date: 2013-09-22 18:50+0200\n" +"Last-Translator: Low \n" +"Language-Team: LANGUAGE \n" +"Language: pt\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Pootle 2.0.6\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(janela de %d minutos, intervalo de %d segundos)" + +msgid "(%s available)" +msgstr "(%s disponível)" + +msgid "(empty)" +msgstr "(vazio)" + +msgid "(no interfaces attached)" +msgstr "(não existem interfaces ligadas)" + +msgid "-- Additional Field --" +msgstr "-- Campo Adicional --" + +msgid "-- Please choose --" +msgstr "-- Por favor escolha --" + +msgid "-- custom --" +msgstr "-- personalizado --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "Carga de 1 Minuto:" + +msgid "15 Minute Load:" +msgstr "Carga de 15 minutos:" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "Carga 5 Minutos:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "" +"BSSID" + +msgid "DNS query port" +msgstr "" +"Porta de consulta de DNS" + +msgid "DNS server port" +msgstr "" +"Porta do servidorDNS" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" +"Os servidores de DNS " +"serão consultados pela ordem no ficheiro resolv" + +msgid "ESSID" +msgstr "" +"ESSID" + +msgid "IPv4-Address" +msgstr "Endereço IPv4" + +msgid "IPv4-Gateway" +msgstr "Gateway IPv4" + +msgid "IPv4-Netmask" +msgstr "" +"Máscara de rede IPv4" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"IPv6-Endereço ou Rede " +"(CIDR)" + +msgid "IPv6-Gateway" +msgstr "Gateway IPv6" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "Configuração do LED" + +msgid "LED Name" +msgstr "Nome da LED" + +msgid "MAC-Address" +msgstr "Endereço MAC" + +msgid "" +"Max. DHCP leases" +msgstr "" +"Max. de concessõesDHCP" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"Tamanho Max. do pacote EDNS0 " + +msgid "Max. concurrent queries" +msgstr "Max. consultas concorrentes" + +msgid "%s - %s" +msgstr "%s - %s" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "Suporte AR" + +msgid "ARP retry threshold" +msgstr "Limiar de tentativas ARP" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "Bridges ATM" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "Identificador Canais Virtuais ATM (VCI)" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "Identificador de Caminho Virtual ATM (VPI)" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"As bridges ATM expõem o encapsulamento ethernet em ligações AAL5 como uma " +"interface de Rede Virtual Linux que pode ser usada em conjugação com o DHCP " +"ou PPP para marcar para a rede ISP." + +msgid "ATM device number" +msgstr "Número de Dispositivo ATM" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "Concentrador de Acesso" + +msgid "Access Point" +msgstr "Access Point (AP)" + +msgid "Action" +msgstr "Acção" + +msgid "Actions" +msgstr "Acções" + +msgid "Activate this network" +msgstr "Ativar esta rede" + +msgid "Active IPv4-Routes" +msgstr "" +"Rotas-IPv4 ativas" + +msgid "Active IPv6-Routes" +msgstr "" +"Rotas-IPv6 ativas" + +msgid "Active Connections" +msgstr "Ligações Ativas" + +msgid "Active DHCP Leases" +msgstr "Concessões DHCP Ativas" + +msgid "Active DHCPv6 Leases" +msgstr "Concessões DHCPv6 Ativas" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc" + +msgid "Add" +msgstr "Adicionar" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "" +"Adicionar um sufixo de domínio local aos nomes servidos dos ficheiros de " +"hosts" + +msgid "Add new interface..." +msgstr "Adicionar uma nova interface..." + +msgid "Additional Hosts files" +msgstr "Ficheiro Adicional de Hosts" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "Endereço" + +msgid "Address to access local relay bridge" +msgstr "" + +msgid "Administration" +msgstr "Administração" + +msgid "Advanced Settings" +msgstr "Definições Avançadas" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "Alerta" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "" +"Permitir autenticação SSH por senha" + +msgid "Allow all except listed" +msgstr "Permitir todos, excepto os listados" + +msgid "Allow listed only" +msgstr "Permitir somente os listados" + +msgid "Allow localhost" +msgstr "Permitir localhost" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" +"Permitir que hosts remotos se conectem às portas encaminhadas do SSH local" + +msgid "Allow root logins with password" +msgstr "Permitir o login como root só com password" + +msgid "Allow the root user to login with password" +msgstr "Permitir que o utilizador root faça login só com password" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" +"Permitir respostas a montante na gama 127.0.0.1/8, p.e. para serviços RBL" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "Antena 1" + +msgid "Antenna 2" +msgstr "Antena 2" + +msgid "Antenna Configuration" +msgstr "Configuração das Antenas" + +msgid "Any zone" +msgstr "Qualquer zona" + +msgid "Apply" +msgstr "Aplicar" + +msgid "Applying changes" +msgstr "A aplicar as alterações" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "Atribuir interfaces..." + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "Estações Associadas" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Controlador Wireless Atheros 802.11%s" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "Autenticação" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "Autoritário" + +msgid "Authorization Required" +msgstr "Autorização Requerida" + +msgid "Auto Refresh" +msgstr "Actualização Automática" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "Disponível" + +msgid "Available packages" +msgstr "Pacotes disponíveis" + +msgid "Average:" +msgstr "Média:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "Voltar" + +msgid "Back to Overview" +msgstr "Voltar à Visão Global" + +msgid "Back to configuration" +msgstr "Voltar à configuração" + +msgid "Back to overview" +msgstr "Voltar à vista global" + +msgid "Back to scan results" +msgstr "Voltar aos resultados do scan" + +msgid "Background Scan" +msgstr "Procurar em Segundo Plano" + +msgid "Backup / Flash Firmware" +msgstr "Backup / Flashar Firmware" + +msgid "Backup / Restore" +msgstr "Backup / Restauração" + +msgid "Backup file list" +msgstr "Lista de ficheiros para backup" + +msgid "Bad address specified!" +msgstr "Endereço mal especificado!" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"Abaixo está a lista de ficheiros para backup. Este consiste nos ficheiros de " +"configuração alterados e marcados pelo opkg, ficheiros base essenciais e " +"padrões de backup definidos pelo utilizador." + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "Taxa de bits" + +msgid "Bogus NX Domain Override" +msgstr "" + +msgid "Bridge" +msgstr "Bridge" + +msgid "Bridge interfaces" +msgstr "Ativar brigde nas interfaces" + +msgid "Bridge unit number" +msgstr "Número de unidade da bridge" + +msgid "Bring up on boot" +msgstr "Levantar no arranque" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "Controlador Wireless Broadcom 802.11%s" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "Controlador Wireless Broadcom BCM%04x 802.11" + +msgid "Buffered" +msgstr "" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "Botões" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "Uso da CPU (%)" + +msgid "Cancel" +msgstr "Cancelar" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "Cadeia" + +msgid "Changes" +msgstr "Alterações" + +msgid "Changes applied." +msgstr "Alterações aplicadas." + +msgid "Changes the administrator password for accessing the device" +msgstr "Altera a password de administrador para acesso ao dispositivo" + +msgid "Channel" +msgstr "Canal" + +msgid "Check" +msgstr "Verificar" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "Checksum" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"Escolha a zona de firewall que pretende associar a esta interface. Escolha " +"não especificado para remover a interface da zona associada ou " +"coloque em branco o campo criar para definir a nova zona e ligar-" +"lhe a interface." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" +"Escolha a rede(s) à(s) qual(is) deseja ligar esta interface wireless ou " +"preencha o campo criar para definir a nova rede." + +msgid "Cipher" +msgstr "Cifra" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"Clique em \"Gerar arquivo\" para descarregar o ficheiro tar com os actuais " +"ficheiros de configuração. Para voltar as definições originais do firmware, " +"clique \" Fazer reset\" (só possível com imagens squashfs)" + +msgid "Client" +msgstr "Cliente" + +msgid "Client ID to send when requesting DHCP" +msgstr "ID de cliente a enviar para pedidos de DHCP" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" +"Fechar ligação inativa após um dado tempo em segundos, usando 0 a ligação é " +"persistente" + +msgid "Close list..." +msgstr "Fechar lista..." + +msgid "Collecting data..." +msgstr "A obter dados..." + +msgid "Command" +msgstr "Comando" + +msgid "Common Configuration" +msgstr "Configuração comum" + +msgid "Compression" +msgstr "Compressão" + +msgid "Configuration" +msgstr "Configuração" + +msgid "Configuration applied." +msgstr "Configuração aplicada." + +msgid "Configuration files will be kept." +msgstr "Os ficheiros de configuração serão mantidos." + +msgid "Confirmation" +msgstr "Confirmação" + +msgid "Connect" +msgstr "Ligar" + +msgid "Connected" +msgstr "Ligado" + +msgid "Connection Limit" +msgstr "Limite de Ligações" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "Ligações" + +msgid "Country" +msgstr "País" + +msgid "Country Code" +msgstr "Código do País" + +msgid "Cover the following interface" +msgstr "Abranger a seguinte interface" + +msgid "Cover the following interfaces" +msgstr "Abranger as seguintes interfaces" + +msgid "Create / Assign firewall-zone" +msgstr "Criar / Atribuir a uma zona de firewall" + +msgid "Create Interface" +msgstr "Criar interface" + +msgid "Create a bridge over multiple interfaces" +msgstr "Criar uma bridge entre múltiplas interfaces " + +msgid "Critical" +msgstr "Critico" + +msgid "Cron Log Level" +msgstr "Nível de Log do Cron" + +msgid "Custom Interface" +msgstr "Interface Personalizada" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"Customiza o comportamento dos LEDs, se possível." + +msgid "DHCP Leases" +msgstr "Concessões DHCP" + +msgid "DHCP Server" +msgstr "Servidor DHCP" + +msgid "DHCP and DNS" +msgstr "DHCP e DNS" + +msgid "DHCP client" +msgstr "Cliente DHCP" + +msgid "DHCP-Options" +msgstr "Opções DHCP" + +msgid "DHCPv6 Leases" +msgstr "Concessões DHCPv6" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "Encaminhamentos DNS" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "DUID" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "Depurar" + +msgid "Default %d" +msgstr "" + +msgid "Default gateway" +msgstr "Gateway predefinido" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "Estado predefinido" + +msgid "Define a name for this network." +msgstr "Definir um nome para esta rede." + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"Definir opções adicionais de DHCP, por exemplo " +"\"6,192.168.2.1,192.168.2.2\" informa os clientes de diferentes " +"servidores DNS." + +msgid "Delete" +msgstr "Apagar" + +msgid "Delete this network" +msgstr "Apagar esta rede" + +msgid "Description" +msgstr "Descrição" + +msgid "Design" +msgstr "Tema" + +msgid "Destination" +msgstr "Destino" + +msgid "Device" +msgstr "Dispositivo" + +msgid "Device Configuration" +msgstr "Configuração do Dispositivo" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "Diagnósticos" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "Directório" + +msgid "Disable" +msgstr "Desativar" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +"Desativar DHCP para esta interface." + +msgid "Disable DNS setup" +msgstr "Desativar configuração de DNS" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "Desativar temporizador de HW-Beacon" + +msgid "Disabled" +msgstr "Desativado" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "Descartar respostas RFC1918 a montante" + +msgid "Displaying only packages containing" +msgstr "Mostrar somente pacotes contendo" + +msgid "Distance Optimization" +msgstr "Optimização de Distância" + +msgid "Distance to farthest network member in meters." +msgstr "Distância para o último host da rede em metros." + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "Diversidade" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Dnsmasq é um servidor combinado de DHCP e DNS para firewalls NAT" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" +"Não colocar em cache as respostas negativas, p.e. para dominios inexistentes" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" +"Não encaminhar pedidos que não possam ser respondidos por servidor públicos " +"de nomes" + +msgid "Do not forward reverse lookups for local networks" +msgstr "Não encaminhar lookups reversos para as redes locais" + +msgid "Do not send probe responses" +msgstr "Não enviar respostas a sondas" + +msgid "Domain required" +msgstr "Requerer domínio" + +msgid "Domain whitelist" +msgstr "Lista Branca do Dominio" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" +"Não encaminhar consultas DNS sem o nome do DNS" + +msgid "Download and install package" +msgstr "Descarregar e instalar pacote" + +msgid "Download backup" +msgstr "Descarregar backup" + +msgid "Dropbear Instance" +msgstr "Instância do Dropbear" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear oferece um acesso shell seguro à rede SSH e um servidor SCP integrado" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" +"DHCP " +"Dinâmico" + +msgid "Dynamic tunnel" +msgstr "Túnel dinâmico" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" +"Alocar dinamicamente endereços DHCP para clientes. Se desativado, só os " +"clientes com reservas estáticas serão servidos." + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "Metodo-EAP" + +msgid "Edit" +msgstr "Editar" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "Editar esta interface" + +msgid "Edit this network" +msgstr "Editar esta rede" + +msgid "Emergency" +msgstr "Emergência" + +msgid "Enable" +msgstr "Ativar" + +msgid "Enable STP" +msgstr "Ativar STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "Ativar a atualização dinâmica de ponto final HE.net" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "Ativar a negociação IPv6 no link PPP" + +msgid "Enable Jumbo Frame passthrough" +msgstr "Ativar a passagem de Jumbo Frames" + +msgid "Enable NTP client" +msgstr "Ativar o cliente NTP" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "Ativar o servidor TFTP" + +msgid "Enable VLAN functionality" +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" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "Ativar este mount" + +msgid "Enable this swap" +msgstr "Ativar esta swap" + +msgid "Enable/Disable" +msgstr "Ativar/Desativar" + +msgid "Enabled" +msgstr "Ativado" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "Ativa o Spanning Tree nesta bridge" + +msgid "Encapsulation mode" +msgstr "Modo de encapsulamento" + +msgid "Encryption" +msgstr "Encriptação" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "A apagar..." + +msgid "Error" +msgstr "Erro" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "Adaptador Ethernet" + +msgid "Ethernet Switch" +msgstr "Switch Ethernet" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "Expandir hosts" + +msgid "Expires" +msgstr "Expira" + +#, fuzzy +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" +"O tempo de caducidade dos endereços concessionados, minimo de 2 minutos " +"(2m)." + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "Servidor externo de logs de sistema" + +msgid "External system log server port" +msgstr "Porta do Servidor externo de logs de sistema" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "Frames Rápidas" + +msgid "File" +msgstr "Ficheiro" + +msgid "Filename of the boot image advertised to clients" +msgstr "Nome de ficheiro da imagem de boot a anunciar aos clientes" + +msgid "Filesystem" +msgstr "Sistema de ficheiros" + +msgid "Filter" +msgstr "Filtro" + +msgid "Filter private" +msgstr "Filtrar endereços privados" + +msgid "Filter useless" +msgstr "Filtro inútil" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "Procurar e ligar rede" + +msgid "Find package" +msgstr "Procurar pacote" + +msgid "Finish" +msgstr "Terminar" + +msgid "Firewall" +msgstr "Firewall" + +msgid "Firewall Settings" +msgstr "Definições da Firewall" + +msgid "Firewall Status" +msgstr "Estado da Firewall" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "Versão do Firmware" + +msgid "Fixed source port for outbound DNS queries" +msgstr "Porta fixa de origem para saída das consultas DNS" + +msgid "Flash Firmware" +msgstr "Gravar Firmware" + +msgid "Flash image..." +msgstr "Flashar imagem..." + +msgid "Flash new firmware image" +msgstr "Flashar nova imagem do firmware" + +msgid "Flash operations" +msgstr "" + +msgid "Flashing..." +msgstr "A programar...." + +msgid "Force" +msgstr "Forçar" + +msgid "Force CCMP (AES)" +msgstr "Forçar CCMP (AES)" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "Forçar DHCP nesta rede mesmo se outro servidor for detectado." + +msgid "Force TKIP" +msgstr "Forçar TKIP" + +msgid "Force TKIP and CCMP (AES)" +msgstr "Forçar TKIP e CCMP (AES)" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "Encaminhar tráfego DHCP" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "Encaminhar trafego de broadcast" + +msgid "Forwarding mode" +msgstr "Modo de encaminhamento" + +msgid "Fragmentation Threshold" +msgstr "Margem de Fragmentação" + +msgid "Frame Bursting" +msgstr "Frame Bursting" + +msgid "Free" +msgstr "Livre" + +msgid "Free space" +msgstr "Espaço livre" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "GHz" + +msgid "GPRS only" +msgstr "Só GPRS" + +msgid "Gateway" +msgstr "Gateway" + +msgid "Gateway ports" +msgstr "Portas de gateway" + +msgid "General Settings" +msgstr "Definições Gerais" + +msgid "General Setup" +msgstr "Configuração Geral" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "Gerar arquivo" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "Controlador Wireless Genérico 802.11%s" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "" +"A confirmação de password não corresponde, a password não foi alterada!" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "Ir para a configuração da password" + +msgid "Go to relevant configuration page" +msgstr "Ir para a página respectiva de configuração" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "Password HE.net" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "Handler" + +msgid "Hang Up" +msgstr "Suspender" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"Aqui pode configurar os aspectos básicos do seu equipamento, como o nome do " +"host ou o fuso horário." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" +"Aqui pode colar as chaves SSH (uma por linha) para a autenticação SSH por " +"chave pública." + +msgid "Hermes 802.11b Wireless Controller" +msgstr "Controlador Wireless Hermes 802.11b" + +msgid "Hide ESSID" +msgstr "" +"Ocultar ESSID" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "Entradas de hosts" + +msgid "Host expiry timeout" +msgstr "" + +msgid "Host-IP or Network" +msgstr "" +"IP do host ou rede" + +msgid "Hostname" +msgstr "Hostname" + +msgid "Hostname to send when requesting DHCP" +msgstr "Hostname a enviar quando houver solicitação por DHCP" + +msgid "Hostnames" +msgstr "Hostnames" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "Endereço IP" + +msgid "IPv4" +msgstr "IPv4" + +msgid "IPv4 Firewall" +msgstr "Firewall IPv4" + +msgid "IPv4 WAN Status" +msgstr "Estado WAN IPv4" + +msgid "IPv4 address" +msgstr "Endereço IPv4" + +msgid "IPv4 and IPv6" +msgstr "IPv4 e IPv6" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "Broadcast IPv4" + +msgid "IPv4 gateway" +msgstr "Gateway IPv4" + +msgid "IPv4 netmask" +msgstr "Máscara IPv4" + +msgid "IPv4 only" +msgstr "Só IPv4" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "Comprimento do prefixo IPv4" + +msgid "IPv4-Address" +msgstr "Endereço-IPv4" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "Firewall IPv6" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "Estado WAN IPv6" + +msgid "IPv6 address" +msgstr "Endereço IPv6" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "Gateway IPv6" + +msgid "IPv6 only" +msgstr "Só IPv6" + +msgid "IPv6 prefix" +msgstr "Prefixo IPv6" + +msgid "IPv6 prefix length" +msgstr "Comprimento do prefixo IPv6" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "Endereço-IPv6" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "IPv6-em-IPv4 (RFC4213)" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "IPv6-sobre-IPv4 (6rd)" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "IPv6-sobre-IPv4 (6to4)" + +msgid "Identity" +msgstr "Identidade" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" + +msgid "If unchecked, no default route is configured" +msgstr "Se desmarcado, não é configurada uma rota pré-definida" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "Se desmarcado, os endereços servidor DNS anunciados são ignorados " + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"Se a memória física for insuficiente, os dados poderão ser trocados " +"temporariamente para um dispositivo swap, resultando em uma maior quantidade " +"de memória utilizável RAM. Esteja ciente de que a troca de dados (swap) é um processo muito " +"lento pois o dispositivo swap não pode ser acedido com um nível elevado de " +"memória RAM." + +msgid "Ignore /etc/hosts" +msgstr "Ignorar /etc/hosts" + +msgid "Ignore interface" +msgstr "Ignorar interface" + +msgid "Ignore resolve file" +msgstr "Ignorar ficheiro resolv.conf" + +msgid "Image" +msgstr "Imagem" + +msgid "In" +msgstr "Entrada" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "Tempo de inatividade" + +msgid "Inbound:" +msgstr "Entrada:" + +msgid "Info" +msgstr "Info" + +msgid "Initscript" +msgstr "Script de inicialização" + +msgid "Initscripts" +msgstr "Scripts de Inicialização" + +msgid "Install" +msgstr "Instalar" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "Instalar pacote %q" + +msgid "Install protocol extensions..." +msgstr "Instalar extensões do protocolo..." + +msgid "Installed packages" +msgstr "Instalar pacotes" + +msgid "Interface" +msgstr "Interface" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "Configuração da Interface" + +msgid "Interface Overview" +msgstr "Visão Geral da Interface" + +msgid "Interface is reconnecting..." +msgstr "A interface está a religar..." + +msgid "Interface is shutting down..." +msgstr "A interface está a desligar..." + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "Interface não presente ou ainda não ligada." + +msgid "Interface reconnected" +msgstr "Interface religada" + +msgid "Interface shut down" +msgstr "Desligar interface" + +msgid "Interfaces" +msgstr "Interfaces" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "Erro Interno do Servidor" + +msgid "Invalid" +msgstr "Valor inválido" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" +"O ID de VLAN fornecido é inválido! Só os IDs entre %d e %d são permitidos." + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "O ID de VLAN fornecido é inválido! Só os IDs únicos são permitidos." + +msgid "Invalid username and/or password! Please try again." +msgstr "Username inválido e/ou a password! Por favor, tente novamente." + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"A imagem que está a tentar carregar aparenta não caber na flash do " +"equipamento. Por favor verifique o ficheiro de imagem." + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "É necessário JavaScript!" + +msgid "Join Network" +msgstr "Associar Rede" + +msgid "Join Network: Wireless Scan" +msgstr "Associar Rede: Procurar Redes Wireless" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "Manter definições" + +msgid "Kernel Log" +msgstr "Registo do Kernel" + +msgid "Kernel Version" +msgstr "Versão do Kernel" + +msgid "Key" +msgstr "Chave" + +msgid "Key #%d" +msgstr "Chave #%d" + +msgid "Kill" +msgstr "Matar" + +msgid "L2TP" +msgstr "L2TP" + +msgid "L2TP Server" +msgstr "Servidor L2TP" + +msgid "LCP echo failure threshold" +msgstr "" + +msgid "LCP echo interval" +msgstr "Intervalo de echo LCP" + +msgid "LLC" +msgstr "LLC" + +msgid "Label" +msgstr "Etiqueta" + +msgid "Language" +msgstr "Idioma" + +msgid "Language and Style" +msgstr "Língua e Tema" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "Tempo de validade da concessão" + +msgid "Leasefile" +msgstr "Ficheiro de concessões" + +msgid "Leasetime remaining" +msgstr "Tempo de atribuição restante" + +msgid "Leave empty to autodetect" +msgstr "Deixar em branco para auto-detecção" + +msgid "Leave empty to use the current WAN address" +msgstr "Deixar em branco para usar o endereço WAN actual" + +msgid "Legend:" +msgstr "Legenda:" + +msgid "Limit" +msgstr "Limite" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "Link Ativo" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" +"Lista de servidores DNS para " +"onde encaminhar os pedidos" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "Lista de dominios que permitem respostas RFC1918 para" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" +"Escutar apenas na interface fornecida ou, se não especificada, em todas" + +msgid "Listening port for inbound DNS queries" +msgstr "Porta de escuta para entrada de consultas DNS" + +msgid "Load" +msgstr "Carga" + +msgid "Load Average" +msgstr "Carga Média" + +msgid "Loading" +msgstr "A carregar" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "Endereço IPv4 Local" + +msgid "Local IPv6 address" +msgstr "Endereço IPv6 Local" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "Arranque Local" + +msgid "Local Time" +msgstr "Hora Local" + +msgid "Local domain" +msgstr "Domínio local" + +#, fuzzy +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" +"Especificação de dominio local. Os nomes que correspondam a este dominio " +"nunca são encaminhados e resolvidos do DHCP ou do ficheiro de hosts" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" +"Sufixos de dominio local a juntar aos nomes DHCP e às entradas do ficheiro " +"de hosts" + +msgid "Local server" +msgstr "Servidor local" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" + +msgid "Localise queries" +msgstr "Localizar consultas" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "Nível de output do log" + +msgid "Log queries" +msgstr "Registo das consultas" + +msgid "Logging" +msgstr "" + +msgid "Login" +msgstr "Login" + +msgid "Logout" +msgstr "Logout" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "" + +msgid "MAC-Address" +msgstr "Endereço-MAC" + +msgid "MAC-Address Filter" +msgstr "Filtro de Endereço-MAC" + +msgid "MAC-Filter" +msgstr "Filtro-MAC" + +msgid "MAC-List" +msgstr "Lista-MAC" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "MB/s" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "MHz" + +msgid "MTU" +msgstr "MTU" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "Taxa Máxima" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "Número máximo permitido de concessões DHCP ativas" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "Número máximo permitido de consultas DNS permitidas" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "Número máximo de segundos a esperar pelo modem para ficar pronto" + +msgid "Maximum hold time" +msgstr "Tempo máximo de espera" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "Número máximo de endereços concessionados." + +msgid "Mbit/s" +msgstr "Mbit/s" + +msgid "Memory" +msgstr "Memória" + +msgid "Memory usage (%)" +msgstr "Uso de memória (%)" + +msgid "Metric" +msgstr "Métrica" + +msgid "Minimum Rate" +msgstr "Taxa Mínima" + +msgid "Minimum hold time" +msgstr "Tempo de retenção mínimo" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "Falta a extensão de protocolo para o protocolo %q" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "Modo" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "Dispositivo do modem" + +msgid "Modem init timeout" +msgstr "" + +msgid "Monitor" +msgstr "Monitor" + +msgid "Mount Entry" +msgstr "Montar Entrada" + +msgid "Mount Point" +msgstr "Ponto de Montagem" + +msgid "Mount Points" +msgstr "Pontos de Montagem" + +msgid "Mount Points - Mount Entry" +msgstr "" + +msgid "Mount Points - Swap Entry" +msgstr "" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"Pontos de montagem definem em que ponto um dispositivo de memória será " +"anexado ao sistema de arquivos" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "" + +msgid "Mount point" +msgstr "Ponto de montagem" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "Sistemas de arquivos montados" + +msgid "Move down" +msgstr "Subir" + +msgid "Move up" +msgstr "Descer" + +msgid "Multicast Rate" +msgstr "Taxa de Multicast" + +msgid "Multicast address" +msgstr "Endereço de multicast" + +msgid "NAS ID" +msgstr "NAS ID" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "Candidatos a servidor NTP" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "Nome" + +msgid "Name of the new interface" +msgstr "Nome da nova interface" + +msgid "Name of the new network" +msgstr "Nome da nova rede" + +msgid "Navigation" +msgstr "Navegação" + +msgid "Netmask" +msgstr "Mascara de rede" + +msgid "Network" +msgstr "Rede" + +msgid "Network Utilities" +msgstr "Ferramentas de Rede" + +msgid "Network boot image" +msgstr "Imagem de arranque via rede" + +msgid "Network without interfaces." +msgstr "Rede sem interfaces." + +msgid "Next »" +msgstr "Seguinte »" + +msgid "No DHCP Server configured for this interface" +msgstr "Sem Servidor DHCP configurado nesta interface" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "Tabela sem chains" + +msgid "No files found" +msgstr "Não foram encontrados ficheiros" + +msgid "No information available" +msgstr "Sem informação disponível" + +msgid "No negative cache" +msgstr "Sem cache negativa" + +msgid "No network configured on this device" +msgstr "Nenhuma rede configurada no dispositivo" + +msgid "No network name specified" +msgstr "Nome de rede não especificado" + +msgid "No package lists available" +msgstr "Não há listas de pacotes disponiveis" + +msgid "No password set!" +msgstr "Sem password definida!" + +msgid "No rules in this chain" +msgstr "Sem regras nesta cadeia" + +msgid "No zone assigned" +msgstr "Sem zona atribuída" + +msgid "Noise" +msgstr "Ruído" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "Ruído:" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "Nenhum" + +msgid "Normal" +msgstr "Normal" + +msgid "Not Found" +msgstr "Não encontrado" + +msgid "Not associated" +msgstr "Não associado" + +msgid "Not connected" +msgstr "Não ligado" + +msgid "Note: Configuration files will be erased." +msgstr "Nota: Os ficheiros de configuração serão apagados." + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "Reparo" + +msgid "Nslookup" +msgstr "Nslookup" + +msgid "OK" +msgstr "OK" + +msgid "OPKG-Configuration" +msgstr "Configuração-OPKG" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "Atraso do Off-State" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"Nesta página pode configurar as interfaces de rede. Pode ter várias " +"interfaces do tipo bridge, assinalando o campo \"interfaces bridge\" e " +"inserir os nomes de várias interfaces de rede separadas por espaços. Pode " +"também usar a notação para VLAN " +"INTERFACE.VLANNR (ex.: " +"eth0.1)." + +msgid "On-State Delay" +msgstr "Atraso do On-State" + +msgid "One of hostname or mac address must be specified!" +msgstr "Um nome de host ou endereço MAC deve ser especificado!" + +msgid "One or more fields contain invalid values!" +msgstr "Um ou mais campos contêm valores inválidos!" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "Um ou mais campos obrigatórios não têm valores!" + +msgid "Open list..." +msgstr "Abrir lista..." + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "Opção alterada" + +msgid "Option removed" +msgstr "Opção removida" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "Opções" + +msgid "Other:" +msgstr "Outro:" + +msgid "Out" +msgstr "Saída" + +msgid "Outbound:" +msgstr "Saída:" + +msgid "Outdoor Channels" +msgstr "Canais de Outdoor" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "" + +msgid "Override MTU" +msgstr "" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" + +msgid "Override the table used for internal routes" +msgstr "" + +msgid "Overview" +msgstr "Visão Geral" + +msgid "Owner" +msgstr "Dono" + +msgid "PAP/CHAP password" +msgstr "Password PAP/CHAP" + +msgid "PAP/CHAP username" +msgstr "Utilizador PAP/CHAP" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "PIN" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "PPP" + +msgid "PPPoA Encapsulation" +msgstr "Encapsulamento PPPoA " + +msgid "PPPoATM" +msgstr "PPPoATM" + +msgid "PPPoE" +msgstr "PPPoE" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "PPtp" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "O pacote libiwinfo é necessário!" + +msgid "Package lists are older than 24 hours" +msgstr "As listas de pacotes têm mais de 24 horas" + +msgid "Package name" +msgstr "Nome do pacote" + +msgid "Packets" +msgstr "Pacotes" + +msgid "Part of zone %q" +msgstr "Parte da zona %q" + +msgid "Password" +msgstr "Senha" + +msgid "Password authentication" +msgstr "Autenticação por senha" + +msgid "Password of Private Key" +msgstr "Senha da Chave Privada" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "Password alterada com sucesso!" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "Directorio do Certificado CA" + +msgid "Path to Client-Certificate" +msgstr "Caminho para o Certificado de Cliente" + +msgid "Path to Private Key" +msgstr "Caminho da Chave Privada" + +msgid "Path to executable which handles the button event" +msgstr "Caminho do executável que lida com o botão de eventos" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "Pico:" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "Executar reinicialização" + +msgid "Perform reset" +msgstr "Executar reset" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "" + +msgid "Physical Settings" +msgstr "Definições Físicas" + +msgid "Ping" +msgstr "Ping" + +msgid "Pkts." +msgstr "Pkts." + +msgid "Please enter your username and password." +msgstr "Insira o seu username e password." + +msgid "Policy" +msgstr "Política" + +msgid "Port" +msgstr "Porta" + +msgid "Port status:" +msgstr "Estado da porta:" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "Impede a comunicação cliente-a-cliente" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "Controlador Wireless Prism2/2.5/3 802.11b" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "Proceder" + +msgid "Processes" +msgstr "Processos" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "Protocolo" + +msgid "Protocol" +msgstr "Protocolo" + +msgid "Protocol family" +msgstr "Família do protocolo" + +msgid "Protocol of the new interface" +msgstr "Protocolo da nova interface" + +msgid "Protocol support is not installed" +msgstr "O protocolo suportado não está instalado" + +msgid "Provide NTP server" +msgstr "" + +msgid "Provide new network" +msgstr "" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "Pseudo Ad-Hoc (ahdemo)" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "Qualidade" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "RTS/CTS Threshold" + +msgid "RX" +msgstr "RX" + +msgid "RX Rate" +msgstr "Taxa RX" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "Controlador Wireless RaLink 802.11%s" + +msgid "Radius-Accounting-Port" +msgstr "Porta-Conta-Radius" + +msgid "Radius-Accounting-Secret" +msgstr "Segredo-Conta-Radius" + +msgid "Radius-Accounting-Server" +msgstr "Servidor-Conta-Radius" + +msgid "Radius-Authentication-Port" +msgstr "Porta-Autenticação-Radius" + +msgid "Radius-Authentication-Secret" +msgstr "Segredo-Autenticação-Radius" + +msgid "Radius-Authentication-Server" +msgstr "Servidor-Autenticação-Radius" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"Ler /etc/ethers para configurar o Servidor-DHCP" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" +"Deseja mesmo apagar esta interface? A eliminação não poder desfeita!\n" +"Pode perde a ligação ao dispositivo, caso esta ligado através desta " +"interface." + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" +"Deseja mesmo apagar esta rede? A eliminação não poder desfeita!\n" +"Pode perde a ligação ao dispositivo, caso esta ligado através desta rede." + +msgid "Really reset all changes?" +msgstr "Deseja mesmo limpar todas as alterações?" + +#, fuzzy +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" +"Deseja mesmo desligar esta rede?\n" +"Pode perder o acesso ao dispositivo se estiver ligado através desta rede." + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" +"Deseja mesmo desligar a interface \"%s\" ?\n" +"Pode perder o acesso ao dispositivo se estiver ligado através desta " +"interface." + +msgid "Really switch protocol?" +msgstr "Deseja mesmo trocar o protocolo?" + +msgid "Realtime Connections" +msgstr "Ligações em Tempo Real" + +msgid "Realtime Graphs" +msgstr "Gráficos em Tempo Real" + +msgid "Realtime Load" +msgstr "Carga em Tempo Real" + +msgid "Realtime Traffic" +msgstr "Tráfego em Tempo Real" + +msgid "Realtime Wireless" +msgstr "Wireless em Tempo Real" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "Religar protecção" + +msgid "Reboot" +msgstr "Reiniciar" + +msgid "Rebooting..." +msgstr "A reiniciar..." + +msgid "Reboots the operating system of your device" +msgstr "Reinicia o seu dispositivo" + +msgid "Receive" +msgstr "Receber" + +msgid "Receiver Antenna" +msgstr "Antena de Recepção" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "Reconetar esta interface" + +msgid "Reconnecting interface" +msgstr "A reconectar interface" + +msgid "References" +msgstr "Referências" + +msgid "Regulatory Domain" +msgstr "Domínio Regulatório" + +msgid "Relay" +msgstr "" + +msgid "Relay Bridge" +msgstr "" + +msgid "Relay between networks" +msgstr "" + +msgid "Relay bridge" +msgstr "" + +msgid "Remote IPv4 address" +msgstr "Endereço IPv4 remoto" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "Remover" + +msgid "Repeat scan" +msgstr "Repetir scan" + +msgid "Replace entry" +msgstr "Substituir entrada" + +msgid "Replace wireless configuration" +msgstr "Substituir configuração wireless" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "Necessário para certos ISPs, p.ex. Charter with DOCSIS 3" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "Reset" + +msgid "Reset Counters" +msgstr "Limpar contadores" + +msgid "Reset to defaults" +msgstr "" + +msgid "Resolv and Hosts Files" +msgstr "Ficheiros Resolv e Hosts" + +msgid "Resolve file" +msgstr "" + +msgid "Restart" +msgstr "Reiniciar" + +msgid "Restart Firewall" +msgstr "Reiniciar Firewall" + +msgid "Restore backup" +msgstr "Restaurar backup" + +msgid "Reveal/hide password" +msgstr "Revelar/esconder password" + +msgid "Revert" +msgstr "Reverter" + +msgid "Root" +msgstr "" + +msgid "Root directory for files served via TFTP" +msgstr "" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "Password do Router" + +msgid "Routes" +msgstr "Rotas" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"As rotas especificam através de que interfaces ou gateways podem ser " +"alcançados determinadas redes ou hosts." + +msgid "Run a filesystem check before mounting the device" +msgstr "" +"Correr uma verificação do sistema de ficheiros antes de montar um dispositivo" + +msgid "Run filesystem check" +msgstr "Correr uma verificação do sistema de ficheiros" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "Acesso SSH" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "Chaves-SSH" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "Salvar" + +msgid "Save & Apply" +msgstr "Salvar & Aplicar" + +msgid "Save & Apply" +msgstr "Salvar & Aplicar" + +msgid "Scan" +msgstr "Procurar" + +msgid "Scheduled Tasks" +msgstr "Tarefas Agendadas" + +msgid "Section added" +msgstr "Secção adicionada" + +msgid "Section removed" +msgstr "Secção removida" + +msgid "See \"mount\" manpage for details" +msgstr "" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" + +msgid "Separate Clients" +msgstr "Isolar Clientes" + +msgid "Separate WDS" +msgstr "Separar WDS" + +msgid "Server Settings" +msgstr "" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "Nome do Serviço" + +msgid "Service Type" +msgstr "Tipo de Serviço" + +msgid "Services" +msgstr "Serviços" + +#, fuzzy +msgid "Set up Time Synchronization" +msgstr "Configurar Sincronização Horária" + +msgid "Setup DHCP Server" +msgstr "Configurar Servidor DHCP" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "Mostrar lista ficheiros para backup" + +msgid "Shutdown this interface" +msgstr "Desligar esta interface" + +msgid "Shutdown this network" +msgstr "Desligar esta rede" + +msgid "Signal" +msgstr "Sinal" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "Sinal:" + +msgid "Size" +msgstr "Tamanho" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "Saltar" + +msgid "Skip to content" +msgstr "Ir para o conteúdo" + +msgid "Skip to navigation" +msgstr "Ir para a navegação" + +msgid "Slot time" +msgstr "" + +msgid "Software" +msgstr "Software" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "Alguns campos são inválidos, não é possível gravar valores!" + +msgid "Sorry, the object you requested was not found." +msgstr "Lamento, o objecto que pediu não foi encontrado." + +msgid "Sorry, the server encountered an unexpected error." +msgstr "Lamento, o servidor encontrou um erro inesperado." + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" + +msgid "Sort" +msgstr "Ordenar" + +msgid "Source" +msgstr "Origem" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "" + +msgid "Specifies the directory the device is attached to" +msgstr "" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "Especifica as portas de escuta desta instância Dropbear" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "" + +msgid "Start" +msgstr "Iniciar" + +msgid "Start priority" +msgstr "Prioridade de inicialização" + +msgid "Startup" +msgstr "" + +msgid "Static IPv4 Routes" +msgstr "Rotas Estáticas IPv4" + +msgid "Static IPv6 Routes" +msgstr "Rotas Estáticas IPv6" + +msgid "Static Leases" +msgstr "Atribuições Estáticas" + +msgid "Static Routes" +msgstr "Rotas Estáticas" + +msgid "Static WDS" +msgstr "WDS Estático" + +msgid "Static address" +msgstr "Endereço estático" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" + +msgid "Status" +msgstr "Status" + +msgid "Stop" +msgstr "Parar" + +msgid "Strict order" +msgstr "Ordem exacta" + +msgid "Submit" +msgstr "Enviar" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "" + +msgid "Switch" +msgstr "Switch" + +msgid "Switch %q" +msgstr "" + +msgid "Switch %q (%s)" +msgstr "" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "" + +msgid "Sync with browser" +msgstr "Sincronizar com o browser" + +msgid "Synchronizing..." +msgstr "A sincronizar..." + +msgid "System" +msgstr "Sistema" + +msgid "System Log" +msgstr "Registo do Sistema" + +msgid "System Properties" +msgstr "Propriedades do Sistema" + +msgid "System log buffer size" +msgstr "" + +msgid "TCP:" +msgstr "TCP:" + +msgid "TFTP Settings" +msgstr "Definições TFTP" + +msgid "TFTP server root" +msgstr "Raíz do servidor TFTP" + +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "" + +msgid "Table" +msgstr "Tabela" + +msgid "Target" +msgstr "Destino" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "Terminar" + +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" +"O pacote libiwinfo-lua não está instalado. Precisa de instalar este " +"pacote para que a configuração wireless funcione!" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" +"O prefixo IPv6 atribuído ao provider, habitualmente termina com ::" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" +"Os caracteres permitidos são: A-Z, a-z, 0-9 e _" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" +"O arquivo do dispositivo de memória ou da partição (ex. /dev/sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"O sistema que foi usado para formatar a memória (ex. ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" +"A imagem foi carregada. Abaixo está o checksum e o tamanho dos ficheiros, " +"compare com o ficheiro original para assegurar a integração de dados.
" +"Click em \"Proceder\" para iniciar o procedimento." + +msgid "The following changes have been committed" +msgstr "As seguintes alterações foram escritas" + +msgid "The following changes have been reverted" +msgstr "Foram recuperadas as seguintes alterações " + +msgid "The following rules are currently active on this system." +msgstr "As seguintes regras estão actualmente acivas neste sistema." + +msgid "The given network name is not unique" +msgstr "O nome dado não é único" + +#, fuzzy +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" +"O hardware não é comporta multi-SSIDs a configuração será substituída se " +"prosseguir." + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" +"O tamanho do perfico IPv4 em bits, o restante é usado em endereços IPv6." + +msgid "The length of the IPv6 prefix in bits" +msgstr "O comprimento do prefixo IPv6 em bits" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" +"As portas de rede neste dispositivo podem ser combinadas com várias VLANs onde os computadores podem " +"comunicar directamente entre eles. VLANs são muito utilizadas para separar dois segmentos de rede " +"diferentes. Muitas vezes existe por defeito uma porta de Uplink para uma " +"ligação para a rede acima como a internet ou outras portas de uma rede local." + +msgid "The selected protocol needs a device assigned" +msgstr "O protocolo escolhido precisa de um dispositivo atribuído." + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" +"O sistema está agora a limpar a partição de configuração e irá reiniciar-se " +"quando terminar." + +#, fuzzy +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"O sistema está a carregar o firmware para a flash.
NÃO DESLIGUE O " +"EQUIPAMENTO!
Espere alguns minutos até tentar uma ligação. Dependendo " +"da sua configuração, ode ser necessário renovar o endereço do seu computador " +"para poder ligar novamente ao router." + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"A imagem carregada não contém um formato suportado. Confirme que escolhe uma " +"imagem genérica para a sua plataforma." + +msgid "There are no active leases." +msgstr "Não há concessões ativas." + +msgid "There are no pending changes to apply!" +msgstr "Não há alterações pendentes para aplicar!" + +msgid "There are no pending changes to revert!" +msgstr "Não há alterações pendentes para reverter!" + +msgid "There are no pending changes!" +msgstr "Não há alterações pendentes!" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" +"Ainda não há um dispositivo atribuído, por favor ligue um dispositivo de " +"rede nas \"Definições Físicas\"" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" +"Não há uma password definida neste router. Por favor defina uma senha de " +"root para proteger a interface web e ativar o SSH." + +msgid "This IPv4 address of the relay" +msgstr "" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" +"Este é o conteúdo de /etc/rc.local. Insira os seus próprios comandos aqui " +"(antes de 'exit 0') para executá-los no final do processo de arranque." + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" +"Este é o único DHCP na rede local" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "Este é o sistema de agendamento de tarefas." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" +"Esta lista fornece uma visão geral sobre os processos em execução no sistema." + +msgid "This page allows the configuration of custom button actions" +msgstr "" +"Esta página permite a configuração de botões para acções personalizadas." + +msgid "This page gives an overview over currently active network connections." +msgstr "Esta página fornece informações sobre as ligações de rede ativas." + +msgid "This section contains no values yet" +msgstr "Esta secção ainda não contêm valores" + +msgid "Time Synchronization" +msgstr "Sincronização Horária" + +msgid "Time Synchronization is not configured yet." +msgstr "A sincronização horária ainda não está configurada." + +msgid "Timezone" +msgstr "Fuso Horário" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" +"Para restaurar os ficheiros de configuração, pode carregar aqui um ficheiro " +"de backup gerado anteriormente." + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "Total Disponível" + +msgid "Traceroute" +msgstr "Traceroute" + +msgid "Traffic" +msgstr "Tráfego" + +msgid "Transfer" +msgstr "Transferências" + +msgid "Transmission Rate" +msgstr "Taxa de Transmissão" + +msgid "Transmit" +msgstr "Transmitir" + +msgid "Transmit Power" +msgstr "Potência de Transmissão" + +msgid "Transmitter Antenna" +msgstr "Antena de Transmissão" + +msgid "Trigger" +msgstr "Trigger" + +msgid "Trigger Mode" +msgstr "Modo de Trigger" + +msgid "Tunnel ID" +msgstr "ID do Túnel" + +msgid "Tunnel Interface" +msgstr "Interface de Túnel" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "Modo Turbo" + +msgid "Tx-Power" +msgstr "Potência de Tx" + +msgid "Type" +msgstr "Tipo" + +msgid "UDP:" +msgstr "UDP:" + +msgid "UMTS only" +msgstr "Só UMTS" + +msgid "UMTS/GPRS/EV-DO" +msgstr "UMTS/GPRS/EV-DO" + +msgid "USB Device" +msgstr "Dispositivo USB" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "UUID" + +msgid "Unable to dispatch" +msgstr "" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "Desconhecido" + +msgid "Unknown Error, password not changed!" +msgstr "Erro Desconhecido, a password não foi alterada!" + +msgid "Unmanaged" +msgstr "Não gerido" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "Alterações não Guardadas" + +msgid "Unsupported protocol type." +msgstr "Tipo de protocolo não suportado." + +msgid "Update lists" +msgstr "Actualizar listas" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" + +msgid "Upload archive..." +msgstr "Carregar arquivo..." + +msgid "Uploaded File" +msgstr "Ficheiro carregado" + +msgid "Uptime" +msgstr "Uptime" + +msgid "Use /etc/ethers" +msgstr "Usar /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "Usar a gateway do DHCP" + +msgid "Use DNS servers advertised by peer" +msgstr "Usar os servidores DNS fornecidos pelo parceiro" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "" + +msgid "Use MTU on tunnel interface" +msgstr "" + +msgid "Use TTL on tunnel interface" +msgstr "" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "Usar servidores DNS personalizados" + +msgid "Use default gateway" +msgstr "Usar gateway pre-definida" + +msgid "Use gateway metric" +msgstr "" + +msgid "Use routing table" +msgstr "Usar tabela de roteamento" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" + +msgid "Used" +msgstr "Usado" + +msgid "Used Key Slot" +msgstr "" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "Utilizador" + +msgid "VC-Mux" +msgstr "" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "VLANs em %q" + +msgid "VLANs on %q (%s)" +msgstr "VLANs em %q (%s)" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "Servidor VPN" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "Verificar" + +msgid "Version" +msgstr "Versão" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "Sistema Aberto WEP" + +msgid "WEP Shared Key" +msgstr "Chave partilhada WEP" + +msgid "WEP passphrase" +msgstr "Palavra-Passe WEP" + +msgid "WMM Mode" +msgstr "Modo WMM" + +msgid "WPA passphrase" +msgstr "Palavra-Passe WPA" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"A encriptação-WPA necessita do wpa_supplicant (para modo cliente) ou do " +"hostapd (para modo AP ou ah-hoc) esteja instalado." + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "A aguardar que as mudanças sejam aplicadas..." + +msgid "Waiting for command to complete..." +msgstr "A aguardar que o comando termine..." + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "Aviso" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "Rede Wireless" + +msgid "Wireless Adapter" +msgstr "Adaptador Wireless" + +msgid "Wireless Network" +msgstr "Rede Wireless" + +msgid "Wireless Overview" +msgstr "Vista Global Wireless" + +msgid "Wireless Security" +msgstr "Segurança Wireless" + +msgid "Wireless is disabled or not associated" +msgstr "Wireless desativada ou não associada" + +msgid "Wireless is restarting..." +msgstr "A Wireless está a reiniciar..." + +msgid "Wireless network is disabled" +msgstr "Wireless está desativado." + +msgid "Wireless network is enabled" +msgstr "A rede wireless está ativada" + +msgid "Wireless restarted" +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" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "Suporte XR" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"Você pode ativar ou desativar os scripts de inicialização instalados aqui. " +"As mudanças serão aplicadas após a reinicialização do equipamento.
Aviso: Se você desativar algum script de inicialização essencial " +"como por exemplo \"rede/network\", o dispositivo poderá tornar-se " +"inacessível!" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" +"Tem de activar o JavaScript no seu browser ou a LuCI não funcionará " +"corretamente." + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "qualquer" + +msgid "auto" +msgstr "automático" + +msgid "baseT" +msgstr "baseT" + +msgid "bridged" +msgstr "" + +msgid "create:" +msgstr "criar:" + +msgid "creates a bridge over specified interface(s)" +msgstr "cria uma bridge sobre determinada(s) interface(s)" + +msgid "dB" +msgstr "dB" + +msgid "dBm" +msgstr "dBm" + +msgid "disable" +msgstr "desativar" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "expirou" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" +"Ficheiro onde as atribuições DHCP são armazenadas" + +msgid "forward" +msgstr "" + +msgid "full-duplex" +msgstr "full-duplex" + +msgid "half-duplex" +msgstr "half-duplex" + +msgid "help" +msgstr "ajuda" + +msgid "hidden" +msgstr "escondido" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "se o destino for uma rede" + +msgid "input" +msgstr "entrada" + +msgid "kB" +msgstr "kB" + +msgid "kB/s" +msgstr "kB/s" + +msgid "kbit/s" +msgstr "kbit/s" + +msgid "local DNS file" +msgstr "" +"Ficheiro local de DNS" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "não" + +msgid "no link" +msgstr "sem link" + +msgid "none" +msgstr "nenhum" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "desligado" + +msgid "on" +msgstr "ligado" + +msgid "open" +msgstr "abrir" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "desconhecido" + +msgid "unlimited" +msgstr "ilimitado" + +msgid "unspecified" +msgstr "não especificado" + +msgid "unspecified -or- create:" +msgstr "" + +msgid "untagged" +msgstr "" + +msgid "yes" +msgstr "sim" + +msgid "« Back" +msgstr "« Voltar" + +#~ msgid "Leasetime" +#~ msgstr "Tempo de concessão" + +#, fuzzy +#~ msgid "automatic" +#~ msgstr "estático" + +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "Uma rede adicional será criada se deixar isto desmarcado." + +#~ msgid "Join Network: Settings" +#~ msgstr "Associar Rede: Definições" + +#~ msgid "CPU" +#~ msgstr "CPU" + +#~ msgid "Port %d" +#~ msgstr "Porta %d" + +#~ msgid "VLAN Interface" +#~ msgstr "Interface VLAN" diff --git a/luci-base/po/ro/base.po b/luci-base/po/ro/base.po new file mode 100644 index 000000000..9c5b01f57 --- /dev/null +++ b/luci-base/po/ro/base.po @@ -0,0 +1,3794 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"PO-Revision-Date: 2014-04-01 23:12+0200\n" +"Last-Translator: xcentric \n" +"Language-Team: none\n" +"Language: ro\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " +"20)) ? 1 : 2);;\n" +"X-Generator: Pootle 2.0.6\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(%d fereastra minute, %d interval secunde)" + +msgid "(%s available)" +msgstr "(%s disponibil)" + +msgid "(empty)" +msgstr "(gol)" + +msgid "(no interfaces attached)" +msgstr "(nici o interfata atasata)" + +msgid "-- Additional Field --" +msgstr "-- Camp suplimentar --" + +msgid "-- Please choose --" +msgstr "-- Te rog sa alegi --" + +msgid "-- custom --" +msgstr "-- particularizat --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "Incarcarea in ultimul minut" + +msgid "15 Minute Load:" +msgstr "Incarcarea in ultimele 15 minute" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "Incarcarea in ultimele 5 minute" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "DNS query port" +msgstr "DNSport de apelare" + +msgid "DNS server port" +msgstr "DNS port server" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" +"DNS serverul va interoga in " +"vederea procesarii fisierului" + +msgid "ESSID" +msgstr "ESSID" + +msgid "IPv4-Address" +msgstr "Adresa IPv4" + +msgid "IPv4-Gateway" +msgstr "IPv4-Poarta Acces " + +msgid "IPv4-Netmask" +msgstr "Masca de retea IPv4" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"IPv6-Addresa retea (CIDR)" + +msgid "IPv6-Gateway" +msgstr "IPv6-Poarta Acces" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "LED Configurare" + +msgid "LED Name" +msgstr "LED Nume" + +msgid "MAC-Address" +msgstr "MAC-Addresa" + +msgid "" +"Max. DHCP leases" +msgstr "" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"Max. EDNS0 marime pachet" + +msgid "Max. concurrent queries" +msgstr "Max. interogari simultane" + +msgid "%s - %s" +msgstr "%s - %s" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "Suport AR" + +msgid "ARP retry threshold" +msgstr "ARP prag reincercare" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "Punti ATM" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "ATM Indentificator Canal Virtual (VCI)" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "ATM Indentificator Cale Virtual(VPI)" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"Puntile ATM expune reteaua intergrata în conexiunile AAL5 ca interfețe " +"virtuale de rețea Linux care pot fi utilizate în asociere cu DHCP sau PPP " +"pentru a forma în rețeaua furnizorului." + +msgid "ATM device number" +msgstr "ATM numar echipament" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "Concentrator de Access " + +msgid "Access Point" +msgstr "Punct de Acces" + +msgid "Action" +msgstr "Actiune" + +msgid "Actions" +msgstr "Actiune" + +msgid "Activate this network" +msgstr "Activeaza aceasta retea" + +msgid "Active IPv4-Routes" +msgstr "Rute active IPv4" + +msgid "Active IPv6-Routes" +msgstr "Rute active IPv6" + +msgid "Active Connections" +msgstr "Conexiuni active" + +msgid "Active DHCP Leases" +msgstr "" + +msgid "Active DHCPv6 Leases" +msgstr "" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc" + +msgid "Add" +msgstr "Adauga" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "Adauga un sufix local numelor servite din fisierele de tip hosts" + +msgid "Add new interface..." +msgstr "Adauga interfata noua.." + +msgid "Additional Hosts files" +msgstr "Fisiere de tip hosts aditionale" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "Adresa" + +msgid "Address to access local relay bridge" +msgstr "Adresa de acces punte locala repetor" + +msgid "Administration" +msgstr "Administrare" + +msgid "Advanced Settings" +msgstr "Setari avansate" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "Alerta" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "" +"Permite autentificarea prin parola a SSH " + +msgid "Allow all except listed" +msgstr "Permite toate cu exceptia celor listate" + +msgid "Allow listed only" +msgstr "Permite doar cele listate" + +msgid "Allow localhost" +msgstr "Permite localhost" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "Permite statiilor externe sa se conecteze la porturile SSH locale" + +msgid "Allow root logins with password" +msgstr "Permite autentificarea contului root cu parola" + +msgid "Allow the root user to login with password" +msgstr "Permite contului root sa se autentifice cu parola" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" +"Permite raspuns upstream in plaja 127.0.0.0/8, e.g. pentru serviciile RBL" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "Antena 1" + +msgid "Antenna 2" +msgstr "Antena 2" + +msgid "Antenna Configuration" +msgstr "Configurarea Antenei" + +msgid "Any zone" +msgstr "Orice Zona" + +msgid "Apply" +msgstr "Aplica" + +msgid "Applying changes" +msgstr "Se aplica modificarile" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "Inregistreaza interfetele" + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "Statiile asociate" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Atheros 802.11%s Controler Fara Fir" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "Autentificare" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "Autoritare" + +msgid "Authorization Required" +msgstr "Necesita Autorizare" + +msgid "Auto Refresh" +msgstr "Reimprospatare automata" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "Disponibil" + +msgid "Available packages" +msgstr "Pachete disponibile" + +msgid "Average:" +msgstr "Medie:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "Inapoi" + +msgid "Back to Overview" +msgstr "Inapoi la sumar" + +msgid "Back to configuration" +msgstr "Inapoi la Configurare" + +msgid "Back to overview" +msgstr "Inapoi la vedere generala" + +msgid "Back to scan results" +msgstr "Inapoi la rezultatele scanarii" + +msgid "Background Scan" +msgstr "Scanare in fundal" + +msgid "Backup / Flash Firmware" +msgstr "Salveaza / Scrie Firmware" + +msgid "Backup / Restore" +msgstr "Salveaza / Restaureaza" + +msgid "Backup file list" +msgstr "Salveaza lista fisiere" + +msgid "Bad address specified!" +msgstr "Adresa specificata gresit !" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "Bitrate" + +msgid "Bogus NX Domain Override" +msgstr "Bogus NX Domain Override" + +msgid "Bridge" +msgstr "Punte" + +msgid "Bridge interfaces" +msgstr "Leaga interfetele" + +msgid "Bridge unit number" +msgstr "Numarul unitatii in punte" + +msgid "Bring up on boot" +msgstr "Activeaza la pornire" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "Broadcom 802.11%s Controller Fara Fir" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "Broadcom BCM%04x 802.11 Controller Fara Fir" + +msgid "Buffered" +msgstr "Incarcat" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "Butoane" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "Utilizarea procesorului (%)" + +msgid "Cancel" +msgstr "Anuleaza" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "Lant" + +msgid "Changes" +msgstr "Modificari" + +msgid "Changes applied." +msgstr "Modificari aplicate." + +msgid "Changes the administrator password for accessing the device" +msgstr "Schimba parola administratorului pentru accesarea dispozitivului" + +msgid "Channel" +msgstr "Canal" + +msgid "Check" +msgstr "Verificare" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "Suma de verificare" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"Alege zona paravanului care doresti sa o aloci acestei interfete. Selecteaza " +"nespecificat pentru a sterge interfata sau golire creaza " +"camp ce defineste o zona noua asociata interfetei." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" + +msgid "Cipher" +msgstr "" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" + +msgid "Client" +msgstr "" + +msgid "Client ID to send when requesting DHCP" +msgstr "" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" + +msgid "Close list..." +msgstr "" + +msgid "Collecting data..." +msgstr "Colectez datele.." + +msgid "Command" +msgstr "Comanda" + +msgid "Common Configuration" +msgstr "Configurarea obisnuita" + +msgid "Compression" +msgstr "Comprimare" + +msgid "Configuration" +msgstr "Configurare" + +msgid "Configuration applied." +msgstr "Configurarea aplicata." + +msgid "Configuration files will be kept." +msgstr "Fisierele de configurare vor fi pastrate." + +msgid "Confirmation" +msgstr "Confirmare" + +msgid "Connect" +msgstr "Conectare" + +msgid "Connected" +msgstr "Conectat" + +msgid "Connection Limit" +msgstr "Limita de conexiune" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "Conexiuni" + +msgid "Country" +msgstr "Tara" + +msgid "Country Code" +msgstr "Codul de tara" + +msgid "Cover the following interface" +msgstr "" + +msgid "Cover the following interfaces" +msgstr "" + +msgid "Create / Assign firewall-zone" +msgstr "" + +msgid "Create Interface" +msgstr "Creaza interfata" + +msgid "Create a bridge over multiple interfaces" +msgstr "" + +msgid "Critical" +msgstr "Critic" + +msgid "Cron Log Level" +msgstr "" + +msgid "Custom Interface" +msgstr "" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" + +msgid "DHCP Leases" +msgstr "Conexiuni DHCP" + +msgid "DHCP Server" +msgstr "Server DHCP" + +msgid "DHCP and DNS" +msgstr "DHCP si DNS" + +msgid "DHCP client" +msgstr "" + +msgid "DHCP-Options" +msgstr "Optiuni DHCP" + +msgid "DHCPv6 Leases" +msgstr "" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "" + +msgid "Default %d" +msgstr "" + +msgid "Default gateway" +msgstr "" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "Stare implicita" + +msgid "Define a name for this network." +msgstr "Definiti un nume pentru aceasta retea." + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" + +msgid "Delete" +msgstr "Sterge" + +msgid "Delete this network" +msgstr "Sterge aceasta retea" + +msgid "Description" +msgstr "Descriere" + +msgid "Design" +msgstr "" + +msgid "Destination" +msgstr "Destinatie" + +msgid "Device" +msgstr "Dispozitiv" + +msgid "Device Configuration" +msgstr "Configurarea dispozitivului" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "Diagnosticuri" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "Director" + +msgid "Disable" +msgstr "Dezactiveaza" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +"Dezactiveaza DHCP " +"pentru aceasta interfata." + +msgid "Disable DNS setup" +msgstr "Dezactiveaza configuratia DNS" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "" + +msgid "Disabled" +msgstr "Dezactivat" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "" + +msgid "Displaying only packages containing" +msgstr "" + +msgid "Distance Optimization" +msgstr "Optimizarea distantei" + +msgid "Distance to farthest network member in meters." +msgstr "Distanta catre cel mai departat membru din retea in metri." + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "Diversitate" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" + +msgid "Do not forward reverse lookups for local networks" +msgstr "" + +msgid "Do not send probe responses" +msgstr "" + +msgid "Domain required" +msgstr "Domeniul necesar" + +msgid "Domain whitelist" +msgstr "" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" + +msgid "Download and install package" +msgstr "Descarca si instaleaza pachetul" + +msgid "Download backup" +msgstr "Descarca backup" + +msgid "Dropbear Instance" +msgstr "Instanta dropbear" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" + +msgid "Dynamic tunnel" +msgstr "" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "" + +msgid "Edit" +msgstr "Editeaza" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "Editeaza aceasta interfata" + +msgid "Edit this network" +msgstr "Editeaza aceasta retea" + +msgid "Emergency" +msgstr "Urgenta" + +msgid "Enable" +msgstr "Activeaza" + +msgid "Enable STP" +msgstr "Activeaza STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "" + +msgid "Enable Jumbo Frame passthrough" +msgstr "" + +msgid "Enable NTP client" +msgstr "" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "Activeaza serverul TFTP" + +msgid "Enable VLAN functionality" +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 "" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "" + +msgid "Enable this swap" +msgstr "" + +msgid "Enable/Disable" +msgstr "Activeaza/Dezactiveaza" + +msgid "Enabled" +msgstr "Activat" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "" + +msgid "Encapsulation mode" +msgstr "Modul de incapsulare" + +msgid "Encryption" +msgstr "Criptare" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "Stergere..." + +msgid "Error" +msgstr "Eroare" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "Adaptor de retea ethernet" + +msgid "Ethernet Switch" +msgstr "Switch-ul ethernet" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "" + +msgid "Expires" +msgstr "Expira" + +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "Server de log-uri extern" + +msgid "External system log server port" +msgstr "Portul serverului de log-uri extern" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "" + +msgid "File" +msgstr "Fisier" + +msgid "Filename of the boot image advertised to clients" +msgstr "" + +msgid "Filesystem" +msgstr "Sistem de fisiere" + +msgid "Filter" +msgstr "Filtreaza" + +msgid "Filter private" +msgstr "Filtreaza privatele" + +msgid "Filter useless" +msgstr "Filtreaza nefolositele" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "Gaseste si alatura in retea" + +msgid "Find package" +msgstr "Gaseste pachet" + +msgid "Finish" +msgstr "Termina" + +msgid "Firewall" +msgstr "Firewall" + +msgid "Firewall Settings" +msgstr "Setarile firewall-ului" + +msgid "Firewall Status" +msgstr "Status la firewall" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "Versiunea de firmware" + +msgid "Fixed source port for outbound DNS queries" +msgstr "Portul sursa pentru intrebarile DNS catre exterior" + +msgid "Flash Firmware" +msgstr "Rescrie firmware" + +msgid "Flash image..." +msgstr "" + +msgid "Flash new firmware image" +msgstr "" + +msgid "Flash operations" +msgstr "" + +msgid "Flashing..." +msgstr "" + +msgid "Force" +msgstr "Forteaza" + +msgid "Force CCMP (AES)" +msgstr "Forteaza CCMP (AES)" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "" +"Forteaza facilitatea DHCP in aceasta retea chiar daca alt server DHCP exista." + +msgid "Force TKIP" +msgstr "Forteaza TKIP" + +msgid "Force TKIP and CCMP (AES)" +msgstr "Forteaza TKIP si CCMP (AES)" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "" + +msgid "Forwarding mode" +msgstr "" + +msgid "Fragmentation Threshold" +msgstr "" + +msgid "Frame Bursting" +msgstr "" + +msgid "Free" +msgstr "Liber" + +msgid "Free space" +msgstr "Spatiu liber" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "" + +msgid "GPRS only" +msgstr "Doar GPRS" + +msgid "Gateway" +msgstr "Gateway" + +msgid "Gateway ports" +msgstr "Porturile gateway" + +msgid "General Settings" +msgstr "Setari principale" + +msgid "General Setup" +msgstr "Configurare generala" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "Confirmarea parolei nu se potriveste cu prima, parola neschimbata !" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "" + +msgid "Go to relevant configuration page" +msgstr "" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "" + +msgid "Hang Up" +msgstr "" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"Aici poti configura aspectele de baza ale dispozitivului cum ar fi numele " +"sau fusul orar." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" + +msgid "Hermes 802.11b Wireless Controller" +msgstr "" + +msgid "Hide ESSID" +msgstr "Ascunde ESSID" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "Intrari de tip host" + +msgid "Host expiry timeout" +msgstr "" + +msgid "Host-IP or Network" +msgstr "" + +msgid "Hostname" +msgstr "Numele de host" + +msgid "Hostname to send when requesting DHCP" +msgstr "" + +msgid "Hostnames" +msgstr "Nume de host" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "Adresa IP" + +msgid "IPv4" +msgstr "IPv4" + +msgid "IPv4 Firewall" +msgstr "Firewall IPv4" + +msgid "IPv4 WAN Status" +msgstr "Statusul IPv4 pe WAN" + +msgid "IPv4 address" +msgstr "Adresa IPv4" + +msgid "IPv4 and IPv6" +msgstr "IPv4 si IPv6" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "" + +msgid "IPv4 gateway" +msgstr "" + +msgid "IPv4 netmask" +msgstr "" + +msgid "IPv4 only" +msgstr "Doar IPv4" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "" + +msgid "IPv4-Address" +msgstr "Adresa IPv4" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "Firewall IPv6" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "Statusul IPv6 pe WAN" + +msgid "IPv6 address" +msgstr "Adresa IPv6" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "" + +msgid "IPv6 only" +msgstr "Doar IPv6" + +msgid "IPv6 prefix" +msgstr "" + +msgid "IPv6 prefix length" +msgstr "" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "" + +msgid "Identity" +msgstr "Identitate" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" + +msgid "If unchecked, no default route is configured" +msgstr "" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" + +msgid "Ignore /etc/hosts" +msgstr "" + +msgid "Ignore interface" +msgstr "" + +msgid "Ignore resolve file" +msgstr "" + +msgid "Image" +msgstr "Imagine" + +msgid "In" +msgstr "" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "" + +msgid "Inbound:" +msgstr "Intrare:" + +msgid "Info" +msgstr "Informatii" + +msgid "Initscript" +msgstr "Script de initializare" + +msgid "Initscripts" +msgstr "Scripturi de initializare" + +msgid "Install" +msgstr "Instalati" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "Instalati pachetul %q" + +msgid "Install protocol extensions..." +msgstr "" + +msgid "Installed packages" +msgstr "Pachete instalate" + +msgid "Interface" +msgstr "Interfata" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "Configurarea interfetei" + +msgid "Interface Overview" +msgstr "Prezentare interfata" + +msgid "Interface is reconnecting..." +msgstr "Interfata se reconecteaza.." + +msgid "Interface is shutting down..." +msgstr "Interfata se opreste.." + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "Interfata nu e prezenta sau nu este conectata inca." + +msgid "Interface reconnected" +msgstr "Interfata reconectata" + +msgid "Interface shut down" +msgstr "Interfata oprita" + +msgid "Interfaces" +msgstr "Interfete" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "Eroare interna de server" + +msgid "Invalid" +msgstr "Invalid" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "" + +msgid "Invalid username and/or password! Please try again." +msgstr "Utilizator si/sau parola invalide! Incearcati din nou." + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"Se pare ca ai incercat sa rescrii o imagine care nu are loc in memoria " +"flash, verifica fisierul din nou!" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "Ai nevoie de JavaScript !" + +msgid "Join Network" +msgstr "" + +msgid "Join Network: Wireless Scan" +msgstr "" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "Pastrati setarile" + +msgid "Kernel Log" +msgstr "Log-ul kernelului" + +msgid "Kernel Version" +msgstr "Versiunea de kernel" + +msgid "Key" +msgstr "" + +msgid "Key #%d" +msgstr "" + +msgid "Kill" +msgstr "Opreste" + +msgid "L2TP" +msgstr "" + +msgid "L2TP Server" +msgstr "" + +msgid "LCP echo failure threshold" +msgstr "" + +msgid "LCP echo interval" +msgstr "" + +msgid "LLC" +msgstr "" + +msgid "Label" +msgstr "Eticheta" + +msgid "Language" +msgstr "Limba" + +msgid "Language and Style" +msgstr "Limba si stilul interfetei" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "" + +msgid "Leasefile" +msgstr "" + +msgid "Leasetime remaining" +msgstr "" + +msgid "Leave empty to autodetect" +msgstr "" + +msgid "Leave empty to use the current WAN address" +msgstr "" + +msgid "Legend:" +msgstr "Legenda:" + +msgid "Limit" +msgstr "Limita" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" + +msgid "Listening port for inbound DNS queries" +msgstr "" + +msgid "Load" +msgstr "Incarcarea" + +msgid "Load Average" +msgstr "Incarcarea medie" + +msgid "Loading" +msgstr "Incarcare" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "Adresa IPv4 locala" + +msgid "Local IPv6 address" +msgstr "Adresa IPv6 locala" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "" + +msgid "Local Time" +msgstr "Ora locala" + +msgid "Local domain" +msgstr "Domeniu local" + +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" + +msgid "Local server" +msgstr "Server local" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" + +msgid "Localise queries" +msgstr "" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "" + +msgid "Log queries" +msgstr "" + +msgid "Logging" +msgstr "" + +msgid "Login" +msgstr "Autentificare" + +msgid "Logout" +msgstr "Iesire" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "" + +msgid "MAC-Address" +msgstr "" + +msgid "MAC-Address Filter" +msgstr "" + +msgid "MAC-Filter" +msgstr "" + +msgid "MAC-List" +msgstr "" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "" + +msgid "MTU" +msgstr "" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "Rata maxima" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "Numarul maxim de intrebari DNS simultane" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "" + +msgid "Maximum hold time" +msgstr "" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "" + +msgid "Mbit/s" +msgstr "" + +msgid "Memory" +msgstr "Memorie" + +msgid "Memory usage (%)" +msgstr "Utilizarea memoriei (%)" + +msgid "Metric" +msgstr "Metrica" + +msgid "Minimum Rate" +msgstr "Rata minima" + +msgid "Minimum hold time" +msgstr "" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "Mod" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "" + +msgid "Modem init timeout" +msgstr "" + +msgid "Monitor" +msgstr "" + +msgid "Mount Entry" +msgstr "" + +msgid "Mount Point" +msgstr "" + +msgid "Mount Points" +msgstr "" + +msgid "Mount Points - Mount Entry" +msgstr "" + +msgid "Mount Points - Swap Entry" +msgstr "" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "" + +msgid "Mount point" +msgstr "" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "" + +msgid "Move down" +msgstr "" + +msgid "Move up" +msgstr "" + +msgid "Multicast Rate" +msgstr "Rata de multicast" + +msgid "Multicast address" +msgstr "" + +msgid "NAS ID" +msgstr "" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "Nume" + +msgid "Name of the new interface" +msgstr "Numele interfetei noi" + +msgid "Name of the new network" +msgstr "Numele interfetei noi" + +msgid "Navigation" +msgstr "Navigare" + +msgid "Netmask" +msgstr "Netmask" + +msgid "Network" +msgstr "Retea" + +msgid "Network Utilities" +msgstr "Utilitare de retea" + +msgid "Network boot image" +msgstr "" + +msgid "Network without interfaces." +msgstr "" + +msgid "Next »" +msgstr "Mai departe »" + +msgid "No DHCP Server configured for this interface" +msgstr "Nici un server DHCP configurat pentru aceasta interfata" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "" + +msgid "No files found" +msgstr "Nici un fisier gasit" + +msgid "No information available" +msgstr "Nici o informatie disponibila" + +msgid "No negative cache" +msgstr "" + +msgid "No network configured on this device" +msgstr "Nici o retea configurata pe acest dispozitiv" + +msgid "No network name specified" +msgstr "" + +msgid "No package lists available" +msgstr "" + +msgid "No password set!" +msgstr "Nici o parola setata !" + +msgid "No rules in this chain" +msgstr "" + +msgid "No zone assigned" +msgstr "" + +msgid "Noise" +msgstr "Zgomot" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "Zgomot:" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "" + +msgid "Normal" +msgstr "Normal" + +msgid "Not Found" +msgstr "Nu a fost gasit" + +msgid "Not associated" +msgstr "Nu este asociat." + +msgid "Not connected" +msgstr "Nu este conectat" + +msgid "Note: Configuration files will be erased." +msgstr "Nota: fisierele de configurare vor fi sterse." + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "Notificare" + +msgid "Nslookup" +msgstr "" + +msgid "OK" +msgstr "OK" + +msgid "OPKG-Configuration" +msgstr "Configuratia-OPKG" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" + +msgid "On-State Delay" +msgstr "" + +msgid "One of hostname or mac address must be specified!" +msgstr "" + +msgid "One or more fields contain invalid values!" +msgstr "Unul sau mai multe campuri contin valori invalide !" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "Unul sau mai multe campuri nu contin valori !" + +msgid "Open list..." +msgstr "" + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "Optiunea schimbata" + +msgid "Option removed" +msgstr "Optiunea eliminata" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "Optiuni" + +msgid "Other:" +msgstr "Altele:" + +msgid "Out" +msgstr "Iesire" + +msgid "Outbound:" +msgstr "" + +msgid "Outdoor Channels" +msgstr "" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "" + +msgid "Override MTU" +msgstr "" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" + +msgid "Override the table used for internal routes" +msgstr "" + +msgid "Overview" +msgstr "Prezentare generala" + +msgid "Owner" +msgstr "Proprietar" + +msgid "PAP/CHAP password" +msgstr "" + +msgid "PAP/CHAP username" +msgstr "" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "" + +msgid "PPPoA Encapsulation" +msgstr "Incapsulare PPPoA" + +msgid "PPPoATM" +msgstr "" + +msgid "PPPoE" +msgstr "" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "Pachetul libiwinfo este necesar !" + +msgid "Package lists are older than 24 hours" +msgstr "" + +msgid "Package name" +msgstr "Numele pachetului" + +msgid "Packets" +msgstr "Pachete" + +msgid "Part of zone %q" +msgstr "" + +msgid "Password" +msgstr "Parola" + +msgid "Password authentication" +msgstr "Autentificarea cu parola" + +msgid "Password of Private Key" +msgstr "Parola cheii private" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "Parola schimbata cu succes !" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "Calea catre certificatul CA" + +msgid "Path to Client-Certificate" +msgstr "" + +msgid "Path to Private Key" +msgstr "Calea catre cheia privata" + +msgid "Path to executable which handles the button event" +msgstr "Calea catre executabilul care se ocupa de evenimentul butonului" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "Maxim:" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "Restarteaza" + +msgid "Perform reset" +msgstr "Reseteaza" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "Rata phy:" + +msgid "Physical Settings" +msgstr "Setarile fizice" + +msgid "Ping" +msgstr "" + +msgid "Pkts." +msgstr "Packete." + +msgid "Please enter your username and password." +msgstr "Introdu utilizatorul si parola." + +msgid "Policy" +msgstr "" + +msgid "Port" +msgstr "Port" + +msgid "Port status:" +msgstr "Stare port:" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "Continua" + +msgid "Processes" +msgstr "Procese" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "" + +msgid "Protocol" +msgstr "Protocol" + +msgid "Protocol family" +msgstr "Familia de protocol" + +msgid "Protocol of the new interface" +msgstr "" + +msgid "Protocol support is not installed" +msgstr "" + +msgid "Provide NTP server" +msgstr "" + +msgid "Provide new network" +msgstr "" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "Calitate" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "" + +msgid "RX" +msgstr "RX" + +msgid "RX Rate" +msgstr "" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "" + +msgid "Radius-Accounting-Port" +msgstr "" + +msgid "Radius-Accounting-Secret" +msgstr "" + +msgid "Radius-Accounting-Server" +msgstr "" + +msgid "Radius-Authentication-Port" +msgstr "" + +msgid "Radius-Authentication-Secret" +msgstr "" + +msgid "Radius-Authentication-Server" +msgstr "" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"Citeste fisierul /etc/ethers pentru configurarea serverului " +"DHCP-" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" + +msgid "Really reset all changes?" +msgstr "" + +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" + +msgid "Really switch protocol?" +msgstr "" + +msgid "Realtime Connections" +msgstr "Conexiuni in timp real" + +msgid "Realtime Graphs" +msgstr "Grafice in timp real" + +msgid "Realtime Load" +msgstr "Incarcarea in timp real" + +msgid "Realtime Traffic" +msgstr "Traficul in timp real" + +msgid "Realtime Wireless" +msgstr "" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "" + +msgid "Reboot" +msgstr "Rebooteaza" + +msgid "Rebooting..." +msgstr "" + +msgid "Reboots the operating system of your device" +msgstr "Rebooteaza sistemul de operare al dispozitivului tau" + +msgid "Receive" +msgstr "" + +msgid "Receiver Antenna" +msgstr "Antena receptorului" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "Reconecteaza aceasta interfata" + +msgid "Reconnecting interface" +msgstr "Interfata se reconecteaza chiar acum" + +msgid "References" +msgstr "Referinte" + +msgid "Regulatory Domain" +msgstr "Domeniu regulatoriu" + +msgid "Relay" +msgstr "" + +msgid "Relay Bridge" +msgstr "" + +msgid "Relay between networks" +msgstr "" + +msgid "Relay bridge" +msgstr "" + +msgid "Remote IPv4 address" +msgstr "" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "Elimina" + +msgid "Repeat scan" +msgstr "Repeta scanarea" + +msgid "Replace entry" +msgstr "Inlocuieste intrarea" + +msgid "Replace wireless configuration" +msgstr "Inlocuieste configuratia wireless" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "Reset" + +msgid "Reset Counters" +msgstr "Reseteaza counterii" + +msgid "Reset to defaults" +msgstr "" + +msgid "Resolv and Hosts Files" +msgstr "Fisierele de rezolvare si hosturi DNS" + +msgid "Resolve file" +msgstr "Fisierul de rezolvare" + +msgid "Restart" +msgstr "Restart" + +msgid "Restart Firewall" +msgstr "Restarteaza firewallul" + +msgid "Restore backup" +msgstr "Reface backup-ul" + +msgid "Reveal/hide password" +msgstr "Arata / ascunde parola" + +msgid "Revert" +msgstr "" + +msgid "Root" +msgstr "" + +msgid "Root directory for files served via TFTP" +msgstr "" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "Parola routerului" + +msgid "Routes" +msgstr "Rute" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" + +msgid "Run a filesystem check before mounting the device" +msgstr "" + +msgid "Run filesystem check" +msgstr "" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "Acces SSH" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "Cheile SSH" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "Salveaza" + +msgid "Save & Apply" +msgstr "Salveaza si aplica" + +msgid "Save & Apply" +msgstr "Salveaza & Aplica" + +msgid "Scan" +msgstr "Scan" + +msgid "Scheduled Tasks" +msgstr "Operatiuni programate" + +msgid "Section added" +msgstr "Sectiune adaugata" + +msgid "Section removed" +msgstr "Sectiune eliminata" + +msgid "See \"mount\" manpage for details" +msgstr "" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" + +msgid "Separate Clients" +msgstr "" + +msgid "Separate WDS" +msgstr "" + +msgid "Server Settings" +msgstr "Setarile serverului" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "Nume serviciu" + +msgid "Service Type" +msgstr "Tip de serviciu" + +msgid "Services" +msgstr "Servicii" + +#, fuzzy +msgid "Set up Time Synchronization" +msgstr "Configurare sincronizare timp" + +msgid "Setup DHCP Server" +msgstr "Seteaza serverul DHCP" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "" + +msgid "Shutdown this interface" +msgstr "Opreste aceasta interfata" + +msgid "Shutdown this network" +msgstr "Opreste aceasta retea" + +msgid "Signal" +msgstr "Semnal" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "Semnal:" + +msgid "Size" +msgstr "Marime" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "" + +msgid "Skip to content" +msgstr "" + +msgid "Skip to navigation" +msgstr "" + +msgid "Slot time" +msgstr "" + +msgid "Software" +msgstr "Software" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "" + +msgid "Sorry, the object you requested was not found." +msgstr "" + +msgid "Sorry, the server encountered an unexpected error." +msgstr "" + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" + +msgid "Sort" +msgstr "" + +msgid "Source" +msgstr "Sursa" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "" + +msgid "Specifies the directory the device is attached to" +msgstr "" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "" + +msgid "Start" +msgstr "Start" + +msgid "Start priority" +msgstr "" + +msgid "Startup" +msgstr "Pornire" + +msgid "Static IPv4 Routes" +msgstr "Rute statice IPv4" + +msgid "Static IPv6 Routes" +msgstr "Rute statice IPv6" + +msgid "Static Leases" +msgstr "" + +msgid "Static Routes" +msgstr "Rute statice" + +msgid "Static WDS" +msgstr "" + +msgid "Static address" +msgstr "" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" + +msgid "Status" +msgstr "Status" + +msgid "Stop" +msgstr "Stop" + +msgid "Strict order" +msgstr "" + +msgid "Submit" +msgstr "Trimite" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "" + +msgid "Switch" +msgstr "" + +msgid "Switch %q" +msgstr "" + +msgid "Switch %q (%s)" +msgstr "" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "" + +msgid "Sync with browser" +msgstr "" + +msgid "Synchronizing..." +msgstr "" + +msgid "System" +msgstr "Sistem" + +msgid "System Log" +msgstr "Log de sistem" + +msgid "System Properties" +msgstr "Proprietati sistem" + +msgid "System log buffer size" +msgstr "" + +msgid "TCP:" +msgstr "" + +msgid "TFTP Settings" +msgstr "Setarile TFTP" + +msgid "TFTP server root" +msgstr "" + +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "" + +msgid "Table" +msgstr "Tabel" + +msgid "Target" +msgstr "Tinta" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "Termina" + +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" + +msgid "The following changes have been committed" +msgstr "" + +msgid "The following changes have been reverted" +msgstr "" + +msgid "The following rules are currently active on this system." +msgstr "" + +msgid "The given network name is not unique" +msgstr "" + +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" + +msgid "The length of the IPv6 prefix in bits" +msgstr "" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" + +msgid "The selected protocol needs a device assigned" +msgstr "" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" + +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" + +msgid "There are no active leases." +msgstr "" + +msgid "There are no pending changes to apply!" +msgstr "Nu exista modificari in asteptare de aplicat !" + +msgid "There are no pending changes to revert!" +msgstr "Nu exista modificari in asteptare de anulat !" + +msgid "There are no pending changes!" +msgstr "Nu exista modificari in asteptare !" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" +"Nu exista o parola pe acest router. Configureaza o parola la contul root " +"pentru a proteja interfata web si porni SSH." + +msgid "This IPv4 address of the relay" +msgstr "" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "" + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" + +msgid "This page allows the configuration of custom button actions" +msgstr "" + +msgid "This page gives an overview over currently active network connections." +msgstr "" + +msgid "This section contains no values yet" +msgstr "" + +msgid "Time Synchronization" +msgstr "" + +msgid "Time Synchronization is not configured yet." +msgstr "" + +msgid "Timezone" +msgstr "Fusul orar" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "Total disponibil" + +msgid "Traceroute" +msgstr "" + +msgid "Traffic" +msgstr "Trafic" + +msgid "Transfer" +msgstr "Transfer" + +msgid "Transmission Rate" +msgstr "Rata de transmitere" + +msgid "Transmit" +msgstr "" + +msgid "Transmit Power" +msgstr "Puterea de transmitere" + +msgid "Transmitter Antenna" +msgstr "Antena de transmitere" + +msgid "Trigger" +msgstr "" + +msgid "Trigger Mode" +msgstr "" + +msgid "Tunnel ID" +msgstr "" + +msgid "Tunnel Interface" +msgstr "Interfata de tunel" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "Mod turbo" + +msgid "Tx-Power" +msgstr "Puterea TX" + +msgid "Type" +msgstr "Tip" + +msgid "UDP:" +msgstr "UDP:" + +msgid "UMTS only" +msgstr "Doar UMTS" + +msgid "UMTS/GPRS/EV-DO" +msgstr "" + +msgid "USB Device" +msgstr "Dispozitiv USB" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "UUID" + +msgid "Unable to dispatch" +msgstr "" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "Necunoscut" + +msgid "Unknown Error, password not changed!" +msgstr "Eroare necunoscuta, parola neschimbata !" + +msgid "Unmanaged" +msgstr "Neadministrate" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "Modificari nesalvate" + +msgid "Unsupported protocol type." +msgstr "Tipul de protocol neacceptat." + +msgid "Update lists" +msgstr "" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" + +msgid "Upload archive..." +msgstr "" + +msgid "Uploaded File" +msgstr "Fisier incarcat" + +msgid "Uptime" +msgstr "Uptime" + +msgid "Use /etc/ethers" +msgstr "Foloseste /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "" + +msgid "Use DNS servers advertised by peer" +msgstr "" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "Foloseste codurile de tara ISO/IEC 3166 alpha2." + +msgid "Use MTU on tunnel interface" +msgstr "" + +msgid "Use TTL on tunnel interface" +msgstr "" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "" + +msgid "Use default gateway" +msgstr "" + +msgid "Use gateway metric" +msgstr "" + +msgid "Use routing table" +msgstr "" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" + +msgid "Used" +msgstr "Folosit" + +msgid "Used Key Slot" +msgstr "Slot de cheie folosit" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "Utilizator" + +msgid "VC-Mux" +msgstr "VC-Mux" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "VLANuri pe %q" + +msgid "VLANs on %q (%s)" +msgstr "" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "" + +msgid "Version" +msgstr "Versiune" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "Sistem deschis WEP" + +msgid "WEP Shared Key" +msgstr "Sistem de cheie impartasita WEP" + +msgid "WEP passphrase" +msgstr "Parola WEP" + +msgid "WMM Mode" +msgstr "Mod WMM" + +msgid "WPA passphrase" +msgstr "Parola WPA" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"Criptarea WPA necesita wpa_supplicant (pentru modul client) sau hostapd " +"(pentru modul AP sau ad-hoc) instalate." + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "" + +msgid "Waiting for command to complete..." +msgstr "" + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "Avertizare" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "Wireless" + +msgid "Wireless Adapter" +msgstr "Adaptorul wireless" + +msgid "Wireless Network" +msgstr "Retea wireless" + +msgid "Wireless Overview" +msgstr "Sumarul wireless" + +msgid "Wireless Security" +msgstr "Securitate wireless" + +msgid "Wireless is disabled or not associated" +msgstr "Wireless-ul este dezactivat sau ne-asociat" + +msgid "Wireless is restarting..." +msgstr "Wireless-ul se restarteaza.." + +msgid "Wireless network is disabled" +msgstr "Reteaua wireless este dezactivata" + +msgid "Wireless network is enabled" +msgstr "Reteaua wireless este activata" + +msgid "Wireless restarted" +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" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "Suport XR" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "oricare" + +msgid "auto" +msgstr "auto" + +msgid "baseT" +msgstr "" + +msgid "bridged" +msgstr "" + +msgid "create:" +msgstr "" + +msgid "creates a bridge over specified interface(s)" +msgstr "" + +msgid "dB" +msgstr "" + +msgid "dBm" +msgstr "" + +msgid "disable" +msgstr "dezactiveaza" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "expirat" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" + +msgid "forward" +msgstr "" + +msgid "full-duplex" +msgstr "" + +msgid "half-duplex" +msgstr "" + +msgid "help" +msgstr "ajutor" + +msgid "hidden" +msgstr "ascuns" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "daca tinta este o retea" + +msgid "input" +msgstr "" + +msgid "kB" +msgstr "" + +msgid "kB/s" +msgstr "" + +msgid "kbit/s" +msgstr "" + +msgid "local DNS file" +msgstr "" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "nu" + +msgid "no link" +msgstr "" + +msgid "none" +msgstr "" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "" + +msgid "on" +msgstr "" + +msgid "open" +msgstr "" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "rutat" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "etichetat" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "necunoscut" + +msgid "unlimited" +msgstr "nelimitat" + +msgid "unspecified" +msgstr "nespecificat" + +msgid "unspecified -or- create:" +msgstr "" + +msgid "untagged" +msgstr "neetichetat" + +msgid "yes" +msgstr "da" + +msgid "« Back" +msgstr "« Inapoi" + +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "" +#~ "Daca lasati aceasta optiune neselectata va fi creata o retea aditionala" + +#~ msgid "CPU" +#~ msgstr "Procesor" + +#~ msgid "Port %d" +#~ msgstr "Port %d" + +#~ msgid "VLAN Interface" +#~ msgstr "Interfata VLAN" diff --git a/luci-base/po/ru/base.po b/luci-base/po/ru/base.po new file mode 100644 index 000000000..d54835e23 --- /dev/null +++ b/luci-base/po/ru/base.po @@ -0,0 +1,3991 @@ +msgid "" +msgstr "" +"Project-Id-Version: LuCI: base\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-05-19 19:36+0200\n" +"PO-Revision-Date: 2014-01-31 21:08+0200\n" +"Last-Translator: Moon_dark \n" +"Language-Team: Russian \n" +"Language: ru\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" +"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"X-Generator: Pootle 2.0.6\n" +"X-Poedit-SourceCharset: UTF-8\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(%d минутное окно, %d секундный интервал)" + +msgid "(%s available)" +msgstr "(%s доступно)" + +msgid "(empty)" +msgstr "(пусто)" + +msgid "(no interfaces attached)" +msgstr "(нет связанных интерфейсов)" + +msgid "-- Additional Field --" +msgstr "-- Дополнительное поле --" + +msgid "-- Please choose --" +msgstr "-- Пожалуйста, выберите --" + +msgid "-- custom --" +msgstr "-- пользовательский --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "Загрузка за 1 минуту:" + +msgid "15 Minute Load:" +msgstr "Загрузка за 15 минут:" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "Загрузка за 5 минут:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "DNS query port" +msgstr "Порт запроса DNS" + +msgid "DNS server port" +msgstr "Порт DNS-сервера" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" +"DNS серверы будут опрошены в " +"порядке, определенном в resolvfile файле" + +msgid "ESSID" +msgstr "ESSID" + +msgid "IPv4-Address" +msgstr "IPv4-адрес" + +msgid "IPv4-Gateway" +msgstr "IPv4-адрес шлюза" + +msgid "IPv4-Netmask" +msgstr "Маска сети IPv4" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"IPv6-адрес или сеть (CIDR)" + +msgid "IPv6-Gateway" +msgstr "IPv6-адрес шлюза" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "Настройка LED" + +msgid "LED Name" +msgstr "Название LED" + +msgid "MAC-Address" +msgstr "MAC-адрес" + +msgid "" +"Max. DHCP leases" +msgstr "" +"Макс. кол-во аренд DHCP" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"Макс. размер пакета EDNS0" + +msgid "Max. concurrent queries" +msgstr "" +"Макс. кол-во одновременных запросов" + +# Парный шифр используется для одноадресной передачи, а групповой - для широковещательной и мультикаста +msgid "%s - %s" +msgstr "%s - %s" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "Поддержка AR" + +msgid "ARP retry threshold" +msgstr "Порог повтора ARP" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "Мосты ATM" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "Идентификатор виртуального канала ATM (VCI)" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "Идентификатор виртуального пути ATM (VPI)" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"ATM-мосты выставляют инкапсулированный Ethernet в соединениях AAL5 в " +"качестве виртуальных сетевых интерфейсов Linux, которые могут быть " +"использованы в сочетании с DHCP или PPP для подключения к сети провайдера." + +msgid "ATM device number" +msgstr "Номер устройства ATM" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "Концентратор доступа" + +msgid "Access Point" +msgstr "Точка доступа" + +msgid "Action" +msgstr "Действие" + +msgid "Actions" +msgstr "Действия" + +msgid "Activate this network" +msgstr "Активировать эту сеть" + +msgid "Active IPv4-Routes" +msgstr "" +"Активные маршруты IPv4" + +msgid "Active IPv6-Routes" +msgstr "" +"Активные маршруты IPv6" + +msgid "Active Connections" +msgstr "Активные соединения" + +msgid "Active DHCP Leases" +msgstr "Активные аренды DHCP" + +msgid "Active DHCPv6 Leases" +msgstr "Активные аренды DHCPv6" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc" + +msgid "Add" +msgstr "Добавить" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "" +"Добавить суффикс локального домена к именам, полученным из файлов hosts" + +msgid "Add new interface..." +msgstr "Добавить новый интерфейс..." + +msgid "Additional Hosts files" +msgstr "Дополнительные файлы hosts" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "Адрес" + +msgid "Address to access local relay bridge" +msgstr "Адрес для доступа к локальному мосту-ретранслятору" + +msgid "Administration" +msgstr "Управление" + +msgid "Advanced Settings" +msgstr "Расширенные настройки" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "Тревожная ситуация" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "" +"Разрешить SSH-аутентификацию с помощью " +"пароля" + +msgid "Allow all except listed" +msgstr "Разрешить все, кроме перечисленных" + +msgid "Allow listed only" +msgstr "Разрешить только перечисленные" + +msgid "Allow localhost" +msgstr "Разрешить локальный хост" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" +"Разрешить удалённым хостам подключаться к локальным перенаправленным портам " +"SSH" + +msgid "Allow root logins with password" +msgstr "Разрешить пользователю root вход с помощью пароля" + +msgid "Allow the root user to login with password" +msgstr "" +"Разрешить пользователю root входить в систему с помощью пароля" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "Разрешить ответы в диапазоне 127.0.0.0/8, например, для RBL-сервисов" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "Антенна 1" + +msgid "Antenna 2" +msgstr "Антенна 2" + +msgid "Antenna Configuration" +msgstr "Конфигурация антенн" + +msgid "Any zone" +msgstr "Любая зона" + +msgid "Apply" +msgstr "Принять" + +msgid "Applying changes" +msgstr "Применение изменений" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "Назначить интерфейсы..." + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "Подключенные клиенты" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Беспроводной 802.11%s контроллер Atheros" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "Аутентификация" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "Авторитетный" + +msgid "Authorization Required" +msgstr "Требуется авторизация" + +msgid "Auto Refresh" +msgstr "Автообновление" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "Доступно" + +msgid "Available packages" +msgstr "Доступные пакеты" + +msgid "Average:" +msgstr "Средняя:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "Назад" + +msgid "Back to Overview" +msgstr "Назад к обзору" + +msgid "Back to configuration" +msgstr "Назад к настройке" + +msgid "Back to overview" +msgstr "Назад к обзору" + +msgid "Back to scan results" +msgstr "Назад к результатам сканирования" + +msgid "Background Scan" +msgstr "Фоновое сканирование" + +msgid "Backup / Flash Firmware" +msgstr "Резервная копия / прошивка" + +msgid "Backup / Restore" +msgstr "Резервное копирование / Восстановление" + +msgid "Backup file list" +msgstr "Список файлов для резервного копирования" + +msgid "Bad address specified!" +msgstr "Указан неправильный адрес!" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"Ниже приводится определённый список файлов для резервного копирования. Он " +"состоит из изменённых конфигурационных файлов, отмеченных opkg, необходимых " +"базовых файлов, а также шаблонов резервного копирования, определённых " +"пользователем." + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "Скорость" + +msgid "Bogus NX Domain Override" +msgstr "Переопределение поддельного NX-домена" + +msgid "Bridge" +msgstr "Мост" + +msgid "Bridge interfaces" +msgstr "Объединить в мост" + +msgid "Bridge unit number" +msgstr "Номер моста" + +msgid "Bring up on boot" +msgstr "Запустить при загрузке" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "Беспроводной 802.11%s контроллер Broadcom" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "Беспроводной 802.11 контроллер Broadcom BCM%04x" + +msgid "Buffered" +msgstr "Буферизировано" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "Кнопки" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "Загрузка ЦП (%)" + +msgid "Cancel" +msgstr "Отменить" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "Цепочка" + +msgid "Changes" +msgstr "Изменения" + +msgid "Changes applied." +msgstr "Изменения приняты." + +msgid "Changes the administrator password for accessing the device" +msgstr "Изменить пароль администратора для доступа к устройству" + +msgid "Channel" +msgstr "Канал" + +msgid "Check" +msgstr "Проверить" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "Контрольная сумма" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"Укажите зону, которую вы хотите прикрепить к этому интерфейсу. Выберите " +"не определено, чтобы удалить этот интерфейс из зоны, или заполните " +"поле создать, чтобы определить новую зону и прикрепить к ней этот " +"интерфейс." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" +"Выберите сеть (сети), которые вы хотите прикрепить к этому беспроводному " +"интерфейсу, или заполните поле создать, чтобы определить новую сеть." + +msgid "Cipher" +msgstr "Шифрование" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"Нажмите \"Создать архив\", чтобы загрузить tar-архив текущих " +"конфигурационных файлов. Для сброса настроек прошивки к исходному состоянию " +"нажмите \"Выполнить сброс\" (возможно только для squashfs-образов)." + +msgid "Client" +msgstr "Клиент" + +msgid "Client ID to send when requesting DHCP" +msgstr "ID клиента при DHCP-запросе" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" +"Завершать неактивное соединение после заданного интервала (сек.), " +"используйте значение 0 для удержания неактивного соединения" + +msgid "Close list..." +msgstr "Закрыть список..." + +msgid "Collecting data..." +msgstr "Сбор информации..." + +msgid "Command" +msgstr "Команда" + +msgid "Common Configuration" +msgstr "Общая конфигурация" + +msgid "Compression" +msgstr "Сжатие" + +msgid "Configuration" +msgstr "Конфигурация" + +msgid "Configuration applied." +msgstr "Конфигурация применена." + +msgid "Configuration files will be kept." +msgstr "Конфигурационные файлы будут сохранены." + +msgid "Confirmation" +msgstr "Подтверждение пароля" + +msgid "Connect" +msgstr "Соединить" + +msgid "Connected" +msgstr "Подключен" + +msgid "Connection Limit" +msgstr "Ограничение соединений" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "Соединения" + +msgid "Country" +msgstr "Страна" + +msgid "Country Code" +msgstr "Код страны" + +msgid "Cover the following interface" +msgstr "Включить следующий интерфейс" + +msgid "Cover the following interfaces" +msgstr "Включить следующие интерфейсы" + +msgid "Create / Assign firewall-zone" +msgstr "Создать / назначить зону сетевого экрана" + +msgid "Create Interface" +msgstr "Создать интерфейс" + +msgid "Create a bridge over multiple interfaces" +msgstr "Создать мост над несколькими интерфейсами" + +msgid "Critical" +msgstr "Критическая ситуация" + +msgid "Cron Log Level" +msgstr "Уровень вывода Cron" + +msgid "Custom Interface" +msgstr "Пользовательский интерфейс" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"Настройка поведения LED если это возможно." + +msgid "DHCP Leases" +msgstr "Аренды DHCP" + +msgid "DHCP Server" +msgstr "DHCP-сервер" + +msgid "DHCP and DNS" +msgstr "DHCP и DNS" + +msgid "DHCP client" +msgstr "DHCP-клиент" + +msgid "DHCP-Options" +msgstr "DHCP-Настройки" + +msgid "DHCPv6 Leases" +msgstr "Аренды DHCPv6" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "Перенаправление запросов DNS" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "DUID" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "Отладка" + +msgid "Default %d" +msgstr "По умолчанию %d" + +msgid "Default gateway" +msgstr "Шлюз по умолчанию" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "Начальное состояние" + +msgid "Define a name for this network." +msgstr "Укажите имя этой сети." + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"Определить дополнительные опции DHCP, например, " +"\"6,192.168.2.1,192.168.2.2\", чтобы известить клиентов о DNS-" +"серверах." + +msgid "Delete" +msgstr "Удалить" + +msgid "Delete this network" +msgstr "Удалить эту сеть" + +msgid "Description" +msgstr "Описание" + +msgid "Design" +msgstr "Тема" + +msgid "Destination" +msgstr "Назначение" + +msgid "Device" +msgstr "Устройство" + +msgid "Device Configuration" +msgstr "Конфигурация устройства" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "Диагностика" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "Директория" + +msgid "Disable" +msgstr "Отключить" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +"Отключить DHCP для этого интерфейса." + +msgid "Disable DNS setup" +msgstr "Отключить настройку DNS" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "Отключить таймер HW-Beacon" + +msgid "Disabled" +msgstr "Отключено" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "Отбрасывать ответы RFC1918" + +msgid "Displaying only packages containing" +msgstr "Показываются только пакеты, содержащие" + +msgid "Distance Optimization" +msgstr "Оптимизация расстояния" + +msgid "Distance to farthest network member in meters." +msgstr "Расстояние до самого удалённого сетевого узла в метрах." + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "Разновидность антенн" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Dnsmasq содержит в себе DHCP-сервер и DNS-" +"прокси для сетевых экранов NAT" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "Не кешировать отрицательные ответы, в т.ч. для несуществующих доменов" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" +"Не перенаправлять запросы, которые не могут быть обработаны публичными DNS-" +"серверами" + +msgid "Do not forward reverse lookups for local networks" +msgstr "Не перенаправлять обратные DNS-запросы для локальных сетей" + +msgid "Do not send probe responses" +msgstr "Не посылать тестовые ответы" + +msgid "Domain required" +msgstr "Требуется домен" + +msgid "Domain whitelist" +msgstr "Белый список доменов" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" +"Не перенаправлять DNS-запросы " +"без DNS-имени" + +msgid "Download and install package" +msgstr "Загрузить и установить пакет" + +msgid "Download backup" +msgstr "Загрузить резервную копию" + +msgid "Dropbear Instance" +msgstr "Dropbear" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear - это SSH-сервер со встроенным " +"SCP" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" +"Динамический DHCP" + +msgid "Dynamic tunnel" +msgstr "Динамический туннель" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" +"Динамически выделять DHCP-адреса клиентам. Если выключено, то будут " +"обслужены только клиенты с постоянно арендованными адресами." + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "Метод EAP" + +# "Редактировать" длинно и не влазит по ширине в кнопку - текст наезжает на иконку +#, fuzzy +msgid "Edit" +msgstr "Редактировать" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +#, fuzzy +msgid "Edit this interface" +msgstr "Редактировать этот интерфейс" + +msgid "Edit this network" +msgstr "Редактировать эту сеть" + +msgid "Emergency" +msgstr "Чрезвычайная ситуация" + +msgid "Enable" +msgstr "Включить" + +msgid "Enable STP" +msgstr "Включить STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "Включить динамическое обновление оконечной точки HE.net" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "Включить IPv6-согласование на PPP-соединении" + +msgid "Enable Jumbo Frame passthrough" +msgstr "Пропускать Jumbo-кадры" + +msgid "Enable NTP client" +msgstr "Включить NTP-клиент" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "Включить TFTP-сервер" + +msgid "Enable VLAN functionality" +msgstr "Включить поддержку VLAN" + +msgid "Enable WPS pushbutton, requires WPA(2)-PSK" +msgstr "" + +msgid "Enable key reinstallation (KRACK) countermeasures" +msgstr "" + +msgid "Enable learning and aging" +msgstr "Включить изучение и устаревание (learning/aging)" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "Включить эту точку монтирования" + +msgid "Enable this swap" +msgstr "Включить этот раздел подкачки" + +msgid "Enable/Disable" +msgstr "Включить/выключить" + +msgid "Enabled" +msgstr "Включено" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "Включает Spanning Tree Protocol на этом мосту" + +msgid "Encapsulation mode" +msgstr "Режим инкапсуляции" + +msgid "Encryption" +msgstr "Шифрование" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "Стирание..." + +msgid "Error" +msgstr "Ошибка" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "Ethernet-адаптер" + +msgid "Ethernet Switch" +msgstr "Ethernet-коммутатор" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "Расширять имена узлов" + +msgid "Expires" +msgstr "Истекает" + +#, fuzzy +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" +"Время, через которое истекает аренда адреса, минимум 2 минуты (2m)." + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "Сервер системного журнала" + +msgid "External system log server port" +msgstr "Порт сервера системного журнала" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "Быстрые кадры" + +msgid "File" +msgstr "Файл" + +msgid "Filename of the boot image advertised to clients" +msgstr "Имя загрузочного образа, извещаемого клиентам" + +msgid "Filesystem" +msgstr "Файловая система" + +msgid "Filter" +msgstr "Фильтр" + +msgid "Filter private" +msgstr "Фильтровать частные" + +msgid "Filter useless" +msgstr "Фильтровать бесполезные" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "Найти и присоединиться к сети" + +msgid "Find package" +msgstr "Найти пакет" + +msgid "Finish" +msgstr "Завершить" + +msgid "Firewall" +msgstr "Межсетевой экран" + +msgid "Firewall Settings" +msgstr "Настройки межсетевого экрана" + +msgid "Firewall Status" +msgstr "Статус межсетевого экрана" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "Версия прошивки" + +msgid "Fixed source port for outbound DNS queries" +msgstr "Фиксированный порт для исходящих DNS-запросов" + +msgid "Flash Firmware" +msgstr "Установить прошивку" + +msgid "Flash image..." +msgstr "Установить..." + +msgid "Flash new firmware image" +msgstr "Установить новый образ прошивки" + +msgid "Flash operations" +msgstr "Операции с прошивкой" + +msgid "Flashing..." +msgstr "Прошивка..." + +# Force DHCP on the network +msgid "Force" +msgstr "Принудительно" + +msgid "Force CCMP (AES)" +msgstr "Требовать CCMP (AES)" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "Использовать DHCP в этой сети, даже если найден другой сервер." + +msgid "Force TKIP" +msgstr "Требовать TKIP" + +msgid "Force TKIP and CCMP (AES)" +msgstr "TKIP или CCMP (AES)" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "Перенаправлять трафик DHCP" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "Перенаправлять широковещательный траффик" + +msgid "Forwarding mode" +msgstr "Режим перенаправления" + +msgid "Fragmentation Threshold" +msgstr "Порог фрагментации" + +msgid "Frame Bursting" +msgstr "Пакетная передача кадров" + +msgid "Free" +msgstr "Свободно" + +msgid "Free space" +msgstr "Свободное место" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "ГГц" + +msgid "GPRS only" +msgstr "Только GPRS" + +msgid "Gateway" +msgstr "Шлюз" + +msgid "Gateway ports" +msgstr "Порты шлюза" + +msgid "General Settings" +msgstr "Основные настройки" + +msgid "General Setup" +msgstr "Основные настройки" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "Создать архив" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "Беспроводной 802.11%s контроллер" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "Введённые пароли не совпадают, пароль не изменён!" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "Перейти к настройке пароля..." + +msgid "Go to relevant configuration page" +msgstr "Перейти к странице конфигурации" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "Пароль HE.net" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "Обработчик" + +# Вообще, SIGHUP означает, что "пользователь отключился от терминала". Но чаще всего сигнал используется для перезапуска, так что переведу именно так. +msgid "Hang Up" +msgstr "Перезапустить" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"Здесь вы можете настроить основные параметры вашего устройства такие как имя " +"хоста или часовой пояс." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" +"Здесь вы можете добавить открытые SSH ключи (один ключ на строку) для SSH " +"аутентификации." + +msgid "Hermes 802.11b Wireless Controller" +msgstr "Беспроводной 802.11b контроллер Hermes" + +msgid "Hide ESSID" +msgstr "Скрыть ESSID" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "Записи хостов" + +msgid "Host expiry timeout" +msgstr "Таймаут хоста" + +msgid "Host-IP or Network" +msgstr "IP-адрес или сеть" + +msgid "Hostname" +msgstr "Имя хоста" + +msgid "Hostname to send when requesting DHCP" +msgstr "Имя хоста в DHCP-запросах" + +msgid "Hostnames" +msgstr "Имена хостов" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "IP-адрес" + +msgid "IPv4" +msgstr "IPv4" + +msgid "IPv4 Firewall" +msgstr "Межсетевой экран IPv4" + +msgid "IPv4 WAN Status" +msgstr "Статус IPv4 WAN" + +msgid "IPv4 address" +msgstr "IPv4-адрес" + +msgid "IPv4 and IPv6" +msgstr "IPv4 и IPv6" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "Широковещательный IPv4-адрес" + +msgid "IPv4 gateway" +msgstr "IPv4-адрес шлюза" + +msgid "IPv4 netmask" +msgstr "Маска сети IPv4" + +msgid "IPv4 only" +msgstr "Только IPv4" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "Длина префикса IPv4" + +msgid "IPv4-Address" +msgstr "IPv4-адрес" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "Межсетевой экран IPv6" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "Статус IPv6 WAN" + +msgid "IPv6 address" +msgstr "IPv6-адрес" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "IPv6-адрес шлюза" + +msgid "IPv6 only" +msgstr "Только IPv6" + +msgid "IPv6 prefix" +msgstr "Префикс IPv6" + +msgid "IPv6 prefix length" +msgstr "Длина префикса IPv6" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "IPv6-адрес" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "IPv6 в IPv4 (RFC4213)" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "IPv6 через IPv4 (6rd)" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "IPv6 через IPv4 (6to4)" + +msgid "Identity" +msgstr "Идентификация EAP" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" +"Если выбрано, монтировать устройство, используя его UUID, вместо " +"фиксированного файла устройства" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" +"Если выбрано, монтировать устройство, используя название его раздела, вместо " +"фиксированного файла устройства" + +msgid "If unchecked, no default route is configured" +msgstr "Если не выбрано, то маршрут по умолчанию не настраивается" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "Если не выбрано, то извещаемые адреса DNS-серверов игнорируются" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"Если физической памяти не достаточно, то неиспользуемые данные могут быть " +"временно перемещены в раздел подкачки, что в свою очередь приведет к " +"увеличению объёму свободной RAM. " +"Однако, перемещение в файл - это достаточно долгий процесс, так как " +"устройство, на котором располагается раздел подкачки, работает гораздо " +"медленнее, чем RAM." + +msgid "Ignore /etc/hosts" +msgstr "Ignore /etc/hosts" + +msgid "Ignore interface" +msgstr "Игнорировать интерфейс" + +msgid "Ignore resolve file" +msgstr "Игнорировать файл resolv" + +msgid "Image" +msgstr "Образ" + +msgid "In" +msgstr "В" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "Таймаут бездействия" + +msgid "Inbound:" +msgstr "Входящий:" + +msgid "Info" +msgstr "Информация" + +msgid "Initscript" +msgstr "Скрипт инициализации" + +msgid "Initscripts" +msgstr "Скрипты инциализации" + +msgid "Install" +msgstr "Установить" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "Установить пакет %q" + +msgid "Install protocol extensions..." +msgstr "Установить расширения протокола..." + +msgid "Installed packages" +msgstr "Установленные пакеты" + +msgid "Interface" +msgstr "Интерфейс" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "Конфигурация интерфейса" + +msgid "Interface Overview" +msgstr "Обзор интерфейса" + +msgid "Interface is reconnecting..." +msgstr "Интерфейс переподключается..." + +msgid "Interface is shutting down..." +msgstr "Интерфейс отключается..." + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "Интерфейс не существует или пока не подключен." + +msgid "Interface reconnected" +msgstr "Интерфейс переподключен" + +msgid "Interface shut down" +msgstr "Интерфейс отключен" + +msgid "Interfaces" +msgstr "Интерфейсы" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "Внутренняя ошибка сервера" + +msgid "Invalid" +msgstr "Введённое значение не верно" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" +"Указан неверный VLAN ID! Доступны только идентификаторы в диапазоне от %d до " +"%d." + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "Указан неверный VLAN ID! Доступны только уникальные ID" + +msgid "Invalid username and/or password! Please try again." +msgstr "Неверный логин и/или пароль! Пожалуйста попробуйте снова." + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"Вы пытаетесь обновить прошивку файлом, который не помещается в память " +"устройства! Пожалуйста, проверьте файл образа." + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "Требуется JavaScript!" + +msgid "Join Network" +msgstr "Подключение к сети" + +msgid "Join Network: Wireless Scan" +msgstr "Подключение к сети: сканирование" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "Сохранить настройки" + +msgid "Kernel Log" +msgstr "Журнал ядра" + +msgid "Kernel Version" +msgstr "Версия ядра" + +msgid "Key" +msgstr "Ключ" + +msgid "Key #%d" +msgstr "Ключ №%d" + +msgid "Kill" +msgstr "Принудительно завершить" + +msgid "L2TP" +msgstr "L2TP" + +msgid "L2TP Server" +msgstr "L2TP-сервер" + +msgid "LCP echo failure threshold" +msgstr "Порог ошибок эхо-запросов LCP" + +msgid "LCP echo interval" +msgstr "Интервал эхо-запросов LCP" + +msgid "LLC" +msgstr "LLC" + +msgid "Label" +msgstr "Метка" + +msgid "Language" +msgstr "Язык" + +msgid "Language and Style" +msgstr "Язык и тема" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "Срок действия аренды" + +msgid "Leasefile" +msgstr "Файл аренд" + +msgid "Leasetime remaining" +msgstr "Оставшееся время аренды" + +msgid "Leave empty to autodetect" +msgstr "Оставьте поле пустым для автоопределения" + +msgid "Leave empty to use the current WAN address" +msgstr "Оставьте пустым для использования текущего адреса WAN" + +msgid "Legend:" +msgstr "Легенда:" + +msgid "Limit" +msgstr "Предел" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "Подключение" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" +"Список DNS-серверов для " +"перенаправления запросов" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "Список доменов, для которых разрешены ответы RFC1918" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "Список хостов, поставляющих поддельные результаты домена NX" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "Слушать только на данном интерфейсе или, если не определено, на всех" + +msgid "Listening port for inbound DNS queries" +msgstr "Порт для входящих DNS-запросов" + +msgid "Load" +msgstr "Загрузка" + +msgid "Load Average" +msgstr "Средняя загрузка" + +msgid "Loading" +msgstr "Загрузка" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "Локальный IPv4-адрес" + +msgid "Local IPv6 address" +msgstr "Локальный IPv6-адрес" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "Локальная загрузка" + +msgid "Local Time" +msgstr "Местное время" + +msgid "Local domain" +msgstr "Локальный домен" + +#, fuzzy +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" +"Определение локального домена. Имена в этом домене никогда не запрашиваются " +"у DNS-сервера, а разрешаются на основе данных DHCP и файлов hosts" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" +"Суффикс локального домена, который будет добавлен к DHCP-именам и записям из " +"файлов hosts" + +msgid "Local server" +msgstr "Локальный сервер" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" +"Локализировать имя хоста в зависимости от запрашиваемой подсети, если " +"доступно несколько IP-адресов." + +msgid "Localise queries" +msgstr "Локализовывать запросы" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "Уровень вывода" + +msgid "Log queries" +msgstr "Записывать запросы в журнал" + +msgid "Logging" +msgstr "Журналирование" + +msgid "Login" +msgstr "Войти" + +msgid "Logout" +msgstr "Выйти" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "Минимальный адрес аренды." + +msgid "MAC-Address" +msgstr "MAC-адрес" + +msgid "MAC-Address Filter" +msgstr "Фильтр MAC-адресов" + +msgid "MAC-Filter" +msgstr "MAC-фильтр" + +msgid "MAC-List" +msgstr "Список MAC" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "МБ/с" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "МГц" + +msgid "MTU" +msgstr "MTU" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "Максимальная скорость" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "Максимальное количество активных арендованных DHCP-адресов" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "Максимально допустимое количество одновременных DNS-запросов" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "Максимально допустимый размер UDP пакетов-EDNS.0" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "Максимальное время ожидания готовности модема (секунды)" + +msgid "Maximum hold time" +msgstr "Максимальное время удержания" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "Максимальное количество арендованных адресов." + +msgid "Mbit/s" +msgstr "Мбит/с" + +msgid "Memory" +msgstr "Память" + +msgid "Memory usage (%)" +msgstr "Использование памяти (%)" + +msgid "Metric" +msgstr "Метрика" + +msgid "Minimum Rate" +msgstr "Минимальная скорость" + +msgid "Minimum hold time" +msgstr "Минимальное время удержания" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "Отсутствует расширение протокола %q" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "Режим" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "Модем" + +msgid "Modem init timeout" +msgstr "Таймаут инициализации модема" + +# 802.11 monitor mode +msgid "Monitor" +msgstr "Монитор" + +msgid "Mount Entry" +msgstr "Точка монтирования" + +msgid "Mount Point" +msgstr "Точка монтирования" + +msgid "Mount Points" +msgstr "Точки монтирования" + +msgid "Mount Points - Mount Entry" +msgstr "Точки монтирования - Запись" + +msgid "Mount Points - Swap Entry" +msgstr "Точки монтирования - Запись подкачки" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"Точки монтирования определяют, куда в файловой системе будет прикреплено " +"запоминающее устройство" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "Опции монтирования" + +msgid "Mount point" +msgstr "Точка монтирования" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "Смонтированные файловые системы" + +msgid "Move down" +msgstr "Переместить вниз" + +msgid "Move up" +msgstr "Переместить вверх" + +msgid "Multicast Rate" +msgstr "Скорость групповой передачи" + +msgid "Multicast address" +msgstr "Адрес групповой передачи" + +msgid "NAS ID" +msgstr "Идентификатор NAS" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "Список NTP-серверов" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "Имя" + +msgid "Name of the new interface" +msgstr "Имя нового интерфейса" + +msgid "Name of the new network" +msgstr "Имя новой сети" + +msgid "Navigation" +msgstr "Навигация" + +msgid "Netmask" +msgstr "Маска сети" + +msgid "Network" +msgstr "Сеть" + +msgid "Network Utilities" +msgstr "Сетевые утилиты" + +msgid "Network boot image" +msgstr "Образ системы для сетевой загрузки" + +msgid "Network without interfaces." +msgstr "Сеть без интерфейсов." + +msgid "Next »" +msgstr "Следующий »" + +msgid "No DHCP Server configured for this interface" +msgstr "DHCP-сервер не настроен для этого интерфейса" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "Нет цепочек в этой таблице" + +msgid "No files found" +msgstr "Файлы не найдены" + +msgid "No information available" +msgstr "Нет доступной информации" + +msgid "No negative cache" +msgstr "Отключить кэш отрицательных ответов" + +msgid "No network configured on this device" +msgstr "Не настроена сеть на устройстве" + +msgid "No network name specified" +msgstr "Не задано имя сети" + +msgid "No package lists available" +msgstr "Список пакетов не доступен" + +msgid "No password set!" +msgstr "Пароль не установлен!" + +msgid "No rules in this chain" +msgstr "Нет правил в данной цепочке" + +msgid "No zone assigned" +msgstr "Зона не присвоена" + +msgid "Noise" +msgstr "Шум" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "Шум:" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "Нет" + +msgid "Normal" +msgstr "Нормально" + +msgid "Not Found" +msgstr "Не найдено" + +msgid "Not associated" +msgstr "Не связанный" + +msgid "Not connected" +msgstr "Не подключено" + +msgid "Note: Configuration files will be erased." +msgstr "Примечание: конфигурационные файлы будут стёрты." + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "Заметка" + +msgid "Nslookup" +msgstr "DNS-запрос" + +msgid "OK" +msgstr "OK" + +msgid "OPKG-Configuration" +msgstr "Настройка OPKG" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "Задержка выключенного состояния" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"На этой странице вы можете настроить сетевые интерфейсы. Вы можете " +"объединить несколько интерфейсов в мост, выбрав опцию \"Объединить в мост\" " +"и введя список интерфейсов, разделенных пробелами. Вы также можете " +"использовать VLAN-" +"обозначения вида ИНТЕРФЕЙС.НОМЕРVLAN (напр.: eth0.1)." + +msgid "On-State Delay" +msgstr "Задержка включенного состояния" + +msgid "One of hostname or mac address must be specified!" +msgstr "Должен быть указан либо MAC-адрес, либо имя хоста!" + +msgid "One or more fields contain invalid values!" +msgstr "Одно или несколько полей содержат недопустимые значения!" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "Одно или несколько обязательных полей не заполнены!" + +msgid "Open list..." +msgstr "Открыть список..." + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "Опция изменена" + +msgid "Option removed" +msgstr "Опция удалена" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "Опции" + +msgid "Other:" +msgstr "Другие:" + +msgid "Out" +msgstr "Вне" + +msgid "Outbound:" +msgstr "Исходящий:" + +msgid "Outdoor Channels" +msgstr "Внешние каналы" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "Назначить MAC-адрес" + +msgid "Override MTU" +msgstr "Назначить MTU" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "Назначить шлюз в ответах DHCP" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" +"Переопределите сетевую маску, отправленную клиентам. Обычно это вычислено от " +"подсети, которая подана." + +msgid "Override the table used for internal routes" +msgstr "Назначить таблицу внутренних маршрутов" + +msgid "Overview" +msgstr "Обзор" + +msgid "Owner" +msgstr "Владелец" + +msgid "PAP/CHAP password" +msgstr "Пароль PAP/CHAP" + +msgid "PAP/CHAP username" +msgstr "Имя пользователя PAP/CHAP" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "PIN" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "PPP" + +msgid "PPPoA Encapsulation" +msgstr "Инкапсуляция PPPoA" + +msgid "PPPoATM" +msgstr "PPPoATM" + +msgid "PPPoE" +msgstr "PPPoE" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "PPTP" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "Требуется пакет libiwinfo!" + +msgid "Package lists are older than 24 hours" +msgstr "Список пакетов обновлялся более 24 часов назад" + +msgid "Package name" +msgstr "Имя пакета" + +msgid "Packets" +msgstr "Пакеты" + +msgid "Part of zone %q" +msgstr "Часть зоны %q" + +msgid "Password" +msgstr "Пароль" + +msgid "Password authentication" +msgstr "Аутентификация с помощью пароля" + +msgid "Password of Private Key" +msgstr "Пароль или закрытый ключ" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "Пароль успешно изменён!" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "Путь к центру сертификации" + +msgid "Path to Client-Certificate" +msgstr "Путь к клиентскому сертификату" + +msgid "Path to Private Key" +msgstr "Путь к личному ключу" + +msgid "Path to executable which handles the button event" +msgstr "Путь к программе, обрабатывающей нажатие кнопки" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "Пиковая:" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "Выполнить перезагрузку" + +msgid "Perform reset" +msgstr "Выполнить сброс" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "Скорость:" + +msgid "Physical Settings" +msgstr "Настройки канала" + +msgid "Ping" +msgstr "Эхо-запрос" + +msgid "Pkts." +msgstr "Пакетов." + +msgid "Please enter your username and password." +msgstr "Пожалуйста, введите логин и пароль." + +msgid "Policy" +msgstr "Политика" + +msgid "Port" +msgstr "Порт" + +msgid "Port status:" +msgstr "Состояние порта:" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" +"Предполагать, что узел недоступен после указанного количества ошибок " +"получения эхо-пакета LCP, введите 0 для игнорирования ошибок" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "Не позволяет клиентам обмениваться друг с другом информацией" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "Беспроводной 802.11b контроллер Prism2/2.5/3" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "Продолжить" + +msgid "Processes" +msgstr "Процессы" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "Прот." + +msgid "Protocol" +msgstr "Протокол" + +msgid "Protocol family" +msgstr "Семейство протоколов" + +msgid "Protocol of the new interface" +msgstr "Протокол нового интерфейса" + +msgid "Protocol support is not installed" +msgstr "Поддержка протокола не установлена" + +msgid "Provide NTP server" +msgstr "Включить NTP-сервер" + +msgid "Provide new network" +msgstr "Предоставлять новую сеть" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "Псевдо Ad-Hoc (ahdemo)" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "Качество" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "Порог RTS/CTS" + +msgid "RX" +msgstr "RX" + +msgid "RX Rate" +msgstr "Скорость приёма" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "Беспроводной 802.11%s контроллер RaLink" + +msgid "Radius-Accounting-Port" +msgstr "Порт Radius-Accounting" + +msgid "Radius-Accounting-Secret" +msgstr "Секрет Radius-Accounting" + +msgid "Radius-Accounting-Server" +msgstr "Сервер Radius-Accounting" + +msgid "Radius-Authentication-Port" +msgstr "Порт Radius-Authentication" + +msgid "Radius-Authentication-Secret" +msgstr "Секрет Radius-Authentication" + +msgid "Radius-Authentication-Server" +msgstr "Сервер Radius-Authentication" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"Читать /etc/ethers для настройки DHCP-сервера" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" +"Действительно удалить этот интерфейс? Удаление не может быть отменено!\\nВы " +"можете потерять доступ к этому устройству, если вы подключены через этот " +"интерфейс." + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" +"Действительно удалить эту беспроводную сеть? Удаление не может быть отменено!" +"\\nВы можете потерять доступ к этому устройству, если вы подключены через " +"эту сеть." + +msgid "Really reset all changes?" +msgstr "Действительно сбросить все изменения?" + +#, fuzzy +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" +"Действительно выключить сеть?\\nВы можете потерять доступ к этому " +"устройству, если вы подключены через этот интерфейс." + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" +"Действительно отключить интерфейс \"%s\" ?\\nВы можете потерять доступ к " +"этому устройству, если вы подключены через этот интерфейс." + +msgid "Really switch protocol?" +msgstr "Вы действительно хотите изменить протокол?" + +msgid "Realtime Connections" +msgstr "Соединения в реальном времени" + +msgid "Realtime Graphs" +msgstr "Графики в реальном времени" + +msgid "Realtime Load" +msgstr "Загрузка в реальном времени" + +msgid "Realtime Traffic" +msgstr "Трафик в реальном времени" + +msgid "Realtime Wireless" +msgstr "Беспроводная сеть в реальном времени" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "Защита от DNS Rebinding" + +msgid "Reboot" +msgstr "Перезагрузка" + +msgid "Rebooting..." +msgstr "Перезагрузка..." + +msgid "Reboots the operating system of your device" +msgstr "Перезагрузить операционную систему вашего устройства" + +msgid "Receive" +msgstr "Приём" + +msgid "Receiver Antenna" +msgstr "Приёмная антенна" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "Переподключить этот интерфейс" + +msgid "Reconnecting interface" +msgstr "Интерфейс переподключается" + +# References to firewall chains +msgid "References" +msgstr "Ссылки" + +msgid "Regulatory Domain" +msgstr "Нормативная зона" + +msgid "Relay" +msgstr "Ретранслятор" + +msgid "Relay Bridge" +msgstr "Мост-ретранслятор" + +msgid "Relay between networks" +msgstr "Ретранслятор между сетями" + +msgid "Relay bridge" +msgstr "Мост-ретранслятор" + +msgid "Remote IPv4 address" +msgstr "Удалённый IPv4-адрес" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "Удалить" + +msgid "Repeat scan" +msgstr "Повторить сканирование" + +msgid "Replace entry" +msgstr "Заменить запись" + +msgid "Replace wireless configuration" +msgstr "Заменить беспроводную конфигурацию" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "Требуется для некоторых интернет-провайдеров" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "Сбросить" + +msgid "Reset Counters" +msgstr "Сбросить счётчики" + +msgid "Reset to defaults" +msgstr "Сбросить на значения по умолчанию" + +msgid "Resolv and Hosts Files" +msgstr "Файлы resolv и hosts" + +msgid "Resolve file" +msgstr "Файл resolv" + +msgid "Restart" +msgstr "Перезапустить" + +msgid "Restart Firewall" +msgstr "Перезапустить межсетевой экран" + +msgid "Restore backup" +msgstr "Восстановить резервную копию" + +msgid "Reveal/hide password" +msgstr "Показать/скрыть пароль" + +msgid "Revert" +msgstr "Вернуть" + +msgid "Root" +msgstr "Корень" + +msgid "Root directory for files served via TFTP" +msgstr "Корневая директория для TFTP" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "Пароль маршрутизатора" + +msgid "Routes" +msgstr "Маршруты" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"Маршрутизация служит для определения через какой интерфейс и шлюз можно " +"достичть определённого хоста или сети." + +msgid "Run a filesystem check before mounting the device" +msgstr "Проверять файловую систему перед монтированием устройства" + +msgid "Run filesystem check" +msgstr "Проверять файловую систему" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "Доступ по SSH" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "SSH-ключи" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "Сохранить" + +msgid "Save & Apply" +msgstr "Сохранить и применить" + +msgid "Save & Apply" +msgstr "Сохранить и применить" + +msgid "Scan" +msgstr "Сканировать" + +msgid "Scheduled Tasks" +msgstr "Запланированные задания" + +msgid "Section added" +msgstr "Секция добавлена" + +msgid "Section removed" +msgstr "Секция удалена" + +msgid "See \"mount\" manpage for details" +msgstr "Для подробной информации обратитесь к справке по \"mount\" (man mount)" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" +"Отправлять эхо-пакеты LCP с указанным интервалом (секунды), эффективно " +"только в сочетании с порогом ошибок" + +msgid "Separate Clients" +msgstr "Разделять клиентов" + +msgid "Separate WDS" +msgstr "Отдельный WDS" + +msgid "Server Settings" +msgstr "Настройки сервера" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "Имя службы" + +msgid "Service Type" +msgstr "Тип службы" + +msgid "Services" +msgstr "Сервисы" + +#, fuzzy +msgid "Set up Time Synchronization" +msgstr "Настроить синхронизацию времени" + +msgid "Setup DHCP Server" +msgstr "Настроить сервер DHCP" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "Показать текущий список файлов резервной копии" + +msgid "Shutdown this interface" +msgstr "Выключить этот интерфейс" + +msgid "Shutdown this network" +msgstr "Выключить эту сеть" + +msgid "Signal" +msgstr "Сигнал" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "Сигнал:" + +msgid "Size" +msgstr "Размер" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "Пропустить" + +msgid "Skip to content" +msgstr "Перейти к содержимому" + +msgid "Skip to navigation" +msgstr "Перейти к навигации" + +msgid "Slot time" +msgstr "Время слота" + +msgid "Software" +msgstr "Программное обеспечение" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "Некоторые значения полей недопустимы, невозможно сохранить информацию!" + +msgid "Sorry, the object you requested was not found." +msgstr "Извините, запрошенный объект не был найден." + +msgid "Sorry, the server encountered an unexpected error." +msgstr "Извините, сервер столкнулся с неожиданной ошибкой." + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" +"К сожалению, автоматическое обновление не поддерживается, новая прошивка " +"должна быть установлена вручную. Обратитесь к вики для получения конкретных " +"инструкций для вашего устройства." + +msgid "Sort" +msgstr "Сортировка" + +msgid "Source" +msgstr "Источник" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "Состояние кнопки, которое необходимо обработать" + +msgid "Specifies the directory the device is attached to" +msgstr "Директория, к которой присоединено устройство" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "Порт данного процесса Dropbear" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" +"Максимальное количество неудачных запросов ARP, после которого узлы " +"считаются отключенными" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" +"Максимальное количество секунд, после которого узлы считаются отключенными" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "Укажите закрытый ключ." + +msgid "Start" +msgstr "Запустить" + +msgid "Start priority" +msgstr "Приоритет" + +msgid "Startup" +msgstr "Загрузка" + +msgid "Static IPv4 Routes" +msgstr "Статические маршруты IPv4" + +msgid "Static IPv6 Routes" +msgstr "Статические маршруты IPv6" + +msgid "Static Leases" +msgstr "Постоянные аренды" + +msgid "Static Routes" +msgstr "Статические маршруты" + +msgid "Static WDS" +msgstr "Статический WDS" + +msgid "Static address" +msgstr "Статический адрес" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" +"Постоянная аренда используется для присвоения фиксированных IP-адресов и " +"имён DHCP-клиентам. Постоянная аренда также необходима для статических " +"интерфейсов, в которых обслуживаются только клиенты с присвоенными адресами." + +msgid "Status" +msgstr "Статус" + +msgid "Stop" +msgstr "Остановить" + +msgid "Strict order" +msgstr "Строгий порядок" + +msgid "Submit" +msgstr "Применить" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "Раздел подкачки" + +msgid "Switch" +msgstr "Коммутатор" + +msgid "Switch %q" +msgstr "Коммутатор %q" + +msgid "Switch %q (%s)" +msgstr "Коммутатор %q (%s)" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "Изменить протокол" + +msgid "Sync with browser" +msgstr "Синхронизировать с браузером" + +msgid "Synchronizing..." +msgstr "Синхронизация..." + +msgid "System" +msgstr "Система" + +msgid "System Log" +msgstr "Системный журнал" + +msgid "System Properties" +msgstr "Свойства системы" + +msgid "System log buffer size" +msgstr "Размер системного журнала" + +msgid "TCP:" +msgstr "TCP:" + +msgid "TFTP Settings" +msgstr "Настройки TFTP" + +msgid "TFTP server root" +msgstr "Корень TFTP-сервера" + +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "Скорость передачи" + +msgid "Table" +msgstr "Таблица" + +msgid "Target" +msgstr "Цель" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "Завершить" + +#, fuzzy +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" +"Раздел Конфигурация устройства содержит физические настройки " +"беспроводного оборудования, такие как канал, мощность передатчика или выбор " +"антенны, которые являются общими для всех определённых беспроводных сетей " +"(если оборудование поддерживает несколько SSID). Настройки отдельных сетей, " +"такие как шифрование или режим работы, сгруппированы в разделе " +"Конфигурация интерфейса." + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" +"Пакет libiwinfo-lua не установлен. Для включения настроек " +"беспроводных сетей, вам необходимо установить этот компонент!" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" +"Назначенный провайдеру префикс IPv6, обычно заканчивается на ::" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" +"Допустимые символы: A-Z, a-z, 0-9 и " +"_" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" +"Устройство или раздел (напр. /dev/" +"sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"Формат файловой системы (напр. ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" +"Образ загружен. Пожалуйста, сравните размер файла и контрольную сумму, чтобы " +"удостовериться в целостности данных.
Нажмите \"Продолжить\", чтобы " +"начать процедуру обновления прошивки." + +msgid "The following changes have been committed" +msgstr "Данные изменения были применены" + +msgid "The following changes have been reverted" +msgstr "Данные изменения были отвергнуты" + +msgid "The following rules are currently active on this system." +msgstr "На данном устройстве активны следующие правила." + +msgid "The given network name is not unique" +msgstr "Заданное имя сети не является уникальным" + +#, fuzzy +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" +"Оборудование не поддерживает несколько SSID, и, если вы продолжите, " +"существующая конфигурация будет заменена." + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" +"Длина префикса IPv4 в битах, оставшееся будет использоваться в IPv6-адресах." + +msgid "The length of the IPv6 prefix in bits" +msgstr "Длина префикса IPv6 в битах" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" +"Сетевые порты этого устройства могут быть объединены в несколько VLANов, в которых компьютеры могут " +"связываться напрямую между собой. VLANы часто используются для разделения нескольких сетевых " +"сегментов. Обычно по умолчанию используется один восходящий порт для " +"подключения к высшей рангом сети, например к интернету или к другим портам " +"локальной сети." + +msgid "The selected protocol needs a device assigned" +msgstr "Для выбранного протокола необходимо задать устройство" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" +"Идёт удаление раздела конфигурации с последующей перезагрузкой сиситемы." + +#, fuzzy +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"Система обновляется.
НЕ ОТКЛЮЧАЙТЕ ПИТАНИЕ УСТРОЙСТВА!
Подождите " +"несколько минут перед тем, как попытаетесь заново соединиться. В зависимости " +"от ваших настроек, возможно вам понадобится обновить адрес вашего " +"компьютера, чтобы снова получить доступ к устройству." + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"Загруженный файл образа не поддерживается. Пожалуйста, проверьте, что вы " +"загрузили правильный образ для вашей платформы." + +msgid "There are no active leases." +msgstr "Нет активных арендованных адресов." + +msgid "There are no pending changes to apply!" +msgstr "Нет изменений, которые можно применить!" + +msgid "There are no pending changes to revert!" +msgstr "Нет изменений, которые можно отменить!" + +msgid "There are no pending changes!" +msgstr "Нет изменений, которые можно применить!" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" +"Устройство не назначено. Пожалуйста, назначьте сетевое устройство во вкладке " +"\"Настройки канала\"" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" +"Пароль пользователя root не установлен. Пожалуйста, установите пароль, чтобы " +"защитить веб-интерфейс и включить SSH." + +msgid "This IPv4 address of the relay" +msgstr "IPv4-адрес ретранслятора" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" +"Это список шаблонов для соответствия файлов и директорий для сохранения при " +"использовании sysupgrade. Изменённые файлы в /etc/config и некоторые другие " +"конфигурации автоматически сохраняются." + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" +"Это содержимое /etc/rc.local. Вы можете добавить свои команды (перед 'exit " +"0'), чтобы выполнить их в конце загрузки." + +# Maybe it usually ends with ::2? +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" +"Это локальный адрес, назначенный туннельным брокером, обычно заканчивается " +"на :2" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" +"Это единственный DHCP-сервер в локальной сети" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "" +"Это таблица cron (crontab), в которой вы можете определить запланированные " +"задания." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "Это адрес ближайшей точки присутствия туннельного брокера" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "Данный список содержит работающие процессы и их статус." + +msgid "This page allows the configuration of custom button actions" +msgstr "Данная страница позволяет настроить обработку кнопок" + +msgid "This page gives an overview over currently active network connections." +msgstr "" +"Данная страница содержит обзор всех активных на данный момент сетевых " +"соединений." + +msgid "This section contains no values yet" +msgstr "Эта секция пока не содержит значений" + +msgid "Time Synchronization" +msgstr "Синхронизация времени" + +msgid "Time Synchronization is not configured yet." +msgstr "Синхронизация времени ещё не настроена." + +msgid "Timezone" +msgstr "Часовой пояс" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" +"Чтобы восстановить файлы конфигурации, вы можете загрузить ранее созданный " +"архив здесь." + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "Всего доступно" + +msgid "Traceroute" +msgstr "Трассировка" + +msgid "Traffic" +msgstr "Трафик" + +msgid "Transfer" +msgstr "Передача" + +msgid "Transmission Rate" +msgstr "Скорость передачи" + +msgid "Transmit" +msgstr "Передача" + +msgid "Transmit Power" +msgstr "Мощность передатчика" + +msgid "Transmitter Antenna" +msgstr "Передающая антенна" + +msgid "Trigger" +msgstr "Триггер" + +msgid "Trigger Mode" +msgstr "Режим срабатывания" + +msgid "Tunnel ID" +msgstr "Идентификатор туннеля" + +msgid "Tunnel Interface" +msgstr "Интерфейс туннеля" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "Турбо-режим" + +msgid "Tx-Power" +msgstr "Мощность передатчика" + +msgid "Type" +msgstr "Тип" + +msgid "UDP:" +msgstr "UDP:" + +msgid "UMTS only" +msgstr "Только UMTS" + +msgid "UMTS/GPRS/EV-DO" +msgstr "UMTS/GPRS/EV-DO" + +msgid "USB Device" +msgstr "USB-устройство" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "UUID" + +msgid "Unable to dispatch" +msgstr "Невозможно обработать запрос для" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "Неизвестно" + +msgid "Unknown Error, password not changed!" +msgstr "Неизвестная ошибка, пароль не был изменен!" + +msgid "Unmanaged" +msgstr "Неуправляемый" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "Непринятые изменения" + +msgid "Unsupported protocol type." +msgstr "Неподдерживаемый тип протокола." + +msgid "Update lists" +msgstr "Обновить списки" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" +"Загрузите sysupgrade-совместимый образ, чтобы заменить текущую прошивку. " +"Установите флажок \"Сохранить настройки\", чтобы сохранить текущую " +"конфигурацию (требуется совместимый образ прошивки)." + +msgid "Upload archive..." +msgstr "Загрузить архив..." + +msgid "Uploaded File" +msgstr "Загруженный файл" + +msgid "Uptime" +msgstr "Время работы" + +msgid "Use /etc/ethers" +msgstr "Использовать /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "Использовать шлюз DHCP" + +msgid "Use DNS servers advertised by peer" +msgstr "Использовать объявляемые узлом DNS-серверы" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "Использовать коды стран ISO/IEC 3166 alpha2." + +msgid "Use MTU on tunnel interface" +msgstr "Использовать MTU на интерфейсе туннеля" + +msgid "Use TTL on tunnel interface" +msgstr "Использовать TTL на интерфейсе туннеля" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "Использовать широковещательный флаг" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "Использовать собственные DNS-серверы" + +msgid "Use default gateway" +msgstr "Использовать шлюз по умолчанию" + +msgid "Use gateway metric" +msgstr "Использовать метрику шлюза" + +msgid "Use routing table" +msgstr "Использовать таблицу маршрутизации" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" +"Нажмите кнопку Добавить, чтобы добавить новую запись аренды. " +"MAC-адрес идентифицирует хост, IPv4-адрес указывает " +"фиксированный адрес, а Имя хоста присваивается в качестве " +"символьного имени для запрашивающего хоста." + +msgid "Used" +msgstr "Использовано" + +msgid "Used Key Slot" +msgstr "Используемый слот ключа" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "Имя пользователя" + +msgid "VC-Mux" +msgstr "VC-Mux" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "VLANы на %q" + +msgid "VLANs on %q (%s)" +msgstr "VLANы на %q (%s)" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "Сервер VPN" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "" +"Класс производителя (Vendor class), который отправлять при DHCP-запросах" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "Проверить" + +msgid "Version" +msgstr "Версия" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "Открытая система WEP" + +msgid "WEP Shared Key" +msgstr "Общий ключ WEP" + +msgid "WEP passphrase" +msgstr "Пароль WEP" + +msgid "WMM Mode" +msgstr "Режим WMM" + +msgid "WPA passphrase" +msgstr "Пароль WPA" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"Необходимо установить wpa_supplicant (режим клиента) или hostapd (режим " +"точки доступа или ad-hoc) для поддержки шифрования WPA." + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "Ожидание применения изменений..." + +msgid "Waiting for command to complete..." +msgstr "Ожидание завершения выполнения команды..." + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "Внимание" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "Wi-Fi" + +msgid "Wireless Adapter" +msgstr "Беспроводной адаптер" + +msgid "Wireless Network" +msgstr "Беспроводная сеть" + +msgid "Wireless Overview" +msgstr "Обзор беспроводных сетей" + +msgid "Wireless Security" +msgstr "Безопасность беспроводной сети" + +msgid "Wireless is disabled or not associated" +msgstr "Беспроводная сеть отключена или не связана " + +msgid "Wireless is restarting..." +msgstr "Беспроводная сеть перезапускается..." + +msgid "Wireless network is disabled" +msgstr "Беспроводная сеть отключена" + +msgid "Wireless network is enabled" +msgstr "Беспроводная сеть включена" + +msgid "Wireless restarted" +msgstr "Беспроводная сеть перезапущена" + +msgid "Wireless shut down" +msgstr "Выключение беспроводной сети" + +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-запросы в системный журнал" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "Поддержка XR" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"Здесь вы можете включить или выключить установленные скрипты инициализации. " +"Изменения вступят в силу после перезагрузки устройства.
Внимание: если вы выключите один из основных скриптов инициализации " +"(например \"network\"), ваше устройство может оказаться недоступным!" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" +"Вам необходимо включить JavaScript в вашем браузере для корректной работы " +"LuCI." + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "любой" + +msgid "auto" +msgstr "авто" + +msgid "baseT" +msgstr "baseT" + +msgid "bridged" +msgstr "соед. мостом" + +msgid "create:" +msgstr "создать:" + +msgid "creates a bridge over specified interface(s)" +msgstr "создаёт мост для выбранных сетевых интерфейсов" + +msgid "dB" +msgstr "дБ" + +msgid "dBm" +msgstr "дБм" + +msgid "disable" +msgstr "выключено" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "истекло" + +# убил бы +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" +"файл, где хранятся арендованные DHCP-адреса" + +msgid "forward" +msgstr "перенаправить" + +msgid "full-duplex" +msgstr "полный дуплекс" + +msgid "half-duplex" +msgstr "полудуплекс" + +msgid "help" +msgstr "помощь" + +msgid "hidden" +msgstr "скрытый" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "если сеть" + +msgid "input" +msgstr "ввод" + +msgid "kB" +msgstr "кБ" + +msgid "kB/s" +msgstr "кБ/с" + +msgid "kbit/s" +msgstr "кбит/с" + +msgid "local DNS file" +msgstr "локальный DNS-файл" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "нет" + +msgid "no link" +msgstr "нет соединения" + +msgid "none" +msgstr "ничего" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "выключено" + +msgid "on" +msgstr "включено" + +msgid "open" +msgstr "открытая" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "маршрутизируемый" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "с тегом" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "неизвестный" + +msgid "unlimited" +msgstr "неограниченный" + +msgid "unspecified" +msgstr "не определено" + +msgid "unspecified -or- create:" +msgstr "не определено -или- создать:" + +msgid "untagged" +msgstr "без тега" + +msgid "yes" +msgstr "да" + +msgid "« Back" +msgstr "« Назад" + +#~ msgid "Leasetime" +#~ msgstr "Время аренды" + +#, fuzzy +#~ msgid "automatic" +#~ msgstr "статический" + +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "" +#~ "Если вы не выберите эту опцию, то будет создана дополнительная сеть." + +#~ msgid "Join Network: Settings" +#~ msgstr "Подключение к сети: настройки" + +#~ msgid "CPU" +#~ msgstr "ЦП" + +#~ msgid "Port %d" +#~ msgstr "Порт %d" + +#~ msgid "Port %d is untagged in multiple VLANs!" +#~ msgstr "Порт %d нетегирован в нескольких VLANах!" + +#~ msgid "VLAN Interface" +#~ msgstr "Интерфейс VLAN" diff --git a/luci-base/po/sk/base.po b/luci-base/po/sk/base.po new file mode 100644 index 000000000..4e9f80f8d --- /dev/null +++ b/luci-base/po/sk/base.po @@ -0,0 +1,3749 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Project-Id-Version: PACKAGE VERSION\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "" + +msgid "(%s available)" +msgstr "" + +msgid "(empty)" +msgstr "" + +msgid "(no interfaces attached)" +msgstr "" + +msgid "-- Additional Field --" +msgstr "" + +msgid "-- Please choose --" +msgstr "" + +msgid "-- custom --" +msgstr "" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "" + +msgid "15 Minute Load:" +msgstr "" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "" + +msgid "DNS query port" +msgstr "" + +msgid "DNS server port" +msgstr "" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" + +msgid "ESSID" +msgstr "" + +msgid "IPv4-Address" +msgstr "" + +msgid "IPv4-Gateway" +msgstr "" + +msgid "IPv4-Netmask" +msgstr "" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" + +msgid "IPv6-Gateway" +msgstr "" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "" + +msgid "LED Name" +msgstr "" + +msgid "MAC-Address" +msgstr "" + +msgid "" +"Max. DHCP leases" +msgstr "" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" + +msgid "Max. concurrent queries" +msgstr "" + +msgid "%s - %s" +msgstr "" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "" + +msgid "AR Support" +msgstr "" + +msgid "ARP retry threshold" +msgstr "" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" + +msgid "ATM device number" +msgstr "" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "" + +msgid "Access Point" +msgstr "" + +msgid "Action" +msgstr "" + +msgid "Actions" +msgstr "" + +msgid "Activate this network" +msgstr "" + +msgid "Active IPv4-Routes" +msgstr "" + +msgid "Active IPv6-Routes" +msgstr "" + +msgid "Active Connections" +msgstr "" + +msgid "Active DHCP Leases" +msgstr "" + +msgid "Active DHCPv6 Leases" +msgstr "" + +msgid "Ad-Hoc" +msgstr "" + +msgid "Add" +msgstr "" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "" + +msgid "Add new interface..." +msgstr "" + +msgid "Additional Hosts files" +msgstr "" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "" + +msgid "Address to access local relay bridge" +msgstr "" + +msgid "Administration" +msgstr "" + +msgid "Advanced Settings" +msgstr "" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "" + +msgid "Allow all except listed" +msgstr "" + +msgid "Allow listed only" +msgstr "" + +msgid "Allow localhost" +msgstr "" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" + +msgid "Allow root logins with password" +msgstr "" + +msgid "Allow the root user to login with password" +msgstr "" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "" + +msgid "Antenna 2" +msgstr "" + +msgid "Antenna Configuration" +msgstr "" + +msgid "Any zone" +msgstr "" + +msgid "Apply" +msgstr "" + +msgid "Applying changes" +msgstr "" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "" + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "" + +msgid "Authorization Required" +msgstr "" + +msgid "Auto Refresh" +msgstr "" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "" + +msgid "Available packages" +msgstr "" + +msgid "Average:" +msgstr "" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "" + +msgid "Back" +msgstr "" + +msgid "Back to Overview" +msgstr "" + +msgid "Back to configuration" +msgstr "" + +msgid "Back to overview" +msgstr "" + +msgid "Back to scan results" +msgstr "" + +msgid "Background Scan" +msgstr "" + +msgid "Backup / Flash Firmware" +msgstr "" + +msgid "Backup / Restore" +msgstr "" + +msgid "Backup file list" +msgstr "" + +msgid "Bad address specified!" +msgstr "" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "" + +msgid "Bogus NX Domain Override" +msgstr "" + +msgid "Bridge" +msgstr "" + +msgid "Bridge interfaces" +msgstr "" + +msgid "Bridge unit number" +msgstr "" + +msgid "Bring up on boot" +msgstr "" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "" + +msgid "Buffered" +msgstr "" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "" + +msgid "Cancel" +msgstr "" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "" + +msgid "Changes" +msgstr "" + +msgid "Changes applied." +msgstr "" + +msgid "Changes the administrator password for accessing the device" +msgstr "" + +msgid "Channel" +msgstr "" + +msgid "Check" +msgstr "" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" + +msgid "Cipher" +msgstr "" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" + +msgid "Client" +msgstr "" + +msgid "Client ID to send when requesting DHCP" +msgstr "" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" + +msgid "Close list..." +msgstr "" + +msgid "Collecting data..." +msgstr "" + +msgid "Command" +msgstr "" + +msgid "Common Configuration" +msgstr "" + +msgid "Compression" +msgstr "" + +msgid "Configuration" +msgstr "" + +msgid "Configuration applied." +msgstr "" + +msgid "Configuration files will be kept." +msgstr "" + +msgid "Confirmation" +msgstr "" + +msgid "Connect" +msgstr "" + +msgid "Connected" +msgstr "" + +msgid "Connection Limit" +msgstr "" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "" + +msgid "Country" +msgstr "" + +msgid "Country Code" +msgstr "" + +msgid "Cover the following interface" +msgstr "" + +msgid "Cover the following interfaces" +msgstr "" + +msgid "Create / Assign firewall-zone" +msgstr "" + +msgid "Create Interface" +msgstr "" + +msgid "Create a bridge over multiple interfaces" +msgstr "" + +msgid "Critical" +msgstr "" + +msgid "Cron Log Level" +msgstr "" + +msgid "Custom Interface" +msgstr "" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" + +msgid "DHCP Leases" +msgstr "" + +msgid "DHCP Server" +msgstr "" + +msgid "DHCP and DNS" +msgstr "" + +msgid "DHCP client" +msgstr "" + +msgid "DHCP-Options" +msgstr "" + +msgid "DHCPv6 Leases" +msgstr "" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "" + +msgid "DNS forwardings" +msgstr "" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "" + +msgid "Default %d" +msgstr "" + +msgid "Default gateway" +msgstr "" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "" + +msgid "Define a name for this network." +msgstr "" + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" + +msgid "Delete" +msgstr "" + +msgid "Delete this network" +msgstr "" + +msgid "Description" +msgstr "" + +msgid "Design" +msgstr "" + +msgid "Destination" +msgstr "" + +msgid "Device" +msgstr "" + +msgid "Device Configuration" +msgstr "" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "" + +msgid "Disable" +msgstr "" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" + +msgid "Disable DNS setup" +msgstr "" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "" + +msgid "Disabled" +msgstr "" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "" + +msgid "Displaying only packages containing" +msgstr "" + +msgid "Distance Optimization" +msgstr "" + +msgid "Distance to farthest network member in meters." +msgstr "" + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" + +msgid "Do not forward reverse lookups for local networks" +msgstr "" + +msgid "Do not send probe responses" +msgstr "" + +msgid "Domain required" +msgstr "" + +msgid "Domain whitelist" +msgstr "" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" + +msgid "Download and install package" +msgstr "" + +msgid "Download backup" +msgstr "" + +msgid "Dropbear Instance" +msgstr "" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" + +msgid "Dynamic tunnel" +msgstr "" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "" + +msgid "Edit" +msgstr "" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "" + +msgid "Edit this network" +msgstr "" + +msgid "Emergency" +msgstr "" + +msgid "Enable" +msgstr "" + +msgid "Enable STP" +msgstr "" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "" + +msgid "Enable Jumbo Frame passthrough" +msgstr "" + +msgid "Enable NTP client" +msgstr "" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "" + +msgid "Enable VLAN functionality" +msgstr "" + +msgid "Enable WPS pushbutton, requires WPA(2)-PSK" +msgstr "" + +msgid "Enable key reinstallation (KRACK) countermeasures" +msgstr "" + +msgid "Enable learning and aging" +msgstr "" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "" + +msgid "Enable this swap" +msgstr "" + +msgid "Enable/Disable" +msgstr "" + +msgid "Enabled" +msgstr "" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "" + +msgid "Encapsulation mode" +msgstr "" + +msgid "Encryption" +msgstr "" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "" + +msgid "Error" +msgstr "" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "" + +msgid "Ethernet Switch" +msgstr "" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "" + +msgid "Expires" +msgstr "" + +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "" + +msgid "External system log server port" +msgstr "" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "" + +msgid "File" +msgstr "" + +msgid "Filename of the boot image advertised to clients" +msgstr "" + +msgid "Filesystem" +msgstr "" + +msgid "Filter" +msgstr "" + +msgid "Filter private" +msgstr "" + +msgid "Filter useless" +msgstr "" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "" + +msgid "Find package" +msgstr "" + +msgid "Finish" +msgstr "" + +msgid "Firewall" +msgstr "" + +msgid "Firewall Settings" +msgstr "" + +msgid "Firewall Status" +msgstr "" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "" + +msgid "Fixed source port for outbound DNS queries" +msgstr "" + +msgid "Flash Firmware" +msgstr "" + +msgid "Flash image..." +msgstr "" + +msgid "Flash new firmware image" +msgstr "" + +msgid "Flash operations" +msgstr "" + +msgid "Flashing..." +msgstr "" + +msgid "Force" +msgstr "" + +msgid "Force CCMP (AES)" +msgstr "" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "" + +msgid "Force TKIP" +msgstr "" + +msgid "Force TKIP and CCMP (AES)" +msgstr "" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "" + +msgid "Forwarding mode" +msgstr "" + +msgid "Fragmentation Threshold" +msgstr "" + +msgid "Frame Bursting" +msgstr "" + +msgid "Free" +msgstr "" + +msgid "Free space" +msgstr "" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "" + +msgid "GPRS only" +msgstr "" + +msgid "Gateway" +msgstr "" + +msgid "Gateway ports" +msgstr "" + +msgid "General Settings" +msgstr "" + +msgid "General Setup" +msgstr "" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "" + +msgid "Go to relevant configuration page" +msgstr "" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "" + +msgid "Hang Up" +msgstr "" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" + +msgid "Hermes 802.11b Wireless Controller" +msgstr "" + +msgid "Hide ESSID" +msgstr "" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "" + +msgid "Host expiry timeout" +msgstr "" + +msgid "Host-IP or Network" +msgstr "" + +msgid "Hostname" +msgstr "" + +msgid "Hostname to send when requesting DHCP" +msgstr "" + +msgid "Hostnames" +msgstr "" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "" + +msgid "IPv4" +msgstr "" + +msgid "IPv4 Firewall" +msgstr "" + +msgid "IPv4 WAN Status" +msgstr "" + +msgid "IPv4 address" +msgstr "" + +msgid "IPv4 and IPv6" +msgstr "" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "" + +msgid "IPv4 gateway" +msgstr "" + +msgid "IPv4 netmask" +msgstr "" + +msgid "IPv4 only" +msgstr "" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "" + +msgid "IPv4-Address" +msgstr "" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "" + +msgid "IPv6 Firewall" +msgstr "" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "" + +msgid "IPv6 address" +msgstr "" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "" + +msgid "IPv6 only" +msgstr "" + +msgid "IPv6 prefix" +msgstr "" + +msgid "IPv6 prefix length" +msgstr "" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "" + +msgid "Identity" +msgstr "" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" + +msgid "If unchecked, no default route is configured" +msgstr "" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" + +msgid "Ignore /etc/hosts" +msgstr "" + +msgid "Ignore interface" +msgstr "" + +msgid "Ignore resolve file" +msgstr "" + +msgid "Image" +msgstr "" + +msgid "In" +msgstr "" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "" + +msgid "Inbound:" +msgstr "" + +msgid "Info" +msgstr "" + +msgid "Initscript" +msgstr "" + +msgid "Initscripts" +msgstr "" + +msgid "Install" +msgstr "" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "" + +msgid "Install protocol extensions..." +msgstr "" + +msgid "Installed packages" +msgstr "" + +msgid "Interface" +msgstr "" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "" + +msgid "Interface Overview" +msgstr "" + +msgid "Interface is reconnecting..." +msgstr "" + +msgid "Interface is shutting down..." +msgstr "" + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "" + +msgid "Interface reconnected" +msgstr "" + +msgid "Interface shut down" +msgstr "" + +msgid "Interfaces" +msgstr "" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "" + +msgid "Invalid" +msgstr "" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "" + +msgid "Invalid username and/or password! Please try again." +msgstr "" + +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "" + +msgid "Join Network" +msgstr "" + +msgid "Join Network: Wireless Scan" +msgstr "" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "" + +msgid "Kernel Log" +msgstr "" + +msgid "Kernel Version" +msgstr "" + +msgid "Key" +msgstr "" + +msgid "Key #%d" +msgstr "" + +msgid "Kill" +msgstr "" + +msgid "L2TP" +msgstr "" + +msgid "L2TP Server" +msgstr "" + +msgid "LCP echo failure threshold" +msgstr "" + +msgid "LCP echo interval" +msgstr "" + +msgid "LLC" +msgstr "" + +msgid "Label" +msgstr "" + +msgid "Language" +msgstr "" + +msgid "Language and Style" +msgstr "" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "" + +msgid "Leasefile" +msgstr "" + +msgid "Leasetime remaining" +msgstr "" + +msgid "Leave empty to autodetect" +msgstr "" + +msgid "Leave empty to use the current WAN address" +msgstr "" + +msgid "Legend:" +msgstr "" + +msgid "Limit" +msgstr "" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" + +msgid "Listening port for inbound DNS queries" +msgstr "" + +msgid "Load" +msgstr "" + +msgid "Load Average" +msgstr "" + +msgid "Loading" +msgstr "" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "" + +msgid "Local IPv6 address" +msgstr "" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "" + +msgid "Local Time" +msgstr "" + +msgid "Local domain" +msgstr "" + +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" + +msgid "Local server" +msgstr "" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" + +msgid "Localise queries" +msgstr "" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "" + +msgid "Log queries" +msgstr "" + +msgid "Logging" +msgstr "" + +msgid "Login" +msgstr "" + +msgid "Logout" +msgstr "" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "" + +msgid "MAC-Address" +msgstr "" + +msgid "MAC-Address Filter" +msgstr "" + +msgid "MAC-Filter" +msgstr "" + +msgid "MAC-List" +msgstr "" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "" + +msgid "MTU" +msgstr "" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "" + +msgid "Maximum hold time" +msgstr "" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "" + +msgid "Mbit/s" +msgstr "" + +msgid "Memory" +msgstr "" + +msgid "Memory usage (%)" +msgstr "" + +msgid "Metric" +msgstr "" + +msgid "Minimum Rate" +msgstr "" + +msgid "Minimum hold time" +msgstr "" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "" + +msgid "Modem init timeout" +msgstr "" + +msgid "Monitor" +msgstr "" + +msgid "Mount Entry" +msgstr "" + +msgid "Mount Point" +msgstr "" + +msgid "Mount Points" +msgstr "" + +msgid "Mount Points - Mount Entry" +msgstr "" + +msgid "Mount Points - Swap Entry" +msgstr "" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "" + +msgid "Mount point" +msgstr "" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "" + +msgid "Move down" +msgstr "" + +msgid "Move up" +msgstr "" + +msgid "Multicast Rate" +msgstr "" + +msgid "Multicast address" +msgstr "" + +msgid "NAS ID" +msgstr "" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "" + +msgid "Name of the new interface" +msgstr "" + +msgid "Name of the new network" +msgstr "" + +msgid "Navigation" +msgstr "" + +msgid "Netmask" +msgstr "" + +msgid "Network" +msgstr "" + +msgid "Network Utilities" +msgstr "" + +msgid "Network boot image" +msgstr "" + +msgid "Network without interfaces." +msgstr "" + +msgid "Next »" +msgstr "" + +msgid "No DHCP Server configured for this interface" +msgstr "" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "" + +msgid "No files found" +msgstr "" + +msgid "No information available" +msgstr "" + +msgid "No negative cache" +msgstr "" + +msgid "No network configured on this device" +msgstr "" + +msgid "No network name specified" +msgstr "" + +msgid "No package lists available" +msgstr "" + +msgid "No password set!" +msgstr "" + +msgid "No rules in this chain" +msgstr "" + +msgid "No zone assigned" +msgstr "" + +msgid "Noise" +msgstr "" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "" + +msgid "Normal" +msgstr "" + +msgid "Not Found" +msgstr "" + +msgid "Not associated" +msgstr "" + +msgid "Not connected" +msgstr "" + +msgid "Note: Configuration files will be erased." +msgstr "" + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "" + +msgid "Nslookup" +msgstr "" + +msgid "OK" +msgstr "" + +msgid "OPKG-Configuration" +msgstr "" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" + +msgid "On-State Delay" +msgstr "" + +msgid "One of hostname or mac address must be specified!" +msgstr "" + +msgid "One or more fields contain invalid values!" +msgstr "" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "" + +msgid "Open list..." +msgstr "" + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "" + +msgid "Option removed" +msgstr "" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "" + +msgid "Other:" +msgstr "" + +msgid "Out" +msgstr "" + +msgid "Outbound:" +msgstr "" + +msgid "Outdoor Channels" +msgstr "" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "" + +msgid "Override MTU" +msgstr "" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" + +msgid "Override the table used for internal routes" +msgstr "" + +msgid "Overview" +msgstr "" + +msgid "Owner" +msgstr "" + +msgid "PAP/CHAP password" +msgstr "" + +msgid "PAP/CHAP username" +msgstr "" + +msgid "PID" +msgstr "" + +msgid "PIN" +msgstr "" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "" + +msgid "PPPoA Encapsulation" +msgstr "" + +msgid "PPPoATM" +msgstr "" + +msgid "PPPoE" +msgstr "" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "" + +msgid "Package lists are older than 24 hours" +msgstr "" + +msgid "Package name" +msgstr "" + +msgid "Packets" +msgstr "" + +msgid "Part of zone %q" +msgstr "" + +msgid "Password" +msgstr "" + +msgid "Password authentication" +msgstr "" + +msgid "Password of Private Key" +msgstr "" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "" + +msgid "Path to Client-Certificate" +msgstr "" + +msgid "Path to Private Key" +msgstr "" + +msgid "Path to executable which handles the button event" +msgstr "" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "" + +msgid "Perform reset" +msgstr "" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "" + +msgid "Physical Settings" +msgstr "" + +msgid "Ping" +msgstr "" + +msgid "Pkts." +msgstr "" + +msgid "Please enter your username and password." +msgstr "" + +msgid "Policy" +msgstr "" + +msgid "Port" +msgstr "" + +msgid "Port status:" +msgstr "" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "" + +msgid "Processes" +msgstr "" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "" + +msgid "Protocol" +msgstr "" + +msgid "Protocol family" +msgstr "" + +msgid "Protocol of the new interface" +msgstr "" + +msgid "Protocol support is not installed" +msgstr "" + +msgid "Provide NTP server" +msgstr "" + +msgid "Provide new network" +msgstr "" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "" + +msgid "RX" +msgstr "" + +msgid "RX Rate" +msgstr "" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "" + +msgid "Radius-Accounting-Port" +msgstr "" + +msgid "Radius-Accounting-Secret" +msgstr "" + +msgid "Radius-Accounting-Server" +msgstr "" + +msgid "Radius-Authentication-Port" +msgstr "" + +msgid "Radius-Authentication-Secret" +msgstr "" + +msgid "Radius-Authentication-Server" +msgstr "" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" + +msgid "Really reset all changes?" +msgstr "" + +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" + +msgid "Really switch protocol?" +msgstr "" + +msgid "Realtime Connections" +msgstr "" + +msgid "Realtime Graphs" +msgstr "" + +msgid "Realtime Load" +msgstr "" + +msgid "Realtime Traffic" +msgstr "" + +msgid "Realtime Wireless" +msgstr "" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "" + +msgid "Reboot" +msgstr "" + +msgid "Rebooting..." +msgstr "" + +msgid "Reboots the operating system of your device" +msgstr "" + +msgid "Receive" +msgstr "" + +msgid "Receiver Antenna" +msgstr "" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "" + +msgid "Reconnecting interface" +msgstr "" + +msgid "References" +msgstr "" + +msgid "Regulatory Domain" +msgstr "" + +msgid "Relay" +msgstr "" + +msgid "Relay Bridge" +msgstr "" + +msgid "Relay between networks" +msgstr "" + +msgid "Relay bridge" +msgstr "" + +msgid "Remote IPv4 address" +msgstr "" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "" + +msgid "Repeat scan" +msgstr "" + +msgid "Replace entry" +msgstr "" + +msgid "Replace wireless configuration" +msgstr "" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "" + +msgid "Reset Counters" +msgstr "" + +msgid "Reset to defaults" +msgstr "" + +msgid "Resolv and Hosts Files" +msgstr "" + +msgid "Resolve file" +msgstr "" + +msgid "Restart" +msgstr "" + +msgid "Restart Firewall" +msgstr "" + +msgid "Restore backup" +msgstr "" + +msgid "Reveal/hide password" +msgstr "" + +msgid "Revert" +msgstr "" + +msgid "Root" +msgstr "" + +msgid "Root directory for files served via TFTP" +msgstr "" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "" + +msgid "Routes" +msgstr "" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" + +msgid "Run a filesystem check before mounting the device" +msgstr "" + +msgid "Run filesystem check" +msgstr "" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "" + +msgid "SSID" +msgstr "" + +msgid "Save" +msgstr "" + +msgid "Save & Apply" +msgstr "" + +msgid "Save & Apply" +msgstr "" + +msgid "Scan" +msgstr "" + +msgid "Scheduled Tasks" +msgstr "" + +msgid "Section added" +msgstr "" + +msgid "Section removed" +msgstr "" + +msgid "See \"mount\" manpage for details" +msgstr "" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" + +msgid "Separate Clients" +msgstr "" + +msgid "Separate WDS" +msgstr "" + +msgid "Server Settings" +msgstr "" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "" + +msgid "Service Type" +msgstr "" + +msgid "Services" +msgstr "" + +msgid "Set up Time Synchronization" +msgstr "" + +msgid "Setup DHCP Server" +msgstr "" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "" + +msgid "Shutdown this interface" +msgstr "" + +msgid "Shutdown this network" +msgstr "" + +msgid "Signal" +msgstr "" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "" + +msgid "Size" +msgstr "" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "" + +msgid "Skip to content" +msgstr "" + +msgid "Skip to navigation" +msgstr "" + +msgid "Slot time" +msgstr "" + +msgid "Software" +msgstr "" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "" + +msgid "Sorry, the object you requested was not found." +msgstr "" + +msgid "Sorry, the server encountered an unexpected error." +msgstr "" + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" + +msgid "Sort" +msgstr "" + +msgid "Source" +msgstr "" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "" + +msgid "Specifies the directory the device is attached to" +msgstr "" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "" + +msgid "Start" +msgstr "" + +msgid "Start priority" +msgstr "" + +msgid "Startup" +msgstr "" + +msgid "Static IPv4 Routes" +msgstr "" + +msgid "Static IPv6 Routes" +msgstr "" + +msgid "Static Leases" +msgstr "" + +msgid "Static Routes" +msgstr "" + +msgid "Static WDS" +msgstr "" + +msgid "Static address" +msgstr "" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" + +msgid "Status" +msgstr "" + +msgid "Stop" +msgstr "" + +msgid "Strict order" +msgstr "" + +msgid "Submit" +msgstr "" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "" + +msgid "Switch" +msgstr "" + +msgid "Switch %q" +msgstr "" + +msgid "Switch %q (%s)" +msgstr "" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "" + +msgid "Sync with browser" +msgstr "" + +msgid "Synchronizing..." +msgstr "" + +msgid "System" +msgstr "" + +msgid "System Log" +msgstr "" + +msgid "System Properties" +msgstr "" + +msgid "System log buffer size" +msgstr "" + +msgid "TCP:" +msgstr "" + +msgid "TFTP Settings" +msgstr "" + +msgid "TFTP server root" +msgstr "" + +msgid "TX" +msgstr "" + +msgid "TX Rate" +msgstr "" + +msgid "Table" +msgstr "" + +msgid "Target" +msgstr "" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "" + +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" + +msgid "The following changes have been committed" +msgstr "" + +msgid "The following changes have been reverted" +msgstr "" + +msgid "The following rules are currently active on this system." +msgstr "" + +msgid "The given network name is not unique" +msgstr "" + +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" + +msgid "The length of the IPv6 prefix in bits" +msgstr "" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" + +msgid "The selected protocol needs a device assigned" +msgstr "" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" + +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" + +msgid "There are no active leases." +msgstr "" + +msgid "There are no pending changes to apply!" +msgstr "" + +msgid "There are no pending changes to revert!" +msgstr "" + +msgid "There are no pending changes!" +msgstr "" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" + +msgid "This IPv4 address of the relay" +msgstr "" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "" + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" + +msgid "This page allows the configuration of custom button actions" +msgstr "" + +msgid "This page gives an overview over currently active network connections." +msgstr "" + +msgid "This section contains no values yet" +msgstr "" + +msgid "Time Synchronization" +msgstr "" + +msgid "Time Synchronization is not configured yet." +msgstr "" + +msgid "Timezone" +msgstr "" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "" + +msgid "Traceroute" +msgstr "" + +msgid "Traffic" +msgstr "" + +msgid "Transfer" +msgstr "" + +msgid "Transmission Rate" +msgstr "" + +msgid "Transmit" +msgstr "" + +msgid "Transmit Power" +msgstr "" + +msgid "Transmitter Antenna" +msgstr "" + +msgid "Trigger" +msgstr "" + +msgid "Trigger Mode" +msgstr "" + +msgid "Tunnel ID" +msgstr "" + +msgid "Tunnel Interface" +msgstr "" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "" + +msgid "Tx-Power" +msgstr "" + +msgid "Type" +msgstr "" + +msgid "UDP:" +msgstr "" + +msgid "UMTS only" +msgstr "" + +msgid "UMTS/GPRS/EV-DO" +msgstr "" + +msgid "USB Device" +msgstr "" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "" + +msgid "Unable to dispatch" +msgstr "" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "" + +msgid "Unknown Error, password not changed!" +msgstr "" + +msgid "Unmanaged" +msgstr "" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "" + +msgid "Unsupported protocol type." +msgstr "" + +msgid "Update lists" +msgstr "" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" + +msgid "Upload archive..." +msgstr "" + +msgid "Uploaded File" +msgstr "" + +msgid "Uptime" +msgstr "" + +msgid "Use /etc/ethers" +msgstr "" + +msgid "Use DHCP gateway" +msgstr "" + +msgid "Use DNS servers advertised by peer" +msgstr "" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "" + +msgid "Use MTU on tunnel interface" +msgstr "" + +msgid "Use TTL on tunnel interface" +msgstr "" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "" + +msgid "Use default gateway" +msgstr "" + +msgid "Use gateway metric" +msgstr "" + +msgid "Use routing table" +msgstr "" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" + +msgid "Used" +msgstr "" + +msgid "Used Key Slot" +msgstr "" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "" + +msgid "VC-Mux" +msgstr "" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "" + +msgid "VLANs on %q (%s)" +msgstr "" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "" + +msgid "Version" +msgstr "" + +msgid "WDS" +msgstr "" + +msgid "WEP Open System" +msgstr "" + +msgid "WEP Shared Key" +msgstr "" + +msgid "WEP passphrase" +msgstr "" + +msgid "WMM Mode" +msgstr "" + +msgid "WPA passphrase" +msgstr "" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "" + +msgid "Waiting for command to complete..." +msgstr "" + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "" + +msgid "Wireless Adapter" +msgstr "" + +msgid "Wireless Network" +msgstr "" + +msgid "Wireless Overview" +msgstr "" + +msgid "Wireless Security" +msgstr "" + +msgid "Wireless is disabled or not associated" +msgstr "" + +msgid "Wireless is restarting..." +msgstr "" + +msgid "Wireless network is disabled" +msgstr "" + +msgid "Wireless network is enabled" +msgstr "" + +msgid "Wireless restarted" +msgstr "" + +msgid "Wireless shut down" +msgstr "" + +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 "" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "" + +msgid "auto" +msgstr "" + +msgid "baseT" +msgstr "" + +msgid "bridged" +msgstr "" + +msgid "create:" +msgstr "" + +msgid "creates a bridge over specified interface(s)" +msgstr "" + +msgid "dB" +msgstr "" + +msgid "dBm" +msgstr "" + +msgid "disable" +msgstr "" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" + +msgid "forward" +msgstr "" + +msgid "full-duplex" +msgstr "" + +msgid "half-duplex" +msgstr "" + +msgid "help" +msgstr "" + +msgid "hidden" +msgstr "" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "" + +msgid "input" +msgstr "" + +msgid "kB" +msgstr "" + +msgid "kB/s" +msgstr "" + +msgid "kbit/s" +msgstr "" + +msgid "local DNS file" +msgstr "" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "" + +msgid "no link" +msgstr "" + +msgid "none" +msgstr "" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "" + +msgid "on" +msgstr "" + +msgid "open" +msgstr "" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "" + +msgid "unlimited" +msgstr "" + +msgid "unspecified" +msgstr "" + +msgid "unspecified -or- create:" +msgstr "" + +msgid "untagged" +msgstr "" + +msgid "yes" +msgstr "" + +msgid "« Back" +msgstr "" diff --git a/luci-base/po/sv/base.po b/luci-base/po/sv/base.po new file mode 100644 index 000000000..898f07200 --- /dev/null +++ b/luci-base/po/sv/base.po @@ -0,0 +1,3755 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"PO-Revision-Date: 2014-04-28 09:22+0200\n" +"Last-Translator: EricJ \n" +"Language-Team: none\n" +"Language: sv\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Pootle 2.0.6\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "" + +msgid "(%s available)" +msgstr "(%s tillgängligt)" + +msgid "(empty)" +msgstr "(tomt)" + +msgid "(no interfaces attached)" +msgstr "(inga gränssnitt har bifogats)" + +msgid "-- Additional Field --" +msgstr "" + +msgid "-- Please choose --" +msgstr "" + +msgid "-- custom --" +msgstr "-- anpassad --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "Belastning senaste minuten:" + +msgid "15 Minute Load:" +msgstr "Belastning senaste 15 minutrarna:" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "Belastning senaste 5 minutrarna:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "DNS query port" +msgstr "" + +msgid "DNS server port" +msgstr "DNSserver-port" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" + +msgid "ESSID" +msgstr "" + +msgid "IPv4-Address" +msgstr "IPv4-adress" + +# I don't think "Gateway" is commonly translated. +msgid "IPv4-Gateway" +msgstr "IPv4-gateway" + +msgid "IPv4-Netmask" +msgstr "IPv4-nätmask" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"IPv6-adress eller nätverk " +"(CIDR)" + +msgid "IPv6-Gateway" +msgstr "IPv6-gateway" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "LED-konfiguration" + +msgid "LED Name" +msgstr "" + +msgid "MAC-Address" +msgstr "" + +msgid "" +"Max. DHCP leases" +msgstr "" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" + +msgid "Max. concurrent queries" +msgstr "" + +msgid "%s - %s" +msgstr "" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "" + +msgid "AR Support" +msgstr "" + +msgid "ARP retry threshold" +msgstr "" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" + +msgid "ATM device number" +msgstr "" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "" + +msgid "Access Point" +msgstr "" + +msgid "Action" +msgstr "" + +msgid "Actions" +msgstr "" + +msgid "Activate this network" +msgstr "" + +msgid "Active IPv4-Routes" +msgstr "" + +msgid "Active IPv6-Routes" +msgstr "" + +msgid "Active Connections" +msgstr "" + +msgid "Active DHCP Leases" +msgstr "" + +msgid "Active DHCPv6 Leases" +msgstr "" + +msgid "Ad-Hoc" +msgstr "" + +msgid "Add" +msgstr "" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "" + +msgid "Add new interface..." +msgstr "" + +msgid "Additional Hosts files" +msgstr "" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "" + +msgid "Address to access local relay bridge" +msgstr "" + +msgid "Administration" +msgstr "" + +msgid "Advanced Settings" +msgstr "" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "" + +msgid "Allow all except listed" +msgstr "" + +msgid "Allow listed only" +msgstr "" + +msgid "Allow localhost" +msgstr "" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" + +msgid "Allow root logins with password" +msgstr "" + +msgid "Allow the root user to login with password" +msgstr "" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "" + +msgid "Antenna 2" +msgstr "" + +msgid "Antenna Configuration" +msgstr "" + +msgid "Any zone" +msgstr "" + +msgid "Apply" +msgstr "" + +msgid "Applying changes" +msgstr "" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "" + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "" + +msgid "Authorization Required" +msgstr "" + +msgid "Auto Refresh" +msgstr "" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "" + +msgid "Available packages" +msgstr "" + +msgid "Average:" +msgstr "" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "" + +msgid "Back" +msgstr "" + +msgid "Back to Overview" +msgstr "" + +msgid "Back to configuration" +msgstr "" + +msgid "Back to overview" +msgstr "" + +msgid "Back to scan results" +msgstr "" + +msgid "Background Scan" +msgstr "" + +msgid "Backup / Flash Firmware" +msgstr "" + +msgid "Backup / Restore" +msgstr "" + +msgid "Backup file list" +msgstr "" + +msgid "Bad address specified!" +msgstr "" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "" + +msgid "Bogus NX Domain Override" +msgstr "" + +msgid "Bridge" +msgstr "" + +msgid "Bridge interfaces" +msgstr "" + +msgid "Bridge unit number" +msgstr "" + +msgid "Bring up on boot" +msgstr "" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "" + +msgid "Buffered" +msgstr "" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "" + +msgid "Cancel" +msgstr "" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "" + +msgid "Changes" +msgstr "" + +msgid "Changes applied." +msgstr "" + +msgid "Changes the administrator password for accessing the device" +msgstr "" + +msgid "Channel" +msgstr "" + +msgid "Check" +msgstr "" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" + +msgid "Cipher" +msgstr "" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" + +msgid "Client" +msgstr "" + +msgid "Client ID to send when requesting DHCP" +msgstr "" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" + +msgid "Close list..." +msgstr "" + +msgid "Collecting data..." +msgstr "" + +msgid "Command" +msgstr "" + +msgid "Common Configuration" +msgstr "" + +msgid "Compression" +msgstr "" + +msgid "Configuration" +msgstr "" + +msgid "Configuration applied." +msgstr "" + +msgid "Configuration files will be kept." +msgstr "" + +msgid "Confirmation" +msgstr "" + +msgid "Connect" +msgstr "" + +msgid "Connected" +msgstr "" + +msgid "Connection Limit" +msgstr "" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "" + +msgid "Country" +msgstr "" + +msgid "Country Code" +msgstr "" + +msgid "Cover the following interface" +msgstr "" + +msgid "Cover the following interfaces" +msgstr "" + +msgid "Create / Assign firewall-zone" +msgstr "" + +msgid "Create Interface" +msgstr "" + +msgid "Create a bridge over multiple interfaces" +msgstr "" + +msgid "Critical" +msgstr "" + +msgid "Cron Log Level" +msgstr "" + +msgid "Custom Interface" +msgstr "" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" + +msgid "DHCP Leases" +msgstr "" + +msgid "DHCP Server" +msgstr "" + +msgid "DHCP and DNS" +msgstr "" + +msgid "DHCP client" +msgstr "" + +msgid "DHCP-Options" +msgstr "" + +msgid "DHCPv6 Leases" +msgstr "" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "" + +msgid "DNS forwardings" +msgstr "" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "" + +msgid "Default %d" +msgstr "" + +msgid "Default gateway" +msgstr "" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "" + +msgid "Define a name for this network." +msgstr "" + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" + +msgid "Delete" +msgstr "" + +msgid "Delete this network" +msgstr "" + +msgid "Description" +msgstr "" + +msgid "Design" +msgstr "" + +msgid "Destination" +msgstr "" + +msgid "Device" +msgstr "" + +msgid "Device Configuration" +msgstr "" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "" + +msgid "Disable" +msgstr "" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" + +msgid "Disable DNS setup" +msgstr "" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "" + +msgid "Disabled" +msgstr "" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "" + +msgid "Displaying only packages containing" +msgstr "" + +msgid "Distance Optimization" +msgstr "" + +msgid "Distance to farthest network member in meters." +msgstr "" + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" + +msgid "Do not forward reverse lookups for local networks" +msgstr "" + +msgid "Do not send probe responses" +msgstr "" + +msgid "Domain required" +msgstr "" + +msgid "Domain whitelist" +msgstr "" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" + +msgid "Download and install package" +msgstr "" + +msgid "Download backup" +msgstr "" + +msgid "Dropbear Instance" +msgstr "" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" + +msgid "Dynamic tunnel" +msgstr "" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "" + +msgid "Edit" +msgstr "" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "" + +msgid "Edit this network" +msgstr "" + +msgid "Emergency" +msgstr "" + +msgid "Enable" +msgstr "" + +msgid "Enable STP" +msgstr "" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "" + +msgid "Enable Jumbo Frame passthrough" +msgstr "" + +msgid "Enable NTP client" +msgstr "" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "" + +msgid "Enable VLAN functionality" +msgstr "" + +msgid "Enable WPS pushbutton, requires WPA(2)-PSK" +msgstr "" + +msgid "Enable key reinstallation (KRACK) countermeasures" +msgstr "" + +msgid "Enable learning and aging" +msgstr "" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "" + +msgid "Enable this swap" +msgstr "" + +msgid "Enable/Disable" +msgstr "" + +msgid "Enabled" +msgstr "" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "" + +msgid "Encapsulation mode" +msgstr "" + +msgid "Encryption" +msgstr "" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "" + +msgid "Error" +msgstr "" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "" + +msgid "Ethernet Switch" +msgstr "" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "" + +msgid "Expires" +msgstr "" + +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "" + +msgid "External system log server port" +msgstr "" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "" + +msgid "File" +msgstr "" + +msgid "Filename of the boot image advertised to clients" +msgstr "" + +msgid "Filesystem" +msgstr "" + +msgid "Filter" +msgstr "" + +msgid "Filter private" +msgstr "" + +msgid "Filter useless" +msgstr "" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "" + +msgid "Find package" +msgstr "" + +msgid "Finish" +msgstr "" + +msgid "Firewall" +msgstr "" + +msgid "Firewall Settings" +msgstr "" + +msgid "Firewall Status" +msgstr "" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "" + +msgid "Fixed source port for outbound DNS queries" +msgstr "" + +msgid "Flash Firmware" +msgstr "" + +msgid "Flash image..." +msgstr "" + +msgid "Flash new firmware image" +msgstr "" + +msgid "Flash operations" +msgstr "" + +msgid "Flashing..." +msgstr "" + +msgid "Force" +msgstr "" + +msgid "Force CCMP (AES)" +msgstr "" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "" + +msgid "Force TKIP" +msgstr "" + +msgid "Force TKIP and CCMP (AES)" +msgstr "" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "" + +msgid "Forwarding mode" +msgstr "" + +msgid "Fragmentation Threshold" +msgstr "" + +msgid "Frame Bursting" +msgstr "" + +msgid "Free" +msgstr "" + +msgid "Free space" +msgstr "" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "" + +msgid "GPRS only" +msgstr "" + +msgid "Gateway" +msgstr "" + +msgid "Gateway ports" +msgstr "" + +msgid "General Settings" +msgstr "" + +msgid "General Setup" +msgstr "" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "" + +msgid "Go to relevant configuration page" +msgstr "" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "" + +msgid "Hang Up" +msgstr "" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" + +msgid "Hermes 802.11b Wireless Controller" +msgstr "" + +msgid "Hide ESSID" +msgstr "" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "" + +msgid "Host expiry timeout" +msgstr "" + +msgid "Host-IP or Network" +msgstr "" + +msgid "Hostname" +msgstr "" + +msgid "Hostname to send when requesting DHCP" +msgstr "" + +msgid "Hostnames" +msgstr "" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "" + +msgid "IPv4" +msgstr "" + +msgid "IPv4 Firewall" +msgstr "" + +msgid "IPv4 WAN Status" +msgstr "" + +msgid "IPv4 address" +msgstr "" + +msgid "IPv4 and IPv6" +msgstr "" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "" + +msgid "IPv4 gateway" +msgstr "" + +msgid "IPv4 netmask" +msgstr "" + +msgid "IPv4 only" +msgstr "" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "" + +msgid "IPv4-Address" +msgstr "" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "" + +msgid "IPv6 Firewall" +msgstr "" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "" + +msgid "IPv6 address" +msgstr "" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "" + +msgid "IPv6 only" +msgstr "" + +msgid "IPv6 prefix" +msgstr "" + +msgid "IPv6 prefix length" +msgstr "" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "" + +msgid "Identity" +msgstr "" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" + +msgid "If unchecked, no default route is configured" +msgstr "" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" + +msgid "Ignore /etc/hosts" +msgstr "" + +msgid "Ignore interface" +msgstr "" + +msgid "Ignore resolve file" +msgstr "" + +msgid "Image" +msgstr "" + +msgid "In" +msgstr "" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "" + +msgid "Inbound:" +msgstr "" + +msgid "Info" +msgstr "" + +msgid "Initscript" +msgstr "" + +msgid "Initscripts" +msgstr "" + +msgid "Install" +msgstr "" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "" + +msgid "Install protocol extensions..." +msgstr "" + +msgid "Installed packages" +msgstr "" + +msgid "Interface" +msgstr "" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "" + +msgid "Interface Overview" +msgstr "" + +msgid "Interface is reconnecting..." +msgstr "" + +msgid "Interface is shutting down..." +msgstr "" + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "" + +msgid "Interface reconnected" +msgstr "" + +msgid "Interface shut down" +msgstr "" + +msgid "Interfaces" +msgstr "" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "" + +msgid "Invalid" +msgstr "" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "" + +msgid "Invalid username and/or password! Please try again." +msgstr "" + +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "" + +msgid "Join Network" +msgstr "" + +msgid "Join Network: Wireless Scan" +msgstr "" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "" + +msgid "Kernel Log" +msgstr "" + +msgid "Kernel Version" +msgstr "" + +msgid "Key" +msgstr "" + +msgid "Key #%d" +msgstr "" + +msgid "Kill" +msgstr "" + +msgid "L2TP" +msgstr "" + +msgid "L2TP Server" +msgstr "" + +msgid "LCP echo failure threshold" +msgstr "" + +msgid "LCP echo interval" +msgstr "" + +msgid "LLC" +msgstr "" + +msgid "Label" +msgstr "" + +msgid "Language" +msgstr "" + +msgid "Language and Style" +msgstr "" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "" + +msgid "Leasefile" +msgstr "" + +msgid "Leasetime remaining" +msgstr "" + +msgid "Leave empty to autodetect" +msgstr "" + +msgid "Leave empty to use the current WAN address" +msgstr "" + +msgid "Legend:" +msgstr "" + +msgid "Limit" +msgstr "" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" + +msgid "Listening port for inbound DNS queries" +msgstr "" + +msgid "Load" +msgstr "" + +msgid "Load Average" +msgstr "" + +msgid "Loading" +msgstr "" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "" + +msgid "Local IPv6 address" +msgstr "" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "" + +msgid "Local Time" +msgstr "" + +msgid "Local domain" +msgstr "" + +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" + +msgid "Local server" +msgstr "" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" + +msgid "Localise queries" +msgstr "" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "" + +msgid "Log queries" +msgstr "" + +msgid "Logging" +msgstr "" + +msgid "Login" +msgstr "" + +msgid "Logout" +msgstr "" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "" + +msgid "MAC-Address" +msgstr "" + +msgid "MAC-Address Filter" +msgstr "" + +msgid "MAC-Filter" +msgstr "" + +msgid "MAC-List" +msgstr "" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "" + +msgid "MTU" +msgstr "" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "" + +msgid "Maximum hold time" +msgstr "" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "" + +msgid "Mbit/s" +msgstr "" + +msgid "Memory" +msgstr "" + +msgid "Memory usage (%)" +msgstr "" + +msgid "Metric" +msgstr "" + +msgid "Minimum Rate" +msgstr "" + +msgid "Minimum hold time" +msgstr "" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "" + +msgid "Modem init timeout" +msgstr "" + +msgid "Monitor" +msgstr "" + +msgid "Mount Entry" +msgstr "" + +msgid "Mount Point" +msgstr "" + +msgid "Mount Points" +msgstr "" + +msgid "Mount Points - Mount Entry" +msgstr "" + +msgid "Mount Points - Swap Entry" +msgstr "" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "" + +msgid "Mount point" +msgstr "" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "" + +msgid "Move down" +msgstr "" + +msgid "Move up" +msgstr "" + +msgid "Multicast Rate" +msgstr "" + +msgid "Multicast address" +msgstr "" + +msgid "NAS ID" +msgstr "" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "" + +msgid "Name of the new interface" +msgstr "" + +msgid "Name of the new network" +msgstr "" + +msgid "Navigation" +msgstr "" + +msgid "Netmask" +msgstr "" + +msgid "Network" +msgstr "" + +msgid "Network Utilities" +msgstr "" + +msgid "Network boot image" +msgstr "" + +msgid "Network without interfaces." +msgstr "" + +msgid "Next »" +msgstr "" + +msgid "No DHCP Server configured for this interface" +msgstr "" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "" + +msgid "No files found" +msgstr "" + +msgid "No information available" +msgstr "" + +msgid "No negative cache" +msgstr "" + +msgid "No network configured on this device" +msgstr "" + +msgid "No network name specified" +msgstr "" + +msgid "No package lists available" +msgstr "" + +msgid "No password set!" +msgstr "" + +msgid "No rules in this chain" +msgstr "" + +msgid "No zone assigned" +msgstr "" + +msgid "Noise" +msgstr "" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "" + +msgid "Normal" +msgstr "" + +msgid "Not Found" +msgstr "" + +msgid "Not associated" +msgstr "" + +msgid "Not connected" +msgstr "" + +msgid "Note: Configuration files will be erased." +msgstr "" + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "" + +msgid "Nslookup" +msgstr "" + +msgid "OK" +msgstr "" + +msgid "OPKG-Configuration" +msgstr "" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" + +msgid "On-State Delay" +msgstr "" + +msgid "One of hostname or mac address must be specified!" +msgstr "" + +msgid "One or more fields contain invalid values!" +msgstr "" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "" + +msgid "Open list..." +msgstr "" + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "" + +msgid "Option removed" +msgstr "" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "" + +msgid "Other:" +msgstr "" + +msgid "Out" +msgstr "" + +msgid "Outbound:" +msgstr "" + +msgid "Outdoor Channels" +msgstr "" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "" + +msgid "Override MTU" +msgstr "" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" + +msgid "Override the table used for internal routes" +msgstr "" + +msgid "Overview" +msgstr "" + +msgid "Owner" +msgstr "" + +msgid "PAP/CHAP password" +msgstr "" + +msgid "PAP/CHAP username" +msgstr "" + +msgid "PID" +msgstr "" + +msgid "PIN" +msgstr "" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "" + +msgid "PPPoA Encapsulation" +msgstr "" + +msgid "PPPoATM" +msgstr "" + +msgid "PPPoE" +msgstr "" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "" + +msgid "Package lists are older than 24 hours" +msgstr "" + +msgid "Package name" +msgstr "" + +msgid "Packets" +msgstr "" + +msgid "Part of zone %q" +msgstr "" + +msgid "Password" +msgstr "" + +msgid "Password authentication" +msgstr "" + +msgid "Password of Private Key" +msgstr "" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "" + +msgid "Path to Client-Certificate" +msgstr "" + +msgid "Path to Private Key" +msgstr "" + +msgid "Path to executable which handles the button event" +msgstr "" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "" + +msgid "Perform reset" +msgstr "" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "" + +msgid "Physical Settings" +msgstr "" + +msgid "Ping" +msgstr "" + +msgid "Pkts." +msgstr "" + +msgid "Please enter your username and password." +msgstr "" + +msgid "Policy" +msgstr "" + +msgid "Port" +msgstr "" + +msgid "Port status:" +msgstr "" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "" + +msgid "Processes" +msgstr "" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "" + +msgid "Protocol" +msgstr "" + +msgid "Protocol family" +msgstr "" + +msgid "Protocol of the new interface" +msgstr "" + +msgid "Protocol support is not installed" +msgstr "" + +msgid "Provide NTP server" +msgstr "" + +msgid "Provide new network" +msgstr "" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "" + +msgid "RX" +msgstr "" + +msgid "RX Rate" +msgstr "" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "" + +msgid "Radius-Accounting-Port" +msgstr "" + +msgid "Radius-Accounting-Secret" +msgstr "" + +msgid "Radius-Accounting-Server" +msgstr "" + +msgid "Radius-Authentication-Port" +msgstr "" + +msgid "Radius-Authentication-Secret" +msgstr "" + +msgid "Radius-Authentication-Server" +msgstr "" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" + +msgid "Really reset all changes?" +msgstr "" + +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" + +msgid "Really switch protocol?" +msgstr "" + +msgid "Realtime Connections" +msgstr "" + +msgid "Realtime Graphs" +msgstr "" + +msgid "Realtime Load" +msgstr "" + +msgid "Realtime Traffic" +msgstr "" + +msgid "Realtime Wireless" +msgstr "" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "" + +msgid "Reboot" +msgstr "" + +msgid "Rebooting..." +msgstr "" + +msgid "Reboots the operating system of your device" +msgstr "" + +msgid "Receive" +msgstr "" + +msgid "Receiver Antenna" +msgstr "" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "" + +msgid "Reconnecting interface" +msgstr "" + +msgid "References" +msgstr "" + +msgid "Regulatory Domain" +msgstr "" + +msgid "Relay" +msgstr "" + +msgid "Relay Bridge" +msgstr "" + +msgid "Relay between networks" +msgstr "" + +msgid "Relay bridge" +msgstr "" + +msgid "Remote IPv4 address" +msgstr "" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "" + +msgid "Repeat scan" +msgstr "" + +msgid "Replace entry" +msgstr "" + +msgid "Replace wireless configuration" +msgstr "" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "" + +msgid "Reset Counters" +msgstr "" + +msgid "Reset to defaults" +msgstr "" + +msgid "Resolv and Hosts Files" +msgstr "" + +msgid "Resolve file" +msgstr "" + +msgid "Restart" +msgstr "" + +msgid "Restart Firewall" +msgstr "" + +msgid "Restore backup" +msgstr "" + +msgid "Reveal/hide password" +msgstr "" + +msgid "Revert" +msgstr "" + +msgid "Root" +msgstr "" + +msgid "Root directory for files served via TFTP" +msgstr "" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "" + +msgid "Routes" +msgstr "" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" + +msgid "Run a filesystem check before mounting the device" +msgstr "" + +msgid "Run filesystem check" +msgstr "" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "" + +msgid "SSID" +msgstr "" + +msgid "Save" +msgstr "" + +msgid "Save & Apply" +msgstr "" + +msgid "Save & Apply" +msgstr "" + +msgid "Scan" +msgstr "" + +msgid "Scheduled Tasks" +msgstr "" + +msgid "Section added" +msgstr "" + +msgid "Section removed" +msgstr "" + +msgid "See \"mount\" manpage for details" +msgstr "" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" + +msgid "Separate Clients" +msgstr "" + +msgid "Separate WDS" +msgstr "" + +msgid "Server Settings" +msgstr "" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "" + +msgid "Service Type" +msgstr "" + +msgid "Services" +msgstr "" + +msgid "Set up Time Synchronization" +msgstr "" + +msgid "Setup DHCP Server" +msgstr "" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "" + +msgid "Shutdown this interface" +msgstr "" + +msgid "Shutdown this network" +msgstr "" + +msgid "Signal" +msgstr "" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "" + +msgid "Size" +msgstr "" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "" + +msgid "Skip to content" +msgstr "" + +msgid "Skip to navigation" +msgstr "" + +msgid "Slot time" +msgstr "" + +msgid "Software" +msgstr "" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "" + +msgid "Sorry, the object you requested was not found." +msgstr "" + +msgid "Sorry, the server encountered an unexpected error." +msgstr "" + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" + +msgid "Sort" +msgstr "" + +msgid "Source" +msgstr "" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "" + +msgid "Specifies the directory the device is attached to" +msgstr "" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "" + +msgid "Start" +msgstr "" + +msgid "Start priority" +msgstr "" + +msgid "Startup" +msgstr "" + +msgid "Static IPv4 Routes" +msgstr "" + +msgid "Static IPv6 Routes" +msgstr "" + +msgid "Static Leases" +msgstr "" + +msgid "Static Routes" +msgstr "" + +msgid "Static WDS" +msgstr "" + +msgid "Static address" +msgstr "" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" + +msgid "Status" +msgstr "" + +msgid "Stop" +msgstr "" + +msgid "Strict order" +msgstr "" + +msgid "Submit" +msgstr "" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "" + +msgid "Switch" +msgstr "" + +msgid "Switch %q" +msgstr "" + +msgid "Switch %q (%s)" +msgstr "" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "" + +msgid "Sync with browser" +msgstr "" + +msgid "Synchronizing..." +msgstr "" + +msgid "System" +msgstr "" + +msgid "System Log" +msgstr "" + +msgid "System Properties" +msgstr "" + +msgid "System log buffer size" +msgstr "" + +msgid "TCP:" +msgstr "" + +msgid "TFTP Settings" +msgstr "" + +msgid "TFTP server root" +msgstr "" + +msgid "TX" +msgstr "" + +msgid "TX Rate" +msgstr "" + +msgid "Table" +msgstr "" + +msgid "Target" +msgstr "" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "" + +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" + +msgid "The following changes have been committed" +msgstr "" + +msgid "The following changes have been reverted" +msgstr "" + +msgid "The following rules are currently active on this system." +msgstr "" + +msgid "The given network name is not unique" +msgstr "" + +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" + +msgid "The length of the IPv6 prefix in bits" +msgstr "" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" + +msgid "The selected protocol needs a device assigned" +msgstr "" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" + +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" + +msgid "There are no active leases." +msgstr "" + +msgid "There are no pending changes to apply!" +msgstr "" + +msgid "There are no pending changes to revert!" +msgstr "" + +msgid "There are no pending changes!" +msgstr "" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" + +msgid "This IPv4 address of the relay" +msgstr "" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "" + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" + +msgid "This page allows the configuration of custom button actions" +msgstr "" + +msgid "This page gives an overview over currently active network connections." +msgstr "" + +msgid "This section contains no values yet" +msgstr "" + +msgid "Time Synchronization" +msgstr "" + +msgid "Time Synchronization is not configured yet." +msgstr "" + +msgid "Timezone" +msgstr "" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "" + +msgid "Traceroute" +msgstr "" + +msgid "Traffic" +msgstr "" + +msgid "Transfer" +msgstr "" + +msgid "Transmission Rate" +msgstr "" + +msgid "Transmit" +msgstr "" + +msgid "Transmit Power" +msgstr "" + +msgid "Transmitter Antenna" +msgstr "" + +msgid "Trigger" +msgstr "" + +msgid "Trigger Mode" +msgstr "" + +msgid "Tunnel ID" +msgstr "" + +msgid "Tunnel Interface" +msgstr "" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "" + +msgid "Tx-Power" +msgstr "" + +msgid "Type" +msgstr "" + +msgid "UDP:" +msgstr "" + +msgid "UMTS only" +msgstr "" + +msgid "UMTS/GPRS/EV-DO" +msgstr "" + +msgid "USB Device" +msgstr "" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "" + +msgid "Unable to dispatch" +msgstr "" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "" + +msgid "Unknown Error, password not changed!" +msgstr "" + +msgid "Unmanaged" +msgstr "" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "" + +msgid "Unsupported protocol type." +msgstr "" + +msgid "Update lists" +msgstr "" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" + +msgid "Upload archive..." +msgstr "" + +msgid "Uploaded File" +msgstr "" + +msgid "Uptime" +msgstr "" + +msgid "Use /etc/ethers" +msgstr "" + +msgid "Use DHCP gateway" +msgstr "" + +msgid "Use DNS servers advertised by peer" +msgstr "" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "" + +msgid "Use MTU on tunnel interface" +msgstr "" + +msgid "Use TTL on tunnel interface" +msgstr "" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "" + +msgid "Use default gateway" +msgstr "" + +msgid "Use gateway metric" +msgstr "" + +msgid "Use routing table" +msgstr "" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" + +msgid "Used" +msgstr "" + +msgid "Used Key Slot" +msgstr "" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "" + +msgid "VC-Mux" +msgstr "" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "" + +msgid "VLANs on %q (%s)" +msgstr "" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "" + +msgid "Version" +msgstr "" + +msgid "WDS" +msgstr "" + +msgid "WEP Open System" +msgstr "" + +msgid "WEP Shared Key" +msgstr "" + +msgid "WEP passphrase" +msgstr "" + +msgid "WMM Mode" +msgstr "" + +msgid "WPA passphrase" +msgstr "" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "" + +msgid "Waiting for command to complete..." +msgstr "" + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "" + +msgid "Wireless Adapter" +msgstr "" + +msgid "Wireless Network" +msgstr "" + +msgid "Wireless Overview" +msgstr "" + +msgid "Wireless Security" +msgstr "" + +msgid "Wireless is disabled or not associated" +msgstr "" + +msgid "Wireless is restarting..." +msgstr "" + +msgid "Wireless network is disabled" +msgstr "" + +msgid "Wireless network is enabled" +msgstr "" + +msgid "Wireless restarted" +msgstr "" + +msgid "Wireless shut down" +msgstr "" + +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 "" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "" + +msgid "auto" +msgstr "" + +msgid "baseT" +msgstr "" + +msgid "bridged" +msgstr "" + +msgid "create:" +msgstr "" + +msgid "creates a bridge over specified interface(s)" +msgstr "" + +msgid "dB" +msgstr "" + +msgid "dBm" +msgstr "" + +msgid "disable" +msgstr "" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" + +msgid "forward" +msgstr "" + +msgid "full-duplex" +msgstr "" + +msgid "half-duplex" +msgstr "" + +msgid "help" +msgstr "" + +msgid "hidden" +msgstr "" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "" + +msgid "input" +msgstr "" + +msgid "kB" +msgstr "" + +msgid "kB/s" +msgstr "" + +msgid "kbit/s" +msgstr "" + +msgid "local DNS file" +msgstr "" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "" + +msgid "no link" +msgstr "" + +msgid "none" +msgstr "" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "" + +msgid "on" +msgstr "" + +msgid "open" +msgstr "" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "" + +msgid "unlimited" +msgstr "" + +msgid "unspecified" +msgstr "" + +msgid "unspecified -or- create:" +msgstr "" + +msgid "untagged" +msgstr "" + +msgid "yes" +msgstr "" + +msgid "« Back" +msgstr "" diff --git a/luci-base/po/templates/base.pot b/luci-base/po/templates/base.pot new file mode 100644 index 000000000..88192898c --- /dev/null +++ b/luci-base/po/templates/base.pot @@ -0,0 +1,3742 @@ +msgid "" +msgstr "Content-Type: text/plain; charset=UTF-8" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "" + +msgid "(%s available)" +msgstr "" + +msgid "(empty)" +msgstr "" + +msgid "(no interfaces attached)" +msgstr "" + +msgid "-- Additional Field --" +msgstr "" + +msgid "-- Please choose --" +msgstr "" + +msgid "-- custom --" +msgstr "" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "" + +msgid "15 Minute Load:" +msgstr "" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "" + +msgid "DNS query port" +msgstr "" + +msgid "DNS server port" +msgstr "" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" + +msgid "ESSID" +msgstr "" + +msgid "IPv4-Address" +msgstr "" + +msgid "IPv4-Gateway" +msgstr "" + +msgid "IPv4-Netmask" +msgstr "" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" + +msgid "IPv6-Gateway" +msgstr "" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "" + +msgid "LED Name" +msgstr "" + +msgid "MAC-Address" +msgstr "" + +msgid "" +"Max. DHCP leases" +msgstr "" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" + +msgid "Max. concurrent queries" +msgstr "" + +msgid "%s - %s" +msgstr "" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "" + +msgid "AR Support" +msgstr "" + +msgid "ARP retry threshold" +msgstr "" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" + +msgid "ATM device number" +msgstr "" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "" + +msgid "Access Point" +msgstr "" + +msgid "Action" +msgstr "" + +msgid "Actions" +msgstr "" + +msgid "Activate this network" +msgstr "" + +msgid "Active IPv4-Routes" +msgstr "" + +msgid "Active IPv6-Routes" +msgstr "" + +msgid "Active Connections" +msgstr "" + +msgid "Active DHCP Leases" +msgstr "" + +msgid "Active DHCPv6 Leases" +msgstr "" + +msgid "Ad-Hoc" +msgstr "" + +msgid "Add" +msgstr "" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "" + +msgid "Add new interface..." +msgstr "" + +msgid "Additional Hosts files" +msgstr "" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "" + +msgid "Address to access local relay bridge" +msgstr "" + +msgid "Administration" +msgstr "" + +msgid "Advanced Settings" +msgstr "" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "" + +msgid "Allow all except listed" +msgstr "" + +msgid "Allow listed only" +msgstr "" + +msgid "Allow localhost" +msgstr "" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" + +msgid "Allow root logins with password" +msgstr "" + +msgid "Allow the root user to login with password" +msgstr "" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "" + +msgid "Antenna 2" +msgstr "" + +msgid "Antenna Configuration" +msgstr "" + +msgid "Any zone" +msgstr "" + +msgid "Apply" +msgstr "" + +msgid "Applying changes" +msgstr "" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "" + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "" + +msgid "Authorization Required" +msgstr "" + +msgid "Auto Refresh" +msgstr "" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "" + +msgid "Available packages" +msgstr "" + +msgid "Average:" +msgstr "" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "" + +msgid "Back" +msgstr "" + +msgid "Back to Overview" +msgstr "" + +msgid "Back to configuration" +msgstr "" + +msgid "Back to overview" +msgstr "" + +msgid "Back to scan results" +msgstr "" + +msgid "Background Scan" +msgstr "" + +msgid "Backup / Flash Firmware" +msgstr "" + +msgid "Backup / Restore" +msgstr "" + +msgid "Backup file list" +msgstr "" + +msgid "Bad address specified!" +msgstr "" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "" + +msgid "Bogus NX Domain Override" +msgstr "" + +msgid "Bridge" +msgstr "" + +msgid "Bridge interfaces" +msgstr "" + +msgid "Bridge unit number" +msgstr "" + +msgid "Bring up on boot" +msgstr "" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "" + +msgid "Buffered" +msgstr "" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "" + +msgid "Cancel" +msgstr "" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "" + +msgid "Changes" +msgstr "" + +msgid "Changes applied." +msgstr "" + +msgid "Changes the administrator password for accessing the device" +msgstr "" + +msgid "Channel" +msgstr "" + +msgid "Check" +msgstr "" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" + +msgid "Cipher" +msgstr "" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" + +msgid "Client" +msgstr "" + +msgid "Client ID to send when requesting DHCP" +msgstr "" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" + +msgid "Close list..." +msgstr "" + +msgid "Collecting data..." +msgstr "" + +msgid "Command" +msgstr "" + +msgid "Common Configuration" +msgstr "" + +msgid "Compression" +msgstr "" + +msgid "Configuration" +msgstr "" + +msgid "Configuration applied." +msgstr "" + +msgid "Configuration files will be kept." +msgstr "" + +msgid "Confirmation" +msgstr "" + +msgid "Connect" +msgstr "" + +msgid "Connected" +msgstr "" + +msgid "Connection Limit" +msgstr "" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "" + +msgid "Country" +msgstr "" + +msgid "Country Code" +msgstr "" + +msgid "Cover the following interface" +msgstr "" + +msgid "Cover the following interfaces" +msgstr "" + +msgid "Create / Assign firewall-zone" +msgstr "" + +msgid "Create Interface" +msgstr "" + +msgid "Create a bridge over multiple interfaces" +msgstr "" + +msgid "Critical" +msgstr "" + +msgid "Cron Log Level" +msgstr "" + +msgid "Custom Interface" +msgstr "" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" + +msgid "DHCP Leases" +msgstr "" + +msgid "DHCP Server" +msgstr "" + +msgid "DHCP and DNS" +msgstr "" + +msgid "DHCP client" +msgstr "" + +msgid "DHCP-Options" +msgstr "" + +msgid "DHCPv6 Leases" +msgstr "" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "" + +msgid "DNS forwardings" +msgstr "" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "" + +msgid "Default %d" +msgstr "" + +msgid "Default gateway" +msgstr "" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "" + +msgid "Define a name for this network." +msgstr "" + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" + +msgid "Delete" +msgstr "" + +msgid "Delete this network" +msgstr "" + +msgid "Description" +msgstr "" + +msgid "Design" +msgstr "" + +msgid "Destination" +msgstr "" + +msgid "Device" +msgstr "" + +msgid "Device Configuration" +msgstr "" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "" + +msgid "Disable" +msgstr "" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" + +msgid "Disable DNS setup" +msgstr "" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "" + +msgid "Disabled" +msgstr "" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "" + +msgid "Displaying only packages containing" +msgstr "" + +msgid "Distance Optimization" +msgstr "" + +msgid "Distance to farthest network member in meters." +msgstr "" + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" + +msgid "Do not forward reverse lookups for local networks" +msgstr "" + +msgid "Do not send probe responses" +msgstr "" + +msgid "Domain required" +msgstr "" + +msgid "Domain whitelist" +msgstr "" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" + +msgid "Download and install package" +msgstr "" + +msgid "Download backup" +msgstr "" + +msgid "Dropbear Instance" +msgstr "" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" + +msgid "Dynamic tunnel" +msgstr "" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "" + +msgid "Edit" +msgstr "" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "" + +msgid "Edit this network" +msgstr "" + +msgid "Emergency" +msgstr "" + +msgid "Enable" +msgstr "" + +msgid "Enable STP" +msgstr "" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "" + +msgid "Enable Jumbo Frame passthrough" +msgstr "" + +msgid "Enable NTP client" +msgstr "" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "" + +msgid "Enable VLAN functionality" +msgstr "" + +msgid "Enable WPS pushbutton, requires WPA(2)-PSK" +msgstr "" + +msgid "Enable key reinstallation (KRACK) countermeasures" +msgstr "" + +msgid "Enable learning and aging" +msgstr "" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "" + +msgid "Enable this swap" +msgstr "" + +msgid "Enable/Disable" +msgstr "" + +msgid "Enabled" +msgstr "" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "" + +msgid "Encapsulation mode" +msgstr "" + +msgid "Encryption" +msgstr "" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "" + +msgid "Error" +msgstr "" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "" + +msgid "Ethernet Switch" +msgstr "" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "" + +msgid "Expires" +msgstr "" + +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "" + +msgid "External system log server port" +msgstr "" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "" + +msgid "File" +msgstr "" + +msgid "Filename of the boot image advertised to clients" +msgstr "" + +msgid "Filesystem" +msgstr "" + +msgid "Filter" +msgstr "" + +msgid "Filter private" +msgstr "" + +msgid "Filter useless" +msgstr "" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "" + +msgid "Find package" +msgstr "" + +msgid "Finish" +msgstr "" + +msgid "Firewall" +msgstr "" + +msgid "Firewall Settings" +msgstr "" + +msgid "Firewall Status" +msgstr "" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "" + +msgid "Fixed source port for outbound DNS queries" +msgstr "" + +msgid "Flash Firmware" +msgstr "" + +msgid "Flash image..." +msgstr "" + +msgid "Flash new firmware image" +msgstr "" + +msgid "Flash operations" +msgstr "" + +msgid "Flashing..." +msgstr "" + +msgid "Force" +msgstr "" + +msgid "Force CCMP (AES)" +msgstr "" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "" + +msgid "Force TKIP" +msgstr "" + +msgid "Force TKIP and CCMP (AES)" +msgstr "" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "" + +msgid "Forwarding mode" +msgstr "" + +msgid "Fragmentation Threshold" +msgstr "" + +msgid "Frame Bursting" +msgstr "" + +msgid "Free" +msgstr "" + +msgid "Free space" +msgstr "" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "" + +msgid "GPRS only" +msgstr "" + +msgid "Gateway" +msgstr "" + +msgid "Gateway ports" +msgstr "" + +msgid "General Settings" +msgstr "" + +msgid "General Setup" +msgstr "" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "" + +msgid "Go to relevant configuration page" +msgstr "" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "" + +msgid "Hang Up" +msgstr "" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" + +msgid "Hermes 802.11b Wireless Controller" +msgstr "" + +msgid "Hide ESSID" +msgstr "" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "" + +msgid "Host expiry timeout" +msgstr "" + +msgid "Host-IP or Network" +msgstr "" + +msgid "Hostname" +msgstr "" + +msgid "Hostname to send when requesting DHCP" +msgstr "" + +msgid "Hostnames" +msgstr "" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "" + +msgid "IPv4" +msgstr "" + +msgid "IPv4 Firewall" +msgstr "" + +msgid "IPv4 WAN Status" +msgstr "" + +msgid "IPv4 address" +msgstr "" + +msgid "IPv4 and IPv6" +msgstr "" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "" + +msgid "IPv4 gateway" +msgstr "" + +msgid "IPv4 netmask" +msgstr "" + +msgid "IPv4 only" +msgstr "" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "" + +msgid "IPv4-Address" +msgstr "" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "" + +msgid "IPv6 Firewall" +msgstr "" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "" + +msgid "IPv6 address" +msgstr "" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "" + +msgid "IPv6 only" +msgstr "" + +msgid "IPv6 prefix" +msgstr "" + +msgid "IPv6 prefix length" +msgstr "" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "" + +msgid "Identity" +msgstr "" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" + +msgid "If unchecked, no default route is configured" +msgstr "" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" + +msgid "Ignore /etc/hosts" +msgstr "" + +msgid "Ignore interface" +msgstr "" + +msgid "Ignore resolve file" +msgstr "" + +msgid "Image" +msgstr "" + +msgid "In" +msgstr "" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "" + +msgid "Inbound:" +msgstr "" + +msgid "Info" +msgstr "" + +msgid "Initscript" +msgstr "" + +msgid "Initscripts" +msgstr "" + +msgid "Install" +msgstr "" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "" + +msgid "Install protocol extensions..." +msgstr "" + +msgid "Installed packages" +msgstr "" + +msgid "Interface" +msgstr "" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "" + +msgid "Interface Overview" +msgstr "" + +msgid "Interface is reconnecting..." +msgstr "" + +msgid "Interface is shutting down..." +msgstr "" + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "" + +msgid "Interface reconnected" +msgstr "" + +msgid "Interface shut down" +msgstr "" + +msgid "Interfaces" +msgstr "" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "" + +msgid "Invalid" +msgstr "" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "" + +msgid "Invalid username and/or password! Please try again." +msgstr "" + +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "" + +msgid "Join Network" +msgstr "" + +msgid "Join Network: Wireless Scan" +msgstr "" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "" + +msgid "Kernel Log" +msgstr "" + +msgid "Kernel Version" +msgstr "" + +msgid "Key" +msgstr "" + +msgid "Key #%d" +msgstr "" + +msgid "Kill" +msgstr "" + +msgid "L2TP" +msgstr "" + +msgid "L2TP Server" +msgstr "" + +msgid "LCP echo failure threshold" +msgstr "" + +msgid "LCP echo interval" +msgstr "" + +msgid "LLC" +msgstr "" + +msgid "Label" +msgstr "" + +msgid "Language" +msgstr "" + +msgid "Language and Style" +msgstr "" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "" + +msgid "Leasefile" +msgstr "" + +msgid "Leasetime remaining" +msgstr "" + +msgid "Leave empty to autodetect" +msgstr "" + +msgid "Leave empty to use the current WAN address" +msgstr "" + +msgid "Legend:" +msgstr "" + +msgid "Limit" +msgstr "" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" + +msgid "Listening port for inbound DNS queries" +msgstr "" + +msgid "Load" +msgstr "" + +msgid "Load Average" +msgstr "" + +msgid "Loading" +msgstr "" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "" + +msgid "Local IPv6 address" +msgstr "" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "" + +msgid "Local Time" +msgstr "" + +msgid "Local domain" +msgstr "" + +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" + +msgid "Local server" +msgstr "" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" + +msgid "Localise queries" +msgstr "" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "" + +msgid "Log queries" +msgstr "" + +msgid "Logging" +msgstr "" + +msgid "Login" +msgstr "" + +msgid "Logout" +msgstr "" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "" + +msgid "MAC-Address" +msgstr "" + +msgid "MAC-Address Filter" +msgstr "" + +msgid "MAC-Filter" +msgstr "" + +msgid "MAC-List" +msgstr "" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "" + +msgid "MTU" +msgstr "" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "" + +msgid "Maximum hold time" +msgstr "" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "" + +msgid "Mbit/s" +msgstr "" + +msgid "Memory" +msgstr "" + +msgid "Memory usage (%)" +msgstr "" + +msgid "Metric" +msgstr "" + +msgid "Minimum Rate" +msgstr "" + +msgid "Minimum hold time" +msgstr "" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "" + +msgid "Modem init timeout" +msgstr "" + +msgid "Monitor" +msgstr "" + +msgid "Mount Entry" +msgstr "" + +msgid "Mount Point" +msgstr "" + +msgid "Mount Points" +msgstr "" + +msgid "Mount Points - Mount Entry" +msgstr "" + +msgid "Mount Points - Swap Entry" +msgstr "" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "" + +msgid "Mount point" +msgstr "" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "" + +msgid "Move down" +msgstr "" + +msgid "Move up" +msgstr "" + +msgid "Multicast Rate" +msgstr "" + +msgid "Multicast address" +msgstr "" + +msgid "NAS ID" +msgstr "" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "" + +msgid "Name of the new interface" +msgstr "" + +msgid "Name of the new network" +msgstr "" + +msgid "Navigation" +msgstr "" + +msgid "Netmask" +msgstr "" + +msgid "Network" +msgstr "" + +msgid "Network Utilities" +msgstr "" + +msgid "Network boot image" +msgstr "" + +msgid "Network without interfaces." +msgstr "" + +msgid "Next »" +msgstr "" + +msgid "No DHCP Server configured for this interface" +msgstr "" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "" + +msgid "No files found" +msgstr "" + +msgid "No information available" +msgstr "" + +msgid "No negative cache" +msgstr "" + +msgid "No network configured on this device" +msgstr "" + +msgid "No network name specified" +msgstr "" + +msgid "No package lists available" +msgstr "" + +msgid "No password set!" +msgstr "" + +msgid "No rules in this chain" +msgstr "" + +msgid "No zone assigned" +msgstr "" + +msgid "Noise" +msgstr "" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "" + +msgid "Normal" +msgstr "" + +msgid "Not Found" +msgstr "" + +msgid "Not associated" +msgstr "" + +msgid "Not connected" +msgstr "" + +msgid "Note: Configuration files will be erased." +msgstr "" + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "" + +msgid "Nslookup" +msgstr "" + +msgid "OK" +msgstr "" + +msgid "OPKG-Configuration" +msgstr "" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" + +msgid "On-State Delay" +msgstr "" + +msgid "One of hostname or mac address must be specified!" +msgstr "" + +msgid "One or more fields contain invalid values!" +msgstr "" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "" + +msgid "Open list..." +msgstr "" + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "" + +msgid "Option removed" +msgstr "" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "" + +msgid "Other:" +msgstr "" + +msgid "Out" +msgstr "" + +msgid "Outbound:" +msgstr "" + +msgid "Outdoor Channels" +msgstr "" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "" + +msgid "Override MTU" +msgstr "" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" + +msgid "Override the table used for internal routes" +msgstr "" + +msgid "Overview" +msgstr "" + +msgid "Owner" +msgstr "" + +msgid "PAP/CHAP password" +msgstr "" + +msgid "PAP/CHAP username" +msgstr "" + +msgid "PID" +msgstr "" + +msgid "PIN" +msgstr "" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "" + +msgid "PPPoA Encapsulation" +msgstr "" + +msgid "PPPoATM" +msgstr "" + +msgid "PPPoE" +msgstr "" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "" + +msgid "Package lists are older than 24 hours" +msgstr "" + +msgid "Package name" +msgstr "" + +msgid "Packets" +msgstr "" + +msgid "Part of zone %q" +msgstr "" + +msgid "Password" +msgstr "" + +msgid "Password authentication" +msgstr "" + +msgid "Password of Private Key" +msgstr "" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "" + +msgid "Path to Client-Certificate" +msgstr "" + +msgid "Path to Private Key" +msgstr "" + +msgid "Path to executable which handles the button event" +msgstr "" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "" + +msgid "Perform reset" +msgstr "" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "" + +msgid "Physical Settings" +msgstr "" + +msgid "Ping" +msgstr "" + +msgid "Pkts." +msgstr "" + +msgid "Please enter your username and password." +msgstr "" + +msgid "Policy" +msgstr "" + +msgid "Port" +msgstr "" + +msgid "Port status:" +msgstr "" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "" + +msgid "Processes" +msgstr "" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "" + +msgid "Protocol" +msgstr "" + +msgid "Protocol family" +msgstr "" + +msgid "Protocol of the new interface" +msgstr "" + +msgid "Protocol support is not installed" +msgstr "" + +msgid "Provide NTP server" +msgstr "" + +msgid "Provide new network" +msgstr "" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "" + +msgid "RX" +msgstr "" + +msgid "RX Rate" +msgstr "" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "" + +msgid "Radius-Accounting-Port" +msgstr "" + +msgid "Radius-Accounting-Secret" +msgstr "" + +msgid "Radius-Accounting-Server" +msgstr "" + +msgid "Radius-Authentication-Port" +msgstr "" + +msgid "Radius-Authentication-Secret" +msgstr "" + +msgid "Radius-Authentication-Server" +msgstr "" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" + +msgid "Really reset all changes?" +msgstr "" + +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" + +msgid "Really switch protocol?" +msgstr "" + +msgid "Realtime Connections" +msgstr "" + +msgid "Realtime Graphs" +msgstr "" + +msgid "Realtime Load" +msgstr "" + +msgid "Realtime Traffic" +msgstr "" + +msgid "Realtime Wireless" +msgstr "" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "" + +msgid "Reboot" +msgstr "" + +msgid "Rebooting..." +msgstr "" + +msgid "Reboots the operating system of your device" +msgstr "" + +msgid "Receive" +msgstr "" + +msgid "Receiver Antenna" +msgstr "" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "" + +msgid "Reconnecting interface" +msgstr "" + +msgid "References" +msgstr "" + +msgid "Regulatory Domain" +msgstr "" + +msgid "Relay" +msgstr "" + +msgid "Relay Bridge" +msgstr "" + +msgid "Relay between networks" +msgstr "" + +msgid "Relay bridge" +msgstr "" + +msgid "Remote IPv4 address" +msgstr "" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "" + +msgid "Repeat scan" +msgstr "" + +msgid "Replace entry" +msgstr "" + +msgid "Replace wireless configuration" +msgstr "" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "" + +msgid "Reset Counters" +msgstr "" + +msgid "Reset to defaults" +msgstr "" + +msgid "Resolv and Hosts Files" +msgstr "" + +msgid "Resolve file" +msgstr "" + +msgid "Restart" +msgstr "" + +msgid "Restart Firewall" +msgstr "" + +msgid "Restore backup" +msgstr "" + +msgid "Reveal/hide password" +msgstr "" + +msgid "Revert" +msgstr "" + +msgid "Root" +msgstr "" + +msgid "Root directory for files served via TFTP" +msgstr "" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "" + +msgid "Routes" +msgstr "" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" + +msgid "Run a filesystem check before mounting the device" +msgstr "" + +msgid "Run filesystem check" +msgstr "" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "" + +msgid "SSID" +msgstr "" + +msgid "Save" +msgstr "" + +msgid "Save & Apply" +msgstr "" + +msgid "Save & Apply" +msgstr "" + +msgid "Scan" +msgstr "" + +msgid "Scheduled Tasks" +msgstr "" + +msgid "Section added" +msgstr "" + +msgid "Section removed" +msgstr "" + +msgid "See \"mount\" manpage for details" +msgstr "" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" + +msgid "Separate Clients" +msgstr "" + +msgid "Separate WDS" +msgstr "" + +msgid "Server Settings" +msgstr "" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "" + +msgid "Service Type" +msgstr "" + +msgid "Services" +msgstr "" + +msgid "Set up Time Synchronization" +msgstr "" + +msgid "Setup DHCP Server" +msgstr "" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "" + +msgid "Shutdown this interface" +msgstr "" + +msgid "Shutdown this network" +msgstr "" + +msgid "Signal" +msgstr "" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "" + +msgid "Size" +msgstr "" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "" + +msgid "Skip to content" +msgstr "" + +msgid "Skip to navigation" +msgstr "" + +msgid "Slot time" +msgstr "" + +msgid "Software" +msgstr "" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "" + +msgid "Sorry, the object you requested was not found." +msgstr "" + +msgid "Sorry, the server encountered an unexpected error." +msgstr "" + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" + +msgid "Sort" +msgstr "" + +msgid "Source" +msgstr "" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "" + +msgid "Specifies the directory the device is attached to" +msgstr "" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "" + +msgid "Start" +msgstr "" + +msgid "Start priority" +msgstr "" + +msgid "Startup" +msgstr "" + +msgid "Static IPv4 Routes" +msgstr "" + +msgid "Static IPv6 Routes" +msgstr "" + +msgid "Static Leases" +msgstr "" + +msgid "Static Routes" +msgstr "" + +msgid "Static WDS" +msgstr "" + +msgid "Static address" +msgstr "" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" + +msgid "Status" +msgstr "" + +msgid "Stop" +msgstr "" + +msgid "Strict order" +msgstr "" + +msgid "Submit" +msgstr "" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "" + +msgid "Switch" +msgstr "" + +msgid "Switch %q" +msgstr "" + +msgid "Switch %q (%s)" +msgstr "" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "" + +msgid "Sync with browser" +msgstr "" + +msgid "Synchronizing..." +msgstr "" + +msgid "System" +msgstr "" + +msgid "System Log" +msgstr "" + +msgid "System Properties" +msgstr "" + +msgid "System log buffer size" +msgstr "" + +msgid "TCP:" +msgstr "" + +msgid "TFTP Settings" +msgstr "" + +msgid "TFTP server root" +msgstr "" + +msgid "TX" +msgstr "" + +msgid "TX Rate" +msgstr "" + +msgid "Table" +msgstr "" + +msgid "Target" +msgstr "" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "" + +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" + +msgid "The following changes have been committed" +msgstr "" + +msgid "The following changes have been reverted" +msgstr "" + +msgid "The following rules are currently active on this system." +msgstr "" + +msgid "The given network name is not unique" +msgstr "" + +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" + +msgid "The length of the IPv6 prefix in bits" +msgstr "" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" + +msgid "The selected protocol needs a device assigned" +msgstr "" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" + +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" + +msgid "There are no active leases." +msgstr "" + +msgid "There are no pending changes to apply!" +msgstr "" + +msgid "There are no pending changes to revert!" +msgstr "" + +msgid "There are no pending changes!" +msgstr "" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" + +msgid "This IPv4 address of the relay" +msgstr "" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "" + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" + +msgid "This page allows the configuration of custom button actions" +msgstr "" + +msgid "This page gives an overview over currently active network connections." +msgstr "" + +msgid "This section contains no values yet" +msgstr "" + +msgid "Time Synchronization" +msgstr "" + +msgid "Time Synchronization is not configured yet." +msgstr "" + +msgid "Timezone" +msgstr "" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "" + +msgid "Traceroute" +msgstr "" + +msgid "Traffic" +msgstr "" + +msgid "Transfer" +msgstr "" + +msgid "Transmission Rate" +msgstr "" + +msgid "Transmit" +msgstr "" + +msgid "Transmit Power" +msgstr "" + +msgid "Transmitter Antenna" +msgstr "" + +msgid "Trigger" +msgstr "" + +msgid "Trigger Mode" +msgstr "" + +msgid "Tunnel ID" +msgstr "" + +msgid "Tunnel Interface" +msgstr "" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "" + +msgid "Tx-Power" +msgstr "" + +msgid "Type" +msgstr "" + +msgid "UDP:" +msgstr "" + +msgid "UMTS only" +msgstr "" + +msgid "UMTS/GPRS/EV-DO" +msgstr "" + +msgid "USB Device" +msgstr "" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "" + +msgid "Unable to dispatch" +msgstr "" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "" + +msgid "Unknown Error, password not changed!" +msgstr "" + +msgid "Unmanaged" +msgstr "" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "" + +msgid "Unsupported protocol type." +msgstr "" + +msgid "Update lists" +msgstr "" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" + +msgid "Upload archive..." +msgstr "" + +msgid "Uploaded File" +msgstr "" + +msgid "Uptime" +msgstr "" + +msgid "Use /etc/ethers" +msgstr "" + +msgid "Use DHCP gateway" +msgstr "" + +msgid "Use DNS servers advertised by peer" +msgstr "" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "" + +msgid "Use MTU on tunnel interface" +msgstr "" + +msgid "Use TTL on tunnel interface" +msgstr "" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "" + +msgid "Use default gateway" +msgstr "" + +msgid "Use gateway metric" +msgstr "" + +msgid "Use routing table" +msgstr "" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" + +msgid "Used" +msgstr "" + +msgid "Used Key Slot" +msgstr "" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "" + +msgid "VC-Mux" +msgstr "" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "" + +msgid "VLANs on %q (%s)" +msgstr "" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "" + +msgid "Version" +msgstr "" + +msgid "WDS" +msgstr "" + +msgid "WEP Open System" +msgstr "" + +msgid "WEP Shared Key" +msgstr "" + +msgid "WEP passphrase" +msgstr "" + +msgid "WMM Mode" +msgstr "" + +msgid "WPA passphrase" +msgstr "" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "" + +msgid "Waiting for command to complete..." +msgstr "" + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "" + +msgid "Wireless Adapter" +msgstr "" + +msgid "Wireless Network" +msgstr "" + +msgid "Wireless Overview" +msgstr "" + +msgid "Wireless Security" +msgstr "" + +msgid "Wireless is disabled or not associated" +msgstr "" + +msgid "Wireless is restarting..." +msgstr "" + +msgid "Wireless network is disabled" +msgstr "" + +msgid "Wireless network is enabled" +msgstr "" + +msgid "Wireless restarted" +msgstr "" + +msgid "Wireless shut down" +msgstr "" + +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 "" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "" + +msgid "auto" +msgstr "" + +msgid "baseT" +msgstr "" + +msgid "bridged" +msgstr "" + +msgid "create:" +msgstr "" + +msgid "creates a bridge over specified interface(s)" +msgstr "" + +msgid "dB" +msgstr "" + +msgid "dBm" +msgstr "" + +msgid "disable" +msgstr "" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" + +msgid "forward" +msgstr "" + +msgid "full-duplex" +msgstr "" + +msgid "half-duplex" +msgstr "" + +msgid "help" +msgstr "" + +msgid "hidden" +msgstr "" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "" + +msgid "input" +msgstr "" + +msgid "kB" +msgstr "" + +msgid "kB/s" +msgstr "" + +msgid "kbit/s" +msgstr "" + +msgid "local DNS file" +msgstr "" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "" + +msgid "no link" +msgstr "" + +msgid "none" +msgstr "" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "" + +msgid "on" +msgstr "" + +msgid "open" +msgstr "" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "" + +msgid "unlimited" +msgstr "" + +msgid "unspecified" +msgstr "" + +msgid "unspecified -or- create:" +msgstr "" + +msgid "untagged" +msgstr "" + +msgid "yes" +msgstr "" + +msgid "« Back" +msgstr "" diff --git a/luci-base/po/tr/base.po b/luci-base/po/tr/base.po new file mode 100644 index 000000000..faba87660 --- /dev/null +++ b/luci-base/po/tr/base.po @@ -0,0 +1,3764 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"PO-Revision-Date: 2013-11-25 14:47+0200\n" +"Last-Translator: qbilay \n" +"Language-Team: none\n" +"Language: tr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Pootle 2.0.6\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(%d dakika gösteriliyor, %d saniye aralıklı)" + +msgid "(%s available)" +msgstr "(%s uygun)" + +msgid "(empty)" +msgstr "(boş)" + +msgid "(no interfaces attached)" +msgstr "(arayüz eklenmedi)" + +msgid "-- Additional Field --" +msgstr "-- Ek Alan--" + +msgid "-- Please choose --" +msgstr "-- Lütfen seçiniz --" + +msgid "-- custom --" +msgstr "-- özel --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "1 Dakikalık Yük:" + +msgid "15 Minute Load:" +msgstr "15 Dakikalık Yük:" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "5 Dakikalık Yük:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr " BSSID " + +msgid "DNS query port" +msgstr "DNS port sorgula" + +msgid "DNS server port" +msgstr "DNS sunucu port" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" + +msgid "ESSID" +msgstr "" + +msgid "IPv4-Address" +msgstr "IPv4-Adres" + +msgid "IPv4-Gateway" +msgstr "IPv4-Gateway" + +msgid "IPv4-Netmask" +msgstr "IPv4-Netmask" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"IPv6-Address or Network " +"(CIDR)" + +msgid "IPv6-Gateway" +msgstr "IPv6-Gateway" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "LED Ayarları" + +msgid "LED Name" +msgstr "LED Adı" + +msgid "MAC-Address" +msgstr "MAC-Adresi" + +msgid "" +"Max. DHCP leases" +msgstr "" +"Maks. DHCP leases" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"Maks. EDNS0 paket boyutu" + +msgid "Max. concurrent queries" +msgstr "Maks. eşzamanlı sorgu" + +msgid "%s - %s" +msgstr "" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "AR Desteği" + +msgid "ARP retry threshold" +msgstr "ARP yenileme aralığı" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "ATM Köprüleri" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" + +msgid "ATM device number" +msgstr "" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "" + +msgid "Access Point" +msgstr "Erişim Noktası" + +msgid "Action" +msgstr "Eylem" + +msgid "Actions" +msgstr "Eylemler" + +msgid "Activate this network" +msgstr "Bu ağı etkinleştir" + +msgid "Active IPv4-Routes" +msgstr "" +"Aktif IPv4-Yönlendiriciler" + +msgid "Active IPv6-Routes" +msgstr "" +"Aktif IPv6-Yönlendiriciler" + +msgid "Active Connections" +msgstr "Aktif Bağlantılar" + +msgid "Active DHCP Leases" +msgstr "Aktif DHCP Kiraları" + +msgid "Active DHCPv6 Leases" +msgstr "Aktif DHCPv6 Kiraları" + +msgid "Ad-Hoc" +msgstr "" + +msgid "Add" +msgstr "Ekle" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "" + +msgid "Add new interface..." +msgstr "Yeni arabirim ekle..." + +msgid "Additional Hosts files" +msgstr "" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "Adresler" + +msgid "Address to access local relay bridge" +msgstr "" + +msgid "Administration" +msgstr "" + +msgid "Advanced Settings" +msgstr "Gelişmiş Ayarlar" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "Uyarı" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +# "Secure Shell" için ne kullanılabilinir bir fikrim yok. +msgid "Allow SSH password authentication" +msgstr "" +"SSH parola kimlik doğrulamasına izin ver" + +msgid "Allow all except listed" +msgstr "Listelenenlerin haricindekilere izin ver" + +msgid "Allow listed only" +msgstr "Yanlızca listelenenlere izin ver" + +msgid "Allow localhost" +msgstr "" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" + +msgid "Allow root logins with password" +msgstr "" + +msgid "Allow the root user to login with password" +msgstr "" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "1. Anten" + +msgid "Antenna 2" +msgstr "2. Anten" + +msgid "Antenna Configuration" +msgstr "Anten Yapılandırması" + +msgid "Any zone" +msgstr "" + +msgid "Apply" +msgstr "Uygula" + +msgid "Applying changes" +msgstr "Değişiklikleri uygula" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "Arabirim ata..." + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Atheros 802.11%s Kablosuz Denetleyicisi" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "Kimlik doğrulama" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "Yetkilendirme" + +msgid "Authorization Required" +msgstr "Yetkilendirme Gerekli" + +msgid "Auto Refresh" +msgstr "Otomatik Yenileme" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "Kullanılabilir" + +msgid "Available packages" +msgstr "Kullanılabilir Paketler" + +msgid "Average:" +msgstr "Ortalama:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "" + +msgid "Back" +msgstr "Geri" + +msgid "Back to Overview" +msgstr "Genel Bakışa dön" + +msgid "Back to configuration" +msgstr "Yapılandırmaya dön" + +msgid "Back to overview" +msgstr "Genel Bakışa dön" + +msgid "Back to scan results" +msgstr "Tarama sonuçlarına dön" + +msgid "Background Scan" +msgstr "Arka Planda Tarama" + +msgid "Backup / Flash Firmware" +msgstr "" + +msgid "Backup / Restore" +msgstr "Yedekleme / Geri Yükleme" + +msgid "Backup file list" +msgstr "" + +msgid "Bad address specified!" +msgstr "" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "" + +msgid "Bogus NX Domain Override" +msgstr "" + +msgid "Bridge" +msgstr "" + +msgid "Bridge interfaces" +msgstr "" + +msgid "Bridge unit number" +msgstr "" + +msgid "Bring up on boot" +msgstr "" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "" + +msgid "Buffered" +msgstr "" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "" + +msgid "Cancel" +msgstr "" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "" + +msgid "Changes" +msgstr "" + +msgid "Changes applied." +msgstr "" + +msgid "Changes the administrator password for accessing the device" +msgstr "" + +msgid "Channel" +msgstr "" + +msgid "Check" +msgstr "" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" + +msgid "Cipher" +msgstr "" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" + +msgid "Client" +msgstr "" + +msgid "Client ID to send when requesting DHCP" +msgstr "" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" + +msgid "Close list..." +msgstr "" + +msgid "Collecting data..." +msgstr "" + +msgid "Command" +msgstr "" + +msgid "Common Configuration" +msgstr "" + +msgid "Compression" +msgstr "" + +msgid "Configuration" +msgstr "" + +msgid "Configuration applied." +msgstr "" + +msgid "Configuration files will be kept." +msgstr "" + +msgid "Confirmation" +msgstr "" + +msgid "Connect" +msgstr "" + +msgid "Connected" +msgstr "" + +msgid "Connection Limit" +msgstr "" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "" + +msgid "Country" +msgstr "" + +msgid "Country Code" +msgstr "" + +msgid "Cover the following interface" +msgstr "" + +msgid "Cover the following interfaces" +msgstr "" + +msgid "Create / Assign firewall-zone" +msgstr "" + +msgid "Create Interface" +msgstr "" + +msgid "Create a bridge over multiple interfaces" +msgstr "" + +msgid "Critical" +msgstr "" + +msgid "Cron Log Level" +msgstr "" + +msgid "Custom Interface" +msgstr "" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" + +msgid "DHCP Leases" +msgstr "" + +msgid "DHCP Server" +msgstr "" + +msgid "DHCP and DNS" +msgstr "" + +msgid "DHCP client" +msgstr "" + +msgid "DHCP-Options" +msgstr "" + +msgid "DHCPv6 Leases" +msgstr "" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "" + +msgid "DNS forwardings" +msgstr "" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "" + +msgid "Default %d" +msgstr "" + +msgid "Default gateway" +msgstr "" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "" + +msgid "Define a name for this network." +msgstr "" + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" + +msgid "Delete" +msgstr "" + +msgid "Delete this network" +msgstr "" + +msgid "Description" +msgstr "" + +msgid "Design" +msgstr "" + +msgid "Destination" +msgstr "" + +msgid "Device" +msgstr "" + +msgid "Device Configuration" +msgstr "" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "" + +msgid "Disable" +msgstr "" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" + +msgid "Disable DNS setup" +msgstr "" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "" + +msgid "Disabled" +msgstr "" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "" + +msgid "Displaying only packages containing" +msgstr "" + +msgid "Distance Optimization" +msgstr "" + +msgid "Distance to farthest network member in meters." +msgstr "" + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" + +msgid "Do not forward reverse lookups for local networks" +msgstr "" + +msgid "Do not send probe responses" +msgstr "" + +msgid "Domain required" +msgstr "" + +msgid "Domain whitelist" +msgstr "" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" + +msgid "Download and install package" +msgstr "" + +msgid "Download backup" +msgstr "" + +msgid "Dropbear Instance" +msgstr "" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" + +msgid "Dynamic tunnel" +msgstr "" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "" + +msgid "Edit" +msgstr "" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "" + +msgid "Edit this network" +msgstr "" + +msgid "Emergency" +msgstr "" + +msgid "Enable" +msgstr "" + +msgid "Enable STP" +msgstr "" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "" + +msgid "Enable Jumbo Frame passthrough" +msgstr "" + +msgid "Enable NTP client" +msgstr "" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "" + +msgid "Enable VLAN functionality" +msgstr "" + +msgid "Enable WPS pushbutton, requires WPA(2)-PSK" +msgstr "" + +msgid "Enable key reinstallation (KRACK) countermeasures" +msgstr "" + +msgid "Enable learning and aging" +msgstr "" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "" + +msgid "Enable this swap" +msgstr "" + +msgid "Enable/Disable" +msgstr "" + +msgid "Enabled" +msgstr "" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "" + +msgid "Encapsulation mode" +msgstr "" + +msgid "Encryption" +msgstr "" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "" + +msgid "Error" +msgstr "" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "" + +msgid "Ethernet Switch" +msgstr "" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "" + +msgid "Expires" +msgstr "" + +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "" + +msgid "External system log server port" +msgstr "" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "" + +msgid "File" +msgstr "" + +msgid "Filename of the boot image advertised to clients" +msgstr "" + +msgid "Filesystem" +msgstr "" + +msgid "Filter" +msgstr "" + +msgid "Filter private" +msgstr "" + +msgid "Filter useless" +msgstr "" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "" + +msgid "Find package" +msgstr "" + +msgid "Finish" +msgstr "" + +msgid "Firewall" +msgstr "" + +msgid "Firewall Settings" +msgstr "" + +msgid "Firewall Status" +msgstr "" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "" + +msgid "Fixed source port for outbound DNS queries" +msgstr "" + +msgid "Flash Firmware" +msgstr "" + +msgid "Flash image..." +msgstr "" + +msgid "Flash new firmware image" +msgstr "" + +msgid "Flash operations" +msgstr "" + +msgid "Flashing..." +msgstr "" + +msgid "Force" +msgstr "" + +msgid "Force CCMP (AES)" +msgstr "" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "" + +msgid "Force TKIP" +msgstr "" + +msgid "Force TKIP and CCMP (AES)" +msgstr "" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "" + +msgid "Forwarding mode" +msgstr "" + +msgid "Fragmentation Threshold" +msgstr "" + +msgid "Frame Bursting" +msgstr "" + +msgid "Free" +msgstr "" + +msgid "Free space" +msgstr "" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "" + +msgid "GPRS only" +msgstr "" + +msgid "Gateway" +msgstr "" + +msgid "Gateway ports" +msgstr "" + +msgid "General Settings" +msgstr "" + +msgid "General Setup" +msgstr "" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "" + +msgid "Go to relevant configuration page" +msgstr "" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "" + +msgid "Hang Up" +msgstr "" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" + +msgid "Hermes 802.11b Wireless Controller" +msgstr "" + +msgid "Hide ESSID" +msgstr "" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "" + +msgid "Host expiry timeout" +msgstr "" + +msgid "Host-IP or Network" +msgstr "" + +msgid "Hostname" +msgstr "" + +msgid "Hostname to send when requesting DHCP" +msgstr "" + +msgid "Hostnames" +msgstr "" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "" + +msgid "IPv4" +msgstr "" + +msgid "IPv4 Firewall" +msgstr "" + +msgid "IPv4 WAN Status" +msgstr "" + +msgid "IPv4 address" +msgstr "" + +msgid "IPv4 and IPv6" +msgstr "" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "" + +msgid "IPv4 gateway" +msgstr "" + +msgid "IPv4 netmask" +msgstr "" + +msgid "IPv4 only" +msgstr "" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "" + +msgid "IPv4-Address" +msgstr "" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "" + +msgid "IPv6 Firewall" +msgstr "" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "" + +msgid "IPv6 address" +msgstr "" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "" + +msgid "IPv6 only" +msgstr "" + +msgid "IPv6 prefix" +msgstr "" + +msgid "IPv6 prefix length" +msgstr "" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "" + +msgid "Identity" +msgstr "" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" + +msgid "If unchecked, no default route is configured" +msgstr "" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" + +msgid "Ignore /etc/hosts" +msgstr "" + +msgid "Ignore interface" +msgstr "" + +msgid "Ignore resolve file" +msgstr "" + +msgid "Image" +msgstr "" + +msgid "In" +msgstr "" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "" + +msgid "Inbound:" +msgstr "" + +msgid "Info" +msgstr "" + +msgid "Initscript" +msgstr "" + +msgid "Initscripts" +msgstr "" + +msgid "Install" +msgstr "" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "" + +msgid "Install protocol extensions..." +msgstr "" + +msgid "Installed packages" +msgstr "" + +msgid "Interface" +msgstr "" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "" + +msgid "Interface Overview" +msgstr "" + +msgid "Interface is reconnecting..." +msgstr "" + +msgid "Interface is shutting down..." +msgstr "" + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "" + +msgid "Interface reconnected" +msgstr "" + +msgid "Interface shut down" +msgstr "" + +msgid "Interfaces" +msgstr "" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "" + +msgid "Invalid" +msgstr "" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "" + +msgid "Invalid username and/or password! Please try again." +msgstr "" + +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "" + +msgid "Join Network" +msgstr "" + +msgid "Join Network: Wireless Scan" +msgstr "" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "" + +msgid "Kernel Log" +msgstr "" + +msgid "Kernel Version" +msgstr "" + +msgid "Key" +msgstr "" + +msgid "Key #%d" +msgstr "" + +msgid "Kill" +msgstr "" + +msgid "L2TP" +msgstr "" + +msgid "L2TP Server" +msgstr "" + +msgid "LCP echo failure threshold" +msgstr "" + +msgid "LCP echo interval" +msgstr "" + +msgid "LLC" +msgstr "" + +msgid "Label" +msgstr "" + +msgid "Language" +msgstr "" + +msgid "Language and Style" +msgstr "" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "" + +msgid "Leasefile" +msgstr "" + +msgid "Leasetime remaining" +msgstr "" + +msgid "Leave empty to autodetect" +msgstr "" + +msgid "Leave empty to use the current WAN address" +msgstr "" + +msgid "Legend:" +msgstr "" + +msgid "Limit" +msgstr "" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" + +msgid "Listening port for inbound DNS queries" +msgstr "" + +msgid "Load" +msgstr "" + +msgid "Load Average" +msgstr "" + +msgid "Loading" +msgstr "" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "" + +msgid "Local IPv6 address" +msgstr "" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "" + +msgid "Local Time" +msgstr "" + +msgid "Local domain" +msgstr "" + +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" + +msgid "Local server" +msgstr "" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" + +msgid "Localise queries" +msgstr "" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "" + +msgid "Log queries" +msgstr "" + +msgid "Logging" +msgstr "" + +msgid "Login" +msgstr "" + +msgid "Logout" +msgstr "" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "" + +msgid "MAC-Address" +msgstr "" + +msgid "MAC-Address Filter" +msgstr "" + +msgid "MAC-Filter" +msgstr "" + +msgid "MAC-List" +msgstr "" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "" + +msgid "MTU" +msgstr "" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "" + +msgid "Maximum hold time" +msgstr "" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "" + +msgid "Mbit/s" +msgstr "" + +msgid "Memory" +msgstr "" + +msgid "Memory usage (%)" +msgstr "" + +msgid "Metric" +msgstr "" + +msgid "Minimum Rate" +msgstr "" + +msgid "Minimum hold time" +msgstr "" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "" + +msgid "Modem init timeout" +msgstr "" + +msgid "Monitor" +msgstr "" + +msgid "Mount Entry" +msgstr "" + +msgid "Mount Point" +msgstr "" + +msgid "Mount Points" +msgstr "" + +msgid "Mount Points - Mount Entry" +msgstr "" + +msgid "Mount Points - Swap Entry" +msgstr "" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "" + +msgid "Mount point" +msgstr "" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "" + +msgid "Move down" +msgstr "" + +msgid "Move up" +msgstr "" + +msgid "Multicast Rate" +msgstr "" + +msgid "Multicast address" +msgstr "" + +msgid "NAS ID" +msgstr "" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "" + +msgid "Name of the new interface" +msgstr "" + +msgid "Name of the new network" +msgstr "" + +msgid "Navigation" +msgstr "" + +msgid "Netmask" +msgstr "" + +msgid "Network" +msgstr "" + +msgid "Network Utilities" +msgstr "" + +msgid "Network boot image" +msgstr "" + +msgid "Network without interfaces." +msgstr "" + +msgid "Next »" +msgstr "" + +msgid "No DHCP Server configured for this interface" +msgstr "" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "" + +msgid "No files found" +msgstr "" + +msgid "No information available" +msgstr "" + +msgid "No negative cache" +msgstr "" + +msgid "No network configured on this device" +msgstr "" + +msgid "No network name specified" +msgstr "" + +msgid "No package lists available" +msgstr "" + +msgid "No password set!" +msgstr "" + +msgid "No rules in this chain" +msgstr "" + +msgid "No zone assigned" +msgstr "" + +msgid "Noise" +msgstr "" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "" + +msgid "Normal" +msgstr "" + +msgid "Not Found" +msgstr "" + +msgid "Not associated" +msgstr "" + +msgid "Not connected" +msgstr "" + +msgid "Note: Configuration files will be erased." +msgstr "" + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "" + +msgid "Nslookup" +msgstr "" + +msgid "OK" +msgstr "" + +msgid "OPKG-Configuration" +msgstr "" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" + +msgid "On-State Delay" +msgstr "" + +msgid "One of hostname or mac address must be specified!" +msgstr "" + +msgid "One or more fields contain invalid values!" +msgstr "" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "" + +msgid "Open list..." +msgstr "" + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "" + +msgid "Option removed" +msgstr "" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "" + +msgid "Other:" +msgstr "" + +msgid "Out" +msgstr "" + +msgid "Outbound:" +msgstr "" + +msgid "Outdoor Channels" +msgstr "" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "" + +msgid "Override MTU" +msgstr "" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" + +msgid "Override the table used for internal routes" +msgstr "" + +msgid "Overview" +msgstr "" + +msgid "Owner" +msgstr "" + +msgid "PAP/CHAP password" +msgstr "" + +msgid "PAP/CHAP username" +msgstr "" + +msgid "PID" +msgstr "" + +msgid "PIN" +msgstr "" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "" + +msgid "PPPoA Encapsulation" +msgstr "" + +msgid "PPPoATM" +msgstr "" + +msgid "PPPoE" +msgstr "" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "" + +msgid "Package lists are older than 24 hours" +msgstr "" + +msgid "Package name" +msgstr "" + +msgid "Packets" +msgstr "" + +msgid "Part of zone %q" +msgstr "" + +msgid "Password" +msgstr "" + +msgid "Password authentication" +msgstr "" + +msgid "Password of Private Key" +msgstr "" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "" + +msgid "Path to Client-Certificate" +msgstr "" + +msgid "Path to Private Key" +msgstr "" + +msgid "Path to executable which handles the button event" +msgstr "" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "" + +msgid "Perform reset" +msgstr "" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "" + +msgid "Physical Settings" +msgstr "" + +msgid "Ping" +msgstr "" + +msgid "Pkts." +msgstr "" + +msgid "Please enter your username and password." +msgstr "" + +msgid "Policy" +msgstr "" + +msgid "Port" +msgstr "" + +msgid "Port status:" +msgstr "" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "" + +msgid "Processes" +msgstr "" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "" + +msgid "Protocol" +msgstr "" + +msgid "Protocol family" +msgstr "" + +msgid "Protocol of the new interface" +msgstr "" + +msgid "Protocol support is not installed" +msgstr "" + +msgid "Provide NTP server" +msgstr "" + +msgid "Provide new network" +msgstr "" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "" + +msgid "RX" +msgstr "" + +msgid "RX Rate" +msgstr "" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "" + +msgid "Radius-Accounting-Port" +msgstr "" + +msgid "Radius-Accounting-Secret" +msgstr "" + +msgid "Radius-Accounting-Server" +msgstr "" + +msgid "Radius-Authentication-Port" +msgstr "" + +msgid "Radius-Authentication-Secret" +msgstr "" + +msgid "Radius-Authentication-Server" +msgstr "" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" + +msgid "Really reset all changes?" +msgstr "" + +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" + +msgid "Really switch protocol?" +msgstr "" + +msgid "Realtime Connections" +msgstr "" + +msgid "Realtime Graphs" +msgstr "" + +msgid "Realtime Load" +msgstr "" + +msgid "Realtime Traffic" +msgstr "" + +msgid "Realtime Wireless" +msgstr "" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "" + +msgid "Reboot" +msgstr "" + +msgid "Rebooting..." +msgstr "" + +msgid "Reboots the operating system of your device" +msgstr "" + +msgid "Receive" +msgstr "" + +msgid "Receiver Antenna" +msgstr "" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "" + +msgid "Reconnecting interface" +msgstr "" + +msgid "References" +msgstr "" + +msgid "Regulatory Domain" +msgstr "" + +msgid "Relay" +msgstr "" + +msgid "Relay Bridge" +msgstr "" + +msgid "Relay between networks" +msgstr "" + +msgid "Relay bridge" +msgstr "" + +msgid "Remote IPv4 address" +msgstr "" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "" + +msgid "Repeat scan" +msgstr "" + +msgid "Replace entry" +msgstr "" + +msgid "Replace wireless configuration" +msgstr "" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "" + +msgid "Reset Counters" +msgstr "" + +msgid "Reset to defaults" +msgstr "" + +msgid "Resolv and Hosts Files" +msgstr "" + +msgid "Resolve file" +msgstr "" + +msgid "Restart" +msgstr "" + +msgid "Restart Firewall" +msgstr "" + +msgid "Restore backup" +msgstr "" + +msgid "Reveal/hide password" +msgstr "" + +msgid "Revert" +msgstr "" + +msgid "Root" +msgstr "" + +msgid "Root directory for files served via TFTP" +msgstr "" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "" + +msgid "Routes" +msgstr "" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" + +msgid "Run a filesystem check before mounting the device" +msgstr "" + +msgid "Run filesystem check" +msgstr "" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "" + +msgid "SSID" +msgstr "" + +msgid "Save" +msgstr "" + +msgid "Save & Apply" +msgstr "" + +msgid "Save & Apply" +msgstr "" + +msgid "Scan" +msgstr "" + +msgid "Scheduled Tasks" +msgstr "" + +msgid "Section added" +msgstr "" + +msgid "Section removed" +msgstr "" + +msgid "See \"mount\" manpage for details" +msgstr "" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" + +msgid "Separate Clients" +msgstr "" + +msgid "Separate WDS" +msgstr "" + +msgid "Server Settings" +msgstr "" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "" + +msgid "Service Type" +msgstr "" + +msgid "Services" +msgstr "" + +msgid "Set up Time Synchronization" +msgstr "" + +msgid "Setup DHCP Server" +msgstr "" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "" + +msgid "Shutdown this interface" +msgstr "" + +msgid "Shutdown this network" +msgstr "" + +msgid "Signal" +msgstr "" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "" + +msgid "Size" +msgstr "" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "" + +msgid "Skip to content" +msgstr "" + +msgid "Skip to navigation" +msgstr "" + +msgid "Slot time" +msgstr "" + +msgid "Software" +msgstr "" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "" + +msgid "Sorry, the object you requested was not found." +msgstr "" + +msgid "Sorry, the server encountered an unexpected error." +msgstr "" + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" + +msgid "Sort" +msgstr "" + +msgid "Source" +msgstr "" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "" + +msgid "Specifies the directory the device is attached to" +msgstr "" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "" + +msgid "Start" +msgstr "" + +msgid "Start priority" +msgstr "" + +msgid "Startup" +msgstr "" + +msgid "Static IPv4 Routes" +msgstr "" + +msgid "Static IPv6 Routes" +msgstr "" + +msgid "Static Leases" +msgstr "" + +msgid "Static Routes" +msgstr "" + +msgid "Static WDS" +msgstr "" + +msgid "Static address" +msgstr "" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" + +msgid "Status" +msgstr "" + +msgid "Stop" +msgstr "" + +msgid "Strict order" +msgstr "" + +msgid "Submit" +msgstr "" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "" + +msgid "Switch" +msgstr "" + +msgid "Switch %q" +msgstr "" + +msgid "Switch %q (%s)" +msgstr "" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "" + +msgid "Sync with browser" +msgstr "" + +msgid "Synchronizing..." +msgstr "" + +msgid "System" +msgstr "" + +msgid "System Log" +msgstr "" + +msgid "System Properties" +msgstr "" + +msgid "System log buffer size" +msgstr "" + +msgid "TCP:" +msgstr "" + +msgid "TFTP Settings" +msgstr "" + +msgid "TFTP server root" +msgstr "" + +msgid "TX" +msgstr "" + +msgid "TX Rate" +msgstr "" + +msgid "Table" +msgstr "" + +msgid "Target" +msgstr "" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "" + +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" + +msgid "The following changes have been committed" +msgstr "" + +msgid "The following changes have been reverted" +msgstr "" + +msgid "The following rules are currently active on this system." +msgstr "" + +msgid "The given network name is not unique" +msgstr "" + +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" + +msgid "The length of the IPv6 prefix in bits" +msgstr "" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" + +msgid "The selected protocol needs a device assigned" +msgstr "" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" + +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" + +msgid "There are no active leases." +msgstr "" + +msgid "There are no pending changes to apply!" +msgstr "" + +msgid "There are no pending changes to revert!" +msgstr "" + +msgid "There are no pending changes!" +msgstr "" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" + +msgid "This IPv4 address of the relay" +msgstr "" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "" + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" + +msgid "This page allows the configuration of custom button actions" +msgstr "" + +msgid "This page gives an overview over currently active network connections." +msgstr "" + +msgid "This section contains no values yet" +msgstr "" + +msgid "Time Synchronization" +msgstr "" + +msgid "Time Synchronization is not configured yet." +msgstr "" + +msgid "Timezone" +msgstr "" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "" + +msgid "Traceroute" +msgstr "" + +msgid "Traffic" +msgstr "" + +msgid "Transfer" +msgstr "" + +msgid "Transmission Rate" +msgstr "" + +msgid "Transmit" +msgstr "" + +msgid "Transmit Power" +msgstr "" + +msgid "Transmitter Antenna" +msgstr "" + +msgid "Trigger" +msgstr "" + +msgid "Trigger Mode" +msgstr "" + +msgid "Tunnel ID" +msgstr "" + +msgid "Tunnel Interface" +msgstr "" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "" + +msgid "Tx-Power" +msgstr "" + +msgid "Type" +msgstr "" + +msgid "UDP:" +msgstr "" + +msgid "UMTS only" +msgstr "" + +msgid "UMTS/GPRS/EV-DO" +msgstr "" + +msgid "USB Device" +msgstr "" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "" + +msgid "Unable to dispatch" +msgstr "" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "" + +msgid "Unknown Error, password not changed!" +msgstr "" + +msgid "Unmanaged" +msgstr "" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "" + +msgid "Unsupported protocol type." +msgstr "" + +msgid "Update lists" +msgstr "" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" + +msgid "Upload archive..." +msgstr "" + +msgid "Uploaded File" +msgstr "" + +msgid "Uptime" +msgstr "" + +msgid "Use /etc/ethers" +msgstr "" + +msgid "Use DHCP gateway" +msgstr "" + +msgid "Use DNS servers advertised by peer" +msgstr "" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "" + +msgid "Use MTU on tunnel interface" +msgstr "" + +msgid "Use TTL on tunnel interface" +msgstr "" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "" + +msgid "Use default gateway" +msgstr "" + +msgid "Use gateway metric" +msgstr "" + +msgid "Use routing table" +msgstr "" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" + +msgid "Used" +msgstr "" + +msgid "Used Key Slot" +msgstr "" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "" + +msgid "VC-Mux" +msgstr "" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "" + +msgid "VLANs on %q (%s)" +msgstr "" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "" + +msgid "Version" +msgstr "" + +msgid "WDS" +msgstr "" + +msgid "WEP Open System" +msgstr "" + +msgid "WEP Shared Key" +msgstr "" + +msgid "WEP passphrase" +msgstr "" + +msgid "WMM Mode" +msgstr "" + +msgid "WPA passphrase" +msgstr "" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "" + +msgid "Waiting for command to complete..." +msgstr "" + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "" + +msgid "Wireless Adapter" +msgstr "" + +msgid "Wireless Network" +msgstr "" + +msgid "Wireless Overview" +msgstr "" + +msgid "Wireless Security" +msgstr "" + +msgid "Wireless is disabled or not associated" +msgstr "" + +msgid "Wireless is restarting..." +msgstr "" + +msgid "Wireless network is disabled" +msgstr "" + +msgid "Wireless network is enabled" +msgstr "" + +msgid "Wireless restarted" +msgstr "" + +msgid "Wireless shut down" +msgstr "" + +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 "" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" +"LuCI'nin düzgün çalışması için tarayıcınızda Java Scripti " +"etkinleştirmelisiniz." + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "herhangi" + +msgid "auto" +msgstr "otomatik" + +msgid "baseT" +msgstr "" + +msgid "bridged" +msgstr "köprülü" + +msgid "create:" +msgstr "" + +msgid "creates a bridge over specified interface(s)" +msgstr "" + +msgid "dB" +msgstr "" + +msgid "dBm" +msgstr "" + +msgid "disable" +msgstr "etkin değil" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "sona ermiş" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" + +msgid "forward" +msgstr "ileri" + +msgid "full-duplex" +msgstr "" + +msgid "half-duplex" +msgstr "" + +msgid "help" +msgstr "yardım" + +msgid "hidden" +msgstr "" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "eğer hedef ağsa" + +msgid "input" +msgstr "giriş" + +msgid "kB" +msgstr "" + +msgid "kB/s" +msgstr "" + +msgid "kbit/s" +msgstr "" + +msgid "local DNS file" +msgstr "yerel DNS dosyası" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "hayır" + +msgid "no link" +msgstr "" + +msgid "none" +msgstr "hiçbiri" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "kapalı" + +msgid "on" +msgstr "açık" + +msgid "open" +msgstr "" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "yönlendirildi" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "etiketlendi" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "" + +msgid "unlimited" +msgstr "sınırsız" + +msgid "unspecified" +msgstr "tanımsız" + +msgid "unspecified -or- create:" +msgstr "tanımsız -veya- oluşturun:" + +msgid "untagged" +msgstr "etiketsiz" + +msgid "yes" +msgstr "evet" + +msgid "« Back" +msgstr "« Geri" diff --git a/luci-base/po/uk/base.po b/luci-base/po/uk/base.po new file mode 100644 index 000000000..11d6867de --- /dev/null +++ b/luci-base/po/uk/base.po @@ -0,0 +1,4002 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"PO-Revision-Date: 2013-12-05 19:07+0200\n" +"Last-Translator: Dmitri <4glitch@gmail.com>\n" +"Language-Team: none\n" +"Language: uk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" +"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"X-Generator: Pootle 2.0.6\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(%d-хвилинне вікно, %d-секундний інтервал)" + +msgid "(%s available)" +msgstr "(%s доступно)" + +msgid "(empty)" +msgstr "(пусто)" + +msgid "(no interfaces attached)" +msgstr "(нема приєднаних інтерфейсів)" + +msgid "-- Additional Field --" +msgstr "-- Додаткові поля --" + +msgid "-- Please choose --" +msgstr "-- Виберіть --" + +msgid "-- custom --" +msgstr "-- нетипово --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "Навантаження за 1 хвилину:" + +msgid "15 Minute Load:" +msgstr "Навантаження за 15 хвилин:" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "Навантаження за 5 хвилин:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "" +"BSSID" + +msgid "DNS query port" +msgstr "" +"Порт DNS-" +"запиту" + +msgid "DNS server port" +msgstr "" +"Порт DNS-" +"сервера" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" +"DNS-" +"сервери будуть опитані у порядку, визначеному файлом resolvfile" + +msgid "ESSID" +msgstr "" +"ESSID" + +msgid "IPv4-Address" +msgstr "IPv4-адреса" + +msgid "IPv4-Gateway" +msgstr "IPv4-шлюз" + +msgid "IPv4-Netmask" +msgstr "IPv4-маска" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"IPv6-адреса або мережа " +"(CIDR)" + +msgid "IPv6-Gateway" +msgstr "IPv6-шлюз" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "" +"Настроювання LED" + +msgid "LED Name" +msgstr "Назва LED" + +msgid "MAC-Address" +msgstr "" +"MAC-адреса" + +msgid "" +"Max. DHCP leases" +msgstr "" +"Max. оренд DHCP" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"Max. розмір пакета EDNS0" + +msgid "Max. concurrent queries" +msgstr "Max. одночасних запитів" + +msgid "%s - %s" +msgstr "%s - %s" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "" +"APN" + +msgid "AR Support" +msgstr "Підтримка AR" + +msgid "ARP retry threshold" +msgstr "Поріг повтору ARP" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "ATM-мости" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "" +"Ідентифікатор віртуального каналу ATM (VCI)" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "" +"Ідентифікатор віртуального шляху ATM (VPI)" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"ATM-мости виставляють інкапсульований Ethernet у з'єднаннях AAL5 як " +"віртуальні мережеві інтерфейси Linux, котрі можуть використовуватися в " +"поєднанні з DHCP або PPP для підключення до мережі провайдера." + +msgid "ATM device number" +msgstr "Номер ATM-пристрою" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "Концентратор доступу" + +msgid "Access Point" +msgstr "Точка доступу" + +msgid "Action" +msgstr "Дія" + +msgid "Actions" +msgstr "Дії" + +msgid "Activate this network" +msgstr "Активувати цю мережу" + +msgid "Active IPv4-Routes" +msgstr "IPv4-маршрути" + +msgid "Active IPv6-Routes" +msgstr "IPv6-маршрути" + +msgid "Active Connections" +msgstr "Активні підключення" + +msgid "Active DHCP Leases" +msgstr "Активні оренди DHCP" + +msgid "Active DHCPv6 Leases" +msgstr "Активні оренди DHCPv6" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc" + +msgid "Add" +msgstr "Додати" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "Додавати суфікс локального домену до імен, отриманих із файлів hosts" + +msgid "Add new interface..." +msgstr "Додати новий інтерфейс..." + +msgid "Additional Hosts files" +msgstr "Додаткові файли hosts" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "Адреса" + +msgid "Address to access local relay bridge" +msgstr "Адреса для доступу до мосту локального ретранслятора" + +msgid "Administration" +msgstr "Адміністрування" + +msgid "Advanced Settings" +msgstr "Додаткові параметри" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "Тривога" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "" +"Дозволити SSH-" +"перевірку пароля" + +msgid "Allow all except listed" +msgstr "Дозволити всі, крім зазначених" + +msgid "Allow listed only" +msgstr "Дозволити тільки зазначені" + +msgid "Allow localhost" +msgstr "Дозволити локальний вузол" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" +"Дозволити віддаленим вузлам підключення до локальних SSH-спрямованих портів" + +msgid "Allow root logins with password" +msgstr "Дозволити root-вхід із паролем" + +msgid "Allow the root user to login with password" +msgstr "Дозволити користувачеві root вхід у систему з паролем" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" +"Дозволити відповіді від клієнта на сервер у діапазоні 127.0.0.0/8, " +"наприклад, для RBL-послуг" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "Антена 1" + +msgid "Antenna 2" +msgstr "Антена 2" + +msgid "Antenna Configuration" +msgstr "Конфигурація антени" + +msgid "Any zone" +msgstr "Будь-яка зона" + +msgid "Apply" +msgstr "Застосувати" + +msgid "Applying changes" +msgstr "Застосування змін" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "Призначення інтерфейсів..." + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "Приєднані станції" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Бездротовий 802.11%s контролер Atheros" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "Автентифікація" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "Надійний" + +msgid "Authorization Required" +msgstr "Потрібна авторизація" + +msgid "Auto Refresh" +msgstr "Автоматичне оновлення" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "Доступно" + +msgid "Available packages" +msgstr "Доступні пакети" + +msgid "Average:" +msgstr "Середнє значення:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "Назад" + +msgid "Back to Overview" +msgstr "Повернутися до переліку" + +msgid "Back to configuration" +msgstr "Повернутися до конфігурації" + +msgid "Back to overview" +msgstr "Повернутися до переліку" + +msgid "Back to scan results" +msgstr "Повернутися до результатів сканування" + +msgid "Background Scan" +msgstr "Сканування у фоновому режимі" + +msgid "Backup / Flash Firmware" +msgstr "Резервне копіювання / Оновлення прошивки" + +msgid "Backup / Restore" +msgstr "Резервне копіювання/відновлення" + +msgid "Backup file list" +msgstr "Список файлів резервних копій" + +msgid "Bad address specified!" +msgstr "Вказана неправильна адреса!" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"Нижче наведено визначений список файлів для резервного копіювання. Він " +"складається із позначених opkg змінених файлів конфігурації, невідокремних " +"базових файлів, та файлів за користувацькими шаблонами резервного копіювання." + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "Швидкість передачі даних" + +msgid "Bogus NX Domain Override" +msgstr "Відкидати підробки NX-домену" + +msgid "Bridge" +msgstr "Міст" + +msgid "Bridge interfaces" +msgstr "Об'єднати інтерфейси в міст" + +msgid "Bridge unit number" +msgstr "Номер моста" + +msgid "Bring up on boot" +msgstr "Піднімати при завантаженні" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "Бездротовий 802.11%s контролер Broadcom" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "Бездротовий 802.11 контролер Broadcom BCM%04x" + +msgid "Buffered" +msgstr "Буферизовано" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "Кнопки" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "Завантаження ЦП, %" + +msgid "Cancel" +msgstr "Скасувати" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "Ланцюжок" + +msgid "Changes" +msgstr "Зміни" + +msgid "Changes applied." +msgstr "Зміни застосовано." + +msgid "Changes the administrator password for accessing the device" +msgstr "Зміна пароля адміністратора для доступу до пристрою" + +msgid "Channel" +msgstr "Канал" + +msgid "Check" +msgstr "Перевірити" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "Контрольна сума" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"Оберіть зону брандмауера, яку ви хочете призначити на цей інтерфейс. " +"Виберіть не визначено, щоб видалити інтерфейс з відповідних зон, " +"або заповніть поле створити, щоб визначити нову зону і прикріпити " +"до неї інтерфейс." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" +"Оберіть мережі, які ви хочете прикріпити до цього бездротового інтерфейсу " +"або заповніть поле створити, щоб визначити нову мережу." + +msgid "Cipher" +msgstr "Шифр" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"Натисніть кнопку \"Створити архів\", щоб завантажити tar-архів поточних " +"файлів конфігурації. Для відновлення прошивки до її початкового стану, " +"натисніть кнопку \"Відновити\" (можливе тільки з образами SquashFS)." + +msgid "Client" +msgstr "Клієнт" + +msgid "Client ID to send when requesting DHCP" +msgstr "Ідентифікатор клієнта для відправки при запиті DHCP" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" +"Закривати неактивні з'єднання після певного інтервалу часу (секунди). Для " +"утримання неактивних з'єднань використовуйте 0" + +msgid "Close list..." +msgstr "Згорнути список..." + +msgid "Collecting data..." +msgstr "Збирання даних..." + +msgid "Command" +msgstr "Команда" + +msgid "Common Configuration" +msgstr "Загальна конфігурація" + +msgid "Compression" +msgstr "Стиснення" + +msgid "Configuration" +msgstr "Конфігурація" + +msgid "Configuration applied." +msgstr "Конфігурація застосована." + +msgid "Configuration files will be kept." +msgstr "Конфігураційні файли будуть збережені." + +msgid "Confirmation" +msgstr "Підтвердження" + +msgid "Connect" +msgstr "Підключити" + +msgid "Connected" +msgstr "Підключений" + +msgid "Connection Limit" +msgstr "Гранична кількість підключень" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "Підключення" + +msgid "Country" +msgstr "Країна" + +msgid "Country Code" +msgstr "Код країни" + +msgid "Cover the following interface" +msgstr "Покривати наступний інтерфейс" + +msgid "Cover the following interfaces" +msgstr "Покривати наступні інтерфейси" + +msgid "Create / Assign firewall-zone" +msgstr "Створити / Визначити зону брандмауера" + +msgid "Create Interface" +msgstr "Створити інтерфейс" + +msgid "Create a bridge over multiple interfaces" +msgstr "Створити міст через кілька інтерфейсів" + +msgid "Critical" +msgstr "Критичний" + +msgid "Cron Log Level" +msgstr "Рівень виведення інформації Cron" + +msgid "Custom Interface" +msgstr "Інтерфейс користувача" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"Настроювання поведінки LED, якщо це можливо." + +msgid "DHCP Leases" +msgstr "Оренди DHCP" + +msgid "DHCP Server" +msgstr "Сервер DHCP" + +msgid "DHCP and DNS" +msgstr "DHCP та DNS" + +msgid "DHCP client" +msgstr "Клієнт DHCP" + +msgid "DHCP-Options" +msgstr "Параметри DHCP" + +msgid "DHCPv6 Leases" +msgstr "Оренди DHCPv6" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "Спрямовування DNS-запитів" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "DUID" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "Зневаджування" + +msgid "Default %d" +msgstr "Типово %d" + +msgid "Default gateway" +msgstr "Типовий шлюз" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "Типовий стан" + +msgid "Define a name for this network." +msgstr "Визначення імені для цієї мережі." + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"Визначення додаткових опцій DHCP, наприклад " +"\"6,192.168.2.1,192.168.2.2\", щоб оголошувати різні DNS-" +"сервери для клієнтів." + +msgid "Delete" +msgstr "Видалити" + +msgid "Delete this network" +msgstr "Видалити цю мережу" + +msgid "Description" +msgstr "Опис" + +msgid "Design" +msgstr "Стиль (тема)" + +msgid "Destination" +msgstr "Призначення" + +msgid "Device" +msgstr "Пристрій" + +msgid "Device Configuration" +msgstr "Конфігурація пристрою" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "Діагностика" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "Каталог" + +msgid "Disable" +msgstr "Вимкнути" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +"Вимкнути DHCP для цього інтерфейсу." + +msgid "Disable DNS setup" +msgstr "Вимкнути настроювання DNS" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "Вимкнути таймер HW-Beacon" + +msgid "Disabled" +msgstr "Вимкнено" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "Відкидати RFC1918-відповіді від клієнта на сервер" + +msgid "Displaying only packages containing" +msgstr "Показані тільки непорожні пакети" + +msgid "Distance Optimization" +msgstr "Оптимізація за відстанню" + +msgid "Distance to farthest network member in meters." +msgstr "Відстань до найвіддаленішого вузла мережі в метрах." + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "Різновидність" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Dnsmasq являє собою комбінований DHCP-сервер і " +"DNS-" +"транспортер для брандмауерів NAT" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "Не кешувати негативні відповіді, наприклад, за неіснуючих доменів" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" +"Не спрямовувати запити, які не можуть бути оброблені публічними серверами " +"імен" + +msgid "Do not forward reverse lookups for local networks" +msgstr "Не спрямовувати зворотний перегляд для локальних мереж" + +msgid "Do not send probe responses" +msgstr "Не надсилати відповіді на зондування" + +msgid "Domain required" +msgstr "Потрібен домен" + +msgid "Domain whitelist" +msgstr "\"Білий список\" доменів" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" +"Не пересилати DNS-запити без DNS-імені" + +msgid "Download and install package" +msgstr "Завантажити та інсталювати пакети" + +msgid "Download backup" +msgstr "Завантажити резервну копію" + +msgid "Dropbear Instance" +msgstr "Реалізація Dropbear" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear — це SSH-" +"сервер із вбудованим SCP" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" +"Динамічний DHCP" + +msgid "Dynamic tunnel" +msgstr "Динамічний тунель" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" +"Динамічне виділення DHCP-адрес для клієнтів. Якщо вимкнути, будуть " +"обслуговуватися тільки клієнти, які мають статичні оренди." + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "EAP-Метод" + +msgid "Edit" +msgstr "Редагувати" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "Редагувати цей інтерфейс" + +msgid "Edit this network" +msgstr "Редагувати цю мережу" + +msgid "Emergency" +msgstr "Аварійний" + +msgid "Enable" +msgstr "Увімкнути" + +msgid "Enable STP" +msgstr "Увімкнути STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "Увімкнути динамічне оновлення кінцевої точки HE.net" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "Увімкнути узгодження IPv6 для PPP-з'єднань" + +msgid "Enable Jumbo Frame passthrough" +msgstr "Пропускати Jumbo-фрейми" + +msgid "Enable NTP client" +msgstr "Увімкнути NTP-клієнт" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "Увімкнути TFTP-сервер" + +msgid "Enable VLAN functionality" +msgstr "Увімкнути підтримку VLAN" + +msgid "Enable WPS pushbutton, requires WPA(2)-PSK" +msgstr "" + +msgid "Enable key reinstallation (KRACK) countermeasures" +msgstr "" + +msgid "Enable learning and aging" +msgstr "Увімкнути learning та aging" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "Увімкнути це монтування" + +msgid "Enable this swap" +msgstr "Увімкнути це довантаження" + +msgid "Enable/Disable" +msgstr "Увімкнено/Вимкнено" + +msgid "Enabled" +msgstr "Увімкнено" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "" +"Увімкнути STP на цьому мосту" + +msgid "Encapsulation mode" +msgstr "Режим інкапсуляції" + +msgid "Encryption" +msgstr "Шифрування" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "Видалення..." + +msgid "Error" +msgstr "Помилка" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "Адаптер Ethernet" + +msgid "Ethernet Switch" +msgstr "Ethernet-комутатор" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "Розширення вузлів" + +msgid "Expires" +msgstr "Дійсний ще" + +#, fuzzy +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "Термін оренди адрес, мінімум 2 хвилини (2m)." + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "Зовнішній сервер системного журналу" + +msgid "External system log server port" +msgstr "Порт зовнішнього сервера системного журналу" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "Швидкі фрейми" + +msgid "File" +msgstr "Файл" + +msgid "Filename of the boot image advertised to clients" +msgstr "І'мя завантажувального образу, що оголошується клієнтам" + +msgid "Filesystem" +msgstr "Файлова система" + +msgid "Filter" +msgstr "Фільтр" + +msgid "Filter private" +msgstr "Фільтрувати приватні" + +msgid "Filter useless" +msgstr "Фільтрувати непридатні" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "Знайти мережу й приєднатися" + +msgid "Find package" +msgstr "Знайти пакет" + +msgid "Finish" +msgstr "Готово" + +msgid "Firewall" +msgstr "Брандмауер" + +msgid "Firewall Settings" +msgstr "Настройки брандмауера" + +msgid "Firewall Status" +msgstr "Статус брандмауера" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "Версія прошивки" + +msgid "Fixed source port for outbound DNS queries" +msgstr "Фіксований порт для вихідних DNS-запитів" + +msgid "Flash Firmware" +msgstr "Заливаємо прошивку" + +msgid "Flash image..." +msgstr "Відвантажити образ..." + +msgid "Flash new firmware image" +msgstr "Залити новий образ прошивки" + +msgid "Flash operations" +msgstr "Операції заливання" + +msgid "Flashing..." +msgstr "Заливаємо..." + +msgid "Force" +msgstr "Примусово" + +msgid "Force CCMP (AES)" +msgstr "Примусово CCMP (AES)" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "Примусово DHCP у цій мережі, навіть якщо виявлено інший сервер." + +msgid "Force TKIP" +msgstr "Примусово TKIP" + +msgid "Force TKIP and CCMP (AES)" +msgstr "Примусово TKIP та CCMP (AES)" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "Спрямовувати DHCP-трафік" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "Спрямовувати широкомовний трафік" + +msgid "Forwarding mode" +msgstr "Режим спрямовування" + +msgid "Fragmentation Threshold" +msgstr "Поріг фрагментації" + +msgid "Frame Bursting" +msgstr "Frame Bursting" + +msgid "Free" +msgstr "Вільно" + +msgid "Free space" +msgstr "Вільне місце" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "ГГц" + +msgid "GPRS only" +msgstr "Тільки GPRS" + +msgid "Gateway" +msgstr "Шлюз" + +msgid "Gateway ports" +msgstr "Порти шлюзу" + +msgid "General Settings" +msgstr "Загальні настройки" + +msgid "General Setup" +msgstr "Загальні настройки" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "Cтворити архів" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "Бездротовий 802.11%s контролер" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "Оскільки пароль і підтвердження не співпадають, то пароль не змінено!" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "Перейти до конфігурації пароля..." + +msgid "Go to relevant configuration page" +msgstr "Перейти до відповідної сторінки конфігурації" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "Пароль HE.net" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "Обробник" + +msgid "Hang Up" +msgstr "Призупинити" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"Тут ви можете настроїти основні параметри вигляду вашого пристрою, такі як " +"назва (ім’я) вузла або часовий пояс." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" +"Тут ви можете вставити відкриті SSH-ключі (по одному на рядок) для SSH з " +"відкритим ключем автентифікації." + +msgid "Hermes 802.11b Wireless Controller" +msgstr "Бездротовий 802.11b контролер Hermes" + +msgid "Hide ESSID" +msgstr "" +"Приховати ESSID" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "Записи вузлів" + +msgid "Host expiry timeout" +msgstr "Тайм-аут вузла" + +msgid "Host-IP or Network" +msgstr "IP вузла або мережа" + +msgid "Hostname" +msgstr "Назва (ім'я) вузла" + +msgid "Hostname to send when requesting DHCP" +msgstr "Ім'я вузла для надсилання при запиті DHCP" + +msgid "Hostnames" +msgstr "Імена вузлів" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "IP-адреса" + +msgid "IPv4" +msgstr "IPv4" + +msgid "IPv4 Firewall" +msgstr "Брандмауер IPv4" + +msgid "IPv4 WAN Status" +msgstr "Статус IPv4 WAN" + +msgid "IPv4 address" +msgstr "Адреса IPv4" + +msgid "IPv4 and IPv6" +msgstr "IPv4 та IPv6" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "Широкомовний IPv4" + +msgid "IPv4 gateway" +msgstr "Шлюз IPv4" + +msgid "IPv4 netmask" +msgstr "Маска мережі IPv4" + +msgid "IPv4 only" +msgstr "Тільки IPv4" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "Довжина префікса IPv4" + +msgid "IPv4-Address" +msgstr "IPv4-адреса" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "Брандмауер IPv6" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "Статус IPv6 WAN" + +msgid "IPv6 address" +msgstr "Адреса IPv6" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "Шлюз IPv6" + +msgid "IPv6 only" +msgstr "Тільки IPv6" + +msgid "IPv6 prefix" +msgstr "Префікс IPv6" + +msgid "IPv6 prefix length" +msgstr "Довжина префікса IPv6" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "IPv6-адреса" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "IPv6 у IPv4 (RFC4213)" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "IPv6 через IPv4 (6rd)" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "IPv6 через IPv4 (6to4)" + +msgid "Identity" +msgstr "Ідентичність" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" +"Якщо обрано, монтувати пристрій за його UUID замість фіксованого вузла " +"пристрою" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" +"Якщо обрано, монтувати пристрій за назвою його розділу замість фіксованого " +"вузла пристрою" + +msgid "If unchecked, no default route is configured" +msgstr "Якщо не позначено, типовий маршрут не настроєно" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "Якщо не позначено, оголошувані адреси DNS-серверів ігноруються" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"Якщо фізичної пам'яті недостатньо, невикористовувані дані можуть тимчасово " +"витіснятися на своп-пристрій, у результаті чого збільшується кількість " +"корисної оперативної пам'яті (RAM). Майте на увазі, що свопінг даних є дуже повільним процесом, оскільки " +"своп-пристрої не можуть бути доступні з такою високою швидкістю, як RAM." + +msgid "Ignore /etc/hosts" +msgstr "" + +msgid "Ignore interface" +msgstr "Ігнорувати интерфейс" + +msgid "Ignore resolve file" +msgstr "Ігнорувати файли resolv" + +msgid "Image" +msgstr "Образ" + +msgid "In" +msgstr "Вх." + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "Тайм-аут бездіяльності" + +msgid "Inbound:" +msgstr "Вхідний:" + +msgid "Info" +msgstr "Інформація" + +msgid "Initscript" +msgstr "Скрипт ініціалізації" + +msgid "Initscripts" +msgstr "Скрипти ініціалізації" + +msgid "Install" +msgstr "Інсталювати" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "Інсталяція пакета %q" + +msgid "Install protocol extensions..." +msgstr "Інсталяція розширень протоколу..." + +msgid "Installed packages" +msgstr "Інстальовані пакети" + +msgid "Interface" +msgstr "Інтерфейс" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "Конфігурація інтерфейсу" + +msgid "Interface Overview" +msgstr "Огляд інтерфейсів" + +msgid "Interface is reconnecting..." +msgstr "Перепідключення інтерфейсу..." + +msgid "Interface is shutting down..." +msgstr "Інтерфейс завершує роботу..." + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "Інтерфейс відсутній або ще не підключений." + +msgid "Interface reconnected" +msgstr "Інтерфейс перепідключено" + +msgid "Interface shut down" +msgstr "Інтерфейс завершив роботу" + +msgid "Interfaces" +msgstr "Інтерфейси" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "Внутрішня помилка сервера" + +msgid "Invalid" +msgstr "Неприпустимо" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" +"Задано невірний VLAN ID! Доступні тільки ідентифікатори в межах між %d і %d." + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "Задано невірний VLAN ID! Доступні тільки унікальні ідентифікатори." + +msgid "Invalid username and/or password! Please try again." +msgstr "Неприпустиме ім’я користувача та/або пароль! Спробуйте ще раз." + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"Схоже, що ви намагаєтеся залити образ, який не вміщається у флеш-пам'ять! " +"Перевірте файл образу!" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "Потрібен JavaScript!" + +msgid "Join Network" +msgstr "Підключення до мережі" + +msgid "Join Network: Wireless Scan" +msgstr "Підключення до мережі: Сканування бездротових мереж" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "Зберегти настройки" + +msgid "Kernel Log" +msgstr "Журнал ядра" + +msgid "Kernel Version" +msgstr "Версія ядра" + +msgid "Key" +msgstr "Ключ" + +msgid "Key #%d" +msgstr "Ключ #%d" + +msgid "Kill" +msgstr "Знищити" + +msgid "L2TP" +msgstr "L2TP" + +msgid "L2TP Server" +msgstr "Сервер L2TP" + +msgid "LCP echo failure threshold" +msgstr "Поріг помилок ехо-запитів LCP" + +msgid "LCP echo interval" +msgstr "Інтервал ехо-запитів LCP" + +msgid "LLC" +msgstr "LLC" + +msgid "Label" +msgstr "Мітка" + +msgid "Language" +msgstr "Мова" + +msgid "Language and Style" +msgstr "Мова та стиль" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "Час чинності оренди" + +msgid "Leasefile" +msgstr "Файл оренд" + +msgid "Leasetime remaining" +msgstr "Час оренди, що лишився" + +msgid "Leave empty to autodetect" +msgstr "Залиште поле порожнім для автовизначення" + +msgid "Leave empty to use the current WAN address" +msgstr "Залиште порожнім, щоб використовувати поточну адресу WAN" + +msgid "Legend:" +msgstr "Легенда:" + +msgid "Limit" +msgstr "Межа" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "Зв'язок встановлено" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" +"Список DNS-серверів, до яких " +"пересилати запити" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "Список доменів, для яких дозволені RFC1918-відповіді" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "Список доменів, які підтримують результати підробки NX-доменів" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" +"Прослуховувати тільки на цьому інтерфейсі, або на всіх (якщо не " +"визначено)" + +msgid "Listening port for inbound DNS queries" +msgstr "Порт прослуховування для вхідних DNS-запитів" + +msgid "Load" +msgstr "Навантаження" + +msgid "Load Average" +msgstr "Середнє навантаження" + +msgid "Loading" +msgstr "Завантаження" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "Локальна адреса IPv4" + +msgid "Local IPv6 address" +msgstr "Локальна адреса IPv6" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "Локальний запуск" + +msgid "Local Time" +msgstr "Місцевий час" + +msgid "Local domain" +msgstr "Локальний домен" + +#, fuzzy +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" +"Специфікація локальних доменів. Імена, зіставлені цьому домену, ніколи не " +"спрямовуються і виділяються тільки через DHCP або файли hosts" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" +"Суфікс локального домену додається до DHCP-імен вузлів та записів з файлу " +"hosts" + +msgid "Local server" +msgstr "Локальний сервер" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" +"Локалізувати ім'я хоста залежно від запитуючої підмережі, якщо доступні " +"кілька IP-адрес" + +msgid "Localise queries" +msgstr "Локалізувати запити" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "Рівень виведення інформаціі до журналу" + +msgid "Log queries" +msgstr "Журнал запитів" + +msgid "Logging" +msgstr "Журналювання" + +msgid "Login" +msgstr "Увійти" + +msgid "Logout" +msgstr "Вийти" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "Найнижча орендована адреса" + +msgid "MAC-Address" +msgstr "MAC-адреса" + +msgid "MAC-Address Filter" +msgstr "Фільтр MAC-адрес" + +msgid "MAC-Filter" +msgstr "MAC-фільтр" + +msgid "MAC-List" +msgstr "MAC-список" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "MБ/с" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "МГц" + +msgid "MTU" +msgstr "MTU" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "Максимальна швидкість" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "Максимально допустима кількість активних оренд DHCP" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "Максимально допустима кількість одночасних DNS-запитів" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "Максимально допустимий розмір UDP-пакетів EDNS.0" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "Максимальний час очікування готовності модему (секунд)" + +msgid "Maximum hold time" +msgstr "Максимальний час утримування" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "Максимальна кількість орендованих адрес." + +msgid "Mbit/s" +msgstr "Мбіт/с" + +msgid "Memory" +msgstr "Пам'ять" + +msgid "Memory usage (%)" +msgstr "Використання пам'яті, %" + +msgid "Metric" +msgstr "Метрика" + +msgid "Minimum Rate" +msgstr "Мінімальна швидкість" + +msgid "Minimum hold time" +msgstr "Мінімальний час утримування" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "Відсутні розширення для протоколу %q" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "Режим" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "Модем" + +msgid "Modem init timeout" +msgstr "Тайм-аут ініціалізації модему" + +msgid "Monitor" +msgstr "Монітор" + +msgid "Mount Entry" +msgstr "Вхід монтування" + +msgid "Mount Point" +msgstr "Точка монтування" + +msgid "Mount Points" +msgstr "Точки монтування" + +msgid "Mount Points - Mount Entry" +msgstr "Точки монтування - Записи монтування" + +msgid "Mount Points - Swap Entry" +msgstr "Точки монтування - Вхід довантаження" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"Точки монтування визначають, до якої точки пристрою пам'яті буде прикріплена " +"файлова система" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "Опції монтування" + +msgid "Mount point" +msgstr "Точка монтування" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "Змонтовані файлові системи" + +msgid "Move down" +msgstr "Вниз" + +msgid "Move up" +msgstr "Вгору" + +msgid "Multicast Rate" +msgstr "Швидкість багатоадресного потоку" + +msgid "Multicast address" +msgstr "Адреса багатоадресного потоку" + +msgid "NAS ID" +msgstr "Ідентифікатор NAS" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "Кандидати для синхронізації NTP-сервера" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "Ім'я" + +msgid "Name of the new interface" +msgstr "Ім'я нового інтерфейсу" + +msgid "Name of the new network" +msgstr "Назва (ім'я) нової мережі" + +msgid "Navigation" +msgstr "Навігація" + +msgid "Netmask" +msgstr "Маска мережі" + +msgid "Network" +msgstr "Мережа" + +msgid "Network Utilities" +msgstr "Мережеві утиліти" + +msgid "Network boot image" +msgstr "Образ для мережевого завантаження" + +msgid "Network without interfaces." +msgstr "Мережа без інтерфейсів." + +msgid "Next »" +msgstr "Наступний »" + +msgid "No DHCP Server configured for this interface" +msgstr "Немає DHCP-сервера, настроєного для цього інтерфейсу" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "У цій таблиці нема ланцюжків" + +msgid "No files found" +msgstr "Файли не знайдено" + +msgid "No information available" +msgstr "Інформація відсутня" + +msgid "No negative cache" +msgstr "Ніяких негативних кешувань" + +msgid "No network configured on this device" +msgstr "На цьому пристрої нема настроєної мережі" + +msgid "No network name specified" +msgstr "Ім'я мережі не визначене" + +msgid "No package lists available" +msgstr "Немає доступних списків пакетів" + +msgid "No password set!" +msgstr "Пароль не встановлено!" + +msgid "No rules in this chain" +msgstr "У цьму ланцюжку нема правил" + +msgid "No zone assigned" +msgstr "Зона не призначена" + +msgid "Noise" +msgstr "Шум" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "Шум:" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "Жоден" + +msgid "Normal" +msgstr "Нормальний" + +msgid "Not Found" +msgstr "Не знайдено" + +msgid "Not associated" +msgstr "Не пов'язаний" + +msgid "Not connected" +msgstr "Не підключено" + +msgid "Note: Configuration files will be erased." +msgstr "Примітка: конфігураційні файли будуть видалені." + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "Попередження" + +msgid "Nslookup" +msgstr "DNS-запит" + +msgid "OK" +msgstr "OK" + +msgid "OPKG-Configuration" +msgstr "Конфігурація OPKG" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "Затримка Off-State" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"На цій сторінці ви можете настроїти мережеві інтерфейси. Ви можете " +"об'єднатиати кілька інтерфейсів мостом, відзначивши поле \"Об'єднати " +"інтерфейси в міст\" та ввівши імена кількох мережевих інтерфейсів, розділені " +"пробілами. Також ви можете використовувати VLAN-позначення " +"ІНТЕРФЕЙС.НОМЕР_VLAN (наприклад, eth0.1)." + +msgid "On-State Delay" +msgstr "Затримка On-State" + +msgid "One of hostname or mac address must be specified!" +msgstr "Має бути вказане одне з двох - ім'я вузла або МАС-адреса!" + +msgid "One or more fields contain invalid values!" +msgstr "Одне або декілька полів містять неприпустимі значення!" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "Одне або декілька обов'язкових полів не мають значень!" + +msgid "Open list..." +msgstr "Відкрити список..." + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "Опція змінена" + +msgid "Option removed" +msgstr "Опція видалена" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "Опції" + +msgid "Other:" +msgstr "Інше:" + +msgid "Out" +msgstr "Вих." + +msgid "Outbound:" +msgstr "Вихідний:" + +msgid "Outdoor Channels" +msgstr "Зовнішні канали" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "Перевизначити MAC-адресу" + +msgid "Override MTU" +msgstr "Перевизначити MTU" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "Перевизначення шлюзу у відповідях DHCP" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" +"Перевизначення мережевої маски, яка надсилається клієнтам. Зазвичай вона " +"обчислюється від підмережі, що обслуговується." + +msgid "Override the table used for internal routes" +msgstr "" +"Перевизначення таблиці, що використовужться для внутрішніх спрямовувань" + +msgid "Overview" +msgstr "Огляд" + +msgid "Owner" +msgstr "Власник" + +msgid "PAP/CHAP password" +msgstr "Пароль PAP/CHAP" + +msgid "PAP/CHAP username" +msgstr "Ім'я користувача PAP/CHAP" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "" +">PIN" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "PPP" + +msgid "PPPoA Encapsulation" +msgstr "Інкапсуляція PPPoA" + +msgid "PPPoATM" +msgstr "PPPoATM" + +msgid "PPPoE" +msgstr "PPPoE" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "PPtP" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "Потрібен пакет libiwinfo!" + +msgid "Package lists are older than 24 hours" +msgstr "Перелік пакетів створений більше ніж 24 години тому" + +msgid "Package name" +msgstr "Назва пакета" + +msgid "Packets" +msgstr "Пакети" + +msgid "Part of zone %q" +msgstr "Частина зони %q" + +msgid "Password" +msgstr "Пароль" + +msgid "Password authentication" +msgstr "Автентифікація за паролем" + +msgid "Password of Private Key" +msgstr "Пароль закритого ключа" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "Пароль успішно змінено!" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "Шлях до центру сертифікції" + +msgid "Path to Client-Certificate" +msgstr "Шлях до сертифікату клієнта" + +msgid "Path to Private Key" +msgstr "Шлях до закритого ключа" + +msgid "Path to executable which handles the button event" +msgstr "Шлях до програми, яка обробляє натискання кнопки" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "Пік:" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "Виконати перезавантаження" + +msgid "Perform reset" +msgstr "Відновити" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "Фізична швидкість:" + +msgid "Physical Settings" +msgstr "Фізичні параметри" + +msgid "Ping" +msgstr "Ехо-запит" + +msgid "Pkts." +msgstr "пакетів" + +msgid "Please enter your username and password." +msgstr "Введіть ім'я користувача і пароль" + +msgid "Policy" +msgstr "Політика" + +msgid "Port" +msgstr "Порт" + +msgid "Port status:" +msgstr "Статус порту:" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" +"Вважати вузол недоступним після визначеної кількості невдач отримання ехо-" +"пакета LCP, використовуйте 0, щоб ігнорувати невдачі" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "Запобігає зв'язкам клієнт-клієнт" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "Бездротовий 802.11b контролер Prism2/2.5/3" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "Продовжити" + +msgid "Processes" +msgstr "Процеси" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "Прот." + +msgid "Protocol" +msgstr "Протокол" + +msgid "Protocol family" +msgstr "Сімейство протоколів" + +msgid "Protocol of the new interface" +msgstr "Протокол нового інтерфейсу" + +msgid "Protocol support is not installed" +msgstr "Підтримка протоколу не інстальована" + +msgid "Provide NTP server" +msgstr "Забезпечувати NTP-сервер" + +msgid "Provide new network" +msgstr "Постачити нову мережу" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "Псевдо Ad-Hoc (ahdemo)" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "Якість" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "Поріг RTS/CTS" + +msgid "RX" +msgstr "Одержано" + +msgid "RX Rate" +msgstr "Швидкість приймання" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "Бездротовий 802.11%s контролер RaLink" + +msgid "Radius-Accounting-Port" +msgstr "Порт Radius-Accounting" + +msgid "Radius-Accounting-Secret" +msgstr "Секрет Radius-Accounting" + +msgid "Radius-Accounting-Server" +msgstr "Сервер Radius-Accounting" + +msgid "Radius-Authentication-Port" +msgstr "Порт Radius-Authentication" + +msgid "Radius-Authentication-Secret" +msgstr "Секрет Radius-Authentication" + +msgid "Radius-Authentication-Server" +msgstr "Сервер Radius-Authentication" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"Читати /etc/ethers для настроювання DHCP-сервера" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" +"Дійсно видалити цей інтерфейс? Скасувати видалення неможливо!\n" +"Ви можете втратити доступ до цього пристрою, якщо ви підключені через цей " +"інтерфейс." + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" +"Дійсно видалити цю бездротову мережу? Скасувати видалення неможливо!\n" +"Ви можете втратити доступ до цього пристрою, якщо ви підключені через цю " +"мережу." + +msgid "Really reset all changes?" +msgstr "Дійсно скинути всі зміни?" + +#, fuzzy +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" +"Дійсно вимкнути мережу?\n" +"Ви можете втратити доступ до цього пристрою, якщо ви підключені через цю " +"мережу." + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" +"Дійсно вимкнути інтерфейс \"%s\"?\n" +"Ви можете втратити доступ до цього пристрою, якщо ви підключені через цей " +"інтерфейс." + +msgid "Really switch protocol?" +msgstr "Дійсно змінити протокол?" + +msgid "Realtime Connections" +msgstr "Підключення у реальному часі" + +msgid "Realtime Graphs" +msgstr "Графіки у реальному часі" + +msgid "Realtime Load" +msgstr "Навантаження у реальному часі" + +msgid "Realtime Traffic" +msgstr "Трафік у реальному часі" + +msgid "Realtime Wireless" +msgstr "Бездротові мережі у реальному часі" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "Захист від переприв'язки" + +msgid "Reboot" +msgstr "Перезавантаження" + +msgid "Rebooting..." +msgstr "Перезавантаження..." + +msgid "Reboots the operating system of your device" +msgstr "Перезавантажити операційну систему вашого пристрою" + +msgid "Receive" +msgstr "Прийом" + +msgid "Receiver Antenna" +msgstr "Антена приймача" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "Перепідключити цей інтерфейс" + +msgid "Reconnecting interface" +msgstr "Перепідключення інтерфейсу" + +msgid "References" +msgstr "Посилання" + +msgid "Regulatory Domain" +msgstr "Регулятивний домен" + +msgid "Relay" +msgstr "Ретранслятор" + +msgid "Relay Bridge" +msgstr "Міст-ретранслятор" + +msgid "Relay between networks" +msgstr "Міжмережевий ретранслятор" + +msgid "Relay bridge" +msgstr "Міст-ретранслятор" + +msgid "Remote IPv4 address" +msgstr "Віддалена адреса IPv4" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "Видалити" + +msgid "Repeat scan" +msgstr "Повторити сканування" + +msgid "Replace entry" +msgstr "Замінити запис" + +msgid "Replace wireless configuration" +msgstr "Замінити конфігурацію бездротової мережі" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "Потрібно для деяких провайдерів, наприклад, Charter із DOCSIS 3" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "Скинути" + +msgid "Reset Counters" +msgstr "Скинути лічильники" + +msgid "Reset to defaults" +msgstr "Відновити початковий стан" + +msgid "Resolv and Hosts Files" +msgstr "Файли resolv і hosts" + +msgid "Resolve file" +msgstr "Файл resolv" + +msgid "Restart" +msgstr "Перезавантажити" + +msgid "Restart Firewall" +msgstr "Перезавантажити брандмауер" + +msgid "Restore backup" +msgstr "Відновити з резервної копії" + +msgid "Reveal/hide password" +msgstr "Показати/приховати пароль" + +msgid "Revert" +msgstr "Скасувати зміни" + +msgid "Root" +msgstr "Корінь" + +msgid "Root directory for files served via TFTP" +msgstr "Кореневий каталог для файлів TFTP" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "Пароль маршрутизатора" + +msgid "Routes" +msgstr "Маршрути" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"Маршрути визначають через який інтерфейс і шлюз можна досягнути певного " +"вузла або мережі." + +msgid "Run a filesystem check before mounting the device" +msgstr "Виконати перевірку файлової системи перед монтуванням пристрою" + +msgid "Run filesystem check" +msgstr "Виконати перевірку файлової системи" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "SSH-доступ" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "SSH-ключі" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "Зберегти" + +msgid "Save & Apply" +msgstr "Зберегти і застосувати" + +msgid "Save & Apply" +msgstr "Зберегти і застосувати" + +msgid "Scan" +msgstr "Сканувати" + +msgid "Scheduled Tasks" +msgstr "Заплановані завдання" + +msgid "Section added" +msgstr "Секція додана" + +msgid "Section removed" +msgstr "Секція видалена" + +msgid "See \"mount\" manpage for details" +msgstr "Подробиці див. на сторінці керівництва \"mount\"" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" +"Надсилати ехо-пакети LCP зі вказаним інтервалом (секунди), ефективно тільки " +"в поєднанні з порогом помилок" + +msgid "Separate Clients" +msgstr "Розділяти клієнтів" + +msgid "Separate WDS" +msgstr "Розділяти WDS" + +msgid "Server Settings" +msgstr "Настройки сервера" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "Назва (ім'я) сервісу" + +msgid "Service Type" +msgstr "Тип сервісу" + +msgid "Services" +msgstr "Сервіси" + +#, fuzzy +msgid "Set up Time Synchronization" +msgstr "Настройки синхронізації часу" + +msgid "Setup DHCP Server" +msgstr "Настройки DHCP-сервера" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "Показати поточний список файлів резервного копіювання" + +msgid "Shutdown this interface" +msgstr "Вимкнути цей інтерфейс" + +msgid "Shutdown this network" +msgstr "Вимкнути цю мережу" + +msgid "Signal" +msgstr "Сигнал" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "Сигнал:" + +msgid "Size" +msgstr "Розмір" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "Пропустити" + +msgid "Skip to content" +msgstr "Перейти до вмісту" + +msgid "Skip to navigation" +msgstr "Перейти до навігації" + +msgid "Slot time" +msgstr "Час слота" + +msgid "Software" +msgstr "Програмне забезпечення" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "Деякі поля є неприпустимими, неможливо зберегти значення!" + +msgid "Sorry, the object you requested was not found." +msgstr "На жаль, об'єкт, який ви просили, не знайдено." + +msgid "Sorry, the server encountered an unexpected error." +msgstr "На жаль, на сервері сталася неочікувана помилка." + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" +"На жаль, автоматичне оновлення системи не підтримується. Новий образ " +"прошивки повинен бути залитий вручну. Зверніться до Wiki за інструкцією з " +"інсталяції для конкретного пристрою." + +msgid "Sort" +msgstr "Сортування" + +msgid "Source" +msgstr "Джерело" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "Визначає стан кнопки для обробки" + +msgid "Specifies the directory the device is attached to" +msgstr "Визначає каталог, до якого приєднаний пристрій" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "Визначає порт прослуховування цієї реалізації Dropbear" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" +"Визначає максимальну кількість невдалих ARP-запитів до вузлів, після якого " +"вважається, що вузли \"мертві\"" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" +"Визначає максимальний час (секунди), після якого вважається, що вузли " +"\"мертві\"" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "Вкажіть тут секретний ключ шифрування." + +msgid "Start" +msgstr "Запустити" + +msgid "Start priority" +msgstr "Стартовий пріоритет" + +msgid "Startup" +msgstr "Запуск" + +msgid "Static IPv4 Routes" +msgstr "Статичні маршрути IPv4" + +msgid "Static IPv6 Routes" +msgstr "Статичні маршрути IPv6" + +msgid "Static Leases" +msgstr "Статичні оренди" + +msgid "Static Routes" +msgstr "Статичні маршрути" + +msgid "Static WDS" +msgstr "Статичний WDS" + +msgid "Static address" +msgstr "Статичні адреси" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" +"Статичні оренди використовуються для призначення фіксованих IP-адрес і " +"символічних імен вузлів DHCP-клієнтам. Вони також необхідні для статичних " +"конфігурацій інтерфейсів, коли обслуговуються тільки вузли з відповідною " +"орендою." + +msgid "Status" +msgstr "Статус" + +msgid "Stop" +msgstr "Зупинити" + +msgid "Strict order" +msgstr "Строгий порядок" + +msgid "Submit" +msgstr "Надіслати" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "Вхід довантаження" + +msgid "Switch" +msgstr "Комутатор" + +msgid "Switch %q" +msgstr "Комутатор %q" + +msgid "Switch %q (%s)" +msgstr "Комутатор %q (%s)" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "Протокол комутатора" + +msgid "Sync with browser" +msgstr "Синхронізувати з браузером" + +msgid "Synchronizing..." +msgstr "Синхронізація..." + +msgid "System" +msgstr "Система" + +msgid "System Log" +msgstr "Системний журнал" + +msgid "System Properties" +msgstr "Властивості системи" + +msgid "System log buffer size" +msgstr "Розмір буфера системного журналу" + +msgid "TCP:" +msgstr "TCP:" + +msgid "TFTP Settings" +msgstr "Настройки TFTP" + +msgid "TFTP server root" +msgstr "Корінь TFTP-сервера" + +msgid "TX" +msgstr "Передано" + +msgid "TX Rate" +msgstr "Швидкість передавання" + +msgid "Table" +msgstr "Таблиця" + +msgid "Target" +msgstr "Мета" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "Завершити" + +#, fuzzy +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" +"Розділ Конфігурація пристрою охоплює фізичні параметри радіо-" +"апаратних засобів, такі, як канал, потужність передавача або вибір антени, " +"які є спільними для всіх визначених бездротових мереж (якщо радіо-апаратні " +"засоби здатні підтримувати кілька SSID). Параметри окремих мереж, такі, як " +"шифрування або режим роботи, згруповані в розділі Конфігурація " +"інтерфейсу." + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" +"Пакет libiwinfo-lua не інстальований. Щоб мати можливість " +"настроювати безпровідні мережі, слід інсталювати цей компонент!" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" +"Призначений провайдеру IPv6-префікс, зазвичай закінчується на ::" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" +"Дозволені символи: A-Z, a-z, 0-9 та " +"_" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "Файл пристрою пам'яті або розділу (наприклад, /dev/sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"Файлова система, яка використовуватиметься для форматування пам'яті " +"(наприклад, ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" +"Образ завантажено. Нижче наведено контрольну суму і розмір файлу. Порівняйте " +"їх з вихідним файлом для забезпечення цілісності даних.
Натисніть " +"\"Продовжити\", щоб розпочати процедуру оновлення прошивки." + +msgid "The following changes have been committed" +msgstr "Нижче наведені зміни були застосовані" + +msgid "The following changes have been reverted" +msgstr "Нижче наведені зміни були скасовані" + +msgid "The following rules are currently active on this system." +msgstr "У даний час у цій системі активні такі правила." + +msgid "The given network name is not unique" +msgstr "Задане мережеве ім'я не є унікальним" + +#, fuzzy +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" +"Обладнання не підтримує мульти-SSID і, якщо ви продовжите, існуюча " +"конфігурація буде замінена." + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "Довжина IPv4-префікса в бітах, решта використовується в IPv6-адресах." + +msgid "The length of the IPv6 prefix in bits" +msgstr "Довжина IPv6-префікса в бітах" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" +"Мережеві порти вашого пристрою можуть бути об'єднані у декілька VLAN, у яких комп'ютери можуть напряму спілкуватися один з одним. " +"VLAN часто використовуються для розділення мережі на окремі " +"сегменти. Зазвичай один виcхідний порт використовується для з'єднання з " +"більшою мережею, такою наприклад, як Інтернет, а інші порти — для локальної " +"мережі." + +msgid "The selected protocol needs a device assigned" +msgstr "Обраний протокол потребує призначених пристроїв" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" +"Зараз система видаляє розділ конфігурації і коли закінчить, " +"перезавантажиться." + +#, fuzzy +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"Система перепрошивається.
НЕ ВИМИКАЙТЕ ЖИВЛЕННЯ ПРИСТРОЮ!
Зачекайте кілька хвилин перед тим, як пробувати знову " +"з'єднатися. Залежно від ваших настройок, можливо, вам треба буде оновити " +"адресу вашого комп'ютера, щоб знову отримати доступ до пристрою." + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"Завантажений файл образу не містить підтримуваний формат. Переконайтеся, що " +"ви вибираєте універсальний формат образу для вашої платформи." + +msgid "There are no active leases." +msgstr "Активних оренд немає." + +msgid "There are no pending changes to apply!" +msgstr "Немає жодних змін до застосування!" + +msgid "There are no pending changes to revert!" +msgstr "Немає жодних змін до скасування!" + +msgid "There are no pending changes!" +msgstr "Немає жодних очікуючих змін!" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" +"Немає жодного призначеного пристрою. Призначте мережевий пристрій у вкладці " +"\"Фізичні параметри\"." + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" +"Цей маршрутизатор не має пароля. Встановіть пароль, шоб захистити веб-" +"інтерфейс і увімкнути SSH." + +msgid "This IPv4 address of the relay" +msgstr "Це IPv4-адреса ретранслятора" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" +"Це список шаблонів для відбору файлів і каталогів, які мають увійти до " +"резервної копії. Змінені файли у /etc/config/ та деякі інші " +"зберігаються автоматично." + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" +"Це вміст файлу /etc/rc.local. Вставте тут ваші власні команди " +"(перед 'exit 0'), щоб виконати їх у кінці процесу завантаження." + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" +"Це локальна адреса кінцевої точки, присвоєна тунельним брокером, зазвичай " +"закінчується на :2" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" +"Тільки для DHCP у локальній мережі" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "" +"Це системна таблиця Cron (crontab), у якій можна визначити заплановані " +"завдання." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" +"Зазвичай, це адреса найближчої точки присутності, що управляється тунелним " +"брокером" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" +"У цьому списку наведені працюючі на даний момент системні процеси та їх " +"статус." + +msgid "This page allows the configuration of custom button actions" +msgstr "Ця сторінка дозволяє настроїти нетипові дії кнопки" + +msgid "This page gives an overview over currently active network connections." +msgstr "Ця сторінка надає огляд поточних активних мережних підключень." + +msgid "This section contains no values yet" +msgstr "Ця секція поки що не містить значень" + +msgid "Time Synchronization" +msgstr "Синхронізація часу" + +msgid "Time Synchronization is not configured yet." +msgstr "Синхронізація часу не настроєна." + +msgid "Timezone" +msgstr "Часовий пояс" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" +"Щоб відновити файли конфігурації, ви можете відвантажити раніше створений " +"архів резервної копії." + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "Усього доступно" + +msgid "Traceroute" +msgstr "Трасування" + +msgid "Traffic" +msgstr "Трафік" + +msgid "Transfer" +msgstr "Передано" + +msgid "Transmission Rate" +msgstr "Швидкість передавання" + +msgid "Transmit" +msgstr "Передача" + +msgid "Transmit Power" +msgstr "Потужність передавача" + +msgid "Transmitter Antenna" +msgstr "Антена передавача" + +msgid "Trigger" +msgstr "Тригер" + +msgid "Trigger Mode" +msgstr "Режим запуску" + +msgid "Tunnel ID" +msgstr "Ідентифікатор тунелю" + +msgid "Tunnel Interface" +msgstr "Інтерфейс тунелю" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "Режим Turbo" + +msgid "Tx-Power" +msgstr "Потужність передавача" + +msgid "Type" +msgstr "Тип" + +msgid "UDP:" +msgstr "UDP:" + +msgid "UMTS only" +msgstr "Тільки UMTS" + +msgid "UMTS/GPRS/EV-DO" +msgstr "UMTS/GPRS/EV-DO" + +msgid "USB Device" +msgstr "USB-пристрій" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "UUID" + +msgid "Unable to dispatch" +msgstr "Не вдалося опрацювати запит" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "Невідомо" + +msgid "Unknown Error, password not changed!" +msgstr "Невідома помилка, пароль не змінився!" + +msgid "Unmanaged" +msgstr "Некерований" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "Незбережені зміни" + +msgid "Unsupported protocol type." +msgstr "Непідтримуваний тип протоколу." + +msgid "Update lists" +msgstr "Оновити списки..." + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" +"Відвантажити sysupgrade-сумісний образ, щоб замінити поточну прошивку. Для " +"збереження поточної конфігурації встановіть прапорець \"Зберегти настройки" +"\" (потрібен сумісний образ прошивки)." + +msgid "Upload archive..." +msgstr "Відвантажити архів..." + +msgid "Uploaded File" +msgstr "Відвантажений файл" + +msgid "Uptime" +msgstr "Час безперервної роботи" + +msgid "Use /etc/ethers" +msgstr "Використовувати /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "Використовувати DHCP-шлюз" + +msgid "Use DNS servers advertised by peer" +msgstr "Використовувати DNS-сервери, оголошувані вузлом" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "Використовуйте коди країн згідно ISO/IEC 3166 alpha2." + +msgid "Use MTU on tunnel interface" +msgstr "Використовувати на тунельному інтерфейсі MTU" + +msgid "Use TTL on tunnel interface" +msgstr "Використовувати на тунельному інтерфейсі TTL" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "Використовувати прапорець широкомовності" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "Використовувати особливі DNS-сервери" + +msgid "Use default gateway" +msgstr "Використовувати типовий шлюз" + +msgid "Use gateway metric" +msgstr "Використовувати метрику шлюзу" + +msgid "Use routing table" +msgstr "Використовувати таблицю маршрутизації" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" +"Використовуйте кнопку Додати, щоб додати новий запис оренди. " +"MAC-адреса ідентифікує вузол, IPv4-адреса визначає " +"фіксовану адресу, яка буде використовуватися, а Назва (ім'я) вузла " +"призначає символічне ім'я вузла." + +msgid "Used" +msgstr "Використано" + +msgid "Used Key Slot" +msgstr "Використовується слот ключа" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "Ім'я користувача" + +msgid "VC-Mux" +msgstr "VC-Mux" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "VLAN на %q" + +msgid "VLANs on %q (%s)" +msgstr "VLAN на %q (%s)" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "VPN-сервер" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "Клас постачальника для відправки при запиті DHCP" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "Перевірте" + +msgid "Version" +msgstr "Версія" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "Відкрита система WEP" + +msgid "WEP Shared Key" +msgstr "Спільний ключ WEP" + +msgid "WEP passphrase" +msgstr "Парольна фраза WEP" + +msgid "WMM Mode" +msgstr "Режим WMM" + +msgid "WPA passphrase" +msgstr "Парольна фраза WPA" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"WPA-шифрування потребує інсталяції wpa_supplicant (для режиму " +"клієнта) або hostapd (для Точки доступу та режиму ad-hoc)." + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "Очікуємо, доки зміни наберуть чинності..." + +msgid "Waiting for command to complete..." +msgstr "Очікуємо завершення виконання команди..." + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "Застереження" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "Бездротові мережі" + +msgid "Wireless Adapter" +msgstr "Бездротовий адаптер" + +msgid "Wireless Network" +msgstr "Бездротова мережа" + +msgid "Wireless Overview" +msgstr "Огляд бездротових мереж" + +msgid "Wireless Security" +msgstr "Безпека бездротової мережі" + +msgid "Wireless is disabled or not associated" +msgstr "Бездротову мережу вимкнено або не пов'язано" + +msgid "Wireless is restarting..." +msgstr "Бездротова мережа перезапускається..." + +msgid "Wireless network is disabled" +msgstr "Бездротова мережа вимкнена" + +msgid "Wireless network is enabled" +msgstr "Бездротова мережа ввімкнена" + +msgid "Wireless restarted" +msgstr "Бездротова мережа перезапущена" + +msgid "Wireless shut down" +msgstr "Бездротова мережа припинила роботу" + +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-запити до системного журналу" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "Підтримка XR" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"Тут ви можете увімкнути або вимкнути інстальовані скрипти ініціалізації. " +"Зміни набудуть чинності після перезавантаження пристрою.
Увага: " +"Якщо ви вимкнете основний скрипт ініціалізації (наприклад \"network\"), " +"пристрій може стати недоступним!" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" +"Ви повинні увімкнути JavaScript у вашому браузері, або LuCI не буде " +"працювати належним чином." + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "будь-який" + +msgid "auto" +msgstr "авто" + +msgid "baseT" +msgstr "baseT" + +msgid "bridged" +msgstr "зв'язано" + +msgid "create:" +msgstr "створити:" + +msgid "creates a bridge over specified interface(s)" +msgstr "Створити міст через вказаний інтерфейс(и)" + +msgid "dB" +msgstr "дБ" + +msgid "dBm" +msgstr "дБм" + +msgid "disable" +msgstr "вимкнено" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "минув" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" +"Файл, де зберігаються видані DHCP-оренди" + +msgid "forward" +msgstr "переслати" + +msgid "full-duplex" +msgstr "повний дуплекс" + +msgid "half-duplex" +msgstr "напівдуплекс" + +msgid "help" +msgstr "довідка" + +msgid "hidden" +msgstr "прихований" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "якщо мета — мережа" + +msgid "input" +msgstr "вхід" + +msgid "kB" +msgstr "КБ" + +msgid "kB/s" +msgstr "КБ/с" + +msgid "kbit/s" +msgstr "Кбіт/с" + +msgid "local DNS file" +msgstr "" +"Локальний DNS-файл" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "ні" + +msgid "no link" +msgstr "нема з'єднання" + +msgid "none" +msgstr "нема нічого" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "вимкнено" + +msgid "on" +msgstr "увімкнено" + +msgid "open" +msgstr "відкрита" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "спрямовано" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "з позначкою" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "невідомий" + +msgid "unlimited" +msgstr "необмежений" + +msgid "unspecified" +msgstr "не визначено" + +msgid "unspecified -or- create:" +msgstr "не визначено -або- створити" + +msgid "untagged" +msgstr "без позначки" + +msgid "yes" +msgstr "так" + +msgid "« Back" +msgstr "« Назад" + +#~ msgid "Leasetime" +#~ msgstr "Час оренди" + +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "Якщо ви залишите це невибраним, буде створена додаткова мережа." + +#~ msgid "Join Network: Settings" +#~ msgstr "Підключення до мережі: Настройки" + +#~ msgid "CPU" +#~ msgstr "ЦП" + +#~ msgid "Port %d" +#~ msgstr "Порт %d" + +#~ msgid "Port %d is untagged in multiple VLANs!" +#~ msgstr "Порт %d нетегований у кількох VLAN-ах!" + +#~ msgid "VLAN Interface" +#~ msgstr "VLAN-інтерфейс" diff --git a/luci-base/po/vi/base.po b/luci-base/po/vi/base.po new file mode 100644 index 000000000..35a46423d --- /dev/null +++ b/luci-base/po/vi/base.po @@ -0,0 +1,3817 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-08-16 06:59+0200\n" +"PO-Revision-Date: 2009-08-14 12:23+0200\n" +"Last-Translator: Hong Phuc Dang \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Pootle 1.1.0\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "" + +#, fuzzy +msgid "(%s available)" +msgstr "(%s available)" + +msgid "(empty)" +msgstr "" + +msgid "(no interfaces attached)" +msgstr "" + +msgid "-- Additional Field --" +msgstr "---Mục bổ sung---" + +msgid "-- Please choose --" +msgstr "--Hãy chọn--" + +msgid "-- custom --" +msgstr "--tùy chỉnh--" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "" + +msgid "15 Minute Load:" +msgstr "" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "DNS query port" +msgstr "" + +msgid "DNS server port" +msgstr "" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "" + +msgid "ESSID" +msgstr "ESSID" + +msgid "IPv4-Address" +msgstr "IPv4-Address" + +msgid "IPv4-Gateway" +msgstr "IPv4-Gateway" + +msgid "IPv4-Netmask" +msgstr "IPv4-Netmask" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"IPv6-Address or Network " +"(CIDR)" + +msgid "IPv6-Gateway" +msgstr "IPv6-Gateway" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "LED Configuration" + +msgid "LED Name" +msgstr "" + +msgid "MAC-Address" +msgstr "MAC-Address" + +msgid "" +"Max. DHCP leases" +msgstr "" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" + +msgid "Max. concurrent queries" +msgstr "" + +msgid "%s - %s" +msgstr "" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "" + +msgid "AR Support" +msgstr "Hỗ trợ AR" + +msgid "ARP retry threshold" +msgstr "" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" + +msgid "ATM device number" +msgstr "" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "" + +msgid "Access Point" +msgstr "Điểm truy cập" + +msgid "Action" +msgstr "Action" + +msgid "Actions" +msgstr "Hành động" + +msgid "Activate this network" +msgstr "" + +msgid "Active IPv4-Routes" +msgstr "Active IPv4-Routes" + +msgid "Active IPv6-Routes" +msgstr "Active IPv6-Routes" + +msgid "Active Connections" +msgstr "kết nối đang hoạt động" + +msgid "Active DHCP Leases" +msgstr "" + +msgid "Active DHCPv6 Leases" +msgstr "" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc" + +msgid "Add" +msgstr "Thêm vào" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "" + +msgid "Add new interface..." +msgstr "" + +msgid "Additional Hosts files" +msgstr "" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "" + +msgid "Address to access local relay bridge" +msgstr "" + +msgid "Administration" +msgstr "Quản trị" + +msgid "Advanced Settings" +msgstr "" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "Cho phép SSH xác thực mật mã" + +msgid "Allow all except listed" +msgstr "Cho phép tất cả trừ danh sách liệt kê" + +msgid "Allow listed only" +msgstr "Chỉ cho phép danh sách liệt kê" + +msgid "Allow localhost" +msgstr "" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "" + +msgid "Allow root logins with password" +msgstr "" + +msgid "Allow the root user to login with password" +msgstr "" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "" + +msgid "Antenna 2" +msgstr "" + +msgid "Antenna Configuration" +msgstr "" + +msgid "Any zone" +msgstr "" + +msgid "Apply" +msgstr "Áp dụng" + +msgid "Applying changes" +msgstr "Tiến hành thay đổi" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "" + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "Xác thực" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "Authoritative" + +msgid "Authorization Required" +msgstr "Yêu cầu ủy quyền" + +msgid "Auto Refresh" +msgstr "" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "Sẵn có" + +msgid "Available packages" +msgstr "" + +msgid "Average:" +msgstr "" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "" + +msgid "Back" +msgstr "" + +msgid "Back to Overview" +msgstr "" + +msgid "Back to configuration" +msgstr "" + +msgid "Back to overview" +msgstr "" + +msgid "Back to scan results" +msgstr "" + +msgid "Background Scan" +msgstr "Background Scan" + +msgid "Backup / Flash Firmware" +msgstr "" + +msgid "Backup / Restore" +msgstr "Backup/ Restore" + +msgid "Backup file list" +msgstr "" + +msgid "Bad address specified!" +msgstr "" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "" + +msgid "Bogus NX Domain Override" +msgstr "" + +msgid "Bridge" +msgstr "" + +msgid "Bridge interfaces" +msgstr "Giao diện cầu nối" + +msgid "Bridge unit number" +msgstr "" + +msgid "Bring up on boot" +msgstr "" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "" + +msgid "Buffered" +msgstr "" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "CPU usage (%)" + +msgid "Cancel" +msgstr "Bỏ qua" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "chuỗi" + +msgid "Changes" +msgstr "Thay đổi" + +msgid "Changes applied." +msgstr "Thay đổi đã áp dụng" + +msgid "Changes the administrator password for accessing the device" +msgstr "" + +msgid "Channel" +msgstr "Kênh" + +msgid "Check" +msgstr "" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "Checksum" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "Giao diện này chưa thuộc về bất kỳ firewall zone nào." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" + +msgid "Cipher" +msgstr "" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" + +msgid "Client" +msgstr "Client" + +msgid "Client ID to send when requesting DHCP" +msgstr "" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "" + +msgid "Close list..." +msgstr "" + +msgid "Collecting data..." +msgstr "" + +msgid "Command" +msgstr "Lệnh" + +msgid "Common Configuration" +msgstr "" + +msgid "Compression" +msgstr "Sức nén" + +msgid "Configuration" +msgstr "Cấu hình" + +msgid "Configuration applied." +msgstr "" + +msgid "Configuration files will be kept." +msgstr "" + +msgid "Confirmation" +msgstr "Xác nhận" + +msgid "Connect" +msgstr "" + +msgid "Connected" +msgstr "" + +msgid "Connection Limit" +msgstr "Giới hạn kết nối" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "" + +msgid "Country" +msgstr "" + +msgid "Country Code" +msgstr "Mã quốc gia" + +msgid "Cover the following interface" +msgstr "" + +msgid "Cover the following interfaces" +msgstr "" + +msgid "Create / Assign firewall-zone" +msgstr "Tạo/ gán firewall-zone" + +msgid "Create Interface" +msgstr "" + +msgid "Create a bridge over multiple interfaces" +msgstr "" + +msgid "Critical" +msgstr "" + +msgid "Cron Log Level" +msgstr "" + +msgid "Custom Interface" +msgstr "" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"Tùy chỉnh chế độ của thiết bị LEDs nếu có thể." + +msgid "DHCP Leases" +msgstr "" + +msgid "DHCP Server" +msgstr "" + +msgid "DHCP and DNS" +msgstr "" + +msgid "DHCP client" +msgstr "" + +msgid "DHCP-Options" +msgstr "Tùy chọn DHCP" + +msgid "DHCPv6 Leases" +msgstr "" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "" + +msgid "DNS forwardings" +msgstr "" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "" + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "" + +msgid "Default %d" +msgstr "" + +msgid "Default gateway" +msgstr "" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "" + +msgid "Define a name for this network." +msgstr "" + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" + +msgid "Delete" +msgstr "Xóa" + +msgid "Delete this network" +msgstr "" + +msgid "Description" +msgstr "Mô tả" + +msgid "Design" +msgstr "Thiết kế" + +msgid "Destination" +msgstr "Điểm đến" + +msgid "Device" +msgstr "Công cụ" + +msgid "Device Configuration" +msgstr "" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "" + +msgid "Disable" +msgstr "" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" + +msgid "Disable DNS setup" +msgstr "" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "Vô hiệu hóa bộ chỉnh giờ HW-Beacon" + +msgid "Disabled" +msgstr "" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "" + +msgid "Displaying only packages containing" +msgstr "" + +msgid "Distance Optimization" +msgstr "Khoảng cách tối ưu" + +msgid "Distance to farthest network member in meters." +msgstr "Khoảng cách tới thành viên xa nhất trong mạng lưới tính bằng mét" + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "Tính đa dạng" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Dnsmasq là một phối hợp DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "" + +msgid "Do not forward reverse lookups for local networks" +msgstr "" + +msgid "Do not send probe responses" +msgstr "Không gửi nhắc hồi đáp" + +msgid "Domain required" +msgstr "Domain yêu cầu" + +msgid "Domain whitelist" +msgstr "" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" +"Don&#39;t chuyển tiếp DNS-Yêu " +"cầu không cần DNS-Tên" + +msgid "Download and install package" +msgstr "Tải và cài đặt gói" + +msgid "Download backup" +msgstr "" + +msgid "Dropbear Instance" +msgstr "" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear cung cấp SSH mạng lưới shell " +"truy cập và một SCP server tích hợp" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "" +"Dynamic DHCP" + +msgid "Dynamic tunnel" +msgstr "" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "EAP-Method" + +msgid "Edit" +msgstr "Chỉnh sửa" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "" + +msgid "Edit this network" +msgstr "" + +msgid "Emergency" +msgstr "" + +msgid "Enable" +msgstr "" + +msgid "Enable STP" +msgstr "Kích hoạt STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "" + +msgid "Enable Jumbo Frame passthrough" +msgstr "" + +msgid "Enable NTP client" +msgstr "" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "" + +msgid "Enable VLAN functionality" +msgstr "" + +msgid "Enable WPS pushbutton, requires WPA(2)-PSK" +msgstr "" + +msgid "Enable key reinstallation (KRACK) countermeasures" +msgstr "" + +msgid "Enable learning and aging" +msgstr "" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "" + +msgid "Enable this swap" +msgstr "" + +msgid "Enable/Disable" +msgstr "Cho kích hoạt/ Vô hiệu hóa" + +msgid "Enabled" +msgstr "" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "Kích hoạt Spanning Tree Protocol trên cầu nối này" + +msgid "Encapsulation mode" +msgstr "" + +msgid "Encryption" +msgstr "Encryption" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "" + +msgid "Error" +msgstr "Lỗi" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "Bộ tương hợp ethernet" + +msgid "Ethernet Switch" +msgstr "Bộ chuyển đảo ethernet" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "" + +msgid "Expires" +msgstr "" + +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "" + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "" + +msgid "External system log server port" +msgstr "" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "Khung nhanh" + +msgid "File" +msgstr "" + +msgid "Filename of the boot image advertised to clients" +msgstr "" + +msgid "Filesystem" +msgstr "Tập tin hệ thống" + +msgid "Filter" +msgstr "Lọc" + +msgid "Filter private" +msgstr "Filter private" + +msgid "Filter useless" +msgstr "Lọc không hữu dụng" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "" + +msgid "Find package" +msgstr "Tìm gói" + +msgid "Finish" +msgstr "" + +msgid "Firewall" +msgstr "Firewall" + +msgid "Firewall Settings" +msgstr "" + +msgid "Firewall Status" +msgstr "" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "" + +msgid "Fixed source port for outbound DNS queries" +msgstr "" + +msgid "Flash Firmware" +msgstr "Phần cứng flash" + +msgid "Flash image..." +msgstr "" + +msgid "Flash new firmware image" +msgstr "" + +msgid "Flash operations" +msgstr "" + +msgid "Flashing..." +msgstr "" + +msgid "Force" +msgstr "Force" + +msgid "Force CCMP (AES)" +msgstr "" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "" + +msgid "Force TKIP" +msgstr "" + +msgid "Force TKIP and CCMP (AES)" +msgstr "" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "" + +msgid "Forwarding mode" +msgstr "" + +msgid "Fragmentation Threshold" +msgstr "Ngưỡng cửa Phân đoạn" + +msgid "Frame Bursting" +msgstr "Khung nổ" + +msgid "Free" +msgstr "" + +msgid "Free space" +msgstr "" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "" + +msgid "GPRS only" +msgstr "" + +msgid "Gateway" +msgstr "" + +msgid "Gateway ports" +msgstr "" + +msgid "General Settings" +msgstr "" + +msgid "General Setup" +msgstr "" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "" + +msgid "Go to relevant configuration page" +msgstr "Đi tới trang cấu hình thích hợp" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr "" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "" + +msgid "Hang Up" +msgstr "Hang Up" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "" +"Ở đây bạn có thể cấu hình những đặc tính cơ bản của thiết bị như tên máy chủ " +"hoặc múi giờ." + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "" + +msgid "Hermes 802.11b Wireless Controller" +msgstr "" + +msgid "Hide ESSID" +msgstr "Giấu ESSID" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "Host entries" + +msgid "Host expiry timeout" +msgstr "" + +msgid "Host-IP or Network" +msgstr "Host-IP or Network" + +msgid "Hostname" +msgstr "Tên host" + +msgid "Hostname to send when requesting DHCP" +msgstr "" + +msgid "Hostnames" +msgstr "Tên host" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "Địa chỉ IP" + +msgid "IPv4" +msgstr "" + +msgid "IPv4 Firewall" +msgstr "" + +msgid "IPv4 WAN Status" +msgstr "" + +msgid "IPv4 address" +msgstr "" + +msgid "IPv4 and IPv6" +msgstr "" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "" + +msgid "IPv4 gateway" +msgstr "" + +msgid "IPv4 netmask" +msgstr "" + +msgid "IPv4 only" +msgstr "" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "" + +msgid "IPv4-Address" +msgstr "" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "" + +msgid "IPv6 address" +msgstr "" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "" + +msgid "IPv6 only" +msgstr "" + +msgid "IPv6 prefix" +msgstr "" + +msgid "IPv6 prefix length" +msgstr "" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "" + +msgid "Identity" +msgstr "Nhận dạng" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "" + +msgid "If unchecked, no default route is configured" +msgstr "" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"Nếu bộ nhớ vật lý không đủ dữ liệu không dùng có thể được swap tạm thời đến " +"một thiết bị swap để tạo ra nhiều khoảng trống hơn trong RAM. Hãy nhận biết rằng swapping dữ liệu là " +"một quá trình rất chậm vì một thiết bị swap không thể được truy cập với " +"datarates cao hơn của RAM." + +msgid "Ignore /etc/hosts" +msgstr "Lờ đi /etc/hosts" + +msgid "Ignore interface" +msgstr "Lờ đi giao diện" + +msgid "Ignore resolve file" +msgstr "Lờ đi tập tin resolve" + +msgid "Image" +msgstr "" + +msgid "In" +msgstr "Trong" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "" + +msgid "Inbound:" +msgstr "" + +msgid "Info" +msgstr "" + +msgid "Initscript" +msgstr "Initscript" + +msgid "Initscripts" +msgstr "Initscripts" + +msgid "Install" +msgstr "Cài đặt " + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "" + +msgid "Install protocol extensions..." +msgstr "" + +msgid "Installed packages" +msgstr "" + +msgid "Interface" +msgstr "Giao diện " + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "" + +msgid "Interface Overview" +msgstr "" + +msgid "Interface is reconnecting..." +msgstr "" + +msgid "Interface is shutting down..." +msgstr "" + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "" + +msgid "Interface reconnected" +msgstr "" + +msgid "Interface shut down" +msgstr "" + +msgid "Interfaces" +msgstr "Giao diện " + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "" + +msgid "Invalid" +msgstr "Giá trị nhập vào không hợp lí" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "" + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "" + +msgid "Invalid username and/or password! Please try again." +msgstr "Tên và mật mã không đúng. Xin thử lại " + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "" +"Dường như bạn cố gắng flash một hình ảnh không phù hợp với bộ nhớ flash, xin " +"vui lòng xác minh các tập tin hình ảnh!" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "" + +msgid "Join Network" +msgstr "" + +msgid "Join Network: Wireless Scan" +msgstr "" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "" + +msgid "Kernel Log" +msgstr "Kernel Log" + +msgid "Kernel Version" +msgstr "" + +msgid "Key" +msgstr "Phím " + +msgid "Key #%d" +msgstr "" + +msgid "Kill" +msgstr "Kill" + +msgid "L2TP" +msgstr "" + +msgid "L2TP Server" +msgstr "" + +msgid "LCP echo failure threshold" +msgstr "" + +msgid "LCP echo interval" +msgstr "" + +msgid "LLC" +msgstr "" + +msgid "Label" +msgstr "" + +msgid "Language" +msgstr "Ngôn ngữ" + +msgid "Language and Style" +msgstr "" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "" + +msgid "Leasefile" +msgstr "Leasefile" + +msgid "Leasetime remaining" +msgstr "Leasetime còn lại" + +msgid "Leave empty to autodetect" +msgstr "" + +msgid "Leave empty to use the current WAN address" +msgstr "" + +msgid "Legend:" +msgstr "" + +msgid "Limit" +msgstr "Giới hạn " + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "Link On" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "" + +msgid "Listening port for inbound DNS queries" +msgstr "" + +msgid "Load" +msgstr "Tải " + +msgid "Load Average" +msgstr "" + +msgid "Loading" +msgstr "" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "" + +msgid "Local IPv6 address" +msgstr "" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "" + +msgid "Local Time" +msgstr "Giờ địa phương" + +msgid "Local domain" +msgstr "" + +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "" + +msgid "Local server" +msgstr "" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "" + +msgid "Localise queries" +msgstr "Tra vấn địa phương" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "" + +msgid "Log queries" +msgstr "Bản ghi tra vấn" + +msgid "Logging" +msgstr "" + +msgid "Login" +msgstr "Đăng nhập " + +msgid "Logout" +msgstr "Thoát ra" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "" + +msgid "MAC-Address" +msgstr "" + +msgid "MAC-Address Filter" +msgstr "Lọc địa chỉ MAC" + +msgid "MAC-Filter" +msgstr "Lọc MAC" + +msgid "MAC-List" +msgstr "Danh sách MAC" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "" + +msgid "MTU" +msgstr "" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "Mức cao nhất" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "" + +msgid "Maximum hold time" +msgstr "Mức cao nhất" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "" + +msgid "Mbit/s" +msgstr "" + +msgid "Memory" +msgstr "Bộ nhớ" + +msgid "Memory usage (%)" +msgstr "Memory usage (%)" + +msgid "Metric" +msgstr "Metric" + +msgid "Minimum Rate" +msgstr "Mức thấp nhất" + +msgid "Minimum hold time" +msgstr "Mức thấp nhất" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "Chế độ" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "Thiết bị modem" + +msgid "Modem init timeout" +msgstr "" + +msgid "Monitor" +msgstr "Monitor" + +msgid "Mount Entry" +msgstr "" + +msgid "Mount Point" +msgstr "Lắp điểm" + +msgid "Mount Points" +msgstr "Lắp điểm" + +msgid "Mount Points - Mount Entry" +msgstr "" + +msgid "Mount Points - Swap Entry" +msgstr "" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "" +"Số điểm lắp xác định tại một điểm mà ở đó bộ nhớ sẽ được gắn vào hệ thống " +"tập tin" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "" + +msgid "Mount point" +msgstr "" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "Lắp tập tin hệ thống" + +msgid "Move down" +msgstr "" + +msgid "Move up" +msgstr "" + +msgid "Multicast Rate" +msgstr "Multicast Rate" + +msgid "Multicast address" +msgstr "" + +msgid "NAS ID" +msgstr "NAS ID" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "Tên" + +msgid "Name of the new interface" +msgstr "" + +msgid "Name of the new network" +msgstr "" + +msgid "Navigation" +msgstr "Sự điều hướng" + +msgid "Netmask" +msgstr "" + +msgid "Network" +msgstr "mạng lưới " + +msgid "Network Utilities" +msgstr "" + +msgid "Network boot image" +msgstr "" + +msgid "Network without interfaces." +msgstr "" + +msgid "Next »" +msgstr "" + +msgid "No DHCP Server configured for this interface" +msgstr "" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "Không có chuỗi trong bảng này" + +msgid "No files found" +msgstr "" + +msgid "No information available" +msgstr "" + +msgid "No negative cache" +msgstr "" + +msgid "No network configured on this device" +msgstr "" + +msgid "No network name specified" +msgstr "" + +msgid "No package lists available" +msgstr "" + +msgid "No password set!" +msgstr "" + +msgid "No rules in this chain" +msgstr "Không có quy luật trong chuỗi này" + +msgid "No zone assigned" +msgstr "" + +msgid "Noise" +msgstr "" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "" + +msgid "Normal" +msgstr "" + +msgid "Not Found" +msgstr "" + +msgid "Not associated" +msgstr "" + +msgid "Not connected" +msgstr "" + +msgid "Note: Configuration files will be erased." +msgstr "" + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "" + +msgid "Nslookup" +msgstr "" + +msgid "OK" +msgstr "OK " + +msgid "OPKG-Configuration" +msgstr "Cấu hình OPKG-" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"Trên trang này bạn có thể định cấu hình giao diện network. Bạn có thể bắt " +"cầu nhiều giao diện bằng cách đánh dấu &quot;bridge interfaces&quot; " +"field và nhập tên vào của nhiều giao diện network phân tách bởi những khoảng " +"trống. Bạn có thể cũng dùng VLAN notation INTERFACE.VLANNR (e." +"g.: eth0.1)." + +msgid "On-State Delay" +msgstr "" + +msgid "One of hostname or mac address must be specified!" +msgstr "" + +msgid "One or more fields contain invalid values!" +msgstr "" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "" + +msgid "Open list..." +msgstr "" + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "" + +msgid "Option removed" +msgstr "" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "Lựa chọn " + +msgid "Other:" +msgstr "" + +msgid "Out" +msgstr "Ra khỏi" + +msgid "Outbound:" +msgstr "" + +msgid "Outdoor Channels" +msgstr "Kênh ngoại mạng" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "" + +msgid "Override MTU" +msgstr "" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "" + +msgid "Override the table used for internal routes" +msgstr "" + +msgid "Overview" +msgstr "Nhìn chung" + +msgid "Owner" +msgstr "Owner" + +msgid "PAP/CHAP password" +msgstr "" + +msgid "PAP/CHAP username" +msgstr "" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "" + +msgid "PPPoA Encapsulation" +msgstr "PPPoA Encapsulation" + +msgid "PPPoATM" +msgstr "" + +msgid "PPPoE" +msgstr "" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "" + +msgid "Package lists are older than 24 hours" +msgstr "" + +msgid "Package name" +msgstr "Tên gói" + +msgid "Packets" +msgstr "Gói tin" + +msgid "Part of zone %q" +msgstr "" + +msgid "Password" +msgstr "Mật mã" + +msgid "Password authentication" +msgstr "Xác thực mật mã" + +msgid "Password of Private Key" +msgstr "Mật mã của private key" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "Đường dẫn tới CA-Certificate" + +msgid "Path to Client-Certificate" +msgstr "" + +msgid "Path to Private Key" +msgstr "Đường dẫn tới private key" + +msgid "Path to executable which handles the button event" +msgstr "" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "Tiến hành reboot" + +msgid "Perform reset" +msgstr "" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "" + +msgid "Physical Settings" +msgstr "Cài đặt căn bản" + +msgid "Ping" +msgstr "" + +msgid "Pkts." +msgstr "" + +msgid "Please enter your username and password." +msgstr "Nhập tên và mật mã" + +msgid "Policy" +msgstr "Chính sách" + +msgid "Port" +msgstr "Cửa " + +msgid "Port status:" +msgstr "" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "Ngăn chặn giao tiếp giữa client-và-client" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "Proceed" + +msgid "Processes" +msgstr "Processes" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "Prot." + +msgid "Protocol" +msgstr "Protocol" + +msgid "Protocol family" +msgstr "" + +msgid "Protocol of the new interface" +msgstr "" + +msgid "Protocol support is not installed" +msgstr "" + +msgid "Provide NTP server" +msgstr "" + +msgid "Provide new network" +msgstr "" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "Pseudo Ad-Hoc (ahdemo)" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "RTS/CTS Threshold" + +msgid "RX" +msgstr "RX" + +msgid "RX Rate" +msgstr "" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "" + +msgid "Radius-Accounting-Port" +msgstr "" + +msgid "Radius-Accounting-Secret" +msgstr "" + +msgid "Radius-Accounting-Server" +msgstr "" + +msgid "Radius-Authentication-Port" +msgstr "" + +msgid "Radius-Authentication-Secret" +msgstr "" + +msgid "Radius-Authentication-Server" +msgstr "" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"Đọc /etc/ethers để định cấu hình DHCP-Server" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" + +msgid "Really reset all changes?" +msgstr "" + +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" + +msgid "Really switch protocol?" +msgstr "" + +msgid "Realtime Connections" +msgstr "" + +msgid "Realtime Graphs" +msgstr "" + +msgid "Realtime Load" +msgstr "" + +msgid "Realtime Traffic" +msgstr "" + +msgid "Realtime Wireless" +msgstr "" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "" + +msgid "Reboot" +msgstr "Reboot" + +msgid "Rebooting..." +msgstr "" + +msgid "Reboots the operating system of your device" +msgstr "Reboots hệ điều hành của công cụ" + +msgid "Receive" +msgstr "Receive" + +msgid "Receiver Antenna" +msgstr "Máy thu Antenna" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "" + +msgid "Reconnecting interface" +msgstr "" + +msgid "References" +msgstr "Tham chiếu" + +msgid "Regulatory Domain" +msgstr "Miền điều chỉnh" + +msgid "Relay" +msgstr "" + +msgid "Relay Bridge" +msgstr "" + +msgid "Relay between networks" +msgstr "" + +msgid "Relay bridge" +msgstr "" + +msgid "Remote IPv4 address" +msgstr "" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "Loại bỏ" + +msgid "Repeat scan" +msgstr "" + +msgid "Replace entry" +msgstr "thay đổi nội dung" + +msgid "Replace wireless configuration" +msgstr "" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "Reset" + +msgid "Reset Counters" +msgstr "Reset bộ đếm" + +msgid "Reset to defaults" +msgstr "" + +msgid "Resolv and Hosts Files" +msgstr "" + +msgid "Resolve file" +msgstr "" + +msgid "Restart" +msgstr "" + +msgid "Restart Firewall" +msgstr "Khởi động lại Firewall" + +msgid "Restore backup" +msgstr "Phục hồi backup" + +msgid "Reveal/hide password" +msgstr "" + +msgid "Revert" +msgstr "Revert" + +msgid "Root" +msgstr "" + +msgid "Root directory for files served via TFTP" +msgstr "" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "" + +msgid "Routes" +msgstr "Routes" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "" +"Routes chỉ định trên giao diện và cổng một host nhất định hay network được " +"tiếp cận." + +msgid "Run a filesystem check before mounting the device" +msgstr "" + +msgid "Run filesystem check" +msgstr "" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "Lưu" + +msgid "Save & Apply" +msgstr "Lưu & áp dụng " + +msgid "Save & Apply" +msgstr "" + +msgid "Scan" +msgstr "Scan" + +msgid "Scheduled Tasks" +msgstr "Scheduled Tasks" + +msgid "Section added" +msgstr "" + +msgid "Section removed" +msgstr "" + +msgid "See \"mount\" manpage for details" +msgstr "" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "" + +msgid "Separate Clients" +msgstr "Cô lập đối tượng" + +msgid "Separate WDS" +msgstr "Phân tách WDS" + +msgid "Server Settings" +msgstr "" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "" + +msgid "Service Type" +msgstr "" + +msgid "Services" +msgstr "Dịch vụ " + +msgid "Set up Time Synchronization" +msgstr "" + +msgid "Setup DHCP Server" +msgstr "" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "" + +msgid "Shutdown this interface" +msgstr "" + +msgid "Shutdown this network" +msgstr "" + +msgid "Signal" +msgstr "" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "" + +msgid "Size" +msgstr "Dung lượng " + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "" + +msgid "Skip to content" +msgstr "Nhảy tới nội dung" + +msgid "Skip to navigation" +msgstr "Chuyển đến mục định hướng" + +msgid "Slot time" +msgstr "" + +msgid "Software" +msgstr "Phần mềm" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "" + +msgid "Sorry, the object you requested was not found." +msgstr "" + +msgid "Sorry, the server encountered an unexpected error." +msgstr "" + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" + +msgid "Sort" +msgstr "" + +msgid "Source" +msgstr "Nguồn" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "" + +msgid "Specifies the directory the device is attached to" +msgstr "" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "" + +msgid "Start" +msgstr "Bắt đầu " + +msgid "Start priority" +msgstr "Bắt đầu ưu tiên" + +msgid "Startup" +msgstr "" + +msgid "Static IPv4 Routes" +msgstr "Static IPv4 Routes" + +msgid "Static IPv6 Routes" +msgstr "Static IPv6 Routes" + +msgid "Static Leases" +msgstr "Thống kê leases" + +msgid "Static Routes" +msgstr "Static Routes" + +msgid "Static WDS" +msgstr "" + +msgid "Static address" +msgstr "" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" + +msgid "Status" +msgstr "Tình trạng" + +msgid "Stop" +msgstr "" + +msgid "Strict order" +msgstr "Yêu cầu nghiêm ngặt" + +msgid "Submit" +msgstr "Trình " + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "" + +msgid "Switch" +msgstr "chuyển đổi" + +msgid "Switch %q" +msgstr "" + +msgid "Switch %q (%s)" +msgstr "" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "" + +msgid "Sync with browser" +msgstr "" + +msgid "Synchronizing..." +msgstr "" + +msgid "System" +msgstr "Hệ thống" + +msgid "System Log" +msgstr "System Log" + +msgid "System Properties" +msgstr "" + +msgid "System log buffer size" +msgstr "" + +msgid "TCP:" +msgstr "" + +msgid "TFTP Settings" +msgstr "" + +msgid "TFTP server root" +msgstr "" + +msgid "TX" +msgstr "TX" + +msgid "TX Rate" +msgstr "" + +msgid "Table" +msgstr "Bảng" + +msgid "Target" +msgstr "Đích" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "Terminate" + +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" +"Tập tin công cụ của bộ nhớ hoặc phân vùng (e.g. " +"/dev/sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"Filesystem mà được dùng để format memory (e.g. ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" + +msgid "The following changes have been committed" +msgstr "" + +msgid "The following changes have been reverted" +msgstr "Những thay đối sau đây đã được để trở về tình trạng cũ. " + +msgid "The following rules are currently active on this system." +msgstr "" + +msgid "The given network name is not unique" +msgstr "" + +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "" + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "" + +msgid "The length of the IPv6 prefix in bits" +msgstr "" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" + +msgid "The selected protocol needs a device assigned" +msgstr "" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "" + +#, fuzzy +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"Hệ thống bây giờ đang flashing.
DO NOT POWER OFF THE DEVICE!
Chờ " +"một vài phút cho tới khi kết nối lại. Có thể cần phải làm mới địa chỉ của " +"máy tính để tiếp cận thiết bị một lần nữa, phụ thuộc vào cài đặt của bạn. " + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"Tập tin đang tải hình ảnh không bao gồm một hổ trợ format. Bảo đảm rằng bạn " +"chọn một image format tổng quát cho platform." + +msgid "There are no active leases." +msgstr "" + +msgid "There are no pending changes to apply!" +msgstr "" + +msgid "There are no pending changes to revert!" +msgstr "" + +msgid "There are no pending changes!" +msgstr "" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "" + +msgid "This IPv4 address of the relay" +msgstr "" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "" + +msgid "" +"This is the only DHCP in the local network" +msgstr "" +"Đây là DHCP duy " +"nhất trong mạng địa phương. " + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "Đây là system crontab mà scheduled tasks có thể bị định nghĩa." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "" +"List này đưa ra một tầm nhìn tổng quát về xử lý hệ thống đang chạy và tình " +"trạng của chúng." + +msgid "This page allows the configuration of custom button actions" +msgstr "" + +msgid "This page gives an overview over currently active network connections." +msgstr "" +"Trang này cung cấp một tổng quan về đang hoạt động kết nối mạng hiện tại." + +msgid "This section contains no values yet" +msgstr "Phần này chưa có giá trị nào" + +msgid "Time Synchronization" +msgstr "" + +msgid "Time Synchronization is not configured yet." +msgstr "" + +msgid "Timezone" +msgstr "Múi giờ " + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "" + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "" + +msgid "Traceroute" +msgstr "" + +msgid "Traffic" +msgstr "" + +msgid "Transfer" +msgstr "Chuyển giao" + +msgid "Transmission Rate" +msgstr "Truyền tải rate" + +msgid "Transmit" +msgstr "Transmit" + +msgid "Transmit Power" +msgstr "Truyền tải năng lượng" + +msgid "Transmitter Antenna" +msgstr "Máy phát Antenna" + +msgid "Trigger" +msgstr "" + +msgid "Trigger Mode" +msgstr "" + +msgid "Tunnel ID" +msgstr "" + +msgid "Tunnel Interface" +msgstr "" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "Turbo Mode" + +msgid "Tx-Power" +msgstr "" + +msgid "Type" +msgstr "Loại " + +msgid "UDP:" +msgstr "" + +msgid "UMTS only" +msgstr "" + +msgid "UMTS/GPRS/EV-DO" +msgstr "" + +msgid "USB Device" +msgstr "" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "" + +msgid "Unable to dispatch" +msgstr "" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "" + +msgid "Unknown Error, password not changed!" +msgstr "" + +msgid "Unmanaged" +msgstr "" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "Thay đổi không lưu" + +msgid "Unsupported protocol type." +msgstr "" + +msgid "Update lists" +msgstr "" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" + +msgid "Upload archive..." +msgstr "" + +msgid "Uploaded File" +msgstr "Tập tin đã tải lên" + +msgid "Uptime" +msgstr "Uptime" + +msgid "Use /etc/ethers" +msgstr "Dùng /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "" + +msgid "Use DNS servers advertised by peer" +msgstr "" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "" + +msgid "Use MTU on tunnel interface" +msgstr "" + +msgid "Use TTL on tunnel interface" +msgstr "" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "" + +msgid "Use default gateway" +msgstr "" + +msgid "Use gateway metric" +msgstr "" + +msgid "Use routing table" +msgstr "" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" + +msgid "Used" +msgstr "Đã sử dụng" + +msgid "Used Key Slot" +msgstr "" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "Tên người dùng " + +msgid "VC-Mux" +msgstr "" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "" + +msgid "VLANs on %q (%s)" +msgstr "" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "" + +msgid "Version" +msgstr "Phiên bản" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "" + +msgid "WEP Shared Key" +msgstr "" + +msgid "WEP passphrase" +msgstr "" + +msgid "WMM Mode" +msgstr "WMM Mode" + +msgid "WPA passphrase" +msgstr "" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "" + +msgid "Waiting for command to complete..." +msgstr "" + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "" + +msgid "Wireless Adapter" +msgstr "Bộ tương hợp không dây" + +msgid "Wireless Network" +msgstr "" + +msgid "Wireless Overview" +msgstr "" + +msgid "Wireless Security" +msgstr "" + +msgid "Wireless is disabled or not associated" +msgstr "" + +msgid "Wireless is restarting..." +msgstr "" + +msgid "Wireless network is disabled" +msgstr "" + +msgid "Wireless network is enabled" +msgstr "" + +msgid "Wireless restarted" +msgstr "" + +msgid "Wireless shut down" +msgstr "" + +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 "" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "Hỗ trợ XR" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"Bạn có thể bật hoặc tắt cài đặt init script tại đây. Thay đổi này sẽ được áp " +"dụng sau khi một thiết bị khởi động lại.
Cảnh báo: Nếu bạn vô " +"hiệu hoá init script thiết yếu như &quot;network&quot;, công cụ của " +"bạn chó thể trở nên không truy cập được" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "" + +msgid "auto" +msgstr "tự động" + +msgid "baseT" +msgstr "" + +msgid "bridged" +msgstr "" + +msgid "create:" +msgstr "" + +msgid "creates a bridge over specified interface(s)" +msgstr "tạo một cầu nối trên một giao diện được chỉ định" + +msgid "dB" +msgstr "" + +msgid "dBm" +msgstr "" + +msgid "disable" +msgstr "Vô hiệu hóa" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" +"Tập tin được cho DHCP-leases sẽ được lưu trữ" + +msgid "forward" +msgstr "" + +msgid "full-duplex" +msgstr "" + +msgid "half-duplex" +msgstr "" + +msgid "help" +msgstr "" + +msgid "hidden" +msgstr "" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "Nếu mục tiêu là một network" + +msgid "input" +msgstr "" + +msgid "kB" +msgstr "" + +msgid "kB/s" +msgstr "" + +msgid "kbit/s" +msgstr "" + +msgid "local DNS file" +msgstr "Tập tin DNS địa phương" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "" + +msgid "no link" +msgstr "" + +msgid "none" +msgstr "không " + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "" + +msgid "on" +msgstr "" + +msgid "open" +msgstr "" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "" + +msgid "unlimited" +msgstr "" + +msgid "unspecified" +msgstr "" + +msgid "unspecified -or- create:" +msgstr "" + +msgid "untagged" +msgstr "" + +msgid "yes" +msgstr "" + +msgid "« Back" +msgstr "" + +#~ msgid "Leasetime" +#~ msgstr "Leasetime" + +#, fuzzy +#~ msgid "automatic" +#~ msgstr "thống kê" diff --git a/luci-base/po/zh-cn/base.po b/luci-base/po/zh-cn/base.po new file mode 100644 index 000000000..b028af1d5 --- /dev/null +++ b/luci-base/po/zh-cn/base.po @@ -0,0 +1,3916 @@ +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-12-21 23:08+0200\n" +"PO-Revision-Date: 2017-04-09 15:04+0800\n" +"Last-Translator: Hsing-Wang Liao \n" +"Language: zh_CN\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Poedit 2.0\n" +"Language-Team: \n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "%s 在多个 VLAN 中未标记" + +msgid "(%d minute window, %d second interval)" +msgstr "(%d 分钟信息,%d 秒刷新)" + +msgid "(%s available)" +msgstr "(%s 可用)" + +msgid "(empty)" +msgstr "(空)" + +msgid "(no interfaces attached)" +msgstr "(未连接接口)" + +msgid "-- Additional Field --" +msgstr "-- 更多选项 --" + +msgid "-- Please choose --" +msgstr "-- 请选择 --" + +msgid "-- custom --" +msgstr "-- 自定义 --" + +msgid "-- match by device --" +msgstr "-- 根据设备匹配 --" + +msgid "-- match by label --" +msgstr "-- 根据标签匹配 --" + +msgid "-- match by uuid --" +msgstr "-- 根据 UUID 匹配 --" + +msgid "1 Minute Load:" +msgstr "1 分钟负载:" + +msgid "15 Minute Load:" +msgstr "15 分钟负载:" + +msgid "4-character hexadecimal ID" +msgstr "4 字符的十六进制 ID" + +msgid "464XLAT (CLAT)" +msgstr "464XLAT (CLAT)" + +msgid "5 Minute Load:" +msgstr "5 分钟负载:" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "6 个八位字节的标识符 (十六进制字符串) - 无冒号" + +msgid "802.11r Fast Transition" +msgstr "802.11r 快速转换" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "802.11w 关联 SA 查询最大超时" + +msgid "802.11w Association SA Query retry timeout" +msgstr "802.11w 关联 SA 查询重试超时" + +msgid "802.11w Management Frame Protection" +msgstr "802.11w 管理帧保护" + +msgid "802.11w maximum timeout" +msgstr "802.11w 最大超时" + +msgid "802.11w retry timeout" +msgstr "802.11w 重试超时" + +msgid "BSSID" +msgstr "BSSID" + +msgid "DNS query port" +msgstr "DNS 查询端口" + +msgid "DNS server port" +msgstr "DNS 服务器端口" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "将会按照指定的顺序查询 DNS" + +msgid "ESSID" +msgstr "ESSID" + +msgid "IPv4-Address" +msgstr "IPv4-地址" + +msgid "IPv4-Gateway" +msgstr "IPv4-网关" + +msgid "IPv4-Netmask" +msgstr "IPv4-子网掩码" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"IPv6-地址或超网 (CIDR)" + +msgid "IPv6-Gateway" +msgstr "IPv6-网关" + +msgid "IPv6-Suffix (hex)" +msgstr "IPv6-后缀 (十六进制)" + +msgid "LED Configuration" +msgstr "LED 配置" + +msgid "LED Name" +msgstr "LED 名称" + +msgid "MAC-Address" +msgstr "MAC-地址" + +msgid "" +"Max. DHCP leases" +msgstr "最大 DHCP 分配数量" + +msgid "" +"Max. EDNS0 packet size" +msgstr "最大 EDNS0 数据包大小" + +msgid "Max. concurrent queries" +msgstr "最大并发查询数" + +msgid "%s - %s" +msgstr "%s - %s" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "A43C + J43 + A43" + +msgid "A43C + J43 + A43 + V43" +msgstr "A43C + J43 + A43 + V43" + +msgid "ADSL" +msgstr "ADSL" + +msgid "AICCU (SIXXS)" +msgstr "AICCU (SIXXS)" + +msgid "ANSI T1.413" +msgstr "ANSI T1.413" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "AR支持" + +msgid "ARP retry threshold" +msgstr "ARP 重试阈值" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "ATM (异步传输模式)" + +msgid "ATM Bridges" +msgstr "ATM 桥接" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "ATM 虚拟通道标识 (VCI)" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "ATM 虚拟路径标识 (VPI)" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"ATM 桥是以 AAL5 协议封装以太网的虚拟 Linux 网桥,用于协同 DHCP 或 PPP 来拨号" +"连接到网络运营商。" + +msgid "ATM device number" +msgstr "ATM 设备号码" + +msgid "ATU-C System Vendor ID" +msgstr "ATU-C 系统供应商 ID" + +msgid "AYIYA" +msgstr "AYIYA" + +msgid "Access Concentrator" +msgstr "接入集中器" + +msgid "Access Point" +msgstr "接入点 AP" + +msgid "Action" +msgstr "动作" + +msgid "Actions" +msgstr "动作" + +msgid "Activate this network" +msgstr "激活此网络" + +msgid "Active IPv4-Routes" +msgstr "活动的 IPv4-链路" + +msgid "Active IPv6-Routes" +msgstr "活动的 IPv6-链路" + +msgid "Active Connections" +msgstr "活动连接" + +msgid "Active DHCP Leases" +msgstr "已分配的 DHCP 租约" + +msgid "Active DHCPv6 Leases" +msgstr "已分配的 DHCPv6 租约" + +msgid "Ad-Hoc" +msgstr "点对点 Ad-Hoc" + +msgid "Add" +msgstr "添加" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "添加本地域名后缀到 HOSTS 文件中的域名" + +msgid "Add new interface..." +msgstr "添加新接口..." + +msgid "Additional Hosts files" +msgstr "额外的 HOSTS 文件" + +msgid "Additional servers file" +msgstr "额外的 SERVERS 文件" + +msgid "Address" +msgstr "地址" + +msgid "Address to access local relay bridge" +msgstr "接入本地中继桥的地址" + +msgid "Administration" +msgstr "管理权" + +msgid "Advanced Settings" +msgstr "高级设置" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "总发射功率 (ACTATP)" + +msgid "Alert" +msgstr "警戒" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "从最低可用地址开始顺序分配 IP 地址" + +msgid "Allocate IP sequentially" +msgstr "顺序分配 IP" + +msgid "Allow SSH password authentication" +msgstr "允许 SSH 密码验证" + +msgid "Allow all except listed" +msgstr "仅允许列表外" + +msgid "Allow listed only" +msgstr "仅允许列表内" + +msgid "Allow localhost" +msgstr "允许本机" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "允许远程主机连接到本地 SSH 转发端口" + +msgid "Allow root logins with password" +msgstr "允许 Root 用户凭密码登录" + +msgid "Allow the root user to login with password" +msgstr "允许 root 用户凭密码登录" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "允许 127.0.0.0/8 回环范围内的上行响应,例如: RBL 服务" + +msgid "Allowed IPs" +msgstr "允许的 IP" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" +"也请查看 SIXXS 上的隧道对比" + +msgid "Always announce default router" +msgstr "总是广播默认路由" + +msgid "Annex" +msgstr "Annex" + +msgid "Annex A + L + M (all)" +msgstr "Annex A + L + M (全部)" + +msgid "Annex A G.992.1" +msgstr "Annex A G.992.1" + +msgid "Annex A G.992.2" +msgstr "Annex A G.992.2" + +msgid "Annex A G.992.3" +msgstr "Annex A G.992.3" + +msgid "Annex A G.992.5" +msgstr "Annex A G.992.5" + +msgid "Annex B (all)" +msgstr "Annex B (全部)" + +msgid "Annex B G.992.1" +msgstr "Annex B G.992.1" + +msgid "Annex B G.992.3" +msgstr "Annex B G.992.3" + +msgid "Annex B G.992.5" +msgstr "Annex B G.992.5" + +msgid "Annex J (all)" +msgstr "Annex J (全部)" + +msgid "Annex L G.992.3 POTS 1" +msgstr "Annex L G.992.3 POTS 1" + +msgid "Annex M (all)" +msgstr "Annex M (全部)" + +msgid "Annex M G.992.3" +msgstr "Annex M G.992.3" + +msgid "Annex M G.992.5" +msgstr "Annex M G.992.5" + +msgid "Announce as default router even if no public prefix is available." +msgstr "即使没有可用的公共前缀也广播默认路由。" + +msgid "Announced DNS domains" +msgstr "广播的 DNS 域名" + +msgid "Announced DNS servers" +msgstr "广播的 DNS 服务器" + +msgid "Anonymous Identity" +msgstr "匿名身份" + +msgid "Anonymous Mount" +msgstr "自动挂载未配置的磁盘分区" + +msgid "Anonymous Swap" +msgstr "自动挂载未配置的 Swap 分区" + +msgid "Antenna 1" +msgstr "天线 1" + +msgid "Antenna 2" +msgstr "天线 2" + +msgid "Antenna Configuration" +msgstr "天线配置" + +msgid "Any zone" +msgstr "任意区域" + +msgid "Apply" +msgstr "应用" + +msgid "Applying changes" +msgstr "正在应用更改" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "给每个公共 IPv6 前缀分配指定长度的固定部分" + +msgid "Assign interfaces..." +msgstr "分配接口..." + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "指定此接口使用的十六进制子 ID 前缀部分。" + +msgid "Associated Stations" +msgstr "已连接站点" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Qualcomm/Atheros 802.11%s 无线网卡" + +msgid "Auth Group" +msgstr "认证组" + +msgid "Authentication" +msgstr "认证" + +msgid "Authentication Type" +msgstr "认证类型" + +msgid "Authoritative" +msgstr "唯一授权" + +msgid "Authorization Required" +msgstr "需要授权" + +msgid "Auto Refresh" +msgstr "自动刷新" + +msgid "Automatic" +msgstr "自动" + +msgid "Automatic Homenet (HNCP)" +msgstr "自动家庭网络 (HNCP)" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "在挂载前自动检查文件系统错误" + +msgid "Automatically mount filesystems on hotplug" +msgstr "通过 Hotplug 自动挂载磁盘" + +msgid "Automatically mount swap on hotplug" +msgstr "通过 Hotplug 自动挂载 Swap 分区" + +msgid "Automount Filesystem" +msgstr "自动挂载磁盘" + +msgid "Automount Swap" +msgstr "自动挂载 Swap" + +msgid "Available" +msgstr "可用" + +msgid "Available packages" +msgstr "可用软件包" + +msgid "Average:" +msgstr "平均:" + +msgid "B43 + B43C" +msgstr "B43 + B43C" + +msgid "B43 + B43C + V43" +msgstr "B43 + B43C + V43" + +msgid "BR / DMR / AFTR" +msgstr "BR / DMR / AFTR" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "返回" + +msgid "Back to Overview" +msgstr "返回至概况" + +msgid "Back to configuration" +msgstr "返回至配置" + +msgid "Back to overview" +msgstr "返回至概况" + +msgid "Back to scan results" +msgstr "返回至扫描结果" + +msgid "Background Scan" +msgstr "后台搜索" + +msgid "Backup / Flash Firmware" +msgstr "备份/升级" + +msgid "Backup / Restore" +msgstr "备份/恢复" + +msgid "Backup file list" +msgstr "文件备份列表" + +msgid "Bad address specified!" +msgstr "指定了错误的地址!" + +msgid "Band" +msgstr "频宽" + +msgid "Behind NAT" +msgstr "在 NAT 网络内" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"下面是待备份的文件清单。包含了更改的配置文件、必要的基础文件和用户自定义的需" +"备份文件。" + +msgid "Bind interface" +msgstr "绑定接口" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "仅绑定到特定接口,而不是全部地址。" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "将隧道绑定到此接口 (可选)。" + +msgid "Bitrate" +msgstr "传输速率" + +msgid "Bogus NX Domain Override" +msgstr "忽略虚假空域名解析" + +msgid "Bridge" +msgstr "桥接" + +msgid "Bridge interfaces" +msgstr "桥接接口" + +msgid "Bridge unit number" +msgstr "桥接号" + +msgid "Bring up on boot" +msgstr "开机自动运行" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "Broadcom 802.11%s 无线网卡" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "Broadcom BCM%04x 802.11 无线网卡" + +msgid "Buffered" +msgstr "已缓冲" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "由固件指定的软件源。此处的设置在任何系统升级中都不会被保留。" + +msgid "Buttons" +msgstr "按键" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "CA 证书,如果留空的话证书将在第一次连接时被保存。" + +msgid "CPU usage (%)" +msgstr "CPU 使用率 (%)" + +msgid "Cancel" +msgstr "取消" + +msgid "Category" +msgstr "分类" + +msgid "Chain" +msgstr "链" + +msgid "Changes" +msgstr "修改数" + +msgid "Changes applied." +msgstr "更改已应用" + +msgid "Changes the administrator password for accessing the device" +msgstr "修改访问设备的管理员密码" + +msgid "Channel" +msgstr "信道" + +msgid "Check" +msgstr "检查" + +msgid "Check fileystems before mount" +msgstr "在挂载前检查文件系统" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "选中此选项以从无线中删除现有网络。" + +msgid "Checksum" +msgstr "校验值" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "此接口的防火墙区域。填写创建栏可新建防火墙区域。" + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "选择指派到此无线接口的网络。填写创建栏可新建网络。" + +msgid "Cipher" +msgstr "算法" + +msgid "Cisco UDP encapsulation" +msgstr "Cisco UDP 封装" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"点击“生成备份”下载当前配置文件的 tar 存档。要将固件恢复到初始状态,请单击“执" +"行重置” (仅 Squashfs 固件有效)。" + +msgid "Client" +msgstr "客户端 Client" + +msgid "Client ID to send when requesting DHCP" +msgstr "请求 DHCP 时发送的客户 ID" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "定时关闭非活动链接 (秒),0 为持续连接" + +msgid "Close list..." +msgstr "关闭列表..." + +msgid "Collecting data..." +msgstr "正在收集数据..." + +msgid "Command" +msgstr "进程命令" + +msgid "Common Configuration" +msgstr "一般设置" + +msgid "Compression" +msgstr "压缩" + +msgid "Configuration" +msgstr "配置" + +msgid "Configuration applied." +msgstr "配置已应用。" + +msgid "Configuration files will be kept." +msgstr "配置文件将被保留。" + +msgid "Confirmation" +msgstr "确认密码" + +msgid "Connect" +msgstr "连接" + +msgid "Connected" +msgstr "已连接" + +msgid "Connection Limit" +msgstr "连接数限制" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "当 TLS 不可用时,与服务器连接失败" + +msgid "Connections" +msgstr "链接" + +msgid "Country" +msgstr "国家" + +msgid "Country Code" +msgstr "国家代码" + +msgid "Cover the following interface" +msgstr "包括以下接口" + +msgid "Cover the following interfaces" +msgstr "包括以下接口" + +msgid "Create / Assign firewall-zone" +msgstr "创建/分配防火墙区域" + +msgid "Create Interface" +msgstr "创建新接口" + +msgid "Create a bridge over multiple interfaces" +msgstr "在多个接口上创建桥接" + +msgid "Critical" +msgstr "致命错误" + +msgid "Cron Log Level" +msgstr "Cron 日志级别" + +msgid "Custom Interface" +msgstr "自定义接口" + +msgid "Custom delegated IPv6-prefix" +msgstr "自定义分配的 IPv6 前缀" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" +"自定义的软件源地址 (例如私有的软件源)。此处设定的源地址在系统升级时将被保留" + +msgid "Custom feeds" +msgstr "自定义的软件源" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "自定义 LED 的活动状态。" + +msgid "DHCP Leases" +msgstr "DHCP 分配" + +msgid "DHCP Server" +msgstr "DHCP 服务器" + +msgid "DHCP and DNS" +msgstr "DHCP/DNS" + +msgid "DHCP client" +msgstr "DHCP 客户端" + +msgid "DHCP-Options" +msgstr "DHCP-选项" + +msgid "DHCPv6 Leases" +msgstr "DHCPv6 分配" + +msgid "DHCPv6 client" +msgstr "DHCPv6 客户端" + +msgid "DHCPv6-Mode" +msgstr "DHCPv6 模式" + +msgid "DHCPv6-Service" +msgstr "DHCPv6 服务" + +msgid "DNS" +msgstr "DNS" + +msgid "DNS forwardings" +msgstr "DNS 转发" + +msgid "DNS-Label / FQDN" +msgstr "DNS-Label / FQDN" + +msgid "DNSSEC" +msgstr "DNSSEC" + +msgid "DNSSEC check unsigned" +msgstr "DNSSEC 未签名检查" + +msgid "DPD Idle Timeout" +msgstr "DPD 空闲超时" + +msgid "DS-Lite AFTR address" +msgstr "DS-Lite AFTR 地址" + +msgid "DSL" +msgstr "DSL" + +msgid "DSL Status" +msgstr "DSL 状态" + +msgid "DSL line mode" +msgstr "DSL 线路模式" + +msgid "DUID" +msgstr "DUID" + +msgid "Data Rate" +msgstr "数据速率" + +msgid "Debug" +msgstr "调试" + +msgid "Default %d" +msgstr "默认 %d" + +msgid "Default gateway" +msgstr "默认网关" + +msgid "Default is stateless + stateful" +msgstr "默认是无状态 + 有状态" + +msgid "Default route" +msgstr "默认路由" + +msgid "Default state" +msgstr "默认状态" + +msgid "Define a name for this network." +msgstr "为网络定义名称。" + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"设置 DHCP 的附加选项,例如设定 \"6,192.168.2.1,192.168.2.2\" 表" +"示通告不同的 DNS 服务器给客户端。" + +msgid "Delete" +msgstr "删除" + +msgid "Delete this network" +msgstr "删除此网络" + +msgid "Description" +msgstr "描述" + +msgid "Design" +msgstr "主题" + +msgid "Destination" +msgstr "目标地址" + +msgid "Device" +msgstr "设备" + +msgid "Device Configuration" +msgstr "设备配置" + +msgid "Device is rebooting..." +msgstr "设备正在重启..." + +msgid "Device unreachable" +msgstr "无法连接到设备" + +msgid "Diagnostics" +msgstr "网络诊断" + +msgid "Dial number" +msgstr "拨号号码" + +msgid "Directory" +msgstr "目录" + +msgid "Disable" +msgstr "禁用" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "禁用本接口的 DHCP。" + +msgid "Disable DNS setup" +msgstr "停用 DNS 设定" + +msgid "Disable Encryption" +msgstr "禁用加密" + +msgid "Disable HW-Beacon timer" +msgstr "停用HW-Beacon计时器" + +msgid "Disabled" +msgstr "禁用" + +msgid "Disabled (default)" +msgstr "禁用 (默认)" + +msgid "Discard upstream RFC1918 responses" +msgstr "丢弃 RFC1918 上行响应数据" + +msgid "Displaying only packages containing" +msgstr "只显示有内容的软件包" + +msgid "Distance Optimization" +msgstr "距离优化" + +msgid "Distance to farthest network member in meters." +msgstr "最远网络用户的距离 (米)。" + +msgid "Distribution feeds" +msgstr "发行版软件源" + +msgid "Diversity" +msgstr "差异" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +"Dnsmasq 为 NAT 防火墙提供了一个集成的 " +"DHCP 服务器和 DNS 转发器" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "不缓存无用的回应, 比如: 不存在的域。" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "不转发公共域名服务器无法回应的请求" + +msgid "Do not forward reverse lookups for local networks" +msgstr "不转发反向查询本地网络的 Lookups 命令" + +msgid "Do not send probe responses" +msgstr "不回送探测响应" + +msgid "Domain required" +msgstr "忽略空域名解析" + +msgid "Domain whitelist" +msgstr "域名白名单" + +msgid "Don't Fragment" +msgstr "禁止碎片" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "不转发没有 DNS 名称的解析请求" + +msgid "Download and install package" +msgstr "下载并安装软件包" + +msgid "Download backup" +msgstr "下载备份" + +msgid "Dropbear Instance" +msgstr "Dropbear 实例" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear 提供了集成的 SCP 服务器和基于 SSH 的 Shell 访问" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "Dual-Stack Lite (RFC6333)" + +msgid "Dynamic DHCP" +msgstr "动态 DHCP" + +msgid "Dynamic tunnel" +msgstr "动态隧道" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "" +"动态分配 DHCP 地址。如果禁用,则只能为静态租用表中的客户端提供网络服务。" + +msgid "EA-bits length" +msgstr "EA-bits 长度" + +msgid "EAP-Method" +msgstr "EAP 类型" + +msgid "Edit" +msgstr "修改" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "编辑上方的原始配置以修复错误并按下“保存”按钮以重新载入此页面。" + +msgid "Edit this interface" +msgstr "修改此接口" + +msgid "Edit this network" +msgstr "修改此网络" + +msgid "Emergency" +msgstr "紧急" + +msgid "Enable" +msgstr "启用" + +msgid "Enable STP" +msgstr "开启 STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "启用 HE.net 动态终端更新" + +msgid "Enable IPv6 negotiation" +msgstr "启用 IPv6 协商" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "在 PPP 链路上启用 IPv6 协商" + +msgid "Enable Jumbo Frame passthrough" +msgstr "启用巨型帧透传" + +msgid "Enable NTP client" +msgstr "启用 NTP 客户端" + +msgid "Enable Single DES" +msgstr "启用单个 DES" + +msgid "Enable TFTP server" +msgstr "启用 TFTP 服务器" + +msgid "Enable VLAN functionality" +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 "启用智能交换学习" + +msgid "Enable mirroring of incoming packets" +msgstr "启用流入数据包镜像" + +msgid "Enable mirroring of outgoing packets" +msgstr "启用流出数据包镜像" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "启用封装数据包的 DF (禁止碎片) 标志。" + +msgid "Enable this mount" +msgstr "启用挂载点" + +msgid "Enable this swap" +msgstr "启用交换区" + +msgid "Enable/Disable" +msgstr "启用/禁用" + +msgid "Enabled" +msgstr "启用" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "启用属于同一移动域的接入点之间的快速漫游" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "在此桥接上启用生成协议树" + +msgid "Encapsulation mode" +msgstr "封装模式" + +msgid "Encryption" +msgstr "加密" + +msgid "Endpoint Host" +msgstr "端点主机" + +msgid "Endpoint Port" +msgstr "端点端口" + +msgid "Erasing..." +msgstr "擦除中..." + +msgid "Error" +msgstr "错误" + +msgid "Errored seconds (ES)" +msgstr "错误秒数 (ES)" + +msgid "Ethernet Adapter" +msgstr "以太网适配器" + +msgid "Ethernet Switch" +msgstr "以太网交换机" + +msgid "Exclude interfaces" +msgstr "排除接口" + +msgid "Expand hosts" +msgstr "扩展 HOSTS 文件中的主机后缀" + +msgid "Expires" +msgstr "到期时间" + +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "租用地址的到期时间,最短 2 分钟 (2m)。" + +msgid "External" +msgstr "外部" + +msgid "External R0 Key Holder List" +msgstr "外部 R0KH (R0 Key Holder) 列表" + +msgid "External R1 Key Holder List" +msgstr "外部 R1KH (R1 Key Holder) 列表" + +msgid "External system log server" +msgstr "外部日志服务器" + +msgid "External system log server port" +msgstr "外部日志服务器端口" + +msgid "External system log server protocol" +msgstr "外部日志服务器协议" + +msgid "Extra SSH command options" +msgstr "额外的 SSH 命令选项" + +msgid "Fast Frames" +msgstr "快速帧" + +msgid "File" +msgstr "文件" + +msgid "Filename of the boot image advertised to clients" +msgstr "向客户端通告的启动镜像文件名" + +msgid "Filesystem" +msgstr "文件系统" + +msgid "Filter" +msgstr "过滤器" + +msgid "Filter private" +msgstr "过滤本地包" + +msgid "Filter useless" +msgstr "过滤无用包" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" +"查找所有当前系统上的分区和 Swap 并使用基于所找到的分区生成的配置文件替换默认" +"配置" + +msgid "Find and join network" +msgstr "搜索并加入网络" + +msgid "Find package" +msgstr "查找软件包" + +msgid "Finish" +msgstr "完成" + +msgid "Firewall" +msgstr "防火墙" + +msgid "Firewall Settings" +msgstr "防火墙设置" + +msgid "Firewall Status" +msgstr "防火墙状态" + +msgid "Firmware File" +msgstr "固件文件" + +msgid "Firmware Version" +msgstr "固件版本" + +msgid "Fixed source port for outbound DNS queries" +msgstr "指定的 DNS 查询源端口" + +msgid "Flash Firmware" +msgstr "刷新固件" + +msgid "Flash image..." +msgstr "刷写固件..." + +msgid "Flash new firmware image" +msgstr "刷写新的固件" + +msgid "Flash operations" +msgstr "刷新操作" + +msgid "Flashing..." +msgstr "刷写中..." + +msgid "Force" +msgstr "强制" + +msgid "Force CCMP (AES)" +msgstr "强制 CCMP (AES)" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "即使检测到另一台服务器,也要强制使用此网络上的 DHCP。" + +msgid "Force TKIP" +msgstr "强制 TKIP" + +msgid "Force TKIP and CCMP (AES)" +msgstr "强制 TKIP 和 CCMP (AES)" + +msgid "Force use of NAT-T" +msgstr "强制使用 NAT-T" + +msgid "Form token mismatch" +msgstr "表单令牌不匹配" + +msgid "Forward DHCP traffic" +msgstr "转发 DHCP 数据包" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "前向纠错秒数 (FECS)" + +msgid "Forward broadcast traffic" +msgstr "转发广播数据包" + +msgid "Forwarding mode" +msgstr "转发模式" + +msgid "Fragmentation Threshold" +msgstr "分片阈值" + +msgid "Frame Bursting" +msgstr "帧突发" + +msgid "Free" +msgstr "空闲数" + +msgid "Free space" +msgstr "空闲空间" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" +"有关 WireGuard 接口和 Peer 的更多信息: wireguard.io。" + +msgid "GHz" +msgstr "GHz" + +msgid "GPRS only" +msgstr "仅 GPRS" + +msgid "Gateway" +msgstr "网关" + +msgid "Gateway ports" +msgstr "网关端口" + +msgid "General Settings" +msgstr "基本设置" + +msgid "General Setup" +msgstr "基本设置" + +msgid "General options for opkg" +msgstr "OPKG 基础配置" + +msgid "Generate Config" +msgstr "生成配置" + +msgid "Generate archive" +msgstr "生成备份" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "通用 802.11%s 无线网卡" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "由于密码验证不匹配,密码没有更改!" + +msgid "Global Settings" +msgstr "全局设置" + +msgid "Global network options" +msgstr "全局网络选项" + +msgid "Go to password configuration..." +msgstr "跳转到密码配置页..." + +msgid "Go to relevant configuration page" +msgstr "跳转到相关的配置页面" + +msgid "Group Password" +msgstr "组密码" + +msgid "Guest" +msgstr "访客" + +msgid "HE.net password" +msgstr "HE.net 密码" + +msgid "HE.net username" +msgstr "HE.net 用户名" + +msgid "HT mode (802.11n)" +msgstr "HT 模式 (802.11n)" + +msgid "Handler" +msgstr "处理程序" + +msgid "Hang Up" +msgstr "挂起" + +msgid "Header Error Code Errors (HEC)" +msgstr "请求头的错误代码错误 (HEC)" + +msgid "Heartbeat" +msgstr "心跳" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "配置路由器的部分基础信息。" + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "请在这里粘贴公共 SSH 密钥用于 SSH 公钥认证 (每行一个)。" + +msgid "Hermes 802.11b Wireless Controller" +msgstr "Hermes 802.11b 无线网卡" + +msgid "Hide ESSID" +msgstr "隐藏 ESSID" + +msgid "Host" +msgstr "主机" + +msgid "Host entries" +msgstr "主机目录" + +msgid "Host expiry timeout" +msgstr "主机到期超时" + +msgid "Host-IP or Network" +msgstr "主机 IP 或网络" + +msgid "Hostname" +msgstr "主机名" + +msgid "Hostname to send when requesting DHCP" +msgstr "请求 DHCP 时发送的主机名" + +msgid "Hostnames" +msgstr "主机名" + +msgid "Hybrid" +msgstr "混合" + +msgid "IKE DH Group" +msgstr "IKE DH 组" + +msgid "IP Addresses" +msgstr "IP 地址" + +msgid "IP address" +msgstr "IP 地址" + +msgid "IPv4" +msgstr "IPv4" + +msgid "IPv4 Firewall" +msgstr "IPv4 防火墙" + +msgid "IPv4 WAN Status" +msgstr "IPv4 WAN 状态" + +msgid "IPv4 address" +msgstr "IPv4 地址" + +msgid "IPv4 and IPv6" +msgstr "IPv4 和 IPv6" + +msgid "IPv4 assignment length" +msgstr "分配 IPv4 长度" + +msgid "IPv4 broadcast" +msgstr "IPv4 广播" + +msgid "IPv4 gateway" +msgstr "IPv4 网关" + +msgid "IPv4 netmask" +msgstr "IPv4 子网掩码" + +msgid "IPv4 only" +msgstr "仅 IPv4" + +msgid "IPv4 prefix" +msgstr "IPv4 地址前缀" + +msgid "IPv4 prefix length" +msgstr "IPv4 地址前缀长度" + +msgid "IPv4-Address" +msgstr "IPv4-地址" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "IPv4-in-IPv4 (RFC2003)" + +msgid "IPv6" +msgstr "IPv6" + +msgid "IPv6 Firewall" +msgstr "IPv6 防火墙" + +msgid "IPv6 Neighbours" +msgstr "IPv6 网上邻居" + +msgid "IPv6 Settings" +msgstr "IPv6 设置" + +msgid "IPv6 ULA-Prefix" +msgstr "IPv6 ULA 前缀" + +msgid "IPv6 WAN Status" +msgstr "IPv6 WAN 状态" + +msgid "IPv6 address" +msgstr "IPv6 地址" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "绑定到本地隧道终点的 IPv6 地址 (可选)" + +msgid "IPv6 assignment hint" +msgstr "IPv6 分配提示" + +msgid "IPv6 assignment length" +msgstr "IPv6 分配长度" + +msgid "IPv6 gateway" +msgstr "IPv6 网关" + +msgid "IPv6 only" +msgstr "仅 IPv6" + +msgid "IPv6 prefix" +msgstr "IPv6 地址前缀" + +msgid "IPv6 prefix length" +msgstr "IPv6 地址前缀长度" + +msgid "IPv6 routed prefix" +msgstr "IPv6 路由前缀" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "IPv6-地址" + +msgid "IPv6-PD" +msgstr "IPv6-PD" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "IPv6-in-IPv4 (RFC4213)" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "IPv6-over-IPv4 (6rd)" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "IPv6-over-IPv4 (6to4)" + +msgid "Identity" +msgstr "鉴权" + +msgid "If checked, 1DES is enaled" +msgstr "选中以启用 1DES" + +msgid "If checked, encryption is disabled" +msgstr "选中以禁用加密" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "用 UUID 来挂载设备" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "用卷标来挂载设备" + +msgid "If unchecked, no default route is configured" +msgstr "留空则不配置默认路由" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "留空则忽略所通告的 DNS 服务器地址" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "如果物理内存不足,闲置数据可自动移到交换区暂存,以提高可用内存。" + +msgid "Ignore /etc/hosts" +msgstr "忽略 /etc/hosts" + +msgid "Ignore interface" +msgstr "忽略此接口" + +msgid "Ignore resolve file" +msgstr "忽略解析文件" + +msgid "Image" +msgstr "固件文件" + +msgid "In" +msgstr "入口" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" +"为了防止对系统的未授权访问,您的请求已被阻止。点击下面的 “继续 »” 来返回上一" +"页。" + +msgid "Inactivity timeout" +msgstr "活动超时" + +msgid "Inbound:" +msgstr "入站:" + +msgid "Info" +msgstr "信息" + +msgid "Initscript" +msgstr "启动脚本" + +msgid "Initscripts" +msgstr "启动脚本" + +msgid "Install" +msgstr "安装" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "安装 iputils-traceroute6 以进行 IPv6 路由追踪" + +msgid "Install package %q" +msgstr "安装软件包 %q" + +msgid "Install protocol extensions..." +msgstr "安装扩展协议..." + +msgid "Installed packages" +msgstr "已安装软件包" + +msgid "Interface" +msgstr "接口" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "接口配置" + +msgid "Interface Overview" +msgstr "接口总览" + +msgid "Interface is reconnecting..." +msgstr "正在重新连接接口..." + +msgid "Interface is shutting down..." +msgstr "正在关闭接口..." + +msgid "Interface name" +msgstr "接口名称" + +msgid "Interface not present or not connected yet." +msgstr "接口不存在或未连接。" + +msgid "Interface reconnected" +msgstr "接口已重新连接" + +msgid "Interface shut down" +msgstr "接口已关闭" + +msgid "Interfaces" +msgstr "接口" + +msgid "Internal" +msgstr "内部" + +msgid "Internal Server Error" +msgstr "内部服务器错误" + +msgid "Invalid" +msgstr "无效" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "无效的 VLAN ID!只有 %d 和 %d 之间的 ID 有效。" + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "无效的 VLAN ID!只允许唯一的 ID。" + +msgid "Invalid username and/or password! Please try again." +msgstr "无效的用户名和/或密码!请重试。" + +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "你尝试刷写的固件与本路由器不兼容,请重新验证固件文件。" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "需要 JavaScript!" + +msgid "Join Network" +msgstr "加入网络" + +msgid "Join Network: Wireless Scan" +msgstr "加入网络: 搜索无线" + +msgid "Joining Network: %q" +msgstr "加入网络: %q" + +msgid "Keep settings" +msgstr "保留配置" + +msgid "Kernel Log" +msgstr "内核日志" + +msgid "Kernel Version" +msgstr "内核版本" + +msgid "Key" +msgstr "密码" + +msgid "Key #%d" +msgstr "密码 #%d" + +msgid "Kill" +msgstr "强制关闭" + +msgid "L2TP" +msgstr "L2TP" + +msgid "L2TP Server" +msgstr "L2TP 服务器" + +msgid "LCP echo failure threshold" +msgstr "LCP 响应故障阈值" + +msgid "LCP echo interval" +msgstr "LCP 响应间隔" + +msgid "LLC" +msgstr "LLC" + +msgid "Label" +msgstr "卷标" + +msgid "Language" +msgstr "语言" + +msgid "Language and Style" +msgstr "语言和界面" + +msgid "Latency" +msgstr "延迟" + +msgid "Leaf" +msgstr "叶节点" + +msgid "Lease time" +msgstr "租期" + +msgid "Lease validity time" +msgstr "有效租期" + +msgid "Leasefile" +msgstr "租约文件" + +msgid "Leasetime remaining" +msgstr "剩余租期" + +msgid "Leave empty to autodetect" +msgstr "留空则自动探测" + +msgid "Leave empty to use the current WAN address" +msgstr "留空则使用当前 WAN 地址" + +msgid "Legend:" +msgstr "图例:" + +msgid "Limit" +msgstr "客户数" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "将DNS服务限制到我们提供DNS的子网接口。" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "仅监听这些接口和环回接口。" + +msgid "Line Attenuation (LATN)" +msgstr "线路衰减 (LATN)" + +msgid "Line Mode" +msgstr "线路模式" + +msgid "Line State" +msgstr "线路状态" + +msgid "Line Uptime" +msgstr "线路运行时间" + +msgid "Link On" +msgstr "活动链接" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "" +"将指定域名的解析请求转发到指定的 DNS 服务器 " +"(按照示例填写)" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" +"同一移动域中的 R0KH 列表。
格式: MAC 地址,NAS标识符,128位密钥 (十六进制" +"字符串)。
在从初始移动域关联期间使用的 R0KH 中请求 PMK-R1 密钥时,该列表" +"用于将 R0KH-ID (NAS标识符)映射到目标 MAC 地址。" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" +"同一移动域中的 R1KH 列表。
格式: MAC地址,R1KH-ID (包含冒号的6个八位字" +"节),128位密钥 (十六进制字符串)。
当从 R0KH 发送 PMK-R1 键时,此列表用于" +"将 R1KH-ID 映射到目标 MAC 地址。这也是可以请求 PMK-R1 键的 MD 中授权的 R1KH " +"的列表。" + +msgid "List of SSH key files for auth" +msgstr "用于认证的 SSH 密钥文件列表" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "允许 RFC1918 响应的域名列表" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "允许虚假空域名响应的服务器列表" + +msgid "Listen Interfaces" +msgstr "监听接口" + +msgid "Listen Port" +msgstr "监听端口" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "仅监听指定的接口,未指定则监听全部" + +msgid "Listening port for inbound DNS queries" +msgstr "入站 DNS 查询端口" + +msgid "Load" +msgstr "负载" + +msgid "Load Average" +msgstr "平均负载" + +msgid "Loading" +msgstr "加载中" + +msgid "Local IP address to assign" +msgstr "要分配的本地 IP 地址" + +msgid "Local IPv4 address" +msgstr "本地 IPv4 地址" + +msgid "Local IPv6 address" +msgstr "本地 IPv6 地址" + +msgid "Local Service Only" +msgstr "仅本地服务" + +msgid "Local Startup" +msgstr "本地启动脚本" + +msgid "Local Time" +msgstr "本地时间" + +msgid "Local domain" +msgstr "本地域名" + +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "本地域名规则。与此域匹配的名称从不转发,仅从 DHCP 或 HOSTS 文件解析" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "本地域名后缀将添加到 DHCP 和 HOSTS 文件条目" + +msgid "Local server" +msgstr "本地服务器" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "如果有多个 IP 可用,则根据请求来源的子网来本地化主机名" + +msgid "Localise queries" +msgstr "本地化查询" + +msgid "Locked to channel %s used by: %s" +msgstr "信道道已被锁定为 %s,因为该信道被 %s 使用" + +msgid "Log output level" +msgstr "日志记录等级" + +msgid "Log queries" +msgstr "记录查询日志" + +msgid "Logging" +msgstr "日志" + +msgid "Login" +msgstr "登录" + +msgid "Logout" +msgstr "退出" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "信号丢失秒数 (LOSS)" + +msgid "Lowest leased address as offset from the network address." +msgstr "网络地址的起始分配基址。" + +msgid "MAC-Address" +msgstr "MAC-地址" + +msgid "MAC-Address Filter" +msgstr "MAC-地址过滤" + +msgid "MAC-Filter" +msgstr "MAC-过滤" + +msgid "MAC-List" +msgstr "MAC-列表" + +msgid "MAP / LW4over6" +msgstr "MAP / LW4over6" + +msgid "MB/s" +msgstr "MB/s" + +msgid "MD5" +msgstr "MD5" + +msgid "MHz" +msgstr "MHz" + +msgid "MTU" +msgstr "MTU" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "请确认你已经复制过整个根文件系统,例如使用以下命令:" + +msgid "Manual" +msgstr "手动" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "最大可达数据速率 (ATTNDR)" + +msgid "Maximum Rate" +msgstr "最高速率" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "允许的最大 DHCP 租用数" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "允许的最大并发 DNS 查询数" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "允许的最大 EDNS.0 UDP 数据包大小" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "调制解调器就绪的最大等待时间 (秒)" + +msgid "Maximum hold time" +msgstr "最大持续时间" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" +"名称的最大长度为 15 个字符,包括自动协议/网桥前缀 (br-, 6in4-, pppoe- 等等)" + +msgid "Maximum number of leased addresses." +msgstr "最大地址分配数量。" + +msgid "Mbit/s" +msgstr "Mbit/s" + +msgid "Memory" +msgstr "内存" + +msgid "Memory usage (%)" +msgstr "内存使用率 (%)" + +msgid "Metric" +msgstr "跃点数" + +msgid "Minimum Rate" +msgstr "最低速率" + +msgid "Minimum hold time" +msgstr "最低持续时间" + +msgid "Mirror monitor port" +msgstr "数据包镜像监听端口" + +msgid "Mirror source port" +msgstr "数据包镜像源端口" + +msgid "Missing protocol extension for proto %q" +msgstr "缺少协议 %q 的协议扩展" + +msgid "Mobility Domain" +msgstr "移动域" + +msgid "Mode" +msgstr "模式" + +msgid "Model" +msgstr "主机型号" + +msgid "Modem device" +msgstr "调制解调器节点" + +msgid "Modem init timeout" +msgstr "调制解调器初始化超时" + +msgid "Monitor" +msgstr "监听" + +msgid "Mount Entry" +msgstr "挂载项目" + +msgid "Mount Point" +msgstr "挂载点" + +msgid "Mount Points" +msgstr "挂载点" + +msgid "Mount Points - Mount Entry" +msgstr "挂载点 - 存储区" + +msgid "Mount Points - Swap Entry" +msgstr "挂载点 - 交换区" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "配置存储设备挂载到文件系统中的位置和参数" + +msgid "Mount filesystems not specifically configured" +msgstr "自动挂载未专门配置挂载点的分区" + +msgid "Mount options" +msgstr "挂载选项" + +msgid "Mount point" +msgstr "挂载点" + +msgid "Mount swap not specifically configured" +msgstr "自动挂载未专门配置的 Swap 分区" + +msgid "Mounted file systems" +msgstr "已挂载的文件系统" + +msgid "Move down" +msgstr "下移" + +msgid "Move up" +msgstr "上移" + +msgid "Multicast Rate" +msgstr "多播速率" + +msgid "Multicast address" +msgstr "多播地址" + +msgid "NAS ID" +msgstr "NAS ID" + +msgid "NAT-T Mode" +msgstr "NAT-T 模式" + +msgid "NAT64 Prefix" +msgstr "NAT64 前缀" + +msgid "NDP-Proxy" +msgstr "NDP-代理" + +msgid "NT Domain" +msgstr "NT 域" + +msgid "NTP server candidates" +msgstr "候选 NTP 服务器" + +msgid "NTP sync time-out" +msgstr "NTP 同步超时" + +msgid "Name" +msgstr "名称" + +msgid "Name of the new interface" +msgstr "新接口的名称" + +msgid "Name of the new network" +msgstr "新网络的名称" + +msgid "Navigation" +msgstr "导航" + +msgid "Netmask" +msgstr "子网掩码" + +msgid "Network" +msgstr "网络" + +msgid "Network Utilities" +msgstr "网络工具" + +msgid "Network boot image" +msgstr "网络启动镜像" + +msgid "Network without interfaces." +msgstr "无接口的网络。" + +msgid "Next »" +msgstr "下一步 »" + +msgid "No DHCP Server configured for this interface" +msgstr "本接口未配置 DHCP 服务器" + +msgid "No NAT-T" +msgstr "无 NAT-T" + +msgid "No chains in this table" +msgstr "本表中没有链" + +msgid "No files found" +msgstr "未找到文件" + +msgid "No information available" +msgstr "无可用信息" + +msgid "No negative cache" +msgstr "禁用无效信息缓存" + +msgid "No network configured on this device" +msgstr "本设备未配置网络" + +msgid "No network name specified" +msgstr "未指定网络名" + +msgid "No package lists available" +msgstr "无可用软件列表" + +msgid "No password set!" +msgstr "未设置密码!" + +msgid "No rules in this chain" +msgstr "本链没有规则" + +msgid "No zone assigned" +msgstr "未指定区域" + +msgid "Noise" +msgstr "噪声" + +msgid "Noise Margin (SNR)" +msgstr "噪声容限 (SNR)" + +msgid "Noise:" +msgstr "噪声:" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "非抢占 CRC 错误 (CRC_P)" + +msgid "Non-wildcard" +msgstr "非全部地址" + +msgid "None" +msgstr "无" + +msgid "Normal" +msgstr "正常" + +msgid "Not Found" +msgstr "未找到" + +msgid "Not associated" +msgstr "未关联" + +msgid "Not connected" +msgstr "未连接" + +msgid "Note: Configuration files will be erased." +msgstr "注意: 配置文件将被删除。" + +msgid "Note: interface name length" +msgstr "注意: 接口名称长度" + +msgid "Notice" +msgstr "注意" + +msgid "Nslookup" +msgstr "Nslookup" + +msgid "OK" +msgstr "确认" + +msgid "OPKG-Configuration" +msgstr "OPKG-配置" + +msgid "Obfuscated Group Password" +msgstr "混淆组密码" + +msgid "Obfuscated Password" +msgstr "混淆密码" + +msgid "Off-State Delay" +msgstr "关闭时间" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"在此页面,你可以配置网络接口。你可以勾选“桥接接口”,并输入由空格分隔的多个网" +"络接口的名称来桥接多个接口。还可以使用 VLAN 符号 INTERFACE.VLANNR (例如: eth0.1)。" + +msgid "On-State Delay" +msgstr "通电时间" + +msgid "One of hostname or mac address must be specified!" +msgstr "请指定主机名或MAC地址!" + +msgid "One or more fields contain invalid values!" +msgstr "一个或多个选项值有误!" + +msgid "One or more invalid/required values on tab" +msgstr "选项卡上存在一个或多个无效/必需值" + +msgid "One or more required fields have no value!" +msgstr "一个或多个必选项值为空!" + +msgid "Open list..." +msgstr "打开列表..." + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "开放连接 (CISCO AnyConnect)" + +msgid "Operating frequency" +msgstr "工作频率" + +msgid "Option changed" +msgstr "修改的选项" + +msgid "Option removed" +msgstr "移除的选项" + +msgid "Optional" +msgstr "可选" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "可选,设置这个选项会覆盖默认设定的服务器 (tic.sixxs.net)" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "可选,如果你的 SIXXS 账号拥有一个以上的隧道请设置此项." + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "可选,为此 Peer 创建允许 IP 的路由。" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "可选,Peer 的主机。" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "可选,隧道接口的最大传输单元。" + +msgid "Optional. Port of peer." +msgstr "可选,Peer的端口。" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" +"可选,Keep-Alive 消息之间的秒数,默认为 0 (禁用)。如果此设备位于 NAT 之后,建" +"议使用的值为 25。" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "可选,用于传出和传入数据包的 UDP 端口。" + +msgid "Options" +msgstr "选项" + +msgid "Other:" +msgstr "其余:" + +msgid "Out" +msgstr "出口" + +msgid "Outbound:" +msgstr "出站:" + +msgid "Outdoor Channels" +msgstr "户外频道" + +msgid "Output Interface" +msgstr "网络出口" + +msgid "Override MAC address" +msgstr "重设 MAC 地址" + +msgid "Override MTU" +msgstr "重设 MTU" + +msgid "Override TOS" +msgstr "重设 TOS" + +msgid "Override TTL" +msgstr "重设 TTL" + +msgid "Override default interface name" +msgstr "重设默认接口名称" + +msgid "Override the gateway in DHCP responses" +msgstr "重设 DHCP 响应网关" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "重设发送到客户端的子网掩码。" + +msgid "Override the table used for internal routes" +msgstr "重设内部路由表" + +msgid "Overview" +msgstr "总览" + +msgid "Owner" +msgstr "用户名" + +msgid "PAP/CHAP password" +msgstr "PAP/CHAP 密码" + +msgid "PAP/CHAP username" +msgstr "PAP/CHAP 用户名" + +msgid "PID" +msgstr "PID" + +msgid "PIN" +msgstr "PIN" + +msgid "PMK R1 Push" +msgstr "PMK R1 Push" + +msgid "PPP" +msgstr "PPP" + +msgid "PPPoA Encapsulation" +msgstr "PPPoA 封包" + +msgid "PPPoATM" +msgstr "PPPoATM" + +msgid "PPPoE" +msgstr "PPPoE" + +msgid "PPPoSSH" +msgstr "PPPoSSH" + +msgid "PPtP" +msgstr "PPtP" + +msgid "PSID offset" +msgstr "PSID 偏移" + +msgid "PSID-bits length" +msgstr "PSID-bits 长度" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "PTM/EFM (分组传输模式)" + +msgid "Package libiwinfo required!" +msgstr "需要 libiwinfo 软件包!" + +msgid "Package lists are older than 24 hours" +msgstr "软件包列表已超过 24 小时未更新" + +msgid "Package name" +msgstr "软件包名称" + +msgid "Packets" +msgstr "数据包" + +msgid "Part of zone %q" +msgstr "区域 %q" + +msgid "Password" +msgstr "密码" + +msgid "Password authentication" +msgstr "密码验证" + +msgid "Password of Private Key" +msgstr "私有密钥" + +msgid "Password of inner Private Key" +msgstr "内部私钥的密码" + +msgid "Password successfully changed!" +msgstr "密码修改成功!" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "CA 证书路径" + +msgid "Path to Client-Certificate" +msgstr "客户端证书路径" + +msgid "Path to Private Key" +msgstr "私钥路径" + +msgid "Path to executable which handles the button event" +msgstr "处理按键动作的可执行文件路径" + +msgid "Path to inner CA-Certificate" +msgstr "内部CA证书的路径" + +msgid "Path to inner Client-Certificate" +msgstr "内部客户端证书的路径" + +msgid "Path to inner Private Key" +msgstr "内部私钥的路径" + +msgid "Peak:" +msgstr "峰值:" + +msgid "Peer IP address to assign" +msgstr "要分配的 Peer IP 地址" + +msgid "Peers" +msgstr "Peers" + +msgid "Perfect Forward Secrecy" +msgstr "完全正向保密" + +msgid "Perform reboot" +msgstr "执行重启" + +msgid "Perform reset" +msgstr "执行重置" + +msgid "Persistent Keep Alive" +msgstr "持续 Keep-Alive" + +msgid "Phy Rate:" +msgstr "物理速率:" + +msgid "Physical Settings" +msgstr "物理设置" + +msgid "Ping" +msgstr "Ping" + +msgid "Pkts." +msgstr "数据包" + +msgid "Please enter your username and password." +msgstr "请输入用户名和密码。" + +msgid "Policy" +msgstr "策略" + +msgid "Port" +msgstr "端口" + +msgid "Port status:" +msgstr "端口状态:" + +msgid "Power Management Mode" +msgstr "电源管理模式" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "抢占式 CRC 错误 (CRCP_P)" + +msgid "Prefix Delegated" +msgstr "分发前缀" + +msgid "Preshared Key" +msgstr "预共享密钥" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "在指定数量的 LCP 响应故障后假定链路已断开,0 为忽略故障" + +msgid "Prevent listening on these interfaces." +msgstr "不监听这些接口。" + +msgid "Prevents client-to-client communication" +msgstr "禁止客户端间通信" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "Prism2/2.5/3 802.11b 无线网卡" + +msgid "Private Key" +msgstr "私钥" + +msgid "Proceed" +msgstr "执行" + +msgid "Processes" +msgstr "系统进程" + +msgid "Profile" +msgstr "配置文件" + +msgid "Prot." +msgstr "协议" + +msgid "Protocol" +msgstr "协议" + +msgid "Protocol family" +msgstr "协议族" + +msgid "Protocol of the new interface" +msgstr "新接口的协议" + +msgid "Protocol support is not installed" +msgstr "未安装协议支持" + +msgid "Provide NTP server" +msgstr "NTP服务器" + +msgid "Provide new network" +msgstr "添加新网络" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "伪装 Ad-Hoc (ahdemo)" + +msgid "Public Key" +msgstr "公钥" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "分配到此设备的公共前缀,用以分发到客户端。" + +msgid "QMI Cellular" +msgstr "QMI 蜂窝" + +msgid "Quality" +msgstr "质量" + +msgid "R0 Key Lifetime" +msgstr "R0 Key Lifetime" + +msgid "R1 Key Holder" +msgstr "R1 Key Holder" + +msgid "RFC3947 NAT-T mode" +msgstr "RFC3947 NAT-T 模式" + +msgid "RTS/CTS Threshold" +msgstr "RTS/CTS 阈值" + +msgid "RX" +msgstr "接收" + +msgid "RX Rate" +msgstr "接收速率" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "RaLink 802.11%s 无线网卡" + +msgid "Radius-Accounting-Port" +msgstr "Radius 计费端口" + +msgid "Radius-Accounting-Secret" +msgstr "Radius 计费密钥" + +msgid "Radius-Accounting-Server" +msgstr "Radius 计费服务器" + +msgid "Radius-Authentication-Port" +msgstr "Radius 认证端口" + +msgid "Radius-Authentication-Secret" +msgstr "Radius 认证密钥" + +msgid "Radius-Authentication-Server" +msgstr "Radius 认证服务器" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +"根据 /etc/ethers 来配置 DHCP-服务器" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" +"确定要删除此接口?删除操作无法撤销!\\n删除此接口,可能导致无法再访问路由器!" + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" +"确定要删除此无线网络?删除操作无法撤销!\\n删除此无线网络,可能导致无法再访问" +"路由器!" + +msgid "Really reset all changes?" +msgstr "确定要放弃所有更改?" + +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" +"确定要关闭此网络?\\n如果你正在使用此接口连接路由器,关闭此网络可能导致连接断" +"开!" + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" +"确定要关闭接口 \"%s\"?\\n如果你正在使用此接口连接路由器,关闭此网络可能导致" +"连接断开!" + +msgid "Really switch protocol?" +msgstr "确定要切换协议?" + +msgid "Realtime Connections" +msgstr "实时连接" + +msgid "Realtime Graphs" +msgstr "实时信息" + +msgid "Realtime Load" +msgstr "实时负载" + +msgid "Realtime Traffic" +msgstr "实时流量" + +msgid "Realtime Wireless" +msgstr "实时无线" + +msgid "Reassociation Deadline" +msgstr "重关联截止时间" + +msgid "Rebind protection" +msgstr "重绑定保护" + +msgid "Reboot" +msgstr "重启" + +msgid "Rebooting..." +msgstr "重启中..." + +msgid "Reboots the operating system of your device" +msgstr "重启您设备上的系统" + +msgid "Receive" +msgstr "接收" + +msgid "Receiver Antenna" +msgstr "接收天线" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "推荐,Wire Guard 接口的 IP 地址。" + +msgid "Reconnect this interface" +msgstr "重连此接口" + +msgid "Reconnecting interface" +msgstr "重连接口中..." + +msgid "References" +msgstr "引用" + +msgid "Regulatory Domain" +msgstr "无线网络国家区域" + +msgid "Relay" +msgstr "中继" + +msgid "Relay Bridge" +msgstr "中继桥" + +msgid "Relay between networks" +msgstr "网络间中继" + +msgid "Relay bridge" +msgstr "中继桥" + +msgid "Remote IPv4 address" +msgstr "远程 IPv4 地址" + +msgid "Remote IPv4 address or FQDN" +msgstr "远程 IPv4 地址或 FQDN" + +msgid "Remove" +msgstr "移除" + +msgid "Repeat scan" +msgstr "重新扫描" + +msgid "Replace entry" +msgstr "重置条目" + +msgid "Replace wireless configuration" +msgstr "重置无线配置" + +msgid "Request IPv6-address" +msgstr "请求 IPv6 地址" + +msgid "Request IPv6-prefix of length" +msgstr "请求指定长度的 IPv6 前缀" + +msgid "Require TLS" +msgstr "必须使用 TLS" + +msgid "Required" +msgstr "必须" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "某些 ISP 需要,例如: 同轴线网络 DOCSIS 3" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "必须,此接口的 Base64 编码私钥。" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" +"必须,允许该 Peer 在隧道中使用的 IP 地址和前缀,通常是该 Peer 的隧道 IP 地址" +"和通过隧道的路由网络。" + +msgid "Required. Public key of peer." +msgstr "必须,Peer的公钥。" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" +"需要 wpad/hostapd 的完整版本和 WiFi 驱动程序的支持
(截至 2017 年 2 月: " +"ath9k 和 ath10k,或者 LEDE 的 mwlwifi 和 mt76)" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "需要上级支持 DNSSEC,验证未签名的域响应确实是来自未签名的域。" + +msgid "Reset" +msgstr "复位" + +msgid "Reset Counters" +msgstr "复位计数器" + +msgid "Reset to defaults" +msgstr "恢复到出厂设置" + +msgid "Resolv and Hosts Files" +msgstr "HOSTS 和解析文件" + +msgid "Resolve file" +msgstr "解析文件" + +msgid "Restart" +msgstr "重启" + +msgid "Restart Firewall" +msgstr "重启防火墙" + +msgid "Restore backup" +msgstr "恢复配置" + +msgid "Reveal/hide password" +msgstr "显示/隐藏 密码" + +msgid "Revert" +msgstr "放弃" + +msgid "Root" +msgstr "Root" + +msgid "Root directory for files served via TFTP" +msgstr "TFTP 服务器的根目录" + +msgid "Root preparation" +msgstr "根目录准备" + +msgid "Route Allowed IPs" +msgstr "路由允许的 IP" + +msgid "Route type" +msgstr "路由类型" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "下行接口的路由 IPv6 前缀" + +msgid "Router Advertisement-Service" +msgstr "路由器广告服务" + +msgid "Router Password" +msgstr "主机密码" + +msgid "Routes" +msgstr "路由表" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "路由表描述了数据包的可达路径。" + +msgid "Run a filesystem check before mounting the device" +msgstr "挂载设备前运行文件系统检查" + +msgid "Run filesystem check" +msgstr "文件系统检查" + +msgid "SHA256" +msgstr "SHA256" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "SIXXS 仅支持 TIC,对于使用 IP 协议 41 (RFC4213) 的静态隧道,使用 6in4" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "SIXXS-handle[/Tunnel-ID]" + +msgid "SNR" +msgstr "SNR" + +msgid "SSH Access" +msgstr "SSH 访问" + +msgid "SSH server address" +msgstr "SSH 服务器地址" + +msgid "SSH server port" +msgstr "SSH 服务器端口" + +msgid "SSH username" +msgstr "SSH 用户名" + +msgid "SSH-Keys" +msgstr "SSH-密钥" + +msgid "SSID" +msgstr "SSID" + +msgid "Save" +msgstr "保存" + +msgid "Save & Apply" +msgstr "保存&应用" + +msgid "Save & Apply" +msgstr "保存&应用" + +msgid "Scan" +msgstr "搜索" + +msgid "Scheduled Tasks" +msgstr "计划任务" + +msgid "Section added" +msgstr "添加的区域" + +msgid "Section removed" +msgstr "移除的区域" + +msgid "See \"mount\" manpage for details" +msgstr "详参 \"mount\" 联机帮助" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "定时发送 LCP 响应 (秒),仅在结合了故障阈值时有效" + +msgid "Separate Clients" +msgstr "隔离客户端" + +msgid "Separate WDS" +msgstr "隔离WDS" + +msgid "Server Settings" +msgstr "服务器设置" + +msgid "Server password" +msgstr "服务器密码" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "服务器密码,如果用户名包含隧道 ID 则在此填写独立的密码" + +msgid "Server username" +msgstr "服务器用户名" + +msgid "Service Name" +msgstr "服务名" + +msgid "Service Type" +msgstr "服务类型" + +msgid "Services" +msgstr "服务" + +msgid "Set up Time Synchronization" +msgstr "设置时间同步" + +msgid "Setup DHCP Server" +msgstr "配置 DHCP 服务器" + +msgid "Severely Errored Seconds (SES)" +msgstr "严重误码秒 (SES)" + +msgid "Short GI" +msgstr "Short GI" + +msgid "Show current backup file list" +msgstr "显示当前文件备份列表" + +msgid "Shutdown this interface" +msgstr "关闭此接口" + +msgid "Shutdown this network" +msgstr "关闭此网络" + +msgid "Signal" +msgstr "信号" + +msgid "Signal Attenuation (SATN)" +msgstr "信号衰减 (SATN)" + +msgid "Signal:" +msgstr "信号:" + +msgid "Size" +msgstr "大小" + +msgid "Size (.ipk)" +msgstr "大小 (.ipk)" + +msgid "Skip" +msgstr "跳过" + +msgid "Skip to content" +msgstr "跳到内容" + +msgid "Skip to navigation" +msgstr "跳转到导航" + +msgid "Slot time" +msgstr "时隙" + +msgid "Software" +msgstr "软件包" + +msgid "Software VLAN" +msgstr "软件 VLAN" + +msgid "Some fields are invalid, cannot save values!" +msgstr "一些项目的值无效,无法保存!" + +msgid "Sorry, the object you requested was not found." +msgstr "对不起,请求的目标未找到。" + +msgid "Sorry, the server encountered an unexpected error." +msgstr "对不起,服务器遇到未知错误。" + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" +"抱歉,您的设备暂不支持 Sysupgrade 升级,需手动更新固件。请参考 Wiki 中关于此" +"设备的固件更新说明。" + +msgid "Sort" +msgstr "排序" + +msgid "Source" +msgstr "源地址" + +msgid "Source routing" +msgstr "源路由" + +msgid "Specifies the button state to handle" +msgstr "指定要处理的按键状态" + +msgid "Specifies the directory the device is attached to" +msgstr "指定设备的挂载目录" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "指定 Dropbear 的监听端口" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "指定假设主机已丢失的最大失败 ARP 请求数" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "指定假设主机已丢失的最大时间 (秒)" + +msgid "Specify a TOS (Type of Service)." +msgstr "指定 TOS (服务类型)。" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "为封装数据包设置 TTL (生存时间),缺省值: 64" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "设置 MTU (最大传输单位),缺省值: 1280 bytes" + +msgid "Specify the secret encryption key here." +msgstr "在此指定密钥。" + +# 关联了 启动项 和 接口>LAN>DHCP服务器>网址分配基址 +msgid "Start" +msgstr "开始" + +msgid "Start priority" +msgstr "启动优先级" + +msgid "Startup" +msgstr "启动项" + +msgid "Static IPv4 Routes" +msgstr "静态 IPv4 路由" + +msgid "Static IPv6 Routes" +msgstr "静态 IPv6 路由" + +msgid "Static Leases" +msgstr "静态地址分配" + +msgid "Static Routes" +msgstr "静态路由" + +msgid "Static WDS" +msgstr "静态WDS" + +msgid "Static address" +msgstr "静态地址" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" +"静态租约用于给 DHCP 客户端分配固定的 IP 地址和主机标识。只有指定的主机才能连" +"接,并且接口须为非动态配置。" + +msgid "Status" +msgstr "状态" + +msgid "Stop" +msgstr "关闭" + +msgid "Strict order" +msgstr "严谨查序" + +msgid "Submit" +msgstr "提交" + +msgid "Suppress logging" +msgstr "不记录日志" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "不记录这些协议的常规操作日志。" + +msgid "Swap" +msgstr "交换区" + +msgid "Swap Entry" +msgstr "交换项目" + +msgid "Switch" +msgstr "交换机" + +msgid "Switch %q" +msgstr "交换机 %q" + +msgid "Switch %q (%s)" +msgstr "交换机 %q (%s)" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "交换机 %q 具有未知的拓扑结构 - VLAN 设置可能不正确。" + +msgid "Switch VLAN" +msgstr "交换机 VLAN" + +msgid "Switch protocol" +msgstr "切换协议" + +msgid "Sync with browser" +msgstr "同步浏览器时间" + +msgid "Synchronizing..." +msgstr "同步中..." + +msgid "System" +msgstr "系统" + +msgid "System Log" +msgstr "系统日志" + +msgid "System Properties" +msgstr "系统属性" + +msgid "System log buffer size" +msgstr "系统日志缓冲区大小" + +msgid "TCP:" +msgstr "TCP:" + +msgid "TFTP Settings" +msgstr "TFTP设置" + +msgid "TFTP server root" +msgstr "TFTP服务器根目录" + +msgid "TX" +msgstr "发送" + +msgid "TX Rate" +msgstr "发送速率" + +msgid "Table" +msgstr "表" + +msgid "Target" +msgstr "对象" + +msgid "Target network" +msgstr "目标网络" + +msgid "Terminate" +msgstr "关闭" + +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" +"设备配置区域可配置无线的硬件参数,比如信道、发射功率或发射天线 (如果" +"此无线模块硬件支持多 SSID,则全部SSID共用此设备配置)。接口配置区域则" +"可配置此网络的工作模式和加密等。" + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "软件包 libiwinfo-lua 未安装。必需安装此组件以配置无线!" + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "HE.net 客户端更新设置已经被改变,您现在必须使用用户名代替用户 ID!" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "远程隧道端的 IPv4 地址或完整域名。" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "运营商特定的 IPv6 前缀,通常以 :: 为结尾" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" +"合法字符: A-Z, a-z, 0-9_" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "由于以下错误,配置文件无法被加载:" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "存储器或分区的设备节点,(例如: /dev/sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"用于格式化存储器的文件系统,(例如: ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" +"固件已上传,请注意核对文件大小和校验值!
点击下面的“继续”开始刷写,刷新" +"过程中切勿断电!" + +msgid "The following changes have been committed" +msgstr "以下更改已提交" + +msgid "The following changes have been reverted" +msgstr "以下更改已放弃" + +msgid "The following rules are currently active on this system." +msgstr "系统中的活跃连接。" + +msgid "The given network name is not unique" +msgstr "给定的网络名重复" + +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "本机的硬件不支持多 SSID,如果继续,现有配置将被替换。" + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "IPv4 前缀长度 (bit),其余的用在 IPv6 地址。" + +msgid "The length of the IPv6 prefix in bits" +msgstr "IPv6 前缀长度 (bit)" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "所创建隧道的本地 IPv4 地址 (可选)。" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" +"本设备可以划分为多个 VLAN,并支持电脑间的直" +"接通讯。VLAN 也常用于分割不同网段。默认通常" +"是一条上行端口连接 ISP,其余端口为本地子网。" + +msgid "The selected protocol needs a device assigned" +msgstr "所选的协议需要分配设备" + +msgid "The submitted security token is invalid or already expired!" +msgstr "提交的安全令牌无效或已过期!" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "系统正在删除配置分区,完成后会自动重启。" + +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"正在刷新系统...
切勿关闭电源! DO NOT POWER OFF THE DEVICE!
等待数分" +"钟后即可尝试重新连接到路由。您可能需要更改计算机的 IP 地址以重新连接。" + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "隧道端点在 NAT 之后,默认为禁用,仅适用于 AYIYA" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "不支持所上传的文件格式。请确认选择的文件无误。" + +msgid "There are no active leases." +msgstr "没有已分配的租约。" + +msgid "There are no pending changes to apply!" +msgstr "没有待生效的更改!" + +msgid "There are no pending changes to revert!" +msgstr "没有可放弃的更改!" + +msgid "There are no pending changes!" +msgstr "没有待生效的更改!" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "尚未分配设备,请在“物理设置”选项卡中选择网络设备" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "尚未设置密码。请为 Root 用户设置密码以保护主机并开启 SSH。" + +msgid "This IPv4 address of the relay" +msgstr "中继的 IPv4 地址" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" +"此文件包含类似于 'server=/domain/1.2.3.4' 或 'server=1.2.3.4' 的行,用于解析" +"特定域名或指定上游 DNS 服务器。" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" +"系统升级时要保存的配置文件和目录的清单。目录 /etc/config/ 内修改过的文件以及" +"部分其他配置会被自动保存。" + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "如果更新密钥没有设置的话,隧道的“更新密钥”或者账户密码必须填写。" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "启动脚本插入到 'exit 0' 之前即可随系统启动运行。" + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "隧道代理分配的本地终端地址,通常以 :2 结尾" + +msgid "" +"This is the only DHCP in the local network" +msgstr "这是内网中唯一的 DHCP 服务器" + +msgid "This is the plain username for logging into the account" +msgstr "登录账户时填写的用户名" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "这是隧道代理分配给你的路由前缀,供客户端使用" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "自定义系统 Crontab 中的计划任务。" + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "这通常是隧道代理所管理的最近的 PoP 的地址" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "系统中正在运行的进程和其状态信息。" + +msgid "This page allows the configuration of custom button actions" +msgstr "自定义按键动作。" + +msgid "This page gives an overview over currently active network connections." +msgstr "活跃的网络连接概况。" + +msgid "This section contains no values yet" +msgstr "尚无任何配置" + +msgid "Time Synchronization" +msgstr "时间同步" + +msgid "Time Synchronization is not configured yet." +msgstr "尚未配置时间同步" + +msgid "Timezone" +msgstr "时区" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "上传备份存档以恢复配置。" + +msgid "Tone" +msgstr "Tone" + +msgid "Total Available" +msgstr "可用数" + +msgid "Traceroute" +msgstr "路由追踪" + +msgid "Traffic" +msgstr "流量" + +msgid "Transfer" +msgstr "传输" + +msgid "Transmission Rate" +msgstr "传送速率" + +msgid "Transmit" +msgstr "传送" + +msgid "Transmit Power" +msgstr "无线电功率" + +msgid "Transmitter Antenna" +msgstr "传送天线" + +msgid "Trigger" +msgstr "触发" + +msgid "Trigger Mode" +msgstr "触发模式" + +msgid "Tunnel ID" +msgstr "隧道 ID" + +msgid "Tunnel Interface" +msgstr "隧道接口" + +msgid "Tunnel Link" +msgstr "隧道链接" + +msgid "Tunnel broker protocol" +msgstr "隧道协议" + +msgid "Tunnel setup server" +msgstr "隧道配置服务器" + +msgid "Tunnel type" +msgstr "隧道类型" + +msgid "Turbo Mode" +msgstr "Turbo模式" + +msgid "Tx-Power" +msgstr "传输功率" + +msgid "Type" +msgstr "类型" + +msgid "UDP:" +msgstr "UDP:" + +msgid "UMTS only" +msgstr "仅 UMTS (WCDMA)" + +msgid "UMTS/GPRS/EV-DO" +msgstr "UMTS/GPRS/EV-DO" + +msgid "USB Device" +msgstr "USB 设备" + +msgid "USB Ports" +msgstr "USB 接口" + +msgid "UUID" +msgstr "UUID" + +msgid "Unable to dispatch" +msgstr "无法调度" + +msgid "Unavailable Seconds (UAS)" +msgstr "不可用秒数 (UAS)" + +msgid "Unknown" +msgstr "未知" + +msgid "Unknown Error, password not changed!" +msgstr "未知错误,密码未更改!" + +msgid "Unmanaged" +msgstr "不配置协议" + +msgid "Unmount" +msgstr "卸载分区" + +msgid "Unsaved Changes" +msgstr "未保存的配置" + +msgid "Unsupported protocol type." +msgstr "不支持的协议类型" + +msgid "Update lists" +msgstr "刷新列表" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "上传兼容的 Sysupgrade 固件以刷新当前系统。" + +msgid "Upload archive..." +msgstr "上传备份..." + +msgid "Uploaded File" +msgstr "上传的文件" + +msgid "Uptime" +msgstr "运行时间" + +msgid "Use /etc/ethers" +msgstr "使用 /etc/ethers 配置" + +msgid "Use DHCP gateway" +msgstr "使用 DHCP 网关" + +msgid "Use DNS servers advertised by peer" +msgstr "使用端局通告的DNS服务器" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "参考 ISO/IEC 3166 alpha2 国家代码。" + +msgid "Use MTU on tunnel interface" +msgstr "隧道接口的 MTU" + +msgid "Use TTL on tunnel interface" +msgstr "隧道接口的 TTL" + +msgid "Use as external overlay (/overlay)" +msgstr "作为外部 Overlay 使用 (/overlay)" + +msgid "Use as root filesystem (/)" +msgstr "作为根文件系统使用 (/)" + +msgid "Use broadcast flag" +msgstr "使用广播标签" + +msgid "Use builtin IPv6-management" +msgstr "使用内置的 IPv6 管理" + +msgid "Use custom DNS servers" +msgstr "使用自定义的 DNS 服务器" + +msgid "Use default gateway" +msgstr "使用默认网关" + +msgid "Use gateway metric" +msgstr "使用网关跃点" + +msgid "Use routing table" +msgstr "使用路由表" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" +"使用添加来增加新的租约条目。使用MAC-地址鉴别主机,IPv4-" +"地址分配地址,主机名分配标识。" + +msgid "Used" +msgstr "已用" + +msgid "Used Key Slot" +msgstr "启用密码组" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" +"用于两种不同的用途: RADIUS NAS ID 和 802.11r R0KH-ID。普通 WPA(2)-PSK 不需" +"要。" + +msgid "User certificate (PEM encoded)" +msgstr "客户证书 (PEM加密的)" + +msgid "User key (PEM encoded)" +msgstr "客户 Key (PEM加密的)" + +msgid "Username" +msgstr "用户名" + +msgid "VC-Mux" +msgstr "VC-Mux" + +msgid "VDSL" +msgstr "VDSL" + +msgid "VLANs on %q" +msgstr "%q 上的 VLAN" + +msgid "VLANs on %q (%s)" +msgstr "%q (%s) 上的 VLAN" + +msgid "VPN Local address" +msgstr "VPN 本地地址" + +msgid "VPN Local port" +msgstr "VPN 本地端口" + +msgid "VPN Server" +msgstr "VPN 服务器" + +msgid "VPN Server port" +msgstr "VPN 服务器端口" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "VPN 服务器证书的 SHA1 哈希值" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "VPNC (CISCO 3000 和其他 VPN)" + +msgid "Vendor" +msgstr "Vendor" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "请求 DHCP 时发送的 Vendor Class" + +msgid "Verbose" +msgstr "详细" + +msgid "Verbose logging by aiccu daemon" +msgstr "Aiccu 守护程序详细日志" + +msgid "Verify" +msgstr "验证" + +msgid "Version" +msgstr "版本" + +msgid "WDS" +msgstr "WDS" + +msgid "WEP Open System" +msgstr "WEP 开放认证" + +msgid "WEP Shared Key" +msgstr "WEP 共享密钥" + +msgid "WEP passphrase" +msgstr "WEP 密钥" + +msgid "WMM Mode" +msgstr "WMM 多媒体加速" + +msgid "WPA passphrase" +msgstr "WPA 密钥" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"WPA 加密需要安装 wpa_supplicant (客户端模式) 或安装 hostapd (接入点 AP、点对" +"点 Ad-Hoc 模式)。" + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "在 NTP 同步之前等待时间,设置为 0 表示同步之前不等待 (可选)" + +msgid "Waiting for changes to be applied..." +msgstr "正在应用更改..." + +msgid "Waiting for command to complete..." +msgstr "正在执行命令..." + +msgid "Waiting for device..." +msgstr "等待设备..." + +msgid "Warning" +msgstr "警告" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "警告: 有一些未保存的配置将在重启后丢失!" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "是否通过隧道创建 IPv6 缺省路由" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "是否仅路由来自分发前缀的数据包" + +msgid "Width" +msgstr "频宽" + +msgid "WireGuard VPN" +msgstr "WireGuard VPN" + +msgid "Wireless" +msgstr "无线" + +msgid "Wireless Adapter" +msgstr "无线适配器" + +msgid "Wireless Network" +msgstr "无线网络" + +msgid "Wireless Overview" +msgstr "无线概况" + +msgid "Wireless Security" +msgstr "无线安全" + +msgid "Wireless is disabled or not associated" +msgstr "未开启或未关联无线" + +msgid "Wireless is restarting..." +msgstr "重启无线中..." + +msgid "Wireless network is disabled" +msgstr "无线已禁用" + +msgid "Wireless network is enabled" +msgstr "无线网络开关" + +msgid "Wireless restarted" +msgstr "无线已重启" + +msgid "Wireless shut down" +msgstr "无线已关闭" + +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 请求写入系统日志" + +msgid "Write system log to file" +msgstr "将系统日志写入文件" + +msgid "XR Support" +msgstr "XR支持" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"启用或禁用已安装的启动脚本。更改在设备重启后生效。
警告: 如果禁" +"用了必要的启动脚本,比如 \"network\",可能会导致设备无法访问!" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "LUCI 的正常运行需要开启浏览器的 JavaScript 支持。" + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" +"你的 Internet Explorer 已经老到无法正常显示这个页面了!请更新到 IE7 及以上或" +"者使用诸如 Firefox Opera Safari 之类的浏览器。" + +msgid "any" +msgstr "任意" + +msgid "auto" +msgstr "自动" + +msgid "baseT" +msgstr "baseT" + +msgid "bridged" +msgstr "桥接的" + +msgid "create:" +msgstr "创建:" + +msgid "creates a bridge over specified interface(s)" +msgstr "为指定接口创建桥接" + +msgid "dB" +msgstr "dB" + +msgid "dBm" +msgstr "dBm" + +msgid "disable" +msgstr "禁用" + +msgid "disabled" +msgstr "已禁用" + +msgid "expired" +msgstr "过期时间" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "存放 DHCP 租约的文件" + +msgid "forward" +msgstr "转发" + +msgid "full-duplex" +msgstr "全双工" + +msgid "half-duplex" +msgstr "半双工" + +msgid "help" +msgstr "帮助" + +msgid "hidden" +msgstr "隐藏" + +msgid "hybrid mode" +msgstr "混合模式" + +msgid "if target is a network" +msgstr "如果对象是一个网络" + +msgid "input" +msgstr "输入" + +msgid "kB" +msgstr "kB" + +msgid "kB/s" +msgstr "kB/s" + +msgid "kbit/s" +msgstr "kbit/s" + +msgid "local DNS file" +msgstr "本地 DNS 解析文件" + +msgid "minimum 1280, maximum 1480" +msgstr "最小值 1280,最大值 1480" + +msgid "minutes" +msgstr "分钟" + +msgid "no" +msgstr "否" + +msgid "no link" +msgstr "未连接" + +msgid "none" +msgstr "无" + +msgid "not present" +msgstr "不存在" + +msgid "off" +msgstr "关" + +msgid "on" +msgstr "开" + +msgid "open" +msgstr "开放式" + +msgid "overlay" +msgstr "覆盖" + +msgid "relay mode" +msgstr "中继模式" + +msgid "routed" +msgstr "已路由" + +msgid "server mode" +msgstr "服务器模式" + +msgid "stateful-only" +msgstr "有状态的" + +msgid "stateless" +msgstr "无状态的" + +msgid "stateless + stateful" +msgstr "有状态和无状态的" + +msgid "tagged" +msgstr "关联" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "时间单位 (TUs / 1.024ms) [1000-65535]" + +msgid "unknown" +msgstr "未知" + +msgid "unlimited" +msgstr "无限制" + +msgid "unspecified" +msgstr "未指定" + +msgid "unspecified -or- create:" +msgstr "未指定或创建:" + +msgid "untagged" +msgstr "不关联" + +msgid "yes" +msgstr "是" + +msgid "« Back" +msgstr "« 后退" + +#~ msgid "Firewall Mark" +#~ msgstr "防火墙标识" + +#~ msgid "Force link" +#~ msgstr "强制链路" + +#~ msgid "" +#~ "Optional. 32-bit mark for outgoing encrypted packets. Enter value in hex, " +#~ "starting with 0x." +#~ msgstr "" +#~ "可选,传出加密数据包的 32 位标记。请输入十六进制值,以 0x 开" +#~ "头。" + +#~ msgid "" +#~ "Optional. Base64-encoded preshared key. Adds in an additional layer of " +#~ "symmetric-key cryptography for post-quantum resistance." +#~ msgstr "可选,Base64 编码的预共享密钥。" + +#~ msgid "Prefer LTE" +#~ msgstr "首选 LTE" + +#~ msgid "Prefer UMTS" +#~ msgstr "首选 UMTS" + +#~ msgid "Required. Base64-encoded public key of peer." +#~ msgstr "必须,Peer 的 Base64 编码公钥。" + +#~ msgid "" +#~ "Set interface properties regardless of the link carrier (If set, carrier " +#~ "sense events do not invoke hotplug handlers)." +#~ msgstr "" +#~ "无论链路载荷如何都设置接口属性 (如果设置,载荷侦听事件不调用 Hotplug 处理" +#~ "程序)。" + +#~ msgid "Leasetime" +#~ msgstr "租用时间" + +#~ msgid "Optional." +#~ msgstr "可选。" + +#~ msgid "navigation Navigation" +#~ msgstr "导航" + +#~ msgid "skiplink1 Skip to navigation" +#~ msgstr "skiplink1 跳转到导航" + +#~ msgid "skiplink2 Skip to content" +#~ msgstr "skiplink2 跳到内容" + +#~ msgid "AuthGroup" +#~ msgstr "认证组" + +#~ msgid "automatic" +#~ msgstr "自动" + +#~ msgid "An additional network will be created if you leave this checked." +#~ msgstr "如果选中此复选框,则会创建一个附加网络。" + +#~ msgid "An additional network will be created if you leave this unchecked." +#~ msgstr "取消选中将会另外创建一个新网络,而不会覆盖当前网络设置" + +#~ msgid "Join Network: Settings" +#~ msgstr "加入网络:设置" + +#~ msgid "CPU" +#~ msgstr "CPU" + +#~ msgid "Port %d" +#~ msgstr "端口 %d" + +#~ msgid "Port %d is untagged in multiple VLANs!" +#~ msgstr "端口 %d 在多个VLAN中均未关联!" + +#~ msgid "VLAN Interface" +#~ msgstr "VLAN接口" diff --git a/luci-base/po/zh-tw/base.po b/luci-base/po/zh-tw/base.po new file mode 100644 index 000000000..e204aa292 --- /dev/null +++ b/luci-base/po/zh-tw/base.po @@ -0,0 +1,3868 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"PO-Revision-Date: 2014-05-21 10:34+0200\n" +"Last-Translator: omnistack \n" +"Language-Team: none\n" +"Language: zh_TW\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Pootle 2.0.6\n" + +msgid "%s is untagged in multiple VLANs!" +msgstr "" + +msgid "(%d minute window, %d second interval)" +msgstr "(%d 分鐘訊息, %d 秒更新)" + +msgid "(%s available)" +msgstr "(%s 可用)" + +msgid "(empty)" +msgstr "(空白)" + +msgid "(no interfaces attached)" +msgstr "(未連接界面)" + +msgid "-- Additional Field --" +msgstr "-- 更多選項 --" + +msgid "-- Please choose --" +msgstr "-- 請選擇 --" + +msgid "-- custom --" +msgstr "-- 自訂 --" + +msgid "-- match by device --" +msgstr "" + +msgid "-- match by label --" +msgstr "" + +msgid "-- match by uuid --" +msgstr "" + +msgid "1 Minute Load:" +msgstr "1分鐘負載" + +msgid "15 Minute Load:" +msgstr "15分鐘負載" + +msgid "4-character hexadecimal ID" +msgstr "" + +msgid "464XLAT (CLAT)" +msgstr "" + +msgid "5 Minute Load:" +msgstr "5分鐘負載" + +msgid "6-octet identifier as a hex string - no colons" +msgstr "" + +msgid "802.11r Fast Transition" +msgstr "" + +msgid "802.11w Association SA Query maximum timeout" +msgstr "" + +msgid "802.11w Association SA Query retry timeout" +msgstr "" + +msgid "802.11w Management Frame Protection" +msgstr "" + +msgid "802.11w maximum timeout" +msgstr "" + +msgid "802.11w retry timeout" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "DNS query port" +msgstr "DNS 查詢通訊埠" + +msgid "DNS server port" +msgstr "DNS 伺服器通訊埠" + +msgid "" +"DNS servers will be queried in the " +"order of the resolvfile" +msgstr "將會按照指定的順序查詢DNS" + +msgid "ESSID" +msgstr "ESSID" + +msgid "IPv4-Address" +msgstr "IPv4-位置" + +msgid "IPv4-Gateway" +msgstr "IPv4-閘道" + +msgid "IPv4-Netmask" +msgstr "IPv4-遮罩" + +msgid "" +"IPv6-Address or Network " +"(CIDR)" +msgstr "" +"IPv6-位置或網路(CIDR)" + +msgid "IPv6-Gateway" +msgstr "IPv6-閘道" + +msgid "IPv6-Suffix (hex)" +msgstr "" + +msgid "LED Configuration" +msgstr "LED 設定" + +msgid "LED Name" +msgstr "LED 名稱" + +msgid "MAC-Address" +msgstr "MAC-位置" + +msgid "" +"Max. DHCP leases" +msgstr "" +"最大 DHCP 分配數量" + +msgid "" +"Max. EDNS0 packet size" +msgstr "" +"最大 EDNS0 封包大小" + +msgid "Max. concurrent queries" +msgstr "最大並發查詢數" + +msgid "%s - %s" +msgstr "%s - %s" + +msgid "" +"
Note: you need to manually restart the cron service if the crontab file " +"was empty before editing." +msgstr "" + +msgid "A43C + J43 + A43" +msgstr "" + +msgid "A43C + J43 + A43 + V43" +msgstr "" + +msgid "ADSL" +msgstr "" + +msgid "AICCU (SIXXS)" +msgstr "" + +msgid "ANSI T1.413" +msgstr "" + +msgid "APN" +msgstr "APN" + +msgid "AR Support" +msgstr "AR支援" + +msgid "ARP retry threshold" +msgstr "ARP重試門檻" + +msgid "ATM (Asynchronous Transfer Mode)" +msgstr "" + +msgid "ATM Bridges" +msgstr "ATM橋接" + +msgid "ATM Virtual Channel Identifier (VCI)" +msgstr "ATM虛擬通道識別(VCI)" + +msgid "ATM Virtual Path Identifier (VPI)" +msgstr "ATM虛擬路徑識別(VPI)" + +msgid "" +"ATM bridges expose encapsulated ethernet in AAL5 connections as virtual " +"Linux network interfaces which can be used in conjunction with DHCP or PPP " +"to dial into the provider network." +msgstr "" +"ATM橋接是以AAL5協定封裝乙太網路如同虛擬Linux網路界面卡,用於連接DHCP或PPP來撥" +"號連接到網際網路。" + +msgid "ATM device number" +msgstr "ATM裝置號碼" + +msgid "ATU-C System Vendor ID" +msgstr "" + +msgid "AYIYA" +msgstr "" + +msgid "Access Concentrator" +msgstr "接入集線器" + +msgid "Access Point" +msgstr "存取點 (AP)" + +msgid "Action" +msgstr "動作" + +msgid "Actions" +msgstr "動作" + +msgid "Activate this network" +msgstr "啟用此網路" + +msgid "Active IPv4-Routes" +msgstr "啟用 IPv4-路由" + +msgid "Active IPv6-Routes" +msgstr "啟用 IPv6-路由" + +msgid "Active Connections" +msgstr "啟用連線" + +msgid "Active DHCP Leases" +msgstr "已分配的DHCP租用" + +msgid "Active DHCPv6 Leases" +msgstr "已分配的DHCPv6租用" + +msgid "Ad-Hoc" +msgstr "Ad-Hoc" + +msgid "Add" +msgstr "增加" + +msgid "Add local domain suffix to names served from hosts files" +msgstr "添加本地網域微碼到HOSTS檔案" + +msgid "Add new interface..." +msgstr "增加新界面" + +msgid "Additional Hosts files" +msgstr "額外的HOST檔案" + +msgid "Additional servers file" +msgstr "" + +msgid "Address" +msgstr "位置" + +msgid "Address to access local relay bridge" +msgstr "存取本地中繼橋接位置" + +msgid "Administration" +msgstr "管理" + +msgid "Advanced Settings" +msgstr "進階設定" + +msgid "Aggregate Transmit Power(ACTATP)" +msgstr "" + +msgid "Alert" +msgstr "警示" + +msgid "" +"Allocate IP addresses sequentially, starting from the lowest available " +"address" +msgstr "" + +msgid "Allocate IP sequentially" +msgstr "" + +msgid "Allow SSH password authentication" +msgstr "允許 SSH 密碼驗證" + +msgid "Allow all except listed" +msgstr "僅允許列表外" + +msgid "Allow listed only" +msgstr "僅允許列表內" + +msgid "Allow localhost" +msgstr "允許本機" + +msgid "Allow remote hosts to connect to local SSH forwarded ports" +msgstr "允許遠端主機連接到本機SSH轉送通訊埠" + +msgid "Allow root logins with password" +msgstr "允許root登入" + +msgid "Allow the root user to login with password" +msgstr "允許 root 使用者登入" + +msgid "" +"Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services" +msgstr "允許127.0.0.0/8範圍內的上游回應,例如:RBL服務" + +msgid "Allowed IPs" +msgstr "" + +msgid "" +"Also see Tunneling Comparison on SIXXS" +msgstr "" + +msgid "Always announce default router" +msgstr "" + +msgid "Annex" +msgstr "" + +msgid "Annex A + L + M (all)" +msgstr "" + +msgid "Annex A G.992.1" +msgstr "" + +msgid "Annex A G.992.2" +msgstr "" + +msgid "Annex A G.992.3" +msgstr "" + +msgid "Annex A G.992.5" +msgstr "" + +msgid "Annex B (all)" +msgstr "" + +msgid "Annex B G.992.1" +msgstr "" + +msgid "Annex B G.992.3" +msgstr "" + +msgid "Annex B G.992.5" +msgstr "" + +msgid "Annex J (all)" +msgstr "" + +msgid "Annex L G.992.3 POTS 1" +msgstr "" + +msgid "Annex M (all)" +msgstr "" + +msgid "Annex M G.992.3" +msgstr "" + +msgid "Annex M G.992.5" +msgstr "" + +msgid "Announce as default router even if no public prefix is available." +msgstr "" + +msgid "Announced DNS domains" +msgstr "" + +msgid "Announced DNS servers" +msgstr "" + +msgid "Anonymous Identity" +msgstr "" + +msgid "Anonymous Mount" +msgstr "" + +msgid "Anonymous Swap" +msgstr "" + +msgid "Antenna 1" +msgstr "天線 1" + +msgid "Antenna 2" +msgstr "天線 2" + +msgid "Antenna Configuration" +msgstr "天線設定" + +msgid "Any zone" +msgstr "任意區域" + +msgid "Apply" +msgstr "套用" + +msgid "Applying changes" +msgstr "正在套用變更" + +msgid "" +"Assign a part of given length of every public IPv6-prefix to this interface" +msgstr "" + +msgid "Assign interfaces..." +msgstr "分配界面..." + +msgid "" +"Assign prefix parts using this hexadecimal subprefix ID for this interface." +msgstr "" + +msgid "Associated Stations" +msgstr "已連接站點" + +msgid "Atheros 802.11%s Wireless Controller" +msgstr "Atheros 802.11%s 無線控制器" + +msgid "Auth Group" +msgstr "" + +msgid "Authentication" +msgstr "認證" + +msgid "Authentication Type" +msgstr "" + +msgid "Authoritative" +msgstr "授權" + +msgid "Authorization Required" +msgstr "需要授權" + +msgid "Auto Refresh" +msgstr "自動更新" + +msgid "Automatic" +msgstr "" + +msgid "Automatic Homenet (HNCP)" +msgstr "" + +msgid "Automatically check filesystem for errors before mounting" +msgstr "" + +msgid "Automatically mount filesystems on hotplug" +msgstr "" + +msgid "Automatically mount swap on hotplug" +msgstr "" + +msgid "Automount Filesystem" +msgstr "" + +msgid "Automount Swap" +msgstr "" + +msgid "Available" +msgstr "可用" + +msgid "Available packages" +msgstr "可用軟體包" + +msgid "Average:" +msgstr "平均:" + +msgid "B43 + B43C" +msgstr "" + +msgid "B43 + B43C + V43" +msgstr "" + +msgid "BR / DMR / AFTR" +msgstr "" + +msgid "BSSID" +msgstr "BSSID" + +msgid "Back" +msgstr "返回" + +msgid "Back to Overview" +msgstr "返回至總覽" + +msgid "Back to configuration" +msgstr "返回至設定" + +msgid "Back to overview" +msgstr "返回至總覽" + +msgid "Back to scan results" +msgstr "返回至掃描結果" + +msgid "Background Scan" +msgstr "背景搜尋" + +msgid "Backup / Flash Firmware" +msgstr "備份/升級韌體" + +msgid "Backup / Restore" +msgstr "備份/還原" + +msgid "Backup file list" +msgstr "備份檔列表" + +msgid "Bad address specified!" +msgstr "指定了錯誤的位置!" + +msgid "Band" +msgstr "" + +msgid "Behind NAT" +msgstr "" + +msgid "" +"Below is the determined list of files to backup. It consists of changed " +"configuration files marked by opkg, essential base files and the user " +"defined backup patterns." +msgstr "" +"下面是待備份的檔案清單。包含了更改的設定檔案、必要的基本檔案和使用者自訂的備" +"份檔案" + +msgid "Bind interface" +msgstr "" + +msgid "Bind only to specific interfaces rather than wildcard address." +msgstr "" + +msgid "Bind the tunnel to this interface (optional)." +msgstr "" + +msgid "Bitrate" +msgstr "傳輸速率" + +msgid "Bogus NX Domain Override" +msgstr "忽略NX網域解析" + +msgid "Bridge" +msgstr "橋接" + +msgid "Bridge interfaces" +msgstr "橋接介面" + +msgid "Bridge unit number" +msgstr "橋接單位號碼" + +msgid "Bring up on boot" +msgstr "開機自動執行" + +msgid "Broadcom 802.11%s Wireless Controller" +msgstr "Broadcom 802.11%s 無線控制器" + +msgid "Broadcom BCM%04x 802.11 Wireless Controller" +msgstr "Broadcom BCM%04x 802.11 無線控制器" + +msgid "Buffered" +msgstr "已緩衝" + +msgid "" +"Build/distribution specific feed definitions. This file will NOT be " +"preserved in any sysupgrade." +msgstr "" + +msgid "Buttons" +msgstr "按鈕" + +msgid "CA certificate; if empty it will be saved after the first connection." +msgstr "" + +msgid "CPU usage (%)" +msgstr "CPU 使用率 (%)" + +msgid "Cancel" +msgstr "取消" + +msgid "Category" +msgstr "" + +msgid "Chain" +msgstr "鏈" + +msgid "Changes" +msgstr "待修改" + +msgid "Changes applied." +msgstr "修改已套用" + +msgid "Changes the administrator password for accessing the device" +msgstr "修改管理員密碼" + +msgid "Channel" +msgstr "頻道" + +msgid "Check" +msgstr "檢查" + +msgid "Check fileystems before mount" +msgstr "" + +msgid "Check this option to delete the existing networks from this radio." +msgstr "" + +msgid "Checksum" +msgstr "效驗碼" + +msgid "" +"Choose the firewall zone you want to assign to this interface. Select " +"unspecified to remove the interface from the associated zone or " +"fill out the create field to define a new zone and attach the " +"interface to it." +msgstr "" +"選擇你要指定給這介面的防火牆區. 撿選unspecified以便從指定區域除這個" +"介面或者填寫create欄以便定義附加這個介面到一個新的區域上." + +msgid "" +"Choose the network(s) you want to attach to this wireless interface or fill " +"out the create field to define a new network." +msgstr "" +"選擇你要附加到無線網路介面的多個網路或者填寫create 以便定義一個新的" +"網路." + +msgid "Cipher" +msgstr "暗號" + +msgid "Cisco UDP encapsulation" +msgstr "" + +msgid "" +"Click \"Generate archive\" to download a tar archive of the current " +"configuration files. To reset the firmware to its initial state, click " +"\"Perform reset\" (only possible with squashfs images)." +msgstr "" +"按下\"壓縮檔製作\"就能下載目前設定檔的tar格式的壓縮. 要重置回復出廠值,按下" +"\"執行還原\"(可能只對squashfs影像檔有效)" + +msgid "Client" +msgstr "用戶端" + +msgid "Client ID to send when requesting DHCP" +msgstr "當要求DHCP時要傳送的用戶識別碼ID" + +msgid "" +"Close inactive connection after the given amount of seconds, use 0 to " +"persist connection" +msgstr "幾秒後關閉閒置的連線, 打0代表永遠連線" + +msgid "Close list..." +msgstr "關閉清單中..." + +msgid "Collecting data..." +msgstr "收集資料中..." + +msgid "Command" +msgstr "指令" + +msgid "Common Configuration" +msgstr "一般設定" + +msgid "Compression" +msgstr "壓縮" + +msgid "Configuration" +msgstr "設定" + +msgid "Configuration applied." +msgstr "啟用設定" + +msgid "Configuration files will be kept." +msgstr "設定檔將被存檔" + +msgid "Confirmation" +msgstr "再確認" + +msgid "Connect" +msgstr "連線" + +msgid "Connected" +msgstr "已連線" + +msgid "Connection Limit" +msgstr "連線限制" + +msgid "Connection to server fails when TLS cannot be used" +msgstr "" + +msgid "Connections" +msgstr "連線數" + +msgid "Country" +msgstr "國別" + +msgid "Country Code" +msgstr "國別碼" + +msgid "Cover the following interface" +msgstr "覆蓋下列介面" + +msgid "Cover the following interfaces" +msgstr "覆蓋下列這些介面" + +msgid "Create / Assign firewall-zone" +msgstr "建立/指定防火牆作用區" + +msgid "Create Interface" +msgstr "建立介面" + +msgid "Create a bridge over multiple interfaces" +msgstr "在多個介面上建立橋接" + +msgid "Critical" +msgstr "緊急" + +msgid "Cron Log Level" +msgstr "Cron的日誌級別" + +msgid "Custom Interface" +msgstr "自訂介面" + +msgid "Custom delegated IPv6-prefix" +msgstr "" + +msgid "" +"Custom feed definitions, e.g. private feeds. This file can be preserved in a " +"sysupgrade." +msgstr "" + +msgid "Custom feeds" +msgstr "" + +msgid "" +"Customizes the behaviour of the device LEDs if possible." +msgstr "" +"如果可以的話,自定這個設備的動作 LEDs ." + +msgid "DHCP Leases" +msgstr "DHCP的釋放週期" + +msgid "DHCP Server" +msgstr "DHCP伺服器" + +msgid "DHCP and DNS" +msgstr "DHCP 和 DNS" + +msgid "DHCP client" +msgstr "DHCP用戶端" + +msgid "DHCP-Options" +msgstr "DHCP選項" + +msgid "DHCPv6 Leases" +msgstr "DHCPv6版釋放時間週期" + +msgid "DHCPv6 client" +msgstr "" + +msgid "DHCPv6-Mode" +msgstr "" + +msgid "DHCPv6-Service" +msgstr "" + +msgid "DNS" +msgstr "網域名稱伺服器" + +msgid "DNS forwardings" +msgstr "DNS封包轉發" + +msgid "DNS-Label / FQDN" +msgstr "" + +msgid "DNSSEC" +msgstr "" + +msgid "DNSSEC check unsigned" +msgstr "" + +msgid "DPD Idle Timeout" +msgstr "" + +msgid "DS-Lite AFTR address" +msgstr "" + +msgid "DSL" +msgstr "" + +msgid "DSL Status" +msgstr "" + +msgid "DSL line mode" +msgstr "" + +msgid "DUID" +msgstr "DHCP獨立式別碼DUID " + +msgid "Data Rate" +msgstr "" + +msgid "Debug" +msgstr "除錯" + +msgid "Default %d" +msgstr "預設 %d" + +msgid "Default gateway" +msgstr "預設匝道器" + +msgid "Default is stateless + stateful" +msgstr "" + +msgid "Default route" +msgstr "" + +msgid "Default state" +msgstr "預設狀態" + +msgid "Define a name for this network." +msgstr "自訂這個網路名稱" + +msgid "" +"Define additional DHCP options, for example " +"\"6,192.168.2.1,192.168.2.2\" which advertises different DNS " +"servers to clients." +msgstr "" +"定義額外的DHCP選項,例如\"6,192.168.2.1,192.168.2.2\"將會通告不同" +"的DNS伺服器到客戶端." + +msgid "Delete" +msgstr "刪除" + +msgid "Delete this network" +msgstr "刪除這個網路" + +msgid "Description" +msgstr "描述" + +msgid "Design" +msgstr "設計規劃" + +msgid "Destination" +msgstr "目的地" + +msgid "Device" +msgstr "設備" + +msgid "Device Configuration" +msgstr "設定設備" + +msgid "Device is rebooting..." +msgstr "" + +msgid "Device unreachable" +msgstr "" + +msgid "Diagnostics" +msgstr "診斷" + +msgid "Dial number" +msgstr "" + +msgid "Directory" +msgstr "目錄" + +msgid "Disable" +msgstr "關閉" + +msgid "" +"Disable DHCP for " +"this interface." +msgstr "" +" 對這介面關閉 DHCP" + +msgid "Disable DNS setup" +msgstr "關閉DNS設置" + +msgid "Disable Encryption" +msgstr "" + +msgid "Disable HW-Beacon timer" +msgstr "關閉硬體燈號計時器" + +msgid "Disabled" +msgstr "關閉" + +msgid "Disabled (default)" +msgstr "" + +msgid "Discard upstream RFC1918 responses" +msgstr "丟棄上游RFC1918 虛擬IP網路的回應" + +msgid "Displaying only packages containing" +msgstr "僅顯示內含的軟體" + +msgid "Distance Optimization" +msgstr "最佳化距離" + +msgid "Distance to farthest network member in meters." +msgstr "到最遠的網路距離以米表示." + +msgid "Distribution feeds" +msgstr "" + +msgid "Diversity" +msgstr "差異" + +msgid "" +"Dnsmasq is a combined DHCP-Server and DNS-" +"Forwarder for NAT " +"firewalls" +msgstr "" +" Dnsmasq 是組合DHCP-伺服器 和 DNS-轉發給 NAT 防火牆用" + +msgid "Do not cache negative replies, e.g. for not existing domains" +msgstr "不快取拒絕的回應,例如.不存在的網域" + +msgid "Do not forward requests that cannot be answered by public name servers" +msgstr "對不被公用名稱伺服器回應的請求不轉發" + +msgid "Do not forward reverse lookups for local networks" +msgstr "對本地網域不轉發反解析鎖定" + +msgid "Do not send probe responses" +msgstr "不傳送探測回應" + +msgid "Domain required" +msgstr "網域必要的" + +msgid "Domain whitelist" +msgstr "網域白名單" + +msgid "Don't Fragment" +msgstr "" + +msgid "" +"Don't forward DNS-Requests without " +"DNS-Name" +msgstr "" +"若沒 DNS-名稱的話,不要轉發 DNS-請求" + +msgid "Download and install package" +msgstr "下載並安裝軟體包" + +msgid "Download backup" +msgstr "下載備份檔" + +msgid "Dropbear Instance" +msgstr "Dropbear SSH例子" + +msgid "" +"Dropbear offers SSH network shell access " +"and an integrated SCP server" +msgstr "" +"Dropbear 提供 SSH 網路shell命令存取和一個" +"整合的 SCP 伺服器" + +msgid "Dual-Stack Lite (RFC6333)" +msgstr "" + +msgid "Dynamic DHCP" +msgstr "動態 DHCP" + +msgid "Dynamic tunnel" +msgstr "動態隧道" + +msgid "" +"Dynamically allocate DHCP addresses for clients. If disabled, only clients " +"having static leases will be served." +msgstr "幫用戶端動態發配DHCP位址. 假如關閉的話,僅有有靜態位址的用戶端能被服務" + +msgid "EA-bits length" +msgstr "" + +msgid "EAP-Method" +msgstr "EAP協定驗證方式" + +msgid "Edit" +msgstr "編輯" + +msgid "" +"Edit the raw configuration data above to fix any error and hit \"Save\" to " +"reload the page." +msgstr "" + +msgid "Edit this interface" +msgstr "修改這個介面" + +msgid "Edit this network" +msgstr "修改這個網路" + +msgid "Emergency" +msgstr "緊急" + +msgid "Enable" +msgstr "啟用" + +msgid "Enable STP" +msgstr "啟用 STP" + +msgid "Enable HE.net dynamic endpoint update" +msgstr "啟用HE.net服務代管動態更新" + +msgid "Enable IPv6 negotiation" +msgstr "" + +msgid "Enable IPv6 negotiation on the PPP link" +msgstr "啟用PPP連結上的IPv6交涉" + +msgid "Enable Jumbo Frame passthrough" +msgstr "啟用超大訊框透穿" + +msgid "Enable NTP client" +msgstr "起用NTP用戶功能" + +msgid "Enable Single DES" +msgstr "" + +msgid "Enable TFTP server" +msgstr "啟用TFTP伺服器" + +msgid "Enable VLAN functionality" +msgstr "啟用VLAN功能" + +msgid "Enable WPS pushbutton, requires WPA(2)-PSK" +msgstr "" + +msgid "Enable key reinstallation (KRACK) countermeasures" +msgstr "" + +msgid "Enable learning and aging" +msgstr "啟用智慧學習功能" + +msgid "Enable mirroring of incoming packets" +msgstr "" + +msgid "Enable mirroring of outgoing packets" +msgstr "" + +msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." +msgstr "" + +msgid "Enable this mount" +msgstr "啟用掛載點" + +msgid "Enable this swap" +msgstr "啟用swap功能" + +msgid "Enable/Disable" +msgstr "啟用/關閉" + +msgid "Enabled" +msgstr "啟用" + +msgid "" +"Enables fast roaming among access points that belong to the same Mobility " +"Domain" +msgstr "" + +msgid "Enables the Spanning Tree Protocol on this bridge" +msgstr "在橋接器上啟用802.1d Spanning Tree協定" + +msgid "Encapsulation mode" +msgstr "封裝模式" + +msgid "Encryption" +msgstr "加密" + +msgid "Endpoint Host" +msgstr "" + +msgid "Endpoint Port" +msgstr "" + +msgid "Erasing..." +msgstr "刪除中..." + +msgid "Error" +msgstr "錯誤" + +msgid "Errored seconds (ES)" +msgstr "" + +msgid "Ethernet Adapter" +msgstr "乙太網路卡" + +msgid "Ethernet Switch" +msgstr "乙太交換器" + +msgid "Exclude interfaces" +msgstr "" + +msgid "Expand hosts" +msgstr "延伸主機" + +msgid "Expires" +msgstr "過期" + +#, fuzzy +msgid "" +"Expiry time of leased addresses, minimum is 2 minutes (2m)." +msgstr "釋放位址的過期週期,最少兩分鐘 (2m)." + +msgid "External" +msgstr "" + +msgid "External R0 Key Holder List" +msgstr "" + +msgid "External R1 Key Holder List" +msgstr "" + +msgid "External system log server" +msgstr "外部系統日誌伺服器" + +msgid "External system log server port" +msgstr "外部系統日誌伺服器埠號" + +msgid "External system log server protocol" +msgstr "" + +msgid "Extra SSH command options" +msgstr "" + +msgid "Fast Frames" +msgstr "快速迅框群" + +msgid "File" +msgstr "檔案" + +msgid "Filename of the boot image advertised to clients" +msgstr "開機影像檔通知給用戶端" + +msgid "Filesystem" +msgstr "檔案系統" + +msgid "Filter" +msgstr "過濾器" + +msgid "Filter private" +msgstr "私人過濾器" + +msgid "Filter useless" +msgstr "無用過濾器" + +msgid "" +"Find all currently attached filesystems and swap and replace configuration " +"with defaults based on what was detected" +msgstr "" + +msgid "Find and join network" +msgstr "搜尋並加入網路" + +msgid "Find package" +msgstr "搜尋軟體包" + +msgid "Finish" +msgstr "完成" + +msgid "Firewall" +msgstr "防火牆" + +msgid "Firewall Settings" +msgstr "防火牆設定" + +msgid "Firewall Status" +msgstr "防火牆狀況" + +msgid "Firmware File" +msgstr "" + +msgid "Firmware Version" +msgstr "防火牆版本" + +msgid "Fixed source port for outbound DNS queries" +msgstr "外發DNS請求的固定埠號" + +msgid "Flash Firmware" +msgstr "韌體更新" + +msgid "Flash image..." +msgstr "更新映像檔中..." + +msgid "Flash new firmware image" +msgstr "更新新版韌體映像檔" + +msgid "Flash operations" +msgstr "執行更新" + +msgid "Flashing..." +msgstr "更新中..." + +msgid "Force" +msgstr "強制" + +msgid "Force CCMP (AES)" +msgstr "強制CCMP (AES)加密" + +msgid "Force DHCP on this network even if another server is detected." +msgstr "在網路上即使偵測到其它伺服器也強制採用DHCP的設定" + +msgid "Force TKIP" +msgstr "強制TKIP加密" + +msgid "Force TKIP and CCMP (AES)" +msgstr "強制TKIP+CCMP (AES)加密" + +msgid "Force use of NAT-T" +msgstr "" + +msgid "Form token mismatch" +msgstr "" + +msgid "Forward DHCP traffic" +msgstr "轉發DHCP流量" + +msgid "Forward Error Correction Seconds (FECS)" +msgstr "" + +msgid "Forward broadcast traffic" +msgstr "轉發廣播流量" + +msgid "Forwarding mode" +msgstr "轉發模式" + +msgid "Fragmentation Threshold" +msgstr "分片閥值" + +msgid "Frame Bursting" +msgstr "訊框爆速" + +msgid "Free" +msgstr "空閒" + +msgid "Free space" +msgstr "剩餘空間" + +msgid "" +"Further information about WireGuard interfaces and peers at wireguard.io." +msgstr "" + +msgid "GHz" +msgstr "GHz" + +msgid "GPRS only" +msgstr "僅用GPRS" + +msgid "Gateway" +msgstr "匝道器" + +msgid "Gateway ports" +msgstr "匝道器埠號" + +msgid "General Settings" +msgstr "一般設定" + +msgid "General Setup" +msgstr "一般設置" + +msgid "General options for opkg" +msgstr "" + +msgid "Generate Config" +msgstr "" + +msgid "Generate archive" +msgstr "製作壓縮檔" + +msgid "Generic 802.11%s Wireless Controller" +msgstr "通用 802.11%s 無線控制器" + +msgid "Given password confirmation did not match, password not changed!" +msgstr "鍵入的密碼不吻合,密碼將不變更" + +msgid "Global Settings" +msgstr "" + +msgid "Global network options" +msgstr "" + +msgid "Go to password configuration..." +msgstr "到密碼設定頁" + +msgid "Go to relevant configuration page" +msgstr "到相應設定頁" + +msgid "Group Password" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "HE.net password" +msgstr " HE.net密碼" + +msgid "HE.net username" +msgstr "" + +msgid "HT mode (802.11n)" +msgstr "" + +msgid "Handler" +msgstr "多執行緒" + +msgid "Hang Up" +msgstr "斷線" + +msgid "Header Error Code Errors (HEC)" +msgstr "" + +msgid "Heartbeat" +msgstr "" + +msgid "" +"Here you can configure the basic aspects of your device like its hostname or " +"the timezone." +msgstr "在這設置基本樣貌類似像主機名稱或者時區..等" + +msgid "" +"Here you can paste public SSH-Keys (one per line) for SSH public-key " +"authentication." +msgstr "在這裡貼上公用SSH-Keys (每行一個)以便驗證" + +msgid "Hermes 802.11b Wireless Controller" +msgstr "Hermes 802.11b 無線網路控制器" + +msgid "Hide ESSID" +msgstr "隱藏 ESSID" + +msgid "Host" +msgstr "" + +msgid "Host entries" +msgstr "主機項目" + +msgid "Host expiry timeout" +msgstr "過期主機" + +msgid "Host-IP or Network" +msgstr "主機-IP 或網路" + +msgid "Hostname" +msgstr "主機名稱" + +msgid "Hostname to send when requesting DHCP" +msgstr "當請求DHCP服務時傳送的主機名稱" + +msgid "Hostnames" +msgstr "主機名稱" + +msgid "Hybrid" +msgstr "" + +msgid "IKE DH Group" +msgstr "" + +msgid "IP Addresses" +msgstr "" + +msgid "IP address" +msgstr "IP位址" + +msgid "IPv4" +msgstr "IPv4版" + +msgid "IPv4 Firewall" +msgstr "IPv4防火牆" + +msgid "IPv4 WAN Status" +msgstr "IPv4寬頻連線狀態" + +msgid "IPv4 address" +msgstr "IPv4位址" + +msgid "IPv4 and IPv6" +msgstr "IPv4和IPv6" + +msgid "IPv4 assignment length" +msgstr "" + +msgid "IPv4 broadcast" +msgstr "IPv4廣播" + +msgid "IPv4 gateway" +msgstr "IPv4匝道器" + +msgid "IPv4 netmask" +msgstr "IPv4網路遮罩" + +msgid "IPv4 only" +msgstr "僅用IPv4" + +msgid "IPv4 prefix" +msgstr "" + +msgid "IPv4 prefix length" +msgstr "IPv4前綴長度" + +msgid "IPv4-Address" +msgstr "IPv4-位址" + +msgid "IPv4-in-IPv4 (RFC2003)" +msgstr "" + +msgid "IPv6" +msgstr "IPv6版" + +msgid "IPv6 Firewall" +msgstr "IPv6防火牆" + +msgid "IPv6 Neighbours" +msgstr "" + +msgid "IPv6 Settings" +msgstr "" + +msgid "IPv6 ULA-Prefix" +msgstr "" + +msgid "IPv6 WAN Status" +msgstr "IPv6寬頻連線狀態" + +msgid "IPv6 address" +msgstr "IPv6位址" + +msgid "IPv6 address delegated to the local tunnel endpoint (optional)" +msgstr "" + +msgid "IPv6 assignment hint" +msgstr "" + +msgid "IPv6 assignment length" +msgstr "" + +msgid "IPv6 gateway" +msgstr "IPv6匝道器" + +msgid "IPv6 only" +msgstr "僅用IPv6" + +msgid "IPv6 prefix" +msgstr "IPv6字首" + +msgid "IPv6 prefix length" +msgstr "IPv6字首長度" + +msgid "IPv6 routed prefix" +msgstr "" + +msgid "IPv6 suffix" +msgstr "" + +msgid "IPv6-Address" +msgstr "IPv6-位址" + +msgid "IPv6-PD" +msgstr "" + +msgid "IPv6-in-IPv4 (RFC4213)" +msgstr "IPv6包覆在IPv4內(RFC4213)" + +msgid "IPv6-over-IPv4 (6rd)" +msgstr "IPv6凌駕IPv4外(第6版)" + +msgid "IPv6-over-IPv4 (6to4)" +msgstr "IPv6凌駕IPv4外(6轉4)" + +msgid "Identity" +msgstr "特性" + +msgid "If checked, 1DES is enaled" +msgstr "" + +msgid "If checked, encryption is disabled" +msgstr "" + +msgid "" +"If specified, mount the device by its UUID instead of a fixed device node" +msgstr "假若指定的話, 掛載設備的UUID獨立設備識別碼取代固定的設備節點" + +msgid "" +"If specified, mount the device by the partition label instead of a fixed " +"device node" +msgstr "假若指定的話, 掛載設備的分割標籤取代固定的設備節點" + +msgid "If unchecked, no default route is configured" +msgstr "如果沒打勾點選, 將不會設置預設路由" + +msgid "If unchecked, the advertised DNS server addresses are ignored" +msgstr "如果沒打勾點選, 公告的DNS伺服器位址將被忽視" + +msgid "" +"If your physical memory is insufficient unused data can be temporarily " +"swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very " +"slow process as the swap-device cannot be accessed with the high datarates " +"of the RAM." +msgstr "" +"如果你的物理內存不足時,未使用的數據可以是暫時交換到導致更高的交換設備量的可用" +"RAM內.請注意,交換數據是一個非常" +"緩慢的過程,作為交換裝置不能用高數據速率訪問該RAM" + +msgid "Ignore /etc/hosts" +msgstr "" + +msgid "Ignore interface" +msgstr "被忽視的介面" + +msgid "Ignore resolve file" +msgstr "被忽視的解析檔" + +msgid "Image" +msgstr "映像檔" + +msgid "In" +msgstr "輸入" + +msgid "" +"In order to prevent unauthorized access to the system, your request has been " +"blocked. Click \"Continue »\" below to return to the previous page." +msgstr "" + +msgid "Inactivity timeout" +msgstr "閒置過期" + +msgid "Inbound:" +msgstr "輸入" + +msgid "Info" +msgstr "訊息" + +msgid "Initscript" +msgstr "初始化腳本" + +msgid "Initscripts" +msgstr "初始化腳本" + +msgid "Install" +msgstr "安裝" + +msgid "Install iputils-traceroute6 for IPv6 traceroute" +msgstr "" + +msgid "Install package %q" +msgstr "安裝軟體包 %q" + +msgid "Install protocol extensions..." +msgstr "安裝延伸協定中..." + +msgid "Installed packages" +msgstr "安裝軟體包" + +msgid "Interface" +msgstr "介面" + +msgid "Interface %q device auto-migrated from %q to %q." +msgstr "" + +msgid "Interface Configuration" +msgstr "介面設定" + +msgid "Interface Overview" +msgstr "介面預覽" + +msgid "Interface is reconnecting..." +msgstr "介面重連" + +msgid "Interface is shutting down..." +msgstr "介面正在關閉中..." + +msgid "Interface name" +msgstr "" + +msgid "Interface not present or not connected yet." +msgstr "介面尚未出線或者還沒連上" + +msgid "Interface reconnected" +msgstr "介面已重連" + +msgid "Interface shut down" +msgstr "介面關閉" + +msgid "Interfaces" +msgstr "介面" + +msgid "Internal" +msgstr "" + +msgid "Internal Server Error" +msgstr "內部伺服器發生錯誤" + +msgid "Invalid" +msgstr "無效" + +msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." +msgstr "輸入的VLAN ID無效僅有介於 %d 和 %d的被允許" + +msgid "Invalid VLAN ID given! Only unique IDs are allowed" +msgstr "打入的是不正確的VLAN ID!僅有獨一無二的IDs被允許" + +msgid "Invalid username and/or password! Please try again." +msgstr "不正確的用戶名稱和/或者密碼!請再試一次." + +#, fuzzy +msgid "" +"It appears that you are trying to flash an image that does not fit into the " +"flash memory, please verify the image file!" +msgstr "它顯示你正嘗試更新不適用於這個flash記憶體的映像檔,請檢查確認這個映像檔" + +msgid "Java Script required!" +msgstr "" + +msgid "JavaScript required!" +msgstr "需要Java腳本" + +msgid "Join Network" +msgstr "加入網路" + +msgid "Join Network: Wireless Scan" +msgstr "加入網路:無線網路掃描" + +msgid "Joining Network: %q" +msgstr "" + +msgid "Keep settings" +msgstr "保持設定值" + +msgid "Kernel Log" +msgstr "核心日誌" + +msgid "Kernel Version" +msgstr "核心版本" + +msgid "Key" +msgstr "鑰匙" + +msgid "Key #%d" +msgstr "鑰匙 #%d" + +msgid "Kill" +msgstr "刪除" + +msgid "L2TP" +msgstr "L2TP" + +msgid "L2TP Server" +msgstr "L2TP伺服器" + +msgid "LCP echo failure threshold" +msgstr "LCP協定呼叫失敗次數門檻" + +msgid "LCP echo interval" +msgstr "LCP協定呼叫間隔" + +msgid "LLC" +msgstr "LLC邏輯鏈結控制層" + +msgid "Label" +msgstr "標籤" + +msgid "Language" +msgstr "語言" + +msgid "Language and Style" +msgstr "語言和風格" + +msgid "Latency" +msgstr "" + +msgid "Leaf" +msgstr "" + +msgid "Lease time" +msgstr "" + +msgid "Lease validity time" +msgstr "租賃有效時間" + +msgid "Leasefile" +msgstr "租賃檔案" + +msgid "Leasetime remaining" +msgstr "租賃保留時間" + +msgid "Leave empty to autodetect" +msgstr "保持空白以便自動偵測" + +msgid "Leave empty to use the current WAN address" +msgstr "保持空白以便採用現今的寬頻位址" + +msgid "Legend:" +msgstr "圖例:" + +msgid "Limit" +msgstr "限制" + +msgid "Limit DNS service to subnets interfaces on which we are serving DNS." +msgstr "" + +msgid "Limit listening to these interfaces, and loopback." +msgstr "" + +msgid "Line Attenuation (LATN)" +msgstr "" + +msgid "Line Mode" +msgstr "" + +msgid "Line State" +msgstr "" + +msgid "Line Uptime" +msgstr "" + +msgid "Link On" +msgstr "鏈接" + +msgid "" +"List of DNS servers to forward " +"requests to" +msgstr "列出 DNS 伺服器以便轉發請求" + +msgid "" +"List of R0KHs in the same Mobility Domain.
Format: MAC-address,NAS-" +"Identifier,128-bit key as hex string.
This list is used to map R0KH-ID " +"(NAS Identifier) to a destination MAC address when requesting PMK-R1 key " +"from the R0KH that the STA used during the Initial Mobility Domain " +"Association." +msgstr "" + +msgid "" +"List of R1KHs in the same Mobility Domain.
Format: MAC-address,R1KH-ID " +"as 6 octets with colons,128-bit key as hex string.
This list is used " +"to map R1KH-ID to a destination MAC address when sending PMK-R1 key from the " +"R0KH. This is also the list of authorized R1KHs in the MD that can request " +"PMK-R1 keys." +msgstr "" + +msgid "List of SSH key files for auth" +msgstr "" + +msgid "List of domains to allow RFC1918 responses for" +msgstr "列出允許RFC1918文件虛擬IP回應的網域" + +msgid "List of hosts that supply bogus NX domain results" +msgstr "列出供應偽裝NX網域成果的主機群" + +msgid "Listen Interfaces" +msgstr "" + +msgid "Listen Port" +msgstr "" + +msgid "Listen only on the given interface or, if unspecified, on all" +msgstr "只許在給予的介面上聆聽, 如果未指定, 全都允許" + +msgid "Listening port for inbound DNS queries" +msgstr "進入的DNS請求聆聽埠" + +msgid "Load" +msgstr "掛載" + +msgid "Load Average" +msgstr "平均掛載" + +msgid "Loading" +msgstr "掛載中" + +msgid "Local IP address to assign" +msgstr "" + +msgid "Local IPv4 address" +msgstr "本地IPv4位址" + +msgid "Local IPv6 address" +msgstr "本地IPv6位址" + +msgid "Local Service Only" +msgstr "" + +msgid "Local Startup" +msgstr "本地啟動" + +msgid "Local Time" +msgstr "本地時區" + +msgid "Local domain" +msgstr "本地網域" + +#, fuzzy +msgid "" +"Local domain specification. Names matching this domain are never forwarded " +"and are resolved from DHCP or hosts files only" +msgstr "本地網域格式. 僅限符合從未從DHCP或hosts檔轉發和解析的網域" + +msgid "Local domain suffix appended to DHCP names and hosts file entries" +msgstr "本地網域後綴附加倒DHCP名稱和hosts檔項目" + +msgid "Local server" +msgstr "本地伺服器" + +msgid "" +"Localise hostname depending on the requesting subnet if multiple IPs are " +"available" +msgstr "若有多個IP可用, 本地化主機名稱端看請求的子網路而言." + +msgid "Localise queries" +msgstr "本地化網路請求" + +msgid "Locked to channel %s used by: %s" +msgstr "" + +msgid "Log output level" +msgstr "日誌輸出層級" + +msgid "Log queries" +msgstr "日誌查詢" + +msgid "Logging" +msgstr "日誌紀錄中" + +msgid "Login" +msgstr "登入" + +msgid "Logout" +msgstr "登出" + +msgid "Loss of Signal Seconds (LOSS)" +msgstr "" + +msgid "Lowest leased address as offset from the network address." +msgstr "最低的釋放位址從這網路位址的偏移計算" + +msgid "MAC-Address" +msgstr "MAC-位址" + +msgid "MAC-Address Filter" +msgstr "MAC-位址過濾" + +msgid "MAC-Filter" +msgstr "MAC-過濾" + +msgid "MAC-List" +msgstr "MAC-清單" + +msgid "MAP / LW4over6" +msgstr "" + +msgid "MB/s" +msgstr "MB/s" + +msgid "MD5" +msgstr "" + +msgid "MHz" +msgstr "MHz" + +msgid "MTU" +msgstr "最大傳輸單位MTU" + +msgid "" +"Make sure to clone the root filesystem using something like the commands " +"below:" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Max. Attainable Data Rate (ATTNDR)" +msgstr "" + +msgid "Maximum Rate" +msgstr "最快速度" + +msgid "Maximum allowed number of active DHCP leases" +msgstr "允許啟用DHCP釋放的最大數量" + +msgid "Maximum allowed number of concurrent DNS queries" +msgstr "允許同時齊發的DNS請求的最大數量" + +msgid "Maximum allowed size of EDNS.0 UDP packets" +msgstr "允許EDNS.0 協定的UDP封包最大數量" + +msgid "Maximum amount of seconds to wait for the modem to become ready" +msgstr "等待數據機待命的最大秒數" + +msgid "Maximum hold time" +msgstr "可持有最長時間" + +msgid "" +"Maximum length of the name is 15 characters including the automatic protocol/" +"bridge prefix (br-, 6in4-, pppoe- etc.)" +msgstr "" + +msgid "Maximum number of leased addresses." +msgstr "釋放出的位址群最大數量" + +msgid "Mbit/s" +msgstr "Mbit/s" + +msgid "Memory" +msgstr "記憶體" + +msgid "Memory usage (%)" +msgstr "記憶體使用 (%)" + +msgid "Metric" +msgstr "公測單位" + +msgid "Minimum Rate" +msgstr "最低速度" + +msgid "Minimum hold time" +msgstr "可持有的最低時間" + +msgid "Mirror monitor port" +msgstr "" + +msgid "Mirror source port" +msgstr "" + +msgid "Missing protocol extension for proto %q" +msgstr "協定 %q 漏失的延伸協定" + +msgid "Mobility Domain" +msgstr "" + +msgid "Mode" +msgstr "模式" + +msgid "Model" +msgstr "" + +msgid "Modem device" +msgstr "數據機設備" + +msgid "Modem init timeout" +msgstr "數據機初始化終結時間" + +msgid "Monitor" +msgstr "監視" + +msgid "Mount Entry" +msgstr "掛載項目" + +msgid "Mount Point" +msgstr "掛載點" + +msgid "Mount Points" +msgstr "掛載各點" + +msgid "Mount Points - Mount Entry" +msgstr "掛載各點 - 掛載項目" + +msgid "Mount Points - Swap Entry" +msgstr "掛載各點 - 交換項目" + +msgid "" +"Mount Points define at which point a memory device will be attached to the " +"filesystem" +msgstr "掛載各點定義所指定到記憶體設備將會被附載到檔案系統上" + +msgid "Mount filesystems not specifically configured" +msgstr "" + +msgid "Mount options" +msgstr "掛載選項" + +msgid "Mount point" +msgstr "掛載點" + +msgid "Mount swap not specifically configured" +msgstr "" + +msgid "Mounted file systems" +msgstr "已掛載檔案系統" + +msgid "Move down" +msgstr "往下移" + +msgid "Move up" +msgstr "往上移" + +msgid "Multicast Rate" +msgstr "多點群播速度" + +msgid "Multicast address" +msgstr "多點群播位址" + +msgid "NAS ID" +msgstr " 網路附存伺服器ID" + +msgid "NAT-T Mode" +msgstr "" + +msgid "NAT64 Prefix" +msgstr "" + +msgid "NDP-Proxy" +msgstr "" + +msgid "NT Domain" +msgstr "" + +msgid "NTP server candidates" +msgstr "NTP伺服器備選" + +msgid "NTP sync time-out" +msgstr "" + +msgid "Name" +msgstr "名稱" + +msgid "Name of the new interface" +msgstr "新介面的名稱" + +msgid "Name of the new network" +msgstr "新網路的名稱" + +msgid "Navigation" +msgstr "導覽" + +msgid "Netmask" +msgstr "網路遮罩" + +msgid "Network" +msgstr "網路" + +msgid "Network Utilities" +msgstr "網路多項工具" + +msgid "Network boot image" +msgstr "網路開機映像檔" + +msgid "Network without interfaces." +msgstr "尚無任何介面的網路." + +msgid "Next »" +msgstr "下一個 »" + +msgid "No DHCP Server configured for this interface" +msgstr "在這個介面尚無DHCP伺服器" + +msgid "No NAT-T" +msgstr "" + +msgid "No chains in this table" +msgstr "尚未綁在這個表格中" + +msgid "No files found" +msgstr "尚未發現任何檔案" + +msgid "No information available" +msgstr "尚無可運用資訊" + +msgid "No negative cache" +msgstr "尚無拒絕的快取" + +msgid "No network configured on this device" +msgstr "尚無網路設定在這個介面上" + +msgid "No network name specified" +msgstr "尚未指定網路名稱" + +msgid "No package lists available" +msgstr "尚無列出的軟體包可運用" + +msgid "No password set!" +msgstr "尚未設定密碼!" + +msgid "No rules in this chain" +msgstr "尚無規則在這個鏈接上" + +msgid "No zone assigned" +msgstr "尚未指定區碼" + +msgid "Noise" +msgstr "噪音比" + +msgid "Noise Margin (SNR)" +msgstr "" + +msgid "Noise:" +msgstr "噪音比:" + +msgid "Non Pre-emtive CRC errors (CRC_P)" +msgstr "" + +msgid "Non-wildcard" +msgstr "" + +msgid "None" +msgstr "無" + +msgid "Normal" +msgstr "正常" + +msgid "Not Found" +msgstr "尚未發現" + +msgid "Not associated" +msgstr "尚未關聯" + +msgid "Not connected" +msgstr "尚未連線" + +msgid "Note: Configuration files will be erased." +msgstr "注意:設定檔將被刪除." + +msgid "Note: interface name length" +msgstr "" + +msgid "Notice" +msgstr "通知" + +msgid "Nslookup" +msgstr "DNS偵錯Nslookup" + +msgid "OK" +msgstr "行" + +msgid "OPKG-Configuration" +msgstr "OPKG-設定值" + +msgid "Obfuscated Group Password" +msgstr "" + +msgid "Obfuscated Password" +msgstr "" + +msgid "Off-State Delay" +msgstr "關閉狀態延遲" + +msgid "" +"On this page you can configure the network interfaces. You can bridge " +"several interfaces by ticking the \"bridge interfaces\" field and enter the " +"names of several network interfaces separated by spaces. You can also use " +"VLAN notation " +"INTERFACE.VLANNR (e.g.: " +"eth0.1)." +msgstr "" +"在這個頁面你可以設定網路介面. 只要點下這個\"介面群橋接\"而且打入數個以空格分" +"開網路介面的名稱就可以橋接數個介面群. 你也可以使用VLAN 符號INTERFACE.VLANNR (例.如: eth0.1)." + +msgid "On-State Delay" +msgstr "啟用狀態延遲" + +msgid "One of hostname or mac address must be specified!" +msgstr "主機名稱或mac位址任選一個被指定" + +msgid "One or more fields contain invalid values!" +msgstr "有一個以上的欄位包含失效數值!" + +msgid "One or more invalid/required values on tab" +msgstr "" + +msgid "One or more required fields have no value!" +msgstr "有一個以上的欄位缺乏任何數值!" + +msgid "Open list..." +msgstr "開啟清單..." + +msgid "OpenConnect (CISCO AnyConnect)" +msgstr "" + +msgid "Operating frequency" +msgstr "" + +msgid "Option changed" +msgstr "選項已變更" + +msgid "Option removed" +msgstr "選項已移除" + +msgid "Optional" +msgstr "" + +msgid "Optional, specify to override default server (tic.sixxs.net)" +msgstr "" + +msgid "Optional, use when the SIXXS account has more than one tunnel" +msgstr "" + +msgid "" +"Optional. Adds in an additional layer of symmetric-key cryptography for post-" +"quantum resistance." +msgstr "" + +msgid "" +"Optional. Allowed values: 'eui64', 'random', fixed value like '::1' or " +"'::1:2'. When IPv6 prefix (like 'a:b:c:d::') is received from a delegating " +"server, use the suffix (like '::1') to form the IPv6 address ('a:b:c:d::1') " +"for the interface." +msgstr "" + +msgid "Optional. Create routes for Allowed IPs for this peer." +msgstr "" + +msgid "" +"Optional. Host of peer. Names are resolved prior to bringing up the " +"interface." +msgstr "" + +msgid "Optional. Maximum Transmission Unit of tunnel interface." +msgstr "" + +msgid "Optional. Port of peer." +msgstr "" + +msgid "" +"Optional. Seconds between keep alive messages. Default is 0 (disabled). " +"Recommended value if this device is behind a NAT is 25." +msgstr "" + +msgid "Optional. UDP port used for outgoing and incoming packets." +msgstr "" + +msgid "Options" +msgstr "選項" + +msgid "Other:" +msgstr "其它:" + +msgid "Out" +msgstr "出" + +msgid "Outbound:" +msgstr "外連:" + +msgid "Outdoor Channels" +msgstr "室外通道" + +msgid "Output Interface" +msgstr "" + +msgid "Override MAC address" +msgstr "覆蓋MAC位址" + +msgid "Override MTU" +msgstr "覆蓋MTU數值" + +msgid "Override TOS" +msgstr "" + +msgid "Override TTL" +msgstr "" + +msgid "Override default interface name" +msgstr "" + +msgid "Override the gateway in DHCP responses" +msgstr "在DHCP回應中覆蓋匝道器" + +msgid "" +"Override the netmask sent to clients. Normally it is calculated from the " +"subnet that is served." +msgstr "覆蓋傳送到客戶端的網路遮罩. 正常來說它會計算來自魚已存子網路." + +msgid "Override the table used for internal routes" +msgstr "覆蓋之前內部使用的路由表" + +msgid "Overview" +msgstr "預覽" + +msgid "Owner" +msgstr "持有者" + +msgid "PAP/CHAP password" +msgstr "PAP/CHAP驗證密碼" + +msgid "PAP/CHAP username" +msgstr "PAP/CHAP驗證用戶名" + +msgid "PID" +msgstr "PID碼" + +msgid "PIN" +msgstr "PIN碼" + +msgid "PMK R1 Push" +msgstr "" + +msgid "PPP" +msgstr "PPP協定" + +msgid "PPPoA Encapsulation" +msgstr "PPPoA配置" + +msgid "PPPoATM" +msgstr "PPPoATM" + +msgid "PPPoE" +msgstr "PPPoE" + +msgid "PPPoSSH" +msgstr "" + +msgid "PPtP" +msgstr "PPtP點對點VPN虛擬私人隧道協定" + +msgid "PSID offset" +msgstr "" + +msgid "PSID-bits length" +msgstr "" + +msgid "PTM/EFM (Packet Transfer Mode)" +msgstr "" + +msgid "Package libiwinfo required!" +msgstr "軟體包必需有libiwinfo!" + +msgid "Package lists are older than 24 hours" +msgstr "軟體包列表過期24小時" + +msgid "Package name" +msgstr "軟體包名稱" + +msgid "Packets" +msgstr "封包" + +msgid "Part of zone %q" +msgstr "區域 %q 的部分 " + +msgid "Password" +msgstr "密碼" + +msgid "Password authentication" +msgstr "密碼驗證" + +msgid "Password of Private Key" +msgstr "私人金鑰密碼" + +msgid "Password of inner Private Key" +msgstr "" + +msgid "Password successfully changed!" +msgstr "密碼已變更成功!" + +msgid "Password2" +msgstr "" + +msgid "Path to CA-Certificate" +msgstr "CA-證書的路徑" + +msgid "Path to Client-Certificate" +msgstr "用戶端-證書的路徑" + +msgid "Path to Private Key" +msgstr "私人金鑰的路徑" + +msgid "Path to executable which handles the button event" +msgstr "處理按鍵效果可執行檔路徑" + +msgid "Path to inner CA-Certificate" +msgstr "" + +msgid "Path to inner Client-Certificate" +msgstr "" + +msgid "Path to inner Private Key" +msgstr "" + +msgid "Peak:" +msgstr "峰值:" + +msgid "Peer IP address to assign" +msgstr "" + +msgid "Peers" +msgstr "" + +msgid "Perfect Forward Secrecy" +msgstr "" + +msgid "Perform reboot" +msgstr "執行重開" + +msgid "Perform reset" +msgstr "執行重置" + +msgid "Persistent Keep Alive" +msgstr "" + +msgid "Phy Rate:" +msgstr "傳輸率:" + +msgid "Physical Settings" +msgstr "實體設置" + +msgid "Ping" +msgstr "Ping" + +msgid "Pkts." +msgstr "封包數." + +msgid "Please enter your username and password." +msgstr "請輸入你的用戶名稱和密碼" + +msgid "Policy" +msgstr "策略" + +msgid "Port" +msgstr "埠" + +msgid "Port status:" +msgstr "埠狀態:" + +msgid "Power Management Mode" +msgstr "" + +msgid "Pre-emtive CRC errors (CRCP_P)" +msgstr "" + +msgid "Prefix Delegated" +msgstr "" + +msgid "Preshared Key" +msgstr "" + +msgid "" +"Presume peer to be dead after given amount of LCP echo failures, use 0 to " +"ignore failures" +msgstr "假若在給于多次的 LCP 呼叫失敗後終點將死, 使用0忽略失敗" + +msgid "Prevent listening on these interfaces." +msgstr "" + +msgid "Prevents client-to-client communication" +msgstr "防止用戶端對用戶端的通訊" + +msgid "Prism2/2.5/3 802.11b Wireless Controller" +msgstr "Prism2/2.5/3 802.11b 無線控制器" + +msgid "Private Key" +msgstr "" + +msgid "Proceed" +msgstr "前進" + +msgid "Processes" +msgstr "執行緒" + +msgid "Profile" +msgstr "" + +msgid "Prot." +msgstr "協定." + +msgid "Protocol" +msgstr "協定" + +msgid "Protocol family" +msgstr "協定家族" + +msgid "Protocol of the new interface" +msgstr "新介面的協定家族" + +msgid "Protocol support is not installed" +msgstr "支援的協定尚未安裝" + +msgid "Provide NTP server" +msgstr "提供NTP伺服器" + +msgid "Provide new network" +msgstr "提供新網路" + +msgid "Pseudo Ad-Hoc (ahdemo)" +msgstr "偽裝Ad-Hoc (ahdemo模式)" + +msgid "Public Key" +msgstr "" + +msgid "Public prefix routed to this device for distribution to clients." +msgstr "" + +msgid "QMI Cellular" +msgstr "" + +msgid "Quality" +msgstr "品質" + +msgid "R0 Key Lifetime" +msgstr "" + +msgid "R1 Key Holder" +msgstr "" + +msgid "RFC3947 NAT-T mode" +msgstr "" + +msgid "RTS/CTS Threshold" +msgstr "RTS/CTS門檻" + +msgid "RX" +msgstr "接收" + +msgid "RX Rate" +msgstr "接收速率" + +msgid "RaLink 802.11%s Wireless Controller" +msgstr "RaLink 802.11%s 無線控制器" + +msgid "Radius-Accounting-Port" +msgstr "Radius-驗証帳號-埠" + +msgid "Radius-Accounting-Secret" +msgstr "Radius-合法帳號-密碼" + +msgid "Radius-Accounting-Server" +msgstr "Radius-合法帳號-伺服器" + +msgid "Radius-Authentication-Port" +msgstr "Radius-驗証-埠" + +msgid "Radius-Authentication-Secret" +msgstr "Radius-驗証-密碼" + +msgid "Radius-Authentication-Server" +msgstr "Radius-驗証-伺服器" + +msgid "" +"Read /etc/ethers to configure the DHCP-Server" +msgstr "" +" 讀取/etc/ethers 以便設置DHCP-伺服器" + +msgid "" +"Really delete this interface? The deletion cannot be undone!\\nYou might " +"lose access to this device if you are connected via this interface." +msgstr "" +"真的要刪除這介面?無法復元刪除!\n" +"假如你要透過這個介面連線你可能會無法存取這個設備." + +msgid "" +"Really delete this wireless network? The deletion cannot be undone!\\nYou " +"might lose access to this device if you are connected via this network." +msgstr "" +"真的要刪除這個無線網路?無法復元的刪除!\n" +"假如你是透過這個網路連線你可能會無法存取這個設備." + +msgid "Really reset all changes?" +msgstr "確定要重置回復原廠?" + +#, fuzzy +msgid "" +"Really shut down network?\\nYou might lose access to this device if you are " +"connected via this interface." +msgstr "" +"真的要刪除這個網路 ?\n" +"假如你是透過這個介面連線你可能會無法存取這個設備." + +msgid "" +"Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " +"you are connected via this interface." +msgstr "" +"真的要關閉這個介面 \"%s\" ?!\n" +"假如你要透過這個介面連線你可能會無法存取這個設備." + +msgid "Really switch protocol?" +msgstr "確定要更換協定?" + +msgid "Realtime Connections" +msgstr "即時連線" + +msgid "Realtime Graphs" +msgstr "即時圖表" + +msgid "Realtime Load" +msgstr "即時負載" + +msgid "Realtime Traffic" +msgstr "即時流量" + +msgid "Realtime Wireless" +msgstr "即時無線網路" + +msgid "Reassociation Deadline" +msgstr "" + +msgid "Rebind protection" +msgstr "重新綁護" + +msgid "Reboot" +msgstr "重開機" + +msgid "Rebooting..." +msgstr "重開中..." + +msgid "Reboots the operating system of your device" +msgstr "重啟你設備的作業系統" + +msgid "Receive" +msgstr "接收" + +msgid "Receiver Antenna" +msgstr "接收天線" + +msgid "Recommended. IP addresses of the WireGuard interface." +msgstr "" + +msgid "Reconnect this interface" +msgstr "重新連接這個介面" + +msgid "Reconnecting interface" +msgstr "重連這個介面中" + +msgid "References" +msgstr "引用" + +msgid "Regulatory Domain" +msgstr "監管網域" + +msgid "Relay" +msgstr "延遲" + +msgid "Relay Bridge" +msgstr "橋接延遲" + +msgid "Relay between networks" +msgstr "網路間的延遲" + +msgid "Relay bridge" +msgstr "橋接延遲" + +msgid "Remote IPv4 address" +msgstr "遠端IPv4位址" + +msgid "Remote IPv4 address or FQDN" +msgstr "" + +msgid "Remove" +msgstr "移除" + +msgid "Repeat scan" +msgstr "再次掃描" + +msgid "Replace entry" +msgstr "替代項目" + +msgid "Replace wireless configuration" +msgstr "替代性無線設定" + +msgid "Request IPv6-address" +msgstr "" + +msgid "Request IPv6-prefix of length" +msgstr "" + +msgid "Require TLS" +msgstr "" + +msgid "Required" +msgstr "" + +msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" +msgstr "對特定的ISP需要,例如.DOCSIS 3 加速有線電視寬頻網路" + +msgid "Required. Base64-encoded private key for this interface." +msgstr "" + +msgid "" +"Required. IP addresses and prefixes that this peer is allowed to use inside " +"the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " +"routes through the tunnel." +msgstr "" + +msgid "Required. Public key of peer." +msgstr "" + +msgid "" +"Requires the 'full' version of wpad/hostapd and support from the wifi driver " +"
(as of Feb 2017: ath9k and ath10k, in LEDE also mwlwifi and mt76)" +msgstr "" + +msgid "" +"Requires upstream supports DNSSEC; verify unsigned domain responses really " +"come from unsigned domains" +msgstr "" + +msgid "Reset" +msgstr "重置" + +msgid "Reset Counters" +msgstr "重置計數器" + +msgid "Reset to defaults" +msgstr "回復預設值" + +msgid "Resolv and Hosts Files" +msgstr "解析和Hosts檔案" + +msgid "Resolve file" +msgstr "解析檔" + +msgid "Restart" +msgstr "重啟" + +msgid "Restart Firewall" +msgstr "重啟防火牆" + +msgid "Restore backup" +msgstr "還原之前備份設定" + +msgid "Reveal/hide password" +msgstr "明示/隱藏 密碼" + +msgid "Revert" +msgstr "回溯" + +msgid "Root" +msgstr "根" + +msgid "Root directory for files served via TFTP" +msgstr "透過TFTP存取根目錄檔案" + +msgid "Root preparation" +msgstr "" + +msgid "Route Allowed IPs" +msgstr "" + +msgid "Route type" +msgstr "" + +msgid "Routed IPv6 prefix for downstream interfaces" +msgstr "" + +msgid "Router Advertisement-Service" +msgstr "" + +msgid "Router Password" +msgstr "路由器密碼" + +msgid "Routes" +msgstr "路由" + +msgid "" +"Routes specify over which interface and gateway a certain host or network " +"can be reached." +msgstr "路由器指定介面導出到特定主機或者能夠到達的網路." + +msgid "Run a filesystem check before mounting the device" +msgstr "掛載這個設備前先跑系統檢查" + +msgid "Run filesystem check" +msgstr "執行系統檢查" + +msgid "SHA256" +msgstr "" + +msgid "" +"SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " +"use 6in4 instead" +msgstr "" + +msgid "SIXXS-handle[/Tunnel-ID]" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SSH Access" +msgstr "SSH存取" + +msgid "SSH server address" +msgstr "" + +msgid "SSH server port" +msgstr "" + +msgid "SSH username" +msgstr "" + +msgid "SSH-Keys" +msgstr "SSH-金鑰" + +msgid "SSID" +msgstr "基地台服務設定識別碼SSID" + +msgid "Save" +msgstr "保存" + +msgid "Save & Apply" +msgstr "保存並啟用" + +msgid "Save & Apply" +msgstr "保存 & 啟用" + +msgid "Scan" +msgstr "掃描" + +msgid "Scheduled Tasks" +msgstr "排程任務" + +msgid "Section added" +msgstr "新增的區段" + +msgid "Section removed" +msgstr "區段移除" + +msgid "See \"mount\" manpage for details" +msgstr "查看\"mount\"主頁獲取進階資訊" + +msgid "" +"Send LCP echo requests at the given interval in seconds, only effective in " +"conjunction with failure threshold" +msgstr "傳送LCP呼叫請求在這個給予的秒數間隔內, 僅影響關聯到失敗門檻" + +msgid "Separate Clients" +msgstr "分隔用戶端" + +msgid "Separate WDS" +msgstr "分隔WDS中繼" + +msgid "Server Settings" +msgstr "伺服器設定值" + +msgid "Server password" +msgstr "" + +msgid "" +"Server password, enter the specific password of the tunnel when the username " +"contains the tunnel ID" +msgstr "" + +msgid "Server username" +msgstr "" + +msgid "Service Name" +msgstr "服務名稱" + +msgid "Service Type" +msgstr "服務型態" + +msgid "Services" +msgstr "各服務" + +#, fuzzy +msgid "Set up Time Synchronization" +msgstr "安裝校時同步" + +msgid "Setup DHCP Server" +msgstr "安裝DHCP伺服器" + +msgid "Severely Errored Seconds (SES)" +msgstr "" + +msgid "Short GI" +msgstr "" + +msgid "Show current backup file list" +msgstr "顯示現今的備份檔清單" + +msgid "Shutdown this interface" +msgstr "關閉這個介面" + +msgid "Shutdown this network" +msgstr "關閉這個網路" + +msgid "Signal" +msgstr "信號" + +msgid "Signal Attenuation (SATN)" +msgstr "" + +msgid "Signal:" +msgstr "信號:" + +msgid "Size" +msgstr "大小" + +msgid "Size (.ipk)" +msgstr "" + +msgid "Skip" +msgstr "跳過" + +msgid "Skip to content" +msgstr "跳到內容" + +msgid "Skip to navigation" +msgstr "跳到導覽" + +msgid "Slot time" +msgstr "插槽時間" + +msgid "Software" +msgstr "軟體" + +msgid "Software VLAN" +msgstr "" + +msgid "Some fields are invalid, cannot save values!" +msgstr "有些欄位失效, 無法儲存數值!" + +msgid "Sorry, the object you requested was not found." +msgstr "抱歉, 你請求的這物件尚無發現." + +msgid "Sorry, the server encountered an unexpected error." +msgstr "抱歉, 伺服器遭遇非預期的錯誤." + +msgid "" +"Sorry, there is no sysupgrade support present; a new firmware image must be " +"flashed manually. Please refer to the wiki for device specific install " +"instructions." +msgstr "" +"抱歉, 沒有sysupgrade支援出現, 新版韌體映像檔必須手動更新. 請回歸wiki找尋特定" +"設備安裝指引." + +msgid "Sort" +msgstr "分類" + +msgid "Source" +msgstr "來源" + +msgid "Source routing" +msgstr "" + +msgid "Specifies the button state to handle" +msgstr "指定這個按鈕狀態以便操作" + +msgid "Specifies the directory the device is attached to" +msgstr "指定這個設備被附掛到那個目錄" + +msgid "Specifies the listening port of this Dropbear instance" +msgstr "指定這個 Dropbear真實聆聽埠" + +msgid "" +"Specifies the maximum amount of failed ARP requests until hosts are presumed " +"to be dead" +msgstr "指定失敗ARP可請求的最大數量直到駭客主機死亡為止" + +msgid "" +"Specifies the maximum amount of seconds after which hosts are presumed to be " +"dead" +msgstr "指定可請求的最大秒數直到駭客主機死亡為止" + +msgid "Specify a TOS (Type of Service)." +msgstr "" + +msgid "" +"Specify a TTL (Time to Live) for the encapsulating packet other than the " +"default (64)." +msgstr "" + +msgid "" +"Specify an MTU (Maximum Transmission Unit) other than the default (1280 " +"bytes)." +msgstr "" + +msgid "Specify the secret encryption key here." +msgstr "指定加密金鑰在此." + +msgid "Start" +msgstr "啟用" + +msgid "Start priority" +msgstr "啟用優先權順序" + +msgid "Startup" +msgstr "啟動" + +msgid "Static IPv4 Routes" +msgstr "靜態IPv4路由" + +msgid "Static IPv6 Routes" +msgstr "靜態IPv6路由" + +msgid "Static Leases" +msgstr "靜態租約" + +msgid "Static Routes" +msgstr "靜態路由" + +msgid "Static WDS" +msgstr "靜態WDS" + +msgid "Static address" +msgstr "靜態位址" + +msgid "" +"Static leases are used to assign fixed IP addresses and symbolic hostnames " +"to DHCP clients. They are also required for non-dynamic interface " +"configurations where only hosts with a corresponding lease are served." +msgstr "" +"靜態租約是用來指定固定的IP位址和表示的主機名稱給予DHCP用戶端. 它們也需要非動" +"態介面設定值以便獲取相應租約的主機服務." + +msgid "Status" +msgstr "狀態" + +msgid "Stop" +msgstr "停止" + +msgid "Strict order" +msgstr "嚴謹順序" + +msgid "Submit" +msgstr "提交" + +msgid "Suppress logging" +msgstr "" + +msgid "Suppress logging of the routine operation of these protocols" +msgstr "" + +msgid "Swap" +msgstr "" + +msgid "Swap Entry" +msgstr "Swap交換頁項目" + +msgid "Switch" +msgstr "交換器" + +msgid "Switch %q" +msgstr "交換器 %q" + +msgid "Switch %q (%s)" +msgstr "交換器 %q (%s)" + +msgid "" +"Switch %q has an unknown topology - the VLAN settings might not be accurate." +msgstr "" + +msgid "Switch VLAN" +msgstr "" + +msgid "Switch protocol" +msgstr "更換協定" + +msgid "Sync with browser" +msgstr "同步瀏覽器" + +msgid "Synchronizing..." +msgstr "同步中..." + +msgid "System" +msgstr "系統" + +msgid "System Log" +msgstr "系統日誌" + +msgid "System Properties" +msgstr "系統屬性" + +msgid "System log buffer size" +msgstr "系統日誌緩衝大小" + +msgid "TCP:" +msgstr "TCP:" + +msgid "TFTP Settings" +msgstr "TFTP設定" + +msgid "TFTP server root" +msgstr "TFTP 伺服器根" + +msgid "TX" +msgstr "傳送" + +msgid "TX Rate" +msgstr "傳送速度" + +msgid "Table" +msgstr "表格" + +msgid "Target" +msgstr "目標" + +msgid "Target network" +msgstr "" + +msgid "Terminate" +msgstr "中斷" + +#, fuzzy +msgid "" +"The Device Configuration section covers physical settings of the " +"radio hardware such as channel, transmit power or antenna selection which " +"are shared among all defined wireless networks (if the radio hardware is " +"multi-SSID capable). Per network settings like encryption or operation mode " +"are grouped in the Interface Configuration." +msgstr "" +"這個Device Configuration欄位會覆蓋無線射頻硬體的物理設定值,如通道、" +"傳送功率或者天線分享道所有定義的無線網路(假如這個無線射頻硬體是多工-SSID能力" +"的). 每個網路設定像加密或操作模式是被分群在Interface Configuration" +"中." + +msgid "" +"The libiwinfo-lua package is not installed. You must install this " +"component for working wireless configuration!" +msgstr "" +"這 libiwinfo-lua 軟體包尚未安裝. 你必須安裝這個元件以便無線網路設定" +"有作用." + +msgid "" +"The HE.net endpoint update configuration changed, you must now use the plain " +"username instead of the user ID!" +msgstr "" + +msgid "" +"The IPv4 address or the fully-qualified domain name of the remote tunnel end." +msgstr "" + +msgid "" +"The IPv6 prefix assigned to the provider, usually ends with ::" +msgstr "指定到這供應商的IPv6字首, 通常用 ::結尾" + +msgid "" +"The allowed characters are: A-Z, a-z, 0-9 and _" +msgstr "" +"所允許的字元是: A-Z, a-z, 0-9 and " +"_" + +msgid "The configuration file could not be loaded due to the following error:" +msgstr "" + +msgid "" +"The device file of the memory or partition (e.g." +" /dev/sda1)" +msgstr "" +"記憶體的設備檔或者分割區 (e.g. /dev/" +"sda1)" + +msgid "" +"The filesystem that was used to format the memory (e.g. ext3)" +msgstr "" +"這檔案系統適用來格式化記憶體(例.如. " +"ext3)" + +msgid "" +"The flash image was uploaded. Below is the checksum and file size listed, " +"compare them with the original file to ensure data integrity.
Click " +"\"Proceed\" below to start the flash procedure." +msgstr "" +"要刷的映像檔已上傳.下面是這個校驗碼和檔案大小詳列, 用原始檔比對它門以確保資料" +"完整性.
按下面的\"繼續\"便可以開啟更新流程." + +msgid "The following changes have been committed" +msgstr "接下來的修改已經被承諾" + +msgid "The following changes have been reverted" +msgstr "接下來的修改已經被回復" + +msgid "The following rules are currently active on this system." +msgstr "以下的規則現正作用在系統中." + +msgid "The given network name is not unique" +msgstr "輸入的網路名稱非獨一" + +#, fuzzy +msgid "" +"The hardware is not multi-SSID capable and the existing configuration will " +"be replaced if you proceed." +msgstr "如果你繼續的話.這硬體並非多SSID工能並且已存的設定將會被覆蓋." + +msgid "" +"The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " +"addresses." +msgstr "這IPv4開頭以位元計的長度, 剩餘部分將會延用在IPv6位址中." + +msgid "The length of the IPv6 prefix in bits" +msgstr "這IPv6開頭以位元計的長度" + +msgid "The local IPv4 address over which the tunnel is created (optional)." +msgstr "" + +msgid "" +"The network ports on this device can be combined to several VLANs in which computers can " +"communicate directly with each other. VLANs are often used to separate different network " +"segments. Often there is by default one Uplink port for a connection to the " +"next greater network like the internet and other ports for a local network." +msgstr "" +"這設備的網路埠可以被組合到數個 VLAN群, 以便在內的電腦可以直接跟別人互通. VLAN群經常用來分割網路區段. 預設經常會有一個上傳" +"埠來連接到下一個大型網路類似Intenet而其它埠則用來本地區網使用." + +msgid "The selected protocol needs a device assigned" +msgstr "選到的協定需要指定到設備上" + +msgid "The submitted security token is invalid or already expired!" +msgstr "" + +msgid "" +"The system is erasing the configuration partition now and will reboot itself " +"when finished." +msgstr "系統正在刪除設定分割並且當完成時將自行重開." + +#, fuzzy +msgid "" +"The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a " +"few minutes before you try to reconnect. It might be necessary to renew the " +"address of your computer to reach the device again, depending on your " +"settings." +msgstr "" +"系統現正刷機中.
請勿關閉設備!
等待數分鐘直到你重新在連線. 可能需" +"要更新你電腦的位址以便再連設備, 端看你的設定. " + +msgid "" +"The tunnel end-point is behind NAT, defaults to disabled and only applies to " +"AYIYA" +msgstr "" + +msgid "" +"The uploaded image file does not contain a supported format. Make sure that " +"you choose the generic image format for your platform." +msgstr "" +"以上傳的映像檔不包含支援格式. 請確認你選擇的是針對你的平台採用的通用映像檔." + +msgid "There are no active leases." +msgstr "租賃尚未啟動." + +msgid "There are no pending changes to apply!" +msgstr "尚無聽候的修改被採用" + +msgid "There are no pending changes to revert!" +msgstr "尚無聽候的修改被復元!" + +msgid "There are no pending changes!" +msgstr "無聽候的修改!" + +msgid "" +"There is no device assigned yet, please attach a network device in the " +"\"Physical Settings\" tab" +msgstr "尚未指定設備, 請接上一個網路設備在這\"實體設置\"標籤內" + +msgid "" +"There is no password set on this router. Please configure a root password to " +"protect the web interface and enable SSH." +msgstr "路由器尚未設密碼. 請設定root密碼以便保護web介面及啟用SSH." + +msgid "This IPv4 address of the relay" +msgstr "IPv4位址的轉驛" + +msgid "" +"This file may contain lines like 'server=/domain/1.2.3.4' or " +"'server=1.2.3.4' fordomain-specific or full upstream DNS servers." +msgstr "" + +msgid "" +"This is a list of shell glob patterns for matching files and directories to " +"include during sysupgrade. Modified files in /etc/config/ and certain other " +"configurations are automatically preserved." +msgstr "" +"這是shell通用模式清單用來在系統更新時匹配包括的檔案和目錄. 在/etc/config/ 修" +"改檔案和特定其它設定檔將會被自動保留." + +msgid "" +"This is either the \"Update Key\" configured for the tunnel or the account " +"password if no update key has been configured" +msgstr "" + +msgid "" +"This is the content of /etc/rc.local. Insert your own commands here (in " +"front of 'exit 0') to execute them at the end of the boot process." +msgstr "" +"這是 /etc/rc.local 內容. 在這插入自己的指令 (在 'exit 0' 前面)以便在開機流程" +"結尾執行它們." + +msgid "" +"This is the local endpoint address assigned by the tunnel broker, it usually " +"ends with :2" +msgstr "這是由通道代理人指定的本地終端位址, 通常用 :2結尾." + +msgid "" +"This is the only DHCP in the local network" +msgstr "" +"在本地網路中 這是唯一的 DHCP" + +msgid "This is the plain username for logging into the account" +msgstr "" + +msgid "" +"This is the prefix routed to you by the tunnel broker for use by clients" +msgstr "" + +msgid "This is the system crontab in which scheduled tasks can be defined." +msgstr "這是系統預設的例行性工作排程." + +msgid "" +"This is usually the address of the nearest PoP operated by the tunnel broker" +msgstr "這是由通道代理人操作的近端PoP通用位址" + +msgid "" +"This list gives an overview over currently running system processes and " +"their status." +msgstr "這清單提供目前正在執行的系統的執行緒和狀態的預覽." + +msgid "This page allows the configuration of custom button actions" +msgstr "這一頁允許客製化按鍵動作的設定" + +msgid "This page gives an overview over currently active network connections." +msgstr "這一頁提供目前正在活動中網路連線的預覽." + +msgid "This section contains no values yet" +msgstr "這部分尚未有任何數值." + +msgid "Time Synchronization" +msgstr "校時同步" + +msgid "Time Synchronization is not configured yet." +msgstr "校時同步尚未設定." + +msgid "Timezone" +msgstr "時區" + +msgid "" +"To restore configuration files, you can upload a previously generated backup " +"archive here." +msgstr "要復元設定檔, 可以上傳之前製作的備份壓縮檔放這." + +msgid "Tone" +msgstr "" + +msgid "Total Available" +msgstr "全部可用" + +msgid "Traceroute" +msgstr "路由追蹤" + +msgid "Traffic" +msgstr "流量" + +msgid "Transfer" +msgstr "傳輸" + +msgid "Transmission Rate" +msgstr "傳輸速率" + +msgid "Transmit" +msgstr "射頻" + +msgid "Transmit Power" +msgstr "射頻功率" + +msgid "Transmitter Antenna" +msgstr "射頻天線" + +msgid "Trigger" +msgstr "觸發" + +msgid "Trigger Mode" +msgstr "觸發模式" + +msgid "Tunnel ID" +msgstr "通道ID" + +msgid "Tunnel Interface" +msgstr "通道介面" + +msgid "Tunnel Link" +msgstr "" + +msgid "Tunnel broker protocol" +msgstr "" + +msgid "Tunnel setup server" +msgstr "" + +msgid "Tunnel type" +msgstr "" + +msgid "Turbo Mode" +msgstr "渦輪爆衝模式" + +msgid "Tx-Power" +msgstr "傳送-功率" + +msgid "Type" +msgstr "型態" + +msgid "UDP:" +msgstr "UDP:" + +msgid "UMTS only" +msgstr "只用3G UMTS" + +msgid "UMTS/GPRS/EV-DO" +msgstr "UMTS/GPRS/EV-DO" + +msgid "USB Device" +msgstr "USB設備" + +msgid "USB Ports" +msgstr "" + +msgid "UUID" +msgstr "設備通用唯一識別碼UUID" + +msgid "Unable to dispatch" +msgstr "無法發送" + +msgid "Unavailable Seconds (UAS)" +msgstr "" + +msgid "Unknown" +msgstr "未知" + +msgid "Unknown Error, password not changed!" +msgstr "未知錯誤, 密碼尚未改變!" + +msgid "Unmanaged" +msgstr "非託管" + +msgid "Unmount" +msgstr "" + +msgid "Unsaved Changes" +msgstr "尚未存檔的修改" + +msgid "Unsupported protocol type." +msgstr "不支援的協定型態" + +msgid "Update lists" +msgstr "上傳清單" + +msgid "" +"Upload a sysupgrade-compatible image here to replace the running firmware. " +"Check \"Keep settings\" to retain the current configuration (requires a " +"compatible firmware image)." +msgstr "" +"上傳一個sysupgrade-相容的映像檔在這以便替代正執行中的韌體. 勾選\"保持設定\"以" +"保留目前設定值(必須要是OpenWrt/LEDE相容性韌體映像檔)." + +msgid "Upload archive..." +msgstr "上傳壓縮檔..." + +msgid "Uploaded File" +msgstr "檔案已上傳" + +msgid "Uptime" +msgstr "上傳花費時間" + +msgid "Use /etc/ethers" +msgstr "採用 /etc/ethers" + +msgid "Use DHCP gateway" +msgstr "使用DHCP的匝道器" + +msgid "Use DNS servers advertised by peer" +msgstr "使用終端發布的DNS伺服器" + +msgid "Use ISO/IEC 3166 alpha2 country codes." +msgstr "使用Use ISO/IEC 3166 alpha2 國碼." + +msgid "Use MTU on tunnel interface" +msgstr "在通道介面上使用的MTU數值" + +msgid "Use TTL on tunnel interface" +msgstr "在通道介面上使用的TTL存活時間" + +msgid "Use as external overlay (/overlay)" +msgstr "" + +msgid "Use as root filesystem (/)" +msgstr "" + +msgid "Use broadcast flag" +msgstr "當作廣播旗標" + +msgid "Use builtin IPv6-management" +msgstr "" + +msgid "Use custom DNS servers" +msgstr "使用自定的DNS伺服器" + +msgid "Use default gateway" +msgstr "使用預設匝道器" + +msgid "Use gateway metric" +msgstr "使用匝道器公測數" + +msgid "Use routing table" +msgstr "使用路由表" + +msgid "" +"Use the Add Button to add a new lease entry. The MAC-Address indentifies the host, the IPv4-Address specifies to the fixed " +"address to use and the Hostname is assigned as symbolic name to the " +"requesting host. The optional Lease time can be used to set non-" +"standard host-specific lease time, e.g. 12h, 3d or infinite." +msgstr "" +"使用 Add 鍵以便新增一個租賃的項目. 這個 MAC-Address 標誌這" +"個主機, the IPv4-Address 指定固定位址以便使用,Hostname 備指" +"定當作象徵名稱到請求的主機上." + +msgid "Used" +msgstr "已使用" + +msgid "Used Key Slot" +msgstr "已使用的關鍵插槽" + +msgid "" +"Used for two different purposes: RADIUS NAS ID and 802.11r R0KH-ID. Not " +"needed with normal WPA(2)-PSK." +msgstr "" + +msgid "User certificate (PEM encoded)" +msgstr "" + +msgid "User key (PEM encoded)" +msgstr "" + +msgid "Username" +msgstr "用戶名稱" + +msgid "VC-Mux" +msgstr "虛擬電路多工器VC-Mux" + +msgid "VDSL" +msgstr "" + +msgid "VLANs on %q" +msgstr "VLAN 在 %q" + +msgid "VLANs on %q (%s)" +msgstr "VLAN 在 %q (%s)" + +msgid "VPN Local address" +msgstr "" + +msgid "VPN Local port" +msgstr "" + +msgid "VPN Server" +msgstr "VPN伺服器" + +msgid "VPN Server port" +msgstr "" + +msgid "VPN Server's certificate SHA1 hash" +msgstr "" + +msgid "VPNC (CISCO 3000 (and others) VPN)" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor Class to send when requesting DHCP" +msgstr "當請求DHCP封包時要傳送的製造商類別碼" + +msgid "Verbose" +msgstr "" + +msgid "Verbose logging by aiccu daemon" +msgstr "" + +msgid "Verify" +msgstr "確認" + +msgid "Version" +msgstr "版本" + +msgid "WDS" +msgstr "無線分散系統WDS" + +msgid "WEP Open System" +msgstr "WEP 開放系統" + +msgid "WEP Shared Key" +msgstr "WEP 共享金鑰" + +msgid "WEP passphrase" +msgstr "WEP通關密碼" + +msgid "WMM Mode" +msgstr "無線多媒體機制" + +msgid "WPA passphrase" +msgstr "WPA 密碼" + +msgid "" +"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " +"and ad-hoc mode) to be installed." +msgstr "" +"WPA-加密需要 wpa_supplican(終端模式)或者hostapd熱點(對AP或者是 ad-hoc模式)已" +"被安裝." + +msgid "" +"Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" +msgstr "" + +msgid "Waiting for changes to be applied..." +msgstr "等待修改被啟用..." + +msgid "Waiting for command to complete..." +msgstr "等待完整性指令..." + +msgid "Waiting for device..." +msgstr "" + +msgid "Warning" +msgstr "警告" + +msgid "Warning: There are unsaved changes that will get lost on reboot!" +msgstr "" + +msgid "Whether to create an IPv6 default route over the tunnel" +msgstr "" + +msgid "Whether to route only packets from delegated prefixes" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "WireGuard VPN" +msgstr "" + +msgid "Wireless" +msgstr "無線網路" + +msgid "Wireless Adapter" +msgstr "無線網卡" + +msgid "Wireless Network" +msgstr "無線網路" + +msgid "Wireless Overview" +msgstr "無線預覽" + +msgid "Wireless Security" +msgstr "無線安全" + +msgid "Wireless is disabled or not associated" +msgstr "無線被關閉或者尚未關聯" + +msgid "Wireless is restarting..." +msgstr "無線重啟中..." + +msgid "Wireless network is disabled" +msgstr "無線網路已經被關閉" + +msgid "Wireless network is enabled" +msgstr "無線網路已啟用" + +msgid "Wireless restarted" +msgstr "無線網路已重啟" + +msgid "Wireless shut down" +msgstr "無線網路關閉" + +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請求到系統日誌中" + +msgid "Write system log to file" +msgstr "" + +msgid "XR Support" +msgstr "支援XR無線陣列" + +msgid "" +"You can enable or disable installed init scripts here. Changes will applied " +"after a device reboot.
Warning: If you disable essential init " +"scripts like \"network\", your device might become inaccessible!" +msgstr "" +"你可以開啟或關閉初始化指令在這. 修改將會在設備重開後被啟用.
警" +"告: 假如你關閉必要的初始化腳本像\"網路\", 你的設備將可能無法存取!" + +msgid "" +"You must enable Java Script in your browser or LuCI will not work properly." +msgstr "" + +msgid "" +"You must enable JavaScript in your browser or LuCI will not work properly." +msgstr "在瀏覽器你必須啟用JavaScript否則LuCI無法正常運作." + +msgid "" +"Your Internet Explorer is too old to display this page correctly. Please " +"upgrade it to at least version 7 or use another browser like Firefox, Opera " +"or Safari." +msgstr "" + +msgid "any" +msgstr "任意" + +msgid "auto" +msgstr "自動" + +msgid "baseT" +msgstr "baseT" + +msgid "bridged" +msgstr "已橋接" + +msgid "create:" +msgstr "建立:" + +msgid "creates a bridge over specified interface(s)" +msgstr "在指定的介面群上建立橋接" + +msgid "dB" +msgstr "dB" + +msgid "dBm" +msgstr "dBm" + +msgid "disable" +msgstr "關閉" + +msgid "disabled" +msgstr "" + +msgid "expired" +msgstr "過期" + +msgid "" +"file where given DHCP-leases will be stored" +msgstr "" +"當給予DHCP-租賃將" +"會被存檔" + +msgid "forward" +msgstr "轉發" + +msgid "full-duplex" +msgstr "全雙工" + +msgid "half-duplex" +msgstr "半雙工" + +msgid "help" +msgstr "幫助" + +msgid "hidden" +msgstr "隱藏" + +msgid "hybrid mode" +msgstr "" + +msgid "if target is a network" +msgstr "假如目標是某個網路" + +msgid "input" +msgstr "輸入" + +msgid "kB" +msgstr "kB" + +msgid "kB/s" +msgstr "kB/s" + +msgid "kbit/s" +msgstr "kbit/s" + +msgid "local DNS file" +msgstr "本地DNS 檔案" + +msgid "minimum 1280, maximum 1480" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "no" +msgstr "無" + +msgid "no link" +msgstr "無連線" + +msgid "none" +msgstr "無" + +msgid "not present" +msgstr "" + +msgid "off" +msgstr "關閉" + +msgid "on" +msgstr "開啟" + +msgid "open" +msgstr "打開" + +msgid "overlay" +msgstr "" + +msgid "relay mode" +msgstr "" + +msgid "routed" +msgstr "路由" + +msgid "server mode" +msgstr "" + +msgid "stateful-only" +msgstr "" + +msgid "stateless" +msgstr "" + +msgid "stateless + stateful" +msgstr "" + +msgid "tagged" +msgstr "標籤" + +msgid "time units (TUs / 1.024 ms) [1000-65535]" +msgstr "" + +msgid "unknown" +msgstr "未知" + +msgid "unlimited" +msgstr "無限" + +msgid "unspecified" +msgstr "尚未指定" + +msgid "unspecified -or- create:" +msgstr "尚未指定 - 或 -建立:" + +msgid "untagged" +msgstr "尚未標籤" + +msgid "yes" +msgstr "是的" + +msgid "« Back" +msgstr "« 倒退" + +#~ msgid "Leasetime" +#~ 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 "Port %d is untagged in multiple VLANs!" +#~ msgstr "埠 %d 尚未標記在多個VLANs中!" + +#~ msgid "VLAN Interface" +#~ msgstr "VLAN介面" diff --git a/luci-base/root/etc/config/luci b/luci-base/root/etc/config/luci new file mode 100644 index 000000000..baa3ac5d1 --- /dev/null +++ b/luci-base/root/etc/config/luci @@ -0,0 +1,24 @@ +config core main + option lang auto + option mediaurlbase /luci-static/bootstrap + option resourcebase /luci-static/resources + +config extern flash_keep + option uci "/etc/config/" + option dropbear "/etc/dropbear/" + option openvpn "/etc/openvpn/" + option passwd "/etc/passwd" + option opkg "/etc/opkg.conf" + option firewall "/etc/firewall.user" + option uploads "/lib/uci/upload/" + +config internal languages + +config internal sauth + option sessionpath "/tmp/luci-sessions" + option sessiontime 3600 + +config internal ccache + option enable 1 + +config internal themes diff --git a/luci-base/root/etc/config/ucitrack b/luci-base/root/etc/config/ucitrack new file mode 100644 index 000000000..c3741ba78 --- /dev/null +++ b/luci-base/root/etc/config/ucitrack @@ -0,0 +1,54 @@ +config network + option init network + list affects dhcp + list affects radvd + +config wireless + list affects network + +config firewall + option init firewall + list affects luci-splash + list affects qos + list affects miniupnpd + +config olsr + option init olsrd + +config dhcp + option init dnsmasq + list affects odhcpd + +config odhcpd + option init odhcpd + +config dropbear + option init dropbear + +config httpd + option init httpd + +config fstab + option init fstab + +config qos + option init qos + +config system + option init led + list affects luci_statistics + +config luci_splash + option init luci_splash + +config upnpd + option init miniupnpd + +config ntpclient + option init ntpclient + +config samba + option init samba + +config tinyproxy + option init tinyproxy diff --git a/luci-base/root/etc/luci-uploads/.placeholder b/luci-base/root/etc/luci-uploads/.placeholder new file mode 100644 index 000000000..e69de29bb diff --git a/luci-base/root/sbin/luci-reload b/luci-base/root/sbin/luci-reload new file mode 100755 index 000000000..cc41da2bb --- /dev/null +++ b/luci-base/root/sbin/luci-reload @@ -0,0 +1,45 @@ +#!/bin/sh +. /lib/functions.sh + +apply_config() { + config_get init "$1" init + config_get exec "$1" exec + config_get test "$1" test + + echo "$2" > "/var/run/luci-reload-status" + + [ -n "$init" ] && reload_init "$2" "$init" "$test" + [ -n "$exec" ] && reload_exec "$2" "$exec" "$test" +} + +reload_exec() { + local service="$1" + local ok="$3" + set -- $2 + local cmd="$1"; shift + + [ -x "$cmd" ] && { + echo "Reloading $service... " + ( $cmd "$@" ) 2>/dev/null 1>&2 + [ -n "$ok" -a "$?" != "$ok" ] && echo '!!! Failed to reload' $service '!!!' + } +} + +reload_init() { + [ -x /etc/init.d/$2 ] && /etc/init.d/$2 enabled && { + echo "Reloading $1... " + /etc/init.d/$2 reload >/dev/null 2>&1 + [ -n "$3" -a "$?" != "$3" ] && echo '!!! Failed to reload' $1 '!!!' + } +} + +lock "/var/run/luci-reload" + +config_load ucitrack + +for i in $*; do + config_foreach apply_config $i $i +done + +rm -f "/var/run/luci-reload-status" +lock -u "/var/run/luci-reload" diff --git a/luci-base/root/usr/share/acl.d/luci-base.json b/luci-base/root/usr/share/acl.d/luci-base.json new file mode 100644 index 000000000..4d582366f --- /dev/null +++ b/luci-base/root/usr/share/acl.d/luci-base.json @@ -0,0 +1,8 @@ +{ + "user": "nobody", + "access": { + "system": { + "methods": [ "board", "info" ] + } + } +} diff --git a/luci-base/root/www/index.html b/luci-base/root/www/index.html new file mode 100644 index 000000000..59b0d8484 --- /dev/null +++ b/luci-base/root/www/index.html @@ -0,0 +1,11 @@ + + + + + + + + +LuCI - Lua Configuration Interface + + diff --git a/luci-base/src/Makefile b/luci-base/src/Makefile new file mode 100644 index 000000000..03e887e1d --- /dev/null +++ b/luci-base/src/Makefile @@ -0,0 +1,21 @@ +%.o: %.c + $(CC) $(CPPFLAGS) $(CFLAGS) $(FPIC) -c -o $@ $< + +clean: + rm -f po2lmo parser.so version.lua *.o + +po2lmo: po2lmo.o template_lmo.o + $(CC) $(LDFLAGS) -o $@ $^ + +parser.so: template_parser.o template_utils.o template_lmo.o template_lualib.o + $(CC) $(LDFLAGS) -shared -o $@ $^ + +version.lua: + ./mkversion.sh $@ $(LUCI_VERSION) "$(LUCI_GITBRANCH)" + +compile: parser.so version.lua + +install: compile + mkdir -p $(DESTDIR)/usr/lib/lua/luci/template + cp parser.so $(DESTDIR)/usr/lib/lua/luci/template/parser.so + cp version.lua $(DESTDIR)/usr/lib/lua/luci/version.lua diff --git a/luci-base/src/mkversion.sh b/luci-base/src/mkversion.sh new file mode 100755 index 000000000..e2d02c1c7 --- /dev/null +++ b/luci-base/src/mkversion.sh @@ -0,0 +1,24 @@ +#!/bin/sh + +cat < $1 +local pcall, dofile, _G = pcall, dofile, _G + +module "luci.version" + +if pcall(dofile, "/etc/openwrt_release") and _G.DISTRIB_DESCRIPTION then + distname = "" + distversion = _G.DISTRIB_DESCRIPTION + if _G.DISTRIB_REVISION then + distrevision = _G.DISTRIB_REVISION + if not distversion:find(distrevision,1,true) then + distversion = distversion .. " " .. distrevision + end + end +else + distname = "OpenWrt" + distversion = "Development Snapshot" +end + +luciname = "${3:-LuCI}" +luciversion = "${2:-Git}" +EOF diff --git a/luci-base/src/po2lmo b/luci-base/src/po2lmo new file mode 100755 index 0000000000000000000000000000000000000000..ad063fd588645183918b4c1421bb3835919884fc GIT binary patch literal 18472 zcmeHPeRP!7nZGlWK!h+85NZ^vQzR`SjN!9Ube#YLFBT-lU}*)1kW5H0$)w2)23u4* z3^I<{rXQ%?wHDW|+taVZc9lj}AQ4JvS8Hh1rrqvo)}qcZv8IYNwUq4ddG5V$-kIcG zd(NJ-e|a_Y+~@av+~aXdeE`oDwK=`Z=TN3<;wInRJ9isl1WoS6NBV%$BUC zLUQvRNGN_Wam|OUS+3guL?|4T|cTD{Z*>^RXY9Pi1!mw zQH@a2rBv~Hq=xbrW-$xu=ZvP$NmyvA?LG}Vit}$xMM`nKD$lN6biZk;sw=K*sNcF| z(RB?q^BU@#qHXiq%9hMqvdGsO_ATIglYi1(b?XK$$!teeF7YM!BOQ)gI_B0Q{Q7s2 zy6eG>PI=IuG8z`Q0vijTYlHvF2LCS`e4h>eO&h$`2EWM$ueQPeVuOFg2B-EPs~zsK z!4o$4A{+eoHh7~A{*nz|XM;~h|9T*NK);RZUHOi>M7Zhnhrdq@}64u~}3%gj+)d2ZODVs_MIf)pd6TYpd!T zM6?O3$6aLB&=9T`wXHjwszqaCRkNrKg=Z*vKQe`>Sk)6$<;MO2{ZH?4~T3SS76hXpqJ)DI_?cFW)k&viuZmDmI)QZoyhFcSfD=3w#UB z+#)l#z_%C;=*;=gmBVZKXiY64nukA14m?RQ^o3r}FRibiL{ATU7RakIyOhdTQf}?@Vw8er?Fi|1uEI7?kotiCp zp$0+QEI2yIO!r%Gw}}d|&w_g_c!veoeNN&>Ex2|4I$*&swfOmt1)plc4_a_~w&>Jp z!7tMwXqN>qw&15M_~jP7*MeVR!TT)ubPL{Z!L1vDlm-8&MSswO)7r1okOjX=gGAN( zMq|WFyh;TY{9_sfEwbPj=PEyP#M4t!r2B`FO12YEQ!L%f{8r*=YNflF{~Yl&rP2qPUr#(urSt*j zZy`RP_zvcm5l>SmeLwRz5KqmKZf1S~@ibM^TbQ3iJWY{w1@kkBr>T+lGk*o~G$qod z%ugYnrb61w`~>1@3Z#pecM?xSKP{Ml|7!3wgoHLKTJFg@pLouKO&xnc6tl* z-zA=gbh?81e z5B`kO7Yx|8P{UM(OmJAG` z#MC0_V0-ni z+chv8otX@rF{*pvzRz&^c@=(T^72Ws=o+EL~+ zBeOo(JTomvr}reBeIgb(<6wt<94#9Bw!fgkuRq>e2zY7W1f7uGgY!X#&>dk@_A4x z7qJ0vV%Gq9sWFmyC9_ds1D@u0B?AK}csvSD1kPcM^c(Gq$L{Vb+0S zhiZ(4(mIl#`s(|`!*ax6z?4#yiRc*&xjwEp4Ybs=e<<>c!?YGs^(MoBP%1gIiQFXx zio`g371BzoHDUg|5%6Xc#KT8x&N0El5pWv7SmPOo5ep0z#de($_dRZo=iLK!ejyS^ z9y^9263=viSeqd=zpE$y9e{{a^u)h!=AJfl2UX7KiFb`;`&2f@o?X$6Mlw#$jaV1L z6-R$4r)ug^s(2!PibY3=h{)U#-6GOGsB{~oZm-lOBBE2YF4_w%^%{+&_IN*JhiT7z zl;S2q#h<0%rCh-$mEd=|f-50Nf7yk(d4wAv8dZ*u{z%0$m*aU}!N&E^N7oze?fodi z8iJAdIR$V8k;R6FBjd0`D9l`O>@b|91VGuoG^RSzw6mAI6MT9)SXsIwGD&8fp7_&L zC0WO#y(*L^s1^xJD3ME)e)L9)3AGy|rfXzO(MhsQ8qyt^+a-gFi_9%#`}UZ&Z=v$2 zPqc6(-pq8PeZN+xR!F=`HUG&FrtWQ-Ps@N@QN!LTjRuQT3Mg~A#VJ)oI&Fqi=`ha| zrvp2x9?HbZx2Maq=SvEKfkK)`bSS9)^O)A$UNDj_pG2D{;+@B2b-AdXRHvy2K^p={dv?aNuC-i^w6KE7K~)+wO3$akctkhdGS7Y zGGa$~QsG(jYZ@>wq1sR)QF1?pn!pTEEJcy1$V=|0S*p-PMFBO;@2JF{ROUTsP&8zp zs3^3EdP#KL0vrSIr@mOf%h8vJ(`--jr%{a{_wy9ge&vEl{vSbfQq93jg&Z2_MBO{t zbMiS9p-RjaJgEdIHCyl?36lGHwNNvFW;vDpEfU4MJn^*`^vH1Bdl~A=%20S53M8Kg zxvE04oq7v8)W&j}8t;=euXFeQU6N~|>&r{=Pidkhj8l6pwePpw5UGtCA)U9jW8bnqPN>h3Q{U?2oil6CYt=n=;n z&M~wAIkjeY|HOrXbNq-s*WF*VFmQn$kFh{1FBv%3otg+w^swRQ%!7Dn#fF@b&9Na@ z#2p)Qc=p6G8q$x`kodrW$X|ca{E^5ggrkUk3NW*e?Ue0?S2B zkP4?$8gOZge2wI3gnY2kJy6O6^GF|-&%`q?IHg23p8);QwCF zkA>&QT_wUR1fDrJrrKGR6!w#2!|{t;rRZV|QYyu0uW%TN{ggc^ywp~?FeU{>?>RJO zpQZ499CD0f#C9W2Dp(9D)Gp$Po~~^2O#ZuxJV;*7Q=K30!4(Q zf{YXxu^&)m4y~@dUGuz==*6g(tX!*K;>o_2HfM!;I=we&Zq9ZObfFQA#1R8g<@8Ta zoZpEd=!sY26N-2Vi*MA~_Wkq@jg}!>wX{EocWXSqJbQkM{!=2o1(7c@kNy$Efj!5L zuz$~<1JFHI3h$|<5Tc){2#gLc$+KslbVb}@($fA?yHF35L4xFd@rKnKlh25IeA zVsR8sgnpTN8jTk_AR4c(PK2r8l=6Bp@F;7Yr zhpsJ(v;=!COO@m9RGt|b9*`C%BPBr9>dLDm>D>srBQw4ulh=`PbjUsvZJ4s$;614V zs<-N^$a>Q?>Wn$J(8{9?A~P)ont@XT$)*sdWF z!6uttfn?!xOomFHK^(O;id8zY%s1hSWz_aJD27VE6{Q?C?hqu4+pOQkKu2&7kT`TX*LL#vW|;o0*uIRoSn>q$+c zz_5QJOKgv%&Qs7iRt)#4^HNM@K+HvX_Ux4|h&xPL<|Ha3ZEO-q8#^i@c*A=Wd#$76 zC|Ery`tfS76|nPAdS^)wEi$6l2|Zq!;gl+Gv>TTi(ty5pf+D{SJOMRS_g<@3azEEl zE?=t?rzntjsQ|Ub;igG_h5}J59@=d&z3^bKNJZ%f%51YjyaKQ+Q89w@%8mI#%LBI} z{2U~=2^n(i2t_VD@iJP7Ms((qPIB7oMP8c6++=dn$!z`$EXaS62r7qnccqkn7!Ze_ zDeKUE7V%hIpU!an!mR`Er86~7J^<}0?B4+4_;w@}ga3Vnkd z;kak>In>TFJkY4m+@E% z2RO71xHd3&I+ef~%%GzeE`Tfz47S_}w<%1=A{=KK-LIJ|+!=(<`=<*_181UBM{8x~ zB?BbeF`1|J<%muemH8TF>DXv6vyT=eZq$*pDFf|rDiJ+_qlQkLZXHBjPKgMP0`ki| zvQs8>UPNQ2zkymLH=IDxr{prQ3NIyzz;B`HCQYmqXp8<#U2+4kK)+Oa8@7P4kHlUx z;wOQT+(@m5)+oRznm{${GTNuQfFS~UAVE|J(c5VJ1T8)X6Gd_;kR9y(v#BJw>=)6m z$gYl^F!V-O9-s7KAyN&WU+d;RPNn~mrW3dD+CFPHKa=8az6&k~MTB}Aoj?zVz#u&& zG8lKVTZ}~h<>XAVvcg_)Iw&lq$Rl<-&Osi7MhE(9HiBq23d>w2Iruj{t48v~KZoYV z@<}JJ<)0}}442=&I&r>y!|KE<<&|sNODZOKaRl2wkLYb{uA!6Ag4FlkM0wqRbw#Gn z|4*Eou1TC-lQ_Quw!>3@Ys8K_jO#Pev-BOq9h=KHm2WP;vpk3b#PN}%T|R$>uVTyU zykb@XcAZHO^Qa1gFYyi>6&s0*e7u@|6!l5{66I6l()SuDHI1dGXb5xCKtUjFS{!21C3q8u5l}z4+ER+_F=Yw2C>tl2&q#{B>ZF z9MfG(X;{(W|JUCb9;V-voIqV(27fp`JUkctTcB$|y%>rOpj$y70(}Rg_G!??Sl?a- z{W|D5&;@ulOvRJvEOw_if+q1Ewh44T&IG;)`tH#1@MEA=cqe=g^iNoee+#-1o6ZZM z7eQy>9OaidB3uFbZA_mU&^!!@?}JVSJwX&PQgYn0UO3u{9McQO7j!tr7ZFZhHl)xU z*OG!tW9ths3v$xm_xkW~Dase_qLuFATRao*F1TOZe8ti^3unzF7o@WSe|ynB3kfK9 z7wvT}pF~R~C6d?R?;HP%d=KQ`hkO~RX}=4BgQYmWjlZ8m-hp;B<$;*Xwbvn)08=?H z;BN`~VL7O&cdt|-IUSCF7V@A~?))4pkh~E7ABCLWC{26kH&{+_%!T|T=-gVdwdTHD1?a94wU+0saY$1KMYp<+z?O1H528PwlST({;p2g^>Nz zkgvnIX+qwVJL}DQybSp_A%8f_{wt>aImj=?IIGIC-(=d;IIV>IsVw;uET?u@1o>|u zf5j?Ce>nexRS4xcH$m?KEO#$j^_-_zX$7z^LSBY(zM169+(ln@2HeGe?+UoR?Rf$B z?1%CVcj?}7hPx~_ewEw5-Cb7hE-iP@Ugq{La~DH@nY)0;`w94|fFD%LOw>*^e+=L^ z5xTg>u=Wx!PZG8^?M*ZIymXyf9rjc{>_;Ft&>sUXFZJz#p}2Y=?1@xmr0k8 z?HkvpYrLNY*uF8Z+Y{Rd=9`sVng72L{X6#D0-sX-dq~lfioUAo8;YJ+bX=jIU3^5* zk1M)F(Upqcu4t{II~3ik=);OWrRX6=Pb&JVqHidAUeR%rRQZa2T+tKHqZBca;~?zJ~Xe?x5T&j z8YvN3%1fm3d{SO`jhES6@7X;4!n4fj&j!KKFGnlK#9ik6u^PGXyU+t;>gNkRzq0km ziLu6|ON{A2)&ME;}b=P8duqPp?NPQ8=oZf`jd^j#TKvkER^^i4wT9veEwuVazgOC8>kF0#jbcZVUfy@02^E)(h z+im>ZYlHs`HdDmt_2Fwa`u}2sAGg6@vB5Kp7mD}QIOKO|#PVkweK*>FtbX~J4Stu6 zpT#!%pR&QX+u*x^Q@`Y{GY{J6f6E5{SKwaMJ2!O!pX|I$l;-sNi-cpf(d%}eGNgC> zvD#(+!;N18r3C>wWL5Hu|sF;3?&&BFE2p8~q6w0Auyz3>&-@IE|~^ z_PNnUe=(OkdLOdRM!(ty|00!ZdH(A55zXNRICS<^i<ihD^57br#wBB93ShN?&?C>`Q6SPMxIn@}8a2Vq_x30AeV zRP6**BZ4bFdu#dH)yuObe60x(E@lP;MsVf&^0k4Wv0}Xlu3EEhS^1jax|J($3seRx z%a^SQ1fj^6p{iS>R8~EBzV$?9SJzcFZ3_i)@v5pJyiL%pD8FCdf1UD5dQ{NPf;zFOgN|$TS*W$84buBO(q~>Y} zSJjvU$THMuB&)l9qmAUvzt-A1+3)J|V76W`xV5!aRa{>D%a-%CJ{~}HH_;4%FCb=X z(qs!_p4RWMsL{9@LrqNuzOsmXwgz37%tquL#B3}WtX#W17`SysFetAbW{WX)@qacJ z3|ekGj))eji;p7+-#_%V?re-yZ52NFk+e?du;PSTnuV_^90~c#m#v-`soExd+nS<2 zo?yP3olP(nOmPL1B|Abbt@YuiEG7t9OQ@lW6jiRdAtHR-tG);pKH=lV#Mct$nd}SI z1#4TX8biUl8rW)1TF4bmTIl@tYN)|`RbzcMiVnjeK73q?^oZ^kzUpveBNj*XX!}1A zI>*A63-2N_>GyH{?-%HEEG0Jg^P0aJ89F=C_WHeD|N8)5t*9s-Cs}DeIDFL;*7j{q zKg-(`FpD{QCz8p0{wRJaD4mUI`vXotIDzv3CZYq+K}z(M7u8eS>vOE-z(_^g>+^!r zaR8D0WMoM>toRgUboQm~^|?Z`I#8qcIZ8Tyt*7Zm$mlFh^ZNXuOWFI$7%4Y?i3+g| z8S<^|&2tJ>Q9~)}@^kC|d1b#$>FM(fLn-R>L$asulXLCm`=t7}4j|X(9&PHtQlB#_ z_hvh2p7xK_rmDHk^N|i^&)?l@WzZs(*K{{{tG)jBJ-Q}I#dZqXlC+(M9ze!wug_a5 zW=V}pw4$QA9W~sJ4B6}U*Zcb|%AS5)VokdJG`1fZtG)jBF!aBZ@tjsvG`IXGbL{mw zPiKiVn5)LWc9UEF4Y?6p6752mrB?e#g7{&!7!$vG0uA4j3nn3iNnS(#wZhHMCv5wtpzl9cdq>h{cugjHE UdN&!{e(+|g@t#&xG}r!r06MX4MF0Q* literal 0 HcmV?d00001 diff --git a/luci-base/src/po2lmo.c b/luci-base/src/po2lmo.c new file mode 100644 index 000000000..fd927cb52 --- /dev/null +++ b/luci-base/src/po2lmo.c @@ -0,0 +1,247 @@ +/* + * lmo - Lua Machine Objects - PO to LMO conversion tool + * + * Copyright (C) 2009-2012 Jo-Philipp Wich + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "template_lmo.h" + +static void die(const char *msg) +{ + fprintf(stderr, "Error: %s\n", msg); + exit(1); +} + +static void usage(const char *name) +{ + fprintf(stderr, "Usage: %s input.po output.lmo\n", name); + exit(1); +} + +static void print(const void *ptr, size_t size, size_t nmemb, FILE *stream) +{ + if( fwrite(ptr, size, nmemb, stream) == 0 ) + die("Failed to write stdout"); +} + +static int extract_string(const char *src, char *dest, int len) +{ + int pos = 0; + int esc = 0; + int off = -1; + + for( pos = 0; (pos < strlen(src)) && (pos < len); pos++ ) + { + if( (off == -1) && (src[pos] == '"') ) + { + off = pos + 1; + } + else if( off >= 0 ) + { + if( esc == 1 ) + { + switch (src[pos]) + { + case '"': + case '\\': + off++; + break; + } + dest[pos-off] = src[pos]; + esc = 0; + } + else if( src[pos] == '\\' ) + { + dest[pos-off] = src[pos]; + esc = 1; + } + else if( src[pos] != '"' ) + { + dest[pos-off] = src[pos]; + } + else + { + dest[pos-off] = '\0'; + break; + } + } + } + + return (off > -1) ? strlen(dest) : -1; +} + +static int cmp_index(const void *a, const void *b) +{ + uint32_t x = ((const lmo_entry_t *)a)->key_id; + uint32_t y = ((const lmo_entry_t *)b)->key_id; + + if (x < y) + return -1; + else if (x > y) + return 1; + + return 0; +} + +static void print_uint32(uint32_t x, FILE *out) +{ + uint32_t y = htonl(x); + print(&y, sizeof(uint32_t), 1, out); +} + +static void print_index(void *array, int n, FILE *out) +{ + lmo_entry_t *e; + + qsort(array, n, sizeof(*e), cmp_index); + + for (e = array; n > 0; n--, e++) + { + print_uint32(e->key_id, out); + print_uint32(e->val_id, out); + print_uint32(e->offset, out); + print_uint32(e->length, out); + } +} + +int main(int argc, char *argv[]) +{ + char line[4096]; + char key[4096]; + char val[4096]; + char tmp[4096]; + int state = 0; + int offset = 0; + int length = 0; + int n_entries = 0; + void *array = NULL; + lmo_entry_t *entry = NULL; + uint32_t key_id, val_id; + + FILE *in; + FILE *out; + + if( (argc != 3) || ((in = fopen(argv[1], "r")) == NULL) || ((out = fopen(argv[2], "w")) == NULL) ) + usage(argv[0]); + + memset(line, 0, sizeof(key)); + memset(key, 0, sizeof(val)); + memset(val, 0, sizeof(val)); + + while( (NULL != fgets(line, sizeof(line), in)) || (state >= 2 && feof(in)) ) + { + if( state == 0 && strstr(line, "msgid \"") == line ) + { + switch(extract_string(line, key, sizeof(key))) + { + case -1: + die("Syntax error in msgid"); + case 0: + state = 1; + break; + default: + state = 2; + } + } + else if( state == 1 || state == 2 ) + { + if( strstr(line, "msgstr \"") == line || state == 2 ) + { + switch(extract_string(line, val, sizeof(val))) + { + case -1: + state = 4; + break; + default: + state = 3; + } + } + else + { + switch(extract_string(line, tmp, sizeof(tmp))) + { + case -1: + state = 2; + break; + default: + strcat(key, tmp); + } + } + } + else if( state == 3 ) + { + switch(extract_string(line, tmp, sizeof(tmp))) + { + case -1: + state = 4; + break; + default: + strcat(val, tmp); + } + } + + if( state == 4 ) + { + if( strlen(key) > 0 && strlen(val) > 0 ) + { + key_id = sfh_hash(key, strlen(key)); + val_id = sfh_hash(val, strlen(val)); + + if( key_id != val_id ) + { + n_entries++; + array = realloc(array, n_entries * sizeof(lmo_entry_t)); + entry = (lmo_entry_t *)array + n_entries - 1; + + if (!array) + die("Out of memory"); + + entry->key_id = key_id; + entry->val_id = val_id; + entry->offset = offset; + entry->length = strlen(val); + + length = strlen(val) + ((4 - (strlen(val) % 4)) % 4); + + print(val, length, 1, out); + offset += length; + } + } + + state = 0; + memset(key, 0, sizeof(key)); + memset(val, 0, sizeof(val)); + } + + memset(line, 0, sizeof(line)); + } + + print_index(array, n_entries, out); + + if( offset > 0 ) + { + print_uint32(offset, out); + fsync(fileno(out)); + fclose(out); + } + else + { + fclose(out); + unlink(argv[2]); + } + + fclose(in); + return(0); +} diff --git a/luci-base/src/po2lmo.o b/luci-base/src/po2lmo.o new file mode 100644 index 0000000000000000000000000000000000000000..d34aad3c8d1ac1f7d1e94d4da199a67560671992 GIT binary patch literal 6336 zcmbtZe{38_6`u9k%?}*gqz!eO0$bCRBux&xK~>U(;wHLeRT?l!4G~FYF6TSnDZX3x zZnt$nPAHd)y4qS;NT#V&!XNNQr1A%#fJ_u8M-sSHs#+te$^xXC$Vj&CP^pCI5kk%P zW@qlkn_Cr?*WAv`_ul*F&967p&hBH<*+!oRpZh!R>uQ;VCDi`Q;nOJ%4qr2$57svj);q)&U&i*;Wr61}pFgH>) zoD%QCC=~70m#N!@!%Is`6R%yRP7fl`?Vy-79DBy;f4vl$CzDcy`;;OTm@Wx$u@mv; z$0|#9mm8TkVl$whHME)bU$I?Xb{nvKQF9`d#R?c;$J$@G!D|be-RJjczf{auyR4Rc z^@!b)k5se?SUeP|c(gNyc7=Of_xiYwK3-@NQ7yg*RzKgaBlbi869dh8dH-$hUDg91 z?p|K!vzhrF$Ud8o%xj!*mPacme8<&XE8v}x*V|wG?FUOsG$o^LFqx5SQf`@|`8D#_ zwjX|)uLqU_t7u~dBMUBbuzYT0jw-jXlshB0ax1t;`7W>d?20Kqo)*5T1Vz50J7X1M z88qDH4I43F157us)sU#x*E z>)_@Z*jfkI0nDf8H6tIXcI3zA*~zoD{rr3-*~^$S{mNx@;rwy}g*pujJ;hSt96$=N zRQPGFcD`2onW!11La|<*71cav4%vqcw?O1ZzKC#{Jl)<|a|+kFYMKgWZK>OKG_alV zY^h-OT4{^@F+>F9&H=(__9!;-z&06DC zn%WEJq59BJtX0C^-bFECbPZzKy7bAX->1?yj?rG2g_ge0t(qiFzK1)q!dv39)*;KQ782Xo7)RBm?s(@`b6eCRct@? zU4g(sAR~1f8I-qlaH>-}g{jNlaCukWUEtXPQ0*?l&gIrS3si4E)kdpTpyQyqyfDrf zznN<`;O_FHp@eQY99d>J-iO5C8EVLR1v)}TewrUDc^AD|1?F;m@|u ze+kifW*Scw-qxUA#p*OZlZdXd0=+g+xRX3vpnK>q(J7Z>!=>F`*nbNflOI{_#NC(% zZY%~*`mNB5A-LnTTCkxx_KvA>le~GJJMoyyMDkK>Kk&aX<`}c&qasg z)Yem(5!(unn7V0OR2xp4tJ&UYYB)ZqTc-Y8Hf6>2oHYnF%d+QKIyaOW)VtWh;~6VD zs>g{KBs#}Qo3pY|f5owv0+L#F5{EA<9qc(ujrglljAP{_^fJ$}>rwV{SDYQ{qNuaShn)JQ^%zpt06 zXd5*t{CwVlwFz9dWl8Hw_6d|Ed@WGkiyz_V2!!x8K)DG&!nf0v2I2FLlK2S!w!ry( z1M3y|9|g|m85l{3t?(+oZ-~(jxLrbwcGYru5>0w``Q;#hM)=_X{F?#zPyn6@z-iAm z>bDSpyTI3C-bTgJ^L++vBEbF!0r(FC@Sg};>6o9`GfWH-h|0w`x zBj&@%h~XF;OvRZ^S(A-qQyGiJN3Co$W(^?Sr7}Y-mL3^MWd`G;o_fHB&9;X{!&4xM zB3rTq_fLQzWw8X$uM8x^@eE5^W@eZTfHN99HV{i58%Q7#vuAQ<)?(>sD#H@y2<(tm zb8(Bj@P~?66s<&ZAQ{aiSvDRW9yVhvF%-9QED<*oEP-^MFd9Cc~`IR#&<;JX!^_N}!4lE5Xu+|!2?dzJsF zf~)-BSMWPgm;A2?T=L8KLNrha6_lH#{euDcj})B#Nv!u|_lGfAGLz#{^u_*I_2C^+4>GX6(IswR6Ce^$ZO^>q~dlM2sS z1y}8VuHdTudkX$3g=eFbcX&7(({+ zld?-xBre}2YMvooLfDP^?9Yj|%qNmZp6iP~d-*>3vk#Z=lUqJq-peeUJD#?pM^Rc? zuT08XHa;8;Tex>vcra>3S@>u!$HH0DYsAcS8qaGM&X`s_yzk5XTlp;l19FQe2NKz6 zIxf2XzY84<^!60TpvKoLYTaUeq=IZ!p|ee?p;rY_pAZ+(btP|*uh<^^txqlw;zzhh zj|6cU@%1ZlfB##cAkL5K-veLbqi(VL=?f2a8OhG@;xtN8u@3x_bwl>h($ literal 0 HcmV?d00001 diff --git a/luci-base/src/template_lmo.c b/luci-base/src/template_lmo.c new file mode 100644 index 000000000..3d1eaf4e0 --- /dev/null +++ b/luci-base/src/template_lmo.c @@ -0,0 +1,328 @@ +/* + * lmo - Lua Machine Objects - Base functions + * + * Copyright (C) 2009-2010 Jo-Philipp Wich + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "template_lmo.h" + +/* + * Hash function from http://www.azillionmonkeys.com/qed/hash.html + * Copyright (C) 2004-2008 by Paul Hsieh + */ + +uint32_t sfh_hash(const char *data, int len) +{ + uint32_t hash = len, tmp; + int rem; + + if (len <= 0 || data == NULL) return 0; + + rem = len & 3; + len >>= 2; + + /* Main loop */ + for (;len > 0; len--) { + hash += sfh_get16(data); + tmp = (sfh_get16(data+2) << 11) ^ hash; + hash = (hash << 16) ^ tmp; + data += 2*sizeof(uint16_t); + hash += hash >> 11; + } + + /* Handle end cases */ + switch (rem) { + case 3: hash += sfh_get16(data); + hash ^= hash << 16; + hash ^= data[sizeof(uint16_t)] << 18; + hash += hash >> 11; + break; + case 2: hash += sfh_get16(data); + hash ^= hash << 11; + hash += hash >> 17; + break; + case 1: hash += *data; + hash ^= hash << 10; + hash += hash >> 1; + } + + /* Force "avalanching" of final 127 bits */ + hash ^= hash << 3; + hash += hash >> 5; + hash ^= hash << 4; + hash += hash >> 17; + hash ^= hash << 25; + hash += hash >> 6; + + return hash; +} + +uint32_t lmo_canon_hash(const char *str, int len) +{ + char res[4096]; + char *ptr, prev; + int off; + + if (!str || len >= sizeof(res)) + return 0; + + for (prev = ' ', ptr = res, off = 0; off < len; prev = *str, off++, str++) + { + if (isspace(*str)) + { + if (!isspace(prev)) + *ptr++ = ' '; + } + else + { + *ptr++ = *str; + } + } + + if ((ptr > res) && isspace(*(ptr-1))) + ptr--; + + return sfh_hash(res, ptr - res); +} + +lmo_archive_t * lmo_open(const char *file) +{ + int in = -1; + uint32_t idx_offset = 0; + struct stat s; + + lmo_archive_t *ar = NULL; + + if (stat(file, &s) == -1) + goto err; + + if ((in = open(file, O_RDONLY)) == -1) + goto err; + + if ((ar = (lmo_archive_t *)malloc(sizeof(*ar))) != NULL) + { + memset(ar, 0, sizeof(*ar)); + + ar->fd = in; + ar->size = s.st_size; + + fcntl(ar->fd, F_SETFD, fcntl(ar->fd, F_GETFD) | FD_CLOEXEC); + + if ((ar->mmap = mmap(NULL, ar->size, PROT_READ, MAP_SHARED, ar->fd, 0)) == MAP_FAILED) + goto err; + + idx_offset = ntohl(*((const uint32_t *) + (ar->mmap + ar->size - sizeof(uint32_t)))); + + if (idx_offset >= ar->size) + goto err; + + ar->index = (lmo_entry_t *)(ar->mmap + idx_offset); + ar->length = (ar->size - idx_offset - sizeof(uint32_t)) / sizeof(lmo_entry_t); + ar->end = ar->mmap + ar->size; + + return ar; + } + +err: + if (in > -1) + close(in); + + if (ar != NULL) + { + if ((ar->mmap != NULL) && (ar->mmap != MAP_FAILED)) + munmap(ar->mmap, ar->size); + + free(ar); + } + + return NULL; +} + +void lmo_close(lmo_archive_t *ar) +{ + if (ar != NULL) + { + if ((ar->mmap != NULL) && (ar->mmap != MAP_FAILED)) + munmap(ar->mmap, ar->size); + + close(ar->fd); + free(ar); + + ar = NULL; + } +} + + +lmo_catalog_t *_lmo_catalogs = NULL; +lmo_catalog_t *_lmo_active_catalog = NULL; + +int lmo_load_catalog(const char *lang, const char *dir) +{ + DIR *dh = NULL; + char pattern[16]; + char path[PATH_MAX]; + struct dirent *de = NULL; + + lmo_archive_t *ar = NULL; + lmo_catalog_t *cat = NULL; + + if (!lmo_change_catalog(lang)) + return 0; + + if (!dir || !(dh = opendir(dir))) + goto err; + + if (!(cat = malloc(sizeof(*cat)))) + goto err; + + memset(cat, 0, sizeof(*cat)); + + snprintf(cat->lang, sizeof(cat->lang), "%s", lang); + snprintf(pattern, sizeof(pattern), "*.%s.lmo", lang); + + while ((de = readdir(dh)) != NULL) + { + if (!fnmatch(pattern, de->d_name, 0)) + { + snprintf(path, sizeof(path), "%s/%s", dir, de->d_name); + ar = lmo_open(path); + + if (ar) + { + ar->next = cat->archives; + cat->archives = ar; + } + } + } + + closedir(dh); + + cat->next = _lmo_catalogs; + _lmo_catalogs = cat; + + if (!_lmo_active_catalog) + _lmo_active_catalog = cat; + + return 0; + +err: + if (dh) closedir(dh); + if (cat) free(cat); + + return -1; +} + +int lmo_change_catalog(const char *lang) +{ + lmo_catalog_t *cat; + + for (cat = _lmo_catalogs; cat; cat = cat->next) + { + if (!strncmp(cat->lang, lang, sizeof(cat->lang))) + { + _lmo_active_catalog = cat; + return 0; + } + } + + return -1; +} + +static lmo_entry_t * lmo_find_entry(lmo_archive_t *ar, uint32_t hash) +{ + unsigned int m, l, r; + uint32_t k; + + l = 0; + r = ar->length - 1; + + while (1) + { + m = l + ((r - l) / 2); + + if (r < l) + break; + + k = ntohl(ar->index[m].key_id); + + if (k == hash) + return &ar->index[m]; + + if (k > hash) + { + if (!m) + break; + + r = m - 1; + } + else + { + l = m + 1; + } + } + + return NULL; +} + +int lmo_translate(const char *key, int keylen, char **out, int *outlen) +{ + uint32_t hash; + lmo_entry_t *e; + lmo_archive_t *ar; + + if (!key || !_lmo_active_catalog) + return -2; + + hash = lmo_canon_hash(key, keylen); + + for (ar = _lmo_active_catalog->archives; ar; ar = ar->next) + { + if ((e = lmo_find_entry(ar, hash)) != NULL) + { + *out = ar->mmap + ntohl(e->offset); + *outlen = ntohl(e->length); + return 0; + } + } + + return -1; +} + +void lmo_close_catalog(const char *lang) +{ + lmo_archive_t *ar, *next; + lmo_catalog_t *cat, *prev; + + for (prev = NULL, cat = _lmo_catalogs; cat; prev = cat, cat = cat->next) + { + if (!strncmp(cat->lang, lang, sizeof(cat->lang))) + { + if (prev) + prev->next = cat->next; + else + _lmo_catalogs = cat->next; + + for (ar = cat->archives; ar; ar = next) + { + next = ar->next; + lmo_close(ar); + } + + free(cat); + break; + } + } +} diff --git a/luci-base/src/template_lmo.h b/luci-base/src/template_lmo.h new file mode 100644 index 000000000..f251c63dd --- /dev/null +++ b/luci-base/src/template_lmo.h @@ -0,0 +1,92 @@ +/* + * lmo - Lua Machine Objects - General header + * + * Copyright (C) 2009-2012 Jo-Philipp Wich + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef _TEMPLATE_LMO_H_ +#define _TEMPLATE_LMO_H_ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#if (defined(__GNUC__) && defined(__i386__)) +#define sfh_get16(d) (*((const uint16_t *) (d))) +#else +#define sfh_get16(d) ((((uint32_t)(((const uint8_t *)(d))[1])) << 8)\ + +(uint32_t)(((const uint8_t *)(d))[0]) ) +#endif + + +struct lmo_entry { + uint32_t key_id; + uint32_t val_id; + uint32_t offset; + uint32_t length; +} __attribute__((packed)); + +typedef struct lmo_entry lmo_entry_t; + + +struct lmo_archive { + int fd; + int length; + uint32_t size; + lmo_entry_t *index; + char *mmap; + char *end; + struct lmo_archive *next; +}; + +typedef struct lmo_archive lmo_archive_t; + + +struct lmo_catalog { + char lang[6]; + struct lmo_archive *archives; + struct lmo_catalog *next; +}; + +typedef struct lmo_catalog lmo_catalog_t; + + +uint32_t sfh_hash(const char *data, int len); +uint32_t lmo_canon_hash(const char *data, int len); + +lmo_archive_t * lmo_open(const char *file); +void lmo_close(lmo_archive_t *ar); + + +extern lmo_catalog_t *_lmo_catalogs; +extern lmo_catalog_t *_lmo_active_catalog; + +int lmo_load_catalog(const char *lang, const char *dir); +int lmo_change_catalog(const char *lang); +int lmo_translate(const char *key, int keylen, char **out, int *outlen); +void lmo_close_catalog(const char *lang); + +#endif diff --git a/luci-base/src/template_lmo.o b/luci-base/src/template_lmo.o new file mode 100644 index 0000000000000000000000000000000000000000..a3c8f276f98e4c18be76d03e3c8be25ca0744527 GIT binary patch literal 7136 zcmbtYeQZNxZ?FSU8*XTwxJ57srzdZf2=^+2nk~(-Iv1DR!pt5Xv;LGW@{#)$$y|_zjHtA zn^#+#vO3ZJaK%sp)|mKyU5*fD}0`X&yP>c zG9egJ(DQ z8#lGl&XJUkaqbElb5{8UB7b=y%-9i?K#l}nFZ=~?gbx?y@#bEkh}UFc7EdT)b3ewT zNHgxYaKAu?5Fm~SaSMN^!xvci!uTc@VXQFjJgQiUVU!ee>kmPu!7o7%S>eN-7WYPJ zdYwfmRzaBiqtamODZ}_F;j$}yw74sLvV5`JAvPI)>1zw5UT$fd(0b&Nifg_w$=wf8 zrmb)k9)8S8r-{2iCC@DQAf1)k?!U^tX;igT?!CvoNu_vCxtnik7O{7h2<&a0rE!X% zcbUVhKz=3*od9V}7M{ctjEqkf_Uq~J=s`>o8It8yb8dMdJoGm5r$}Q$(3=z|QyBMz zX7{qtA09db-Yf0klHPj41gb+=3J;xE0jidd7EzH9Rm1(d73|(>!DUcJ_b)SNKk{D|0f+GiDhsl_fmRf2m{mNcP0)1g z1zlO^lXjWXJ5o6>owBQ4q$c6Lc@D3@vB41;2TD?yPFJVYE)+VYr+z^yl5s4I>-#H= zdc+AJ^(;K}Yg8J-LaWM|_JkGi2xH-)H^6gc9rWu%L^ePcrouxnNENiYL|nl`B)I)i z>CKHxooV z9m@9gxHrW;Wq^s8n~vx!LDiop8ZCA!V(hd*tK5+200iPdR#DNpflzy(@M(u|#R!+( z%k*O5!d7_*7xDO?px|f=UMC$oVa!`13G#)_tzJwKaV%{e(K&O%LGvnGf*@7O{au6` zXazM}v|U#Dp5i5$MKkEFvcd(kbPBynoCzEyyy++nUJ*uB z*((G1;+nMQmv8|oWowGnA5ByBM#WV5zM(CU>APZHJF~NwgJ!nKy#u~AQm&FUcU>NJtLVuf-GQs zN8(%4i4lSO`zd;eMw99p=%mAIL%`qxT}U7`YZ5h|b6!g|>X47MktL{{VS}&8RJ+&s zx7Bx)d#fFLx`{@l0EsW7%JzPL)iuk)u}y?qHigo?qpiHE?KdZ z8;*deokAW)?V*$VxDqF<%^zaoFRLCb$v(KGbc^oBkn z3;m}R{k28%uTZ8y~L8^OYeCqjF}_#Hhe zK2Avn!s-kXYh?cvcT$igRP$eCjD_&0)(AmUtr23PTo;k(x@ds@%yJ2fy(^9oTegT- zFG36fuQ5W5+S}r>5zAJ?e^DF2+7zzWq9%Ynf*<)595#Sj_&(sIf42&Ss2yPOI{Z)7 z!Mp3=hwI?EI{48#`0+aUt95X<4*p^t{QJNu4$D;v#2Eobt#yr24?1%{QMg{~H+>e9 zo@bRFah8DnR^h8uorp68>`(aB%FEyC;PZ9xavhvXr5ca$^1T92CNkNKT*l)`=h#3h zekk6bO|p1A?0pKyJ-Jj$n(5ExQ;htHClgMhKl@Bxt`bS7??_66g10}L=w1XQdlQ*wsyyUGcVCX> zGXuH4jMKw@W%}N zE(1^0!Cy0Qx*N6K83U(pRE@u^S}@uDq=CP0;GZ(^4-I^sfrr%jBt2$)zG2{|o&yGM z+U+%PQ~!Gg{u#rrrLF|Bdyj!f4BU+K69#U^xm)3sbG1dx@Lx^_KiwTVZZ8G+Ra)8W zb@+c};1NU5-vfH6c4;ga{HER2sxi`jSL3Js*=OMQ8u)VtexHG#H1JOw_z&ygXAS&r zga2oB@OKT|wEGVOH}ktp^>NylSw9;L-1Kw1fq&NU=Wzo!{k&@6X8k{``Y+iv`S%(4 zN<;ra12_3k8@Q?eLLHouQVg)=5QoKhd>WT%KScu~cuo zCznX4q&NTnGXfQ~1=Y?f3S(+^Ugb>_)OPh!)F`#`SOt-jt<=mg+EnwRvLjh_+!)mW zjnCspxb9bk(fC)uu0$oTp40ma_>s<_d|Al{zm2qglBLmsAK5o+k8mxown2~>!ToOo zN?5xjSDq_W4F+=uh(5~2=m_{9SPHgU@>`XI38|*? H49fopG;bx$ literal 0 HcmV?d00001 diff --git a/luci-base/src/template_lualib.c b/luci-base/src/template_lualib.c new file mode 100644 index 000000000..d5c8dd6b4 --- /dev/null +++ b/luci-base/src/template_lualib.c @@ -0,0 +1,179 @@ +/* + * LuCI Template - Lua binding + * + * Copyright (C) 2009 Jo-Philipp Wich + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "template_lualib.h" + +static int template_L_do_parse(lua_State *L, struct template_parser *parser, const char *chunkname) +{ + int lua_status, rv; + + if (!parser) + { + lua_pushnil(L); + lua_pushinteger(L, errno); + lua_pushstring(L, strerror(errno)); + return 3; + } + + lua_status = lua_load(L, template_reader, parser, chunkname); + + if (lua_status == 0) + rv = 1; + else + rv = template_error(L, parser); + + template_close(parser); + + return rv; +} + +int template_L_parse(lua_State *L) +{ + const char *file = luaL_checkstring(L, 1); + struct template_parser *parser = template_open(file); + + return template_L_do_parse(L, parser, file); +} + +int template_L_parse_string(lua_State *L) +{ + size_t len; + const char *str = luaL_checklstring(L, 1, &len); + struct template_parser *parser = template_string(str, len); + + return template_L_do_parse(L, parser, "[string]"); +} + +int template_L_utf8(lua_State *L) +{ + size_t len = 0; + const char *str = luaL_checklstring(L, 1, &len); + char *res = utf8(str, len); + + if (res != NULL) + { + lua_pushstring(L, res); + free(res); + + return 1; + } + + return 0; +} + +int template_L_pcdata(lua_State *L) +{ + size_t len = 0; + const char *str = luaL_checklstring(L, 1, &len); + char *res = pcdata(str, len); + + if (res != NULL) + { + lua_pushstring(L, res); + free(res); + + return 1; + } + + return 0; +} + +int template_L_striptags(lua_State *L) +{ + size_t len = 0; + const char *str = luaL_checklstring(L, 1, &len); + char *res = striptags(str, len); + + if (res != NULL) + { + lua_pushstring(L, res); + free(res); + + return 1; + } + + return 0; +} + +static int template_L_load_catalog(lua_State *L) { + const char *lang = luaL_optstring(L, 1, "en"); + const char *dir = luaL_optstring(L, 2, NULL); + lua_pushboolean(L, !lmo_load_catalog(lang, dir)); + return 1; +} + +static int template_L_close_catalog(lua_State *L) { + const char *lang = luaL_optstring(L, 1, "en"); + lmo_close_catalog(lang); + return 0; +} + +static int template_L_change_catalog(lua_State *L) { + const char *lang = luaL_optstring(L, 1, "en"); + lua_pushboolean(L, !lmo_change_catalog(lang)); + return 1; +} + +static int template_L_translate(lua_State *L) { + size_t len; + char *tr; + int trlen; + const char *key = luaL_checklstring(L, 1, &len); + + switch (lmo_translate(key, len, &tr, &trlen)) + { + case 0: + lua_pushlstring(L, tr, trlen); + return 1; + + case -1: + return 0; + } + + lua_pushnil(L); + lua_pushstring(L, "no catalog loaded"); + return 2; +} + +static int template_L_hash(lua_State *L) { + size_t len; + const char *key = luaL_checklstring(L, 1, &len); + lua_pushinteger(L, sfh_hash(key, len)); + return 1; +} + + +/* module table */ +static const luaL_reg R[] = { + { "parse", template_L_parse }, + { "parse_string", template_L_parse_string }, + { "utf8", template_L_utf8 }, + { "pcdata", template_L_pcdata }, + { "striptags", template_L_striptags }, + { "load_catalog", template_L_load_catalog }, + { "close_catalog", template_L_close_catalog }, + { "change_catalog", template_L_change_catalog }, + { "translate", template_L_translate }, + { "hash", template_L_hash }, + { NULL, NULL } +}; + +LUALIB_API int luaopen_luci_template_parser(lua_State *L) { + luaL_register(L, TEMPLATE_LUALIB_META, R); + return 1; +} diff --git a/luci-base/src/template_lualib.h b/luci-base/src/template_lualib.h new file mode 100644 index 000000000..ff7746d15 --- /dev/null +++ b/luci-base/src/template_lualib.h @@ -0,0 +1,30 @@ +/* + * LuCI Template - Lua library header + * + * Copyright (C) 2009 Jo-Philipp Wich + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef _TEMPLATE_LUALIB_H_ +#define _TEMPLATE_LUALIB_H_ + +#include "template_parser.h" +#include "template_utils.h" +#include "template_lmo.h" + +#define TEMPLATE_LUALIB_META "template.parser" + +LUALIB_API int luaopen_luci_template_parser(lua_State *L); + +#endif diff --git a/luci-base/src/template_parser.c b/luci-base/src/template_parser.c new file mode 100644 index 000000000..0ef08c63d --- /dev/null +++ b/luci-base/src/template_parser.c @@ -0,0 +1,419 @@ +/* + * LuCI Template - Parser implementation + * + * Copyright (C) 2009-2012 Jo-Philipp Wich + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "template_parser.h" +#include "template_utils.h" +#include "template_lmo.h" + + +/* leading and trailing code for different types */ +const char *gen_code[9][2] = { + { NULL, NULL }, + { "write(\"", "\")" }, + { NULL, NULL }, + { "write(tostring(", " or \"\"))" }, + { "include(\"", "\")" }, + { "write(\"", "\")" }, + { "write(\"", "\")" }, + { NULL, " " }, + { NULL, NULL }, +}; + +/* Simple strstr() like function that takes len arguments for both haystack and needle. */ +static char *strfind(char *haystack, int hslen, const char *needle, int ndlen) +{ + int match = 0; + int i, j; + + for( i = 0; i < hslen; i++ ) + { + if( haystack[i] == needle[0] ) + { + match = ((ndlen == 1) || ((i + ndlen) <= hslen)); + + for( j = 1; (j < ndlen) && ((i + j) < hslen); j++ ) + { + if( haystack[i+j] != needle[j] ) + { + match = 0; + break; + } + } + + if( match ) + return &haystack[i]; + } + } + + return NULL; +} + +struct template_parser * template_open(const char *file) +{ + struct stat s; + struct template_parser *parser; + + if (!(parser = malloc(sizeof(*parser)))) + goto err; + + memset(parser, 0, sizeof(*parser)); + parser->fd = -1; + parser->file = file; + + if (stat(file, &s)) + goto err; + + if ((parser->fd = open(file, O_RDONLY)) < 0) + goto err; + + parser->size = s.st_size; + parser->data = mmap(NULL, parser->size, PROT_READ, MAP_PRIVATE, + parser->fd, 0); + + if (parser->data != MAP_FAILED) + { + parser->off = parser->data; + parser->cur_chunk.type = T_TYPE_INIT; + parser->cur_chunk.s = parser->data; + parser->cur_chunk.e = parser->data; + + return parser; + } + +err: + template_close(parser); + return NULL; +} + +struct template_parser * template_string(const char *str, uint32_t len) +{ + struct template_parser *parser; + + if (!str) { + errno = EINVAL; + goto err; + } + + if (!(parser = malloc(sizeof(*parser)))) + goto err; + + memset(parser, 0, sizeof(*parser)); + parser->fd = -1; + + parser->size = len; + parser->data = (char*)str; + + parser->off = parser->data; + parser->cur_chunk.type = T_TYPE_INIT; + parser->cur_chunk.s = parser->data; + parser->cur_chunk.e = parser->data; + + return parser; + +err: + template_close(parser); + return NULL; +} + +void template_close(struct template_parser *parser) +{ + if (!parser) + return; + + if (parser->gc != NULL) + free(parser->gc); + + /* if file is not set, we were parsing a string */ + if (parser->file) { + if ((parser->data != NULL) && (parser->data != MAP_FAILED)) + munmap(parser->data, parser->size); + + if (parser->fd >= 0) + close(parser->fd); + } + + free(parser); +} + +void template_text(struct template_parser *parser, const char *e) +{ + const char *s = parser->off; + + if (s < (parser->data + parser->size)) + { + if (parser->strip_after) + { + while ((s <= e) && isspace(*s)) + s++; + } + + parser->cur_chunk.type = T_TYPE_TEXT; + } + else + { + parser->cur_chunk.type = T_TYPE_EOF; + } + + parser->cur_chunk.line = parser->line; + parser->cur_chunk.s = s; + parser->cur_chunk.e = e; +} + +void template_code(struct template_parser *parser, const char *e) +{ + const char *s = parser->off; + + parser->strip_before = 0; + parser->strip_after = 0; + + if (*s == '-') + { + parser->strip_before = 1; + for (s++; (s <= e) && (*s == ' ' || *s == '\t'); s++); + } + + if (*(e-1) == '-') + { + parser->strip_after = 1; + for (e--; (e >= s) && (*e == ' ' || *e == '\t'); e--); + } + + switch (*s) + { + /* comment */ + case '#': + s++; + parser->cur_chunk.type = T_TYPE_COMMENT; + break; + + /* include */ + case '+': + s++; + parser->cur_chunk.type = T_TYPE_INCLUDE; + break; + + /* translate */ + case ':': + s++; + parser->cur_chunk.type = T_TYPE_I18N; + break; + + /* translate raw */ + case '_': + s++; + parser->cur_chunk.type = T_TYPE_I18N_RAW; + break; + + /* expr */ + case '=': + s++; + parser->cur_chunk.type = T_TYPE_EXPR; + break; + + /* code */ + default: + parser->cur_chunk.type = T_TYPE_CODE; + break; + } + + parser->cur_chunk.line = parser->line; + parser->cur_chunk.s = s; + parser->cur_chunk.e = e; +} + +static const char * +template_format_chunk(struct template_parser *parser, size_t *sz) +{ + const char *s, *p; + const char *head, *tail; + struct template_chunk *c = &parser->prv_chunk; + struct template_buffer *buf; + + *sz = 0; + s = parser->gc = NULL; + + if (parser->strip_before && c->type == T_TYPE_TEXT) + { + while ((c->e > c->s) && isspace(*(c->e - 1))) + c->e--; + } + + /* empty chunk */ + if (c->s == c->e) + { + if (c->type == T_TYPE_EOF) + { + *sz = 0; + s = NULL; + } + else + { + *sz = 1; + s = " "; + } + } + + /* format chunk */ + else if ((buf = buf_init(c->e - c->s)) != NULL) + { + if ((head = gen_code[c->type][0]) != NULL) + buf_append(buf, head, strlen(head)); + + switch (c->type) + { + case T_TYPE_TEXT: + luastr_escape(buf, c->s, c->e - c->s, 0); + break; + + case T_TYPE_EXPR: + buf_append(buf, c->s, c->e - c->s); + for (p = c->s; p < c->e; p++) + parser->line += (*p == '\n'); + break; + + case T_TYPE_INCLUDE: + luastr_escape(buf, c->s, c->e - c->s, 0); + break; + + case T_TYPE_I18N: + luastr_translate(buf, c->s, c->e - c->s, 1); + break; + + case T_TYPE_I18N_RAW: + luastr_translate(buf, c->s, c->e - c->s, 0); + break; + + case T_TYPE_CODE: + buf_append(buf, c->s, c->e - c->s); + for (p = c->s; p < c->e; p++) + parser->line += (*p == '\n'); + break; + } + + if ((tail = gen_code[c->type][1]) != NULL) + buf_append(buf, tail, strlen(tail)); + + *sz = buf_length(buf); + s = parser->gc = buf_destroy(buf); + + if (!*sz) + { + *sz = 1; + s = " "; + } + } + + return s; +} + +const char *template_reader(lua_State *L, void *ud, size_t *sz) +{ + struct template_parser *parser = ud; + int rem = parser->size - (parser->off - parser->data); + char *tag; + + parser->prv_chunk = parser->cur_chunk; + + /* free previous string */ + if (parser->gc) + { + free(parser->gc); + parser->gc = NULL; + } + + /* before tag */ + if (!parser->in_expr) + { + if ((tag = strfind(parser->off, rem, "<%", 2)) != NULL) + { + template_text(parser, tag); + parser->off = tag + 2; + parser->in_expr = 1; + } + else + { + template_text(parser, parser->data + parser->size); + parser->off = parser->data + parser->size; + } + } + + /* inside tag */ + else + { + if ((tag = strfind(parser->off, rem, "%>", 2)) != NULL) + { + template_code(parser, tag); + parser->off = tag + 2; + parser->in_expr = 0; + } + else + { + /* unexpected EOF */ + template_code(parser, parser->data + parser->size); + + *sz = 1; + return "\033"; + } + } + + return template_format_chunk(parser, sz); +} + +int template_error(lua_State *L, struct template_parser *parser) +{ + const char *err = luaL_checkstring(L, -1); + const char *off = parser->prv_chunk.s; + const char *ptr; + char msg[1024]; + int line = 0; + int chunkline = 0; + + if ((ptr = strfind((char *)err, strlen(err), "]:", 2)) != NULL) + { + chunkline = atoi(ptr + 2) - parser->prv_chunk.line; + + while (*ptr) + { + if (*ptr++ == ' ') + { + err = ptr; + break; + } + } + } + + if (strfind((char *)err, strlen(err), "'char(27)'", 10) != NULL) + { + off = parser->data + parser->size; + err = "'%>' expected before end of file"; + chunkline = 0; + } + + for (ptr = parser->data; ptr < off; ptr++) + if (*ptr == '\n') + line++; + + snprintf(msg, sizeof(msg), "Syntax error in %s:%d: %s", + parser->file ? parser->file : "[string]", line + chunkline, err ? err : "(unknown error)"); + + lua_pushnil(L); + lua_pushinteger(L, line + chunkline); + lua_pushstring(L, msg); + + return 3; +} diff --git a/luci-base/src/template_parser.h b/luci-base/src/template_parser.h new file mode 100644 index 000000000..2415e8707 --- /dev/null +++ b/luci-base/src/template_parser.h @@ -0,0 +1,80 @@ +/* + * LuCI Template - Parser header + * + * Copyright (C) 2009 Jo-Philipp Wich + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef _TEMPLATE_PARSER_H_ +#define _TEMPLATE_PARSER_H_ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + + +/* code types */ +#define T_TYPE_INIT 0 +#define T_TYPE_TEXT 1 +#define T_TYPE_COMMENT 2 +#define T_TYPE_EXPR 3 +#define T_TYPE_INCLUDE 4 +#define T_TYPE_I18N 5 +#define T_TYPE_I18N_RAW 6 +#define T_TYPE_CODE 7 +#define T_TYPE_EOF 8 + + +struct template_chunk { + const char *s; + const char *e; + int type; + int line; +}; + +/* parser state */ +struct template_parser { + int fd; + uint32_t size; + char *data; + char *off; + char *gc; + int line; + int in_expr; + int strip_before; + int strip_after; + struct template_chunk prv_chunk; + struct template_chunk cur_chunk; + const char *file; +}; + +struct template_parser * template_open(const char *file); +struct template_parser * template_string(const char *str, uint32_t len); +void template_close(struct template_parser *parser); + +const char *template_reader(lua_State *L, void *ud, size_t *sz); +int template_error(lua_State *L, struct template_parser *parser); + +#endif diff --git a/luci-base/src/template_utils.c b/luci-base/src/template_utils.c new file mode 100644 index 000000000..3979487f1 --- /dev/null +++ b/luci-base/src/template_utils.c @@ -0,0 +1,484 @@ +/* + * LuCI Template - Utility functions + * + * Copyright (C) 2010 Jo-Philipp Wich + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "template_utils.h" +#include "template_lmo.h" + +/* initialize a buffer object */ +struct template_buffer * buf_init(int size) +{ + struct template_buffer *buf; + + if (size <= 0) + size = 1024; + + buf = (struct template_buffer *)malloc(sizeof(struct template_buffer)); + + if (buf != NULL) + { + buf->fill = 0; + buf->size = size; + buf->data = malloc(buf->size); + + if (buf->data != NULL) + { + buf->dptr = buf->data; + buf->data[0] = 0; + + return buf; + } + + free(buf); + } + + return NULL; +} + +/* grow buffer */ +int buf_grow(struct template_buffer *buf, int size) +{ + unsigned int off = (buf->dptr - buf->data); + char *data; + + if (size <= 0) + size = 1024; + + data = realloc(buf->data, buf->size + size); + + if (data != NULL) + { + buf->data = data; + buf->dptr = data + off; + buf->size += size; + + return buf->size; + } + + return 0; +} + +/* put one char into buffer object */ +int buf_putchar(struct template_buffer *buf, char c) +{ + if( ((buf->fill + 1) >= buf->size) && !buf_grow(buf, 0) ) + return 0; + + *(buf->dptr++) = c; + *(buf->dptr) = 0; + + buf->fill++; + return 1; +} + +/* append data to buffer */ +int buf_append(struct template_buffer *buf, const char *s, int len) +{ + if ((buf->fill + len + 1) >= buf->size) + { + if (!buf_grow(buf, len + 1)) + return 0; + } + + memcpy(buf->dptr, s, len); + buf->fill += len; + buf->dptr += len; + + *(buf->dptr) = 0; + + return len; +} + +/* read buffer length */ +int buf_length(struct template_buffer *buf) +{ + return buf->fill; +} + +/* destroy buffer object and return pointer to data */ +char * buf_destroy(struct template_buffer *buf) +{ + char *data = buf->data; + + free(buf); + return data; +} + + +/* calculate the number of expected continuation chars */ +static inline int mb_num_chars(unsigned char c) +{ + if ((c & 0xE0) == 0xC0) + return 2; + else if ((c & 0xF0) == 0xE0) + return 3; + else if ((c & 0xF8) == 0xF0) + return 4; + else if ((c & 0xFC) == 0xF8) + return 5; + else if ((c & 0xFE) == 0xFC) + return 6; + + return 1; +} + +/* test whether the given byte is a valid continuation char */ +static inline int mb_is_cont(unsigned char c) +{ + return ((c >= 0x80) && (c <= 0xBF)); +} + +/* test whether the byte sequence at the given pointer with the given + * length is the shortest possible representation of the code point */ +static inline int mb_is_shortest(unsigned char *s, int n) +{ + switch (n) + { + case 2: + /* 1100000x (10xxxxxx) */ + return !(((*s >> 1) == 0x60) && + ((*(s+1) >> 6) == 0x02)); + + case 3: + /* 11100000 100xxxxx (10xxxxxx) */ + return !((*s == 0xE0) && + ((*(s+1) >> 5) == 0x04) && + ((*(s+2) >> 6) == 0x02)); + + case 4: + /* 11110000 1000xxxx (10xxxxxx 10xxxxxx) */ + return !((*s == 0xF0) && + ((*(s+1) >> 4) == 0x08) && + ((*(s+2) >> 6) == 0x02) && + ((*(s+3) >> 6) == 0x02)); + + case 5: + /* 11111000 10000xxx (10xxxxxx 10xxxxxx 10xxxxxx) */ + return !((*s == 0xF8) && + ((*(s+1) >> 3) == 0x10) && + ((*(s+2) >> 6) == 0x02) && + ((*(s+3) >> 6) == 0x02) && + ((*(s+4) >> 6) == 0x02)); + + case 6: + /* 11111100 100000xx (10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx) */ + return !((*s == 0xF8) && + ((*(s+1) >> 2) == 0x20) && + ((*(s+2) >> 6) == 0x02) && + ((*(s+3) >> 6) == 0x02) && + ((*(s+4) >> 6) == 0x02) && + ((*(s+5) >> 6) == 0x02)); + } + + return 1; +} + +/* test whether the byte sequence at the given pointer with the given + * length is an UTF-16 surrogate */ +static inline int mb_is_surrogate(unsigned char *s, int n) +{ + return ((n == 3) && (*s == 0xED) && (*(s+1) >= 0xA0) && (*(s+1) <= 0xBF)); +} + +/* test whether the byte sequence at the given pointer with the given + * length is an illegal UTF-8 code point */ +static inline int mb_is_illegal(unsigned char *s, int n) +{ + return ((n == 3) && (*s == 0xEF) && (*(s+1) == 0xBF) && + (*(s+2) >= 0xBE) && (*(s+2) <= 0xBF)); +} + + +/* scan given source string, validate UTF-8 sequence and store result + * in given buffer object */ +static int _validate_utf8(unsigned char **s, int l, struct template_buffer *buf) +{ + unsigned char *ptr = *s; + unsigned int o = 0, v, n; + + /* ascii byte without null */ + if ((*(ptr+0) >= 0x01) && (*(ptr+0) <= 0x7F)) + { + if (!buf_putchar(buf, *ptr++)) + return 0; + + o = 1; + } + + /* multi byte sequence */ + else if ((n = mb_num_chars(*ptr)) > 1) + { + /* count valid chars */ + for (v = 1; (v <= n) && ((o+v) < l) && mb_is_cont(*(ptr+v)); v++); + + switch (n) + { + case 6: + case 5: + /* five and six byte sequences are always invalid */ + if (!buf_putchar(buf, '?')) + return 0; + + break; + + default: + /* if the number of valid continuation bytes matches the + * expected number and if the sequence is legal, copy + * the bytes to the destination buffer */ + if ((v == n) && mb_is_shortest(ptr, n) && + !mb_is_surrogate(ptr, n) && !mb_is_illegal(ptr, n)) + { + /* copy sequence */ + if (!buf_append(buf, (char *)ptr, n)) + return 0; + } + + /* the found sequence is illegal, skip it */ + else + { + /* invalid sequence */ + if (!buf_putchar(buf, '?')) + return 0; + } + + break; + } + + /* advance beyound the last found valid continuation char */ + o = v; + ptr += v; + } + + /* invalid byte (0x00) */ + else + { + if (!buf_putchar(buf, '?')) /* or 0xEF, 0xBF, 0xBD */ + return 0; + + o = 1; + ptr++; + } + + *s = ptr; + return o; +} + +/* sanitize given string and replace all invalid UTF-8 sequences with "?" */ +char * utf8(const char *s, unsigned int l) +{ + struct template_buffer *buf = buf_init(l); + unsigned char *ptr = (unsigned char *)s; + unsigned int v, o; + + if (!buf) + return NULL; + + for (o = 0; o < l; o++) + { + /* ascii char */ + if ((*ptr >= 0x01) && (*ptr <= 0x7F)) + { + if (!buf_putchar(buf, (char)*ptr++)) + break; + } + + /* invalid byte or multi byte sequence */ + else + { + if (!(v = _validate_utf8(&ptr, l - o, buf))) + break; + + o += (v - 1); + } + } + + return buf_destroy(buf); +} + +/* Sanitize given string and strip all invalid XML bytes + * Validate UTF-8 sequences + * Escape XML control chars */ +char * pcdata(const char *s, unsigned int l) +{ + struct template_buffer *buf = buf_init(l); + unsigned char *ptr = (unsigned char *)s; + unsigned int o, v; + char esq[8]; + int esl; + + if (!buf) + return NULL; + + for (o = 0; o < l; o++) + { + /* Invalid XML bytes */ + if (((*ptr >= 0x00) && (*ptr <= 0x08)) || + ((*ptr >= 0x0B) && (*ptr <= 0x0C)) || + ((*ptr >= 0x0E) && (*ptr <= 0x1F)) || + (*ptr == 0x7F)) + { + ptr++; + } + + /* Escapes */ + else if ((*ptr == 0x26) || + (*ptr == 0x27) || + (*ptr == 0x22) || + (*ptr == 0x3C) || + (*ptr == 0x3E)) + { + esl = snprintf(esq, sizeof(esq), "&#%i;", *ptr); + + if (!buf_append(buf, esq, esl)) + break; + + ptr++; + } + + /* ascii char */ + else if (*ptr <= 0x7F) + { + buf_putchar(buf, (char)*ptr++); + } + + /* multi byte sequence */ + else + { + if (!(v = _validate_utf8(&ptr, l - o, buf))) + break; + + o += (v - 1); + } + } + + return buf_destroy(buf); +} + +char * striptags(const char *s, unsigned int l) +{ + struct template_buffer *buf = buf_init(l); + unsigned char *ptr = (unsigned char *)s; + unsigned char *end = ptr + l; + unsigned char *tag; + unsigned char prev; + char esq[8]; + int esl; + + for (prev = ' '; ptr < end; ptr++) + { + if ((*ptr == '<') && ((ptr + 2) < end) && + ((*(ptr + 1) == '/') || isalpha(*(ptr + 1)))) + { + for (tag = ptr; tag < end; tag++) + { + if (*tag == '>') + { + if (!isspace(prev)) + buf_putchar(buf, ' '); + + ptr = tag; + prev = ' '; + break; + } + } + } + else if (isspace(*ptr)) + { + if (!isspace(prev)) + buf_putchar(buf, *ptr); + + prev = *ptr; + } + else + { + switch(*ptr) + { + case '"': + case '\'': + case '<': + case '>': + case '&': + esl = snprintf(esq, sizeof(esq), "&#%i;", *ptr); + buf_append(buf, esq, esl); + break; + + default: + buf_putchar(buf, *ptr); + break; + } + + prev = *ptr; + } + } + + return buf_destroy(buf); +} + +void luastr_escape(struct template_buffer *out, const char *s, unsigned int l, + int escape_xml) +{ + int esl; + char esq[8]; + char *ptr; + + for (ptr = (char *)s; ptr < (s + l); ptr++) + { + switch (*ptr) + { + case '\\': + buf_append(out, "\\\\", 2); + break; + + case '"': + if (escape_xml) + buf_append(out, """, 5); + else + buf_append(out, "\\\"", 2); + break; + + case '\n': + buf_append(out, "\\n", 2); + break; + + case '\'': + case '&': + case '<': + case '>': + if (escape_xml) + { + esl = snprintf(esq, sizeof(esq), "&#%i;", *ptr); + buf_append(out, esq, esl); + break; + } + + default: + buf_putchar(out, *ptr); + } + } +} + +void luastr_translate(struct template_buffer *out, const char *s, unsigned int l, + int escape_xml) +{ + char *tr; + int trlen; + + if (!lmo_translate(s, l, &tr, &trlen)) + luastr_escape(out, tr, trlen, escape_xml); + else + luastr_escape(out, s, l, escape_xml); +} diff --git a/luci-base/src/template_utils.h b/luci-base/src/template_utils.h new file mode 100644 index 000000000..32a79f93b --- /dev/null +++ b/luci-base/src/template_utils.h @@ -0,0 +1,49 @@ +/* + * LuCI Template - Utility header + * + * Copyright (C) 2010-2012 Jo-Philipp Wich + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef _TEMPLATE_UTILS_H_ +#define _TEMPLATE_UTILS_H_ + +#include +#include +#include + + +/* buffer object */ +struct template_buffer { + char *data; + char *dptr; + unsigned int size; + unsigned int fill; +}; + +struct template_buffer * buf_init(int size); +int buf_grow(struct template_buffer *buf, int size); +int buf_putchar(struct template_buffer *buf, char c); +int buf_append(struct template_buffer *buf, const char *s, int len); +int buf_length(struct template_buffer *buf); +char * buf_destroy(struct template_buffer *buf); + +char * utf8(const char *s, unsigned int l); +char * pcdata(const char *s, unsigned int l); +char * striptags(const char *s, unsigned int l); + +void luastr_escape(struct template_buffer *out, const char *s, unsigned int l, int escape_xml); +void luastr_translate(struct template_buffer *out, const char *s, unsigned int l, int escape_xml); + +#endif diff --git a/luci-mod-admin-full/Makefile b/luci-mod-admin-full/Makefile new file mode 100644 index 000000000..f36a13194 --- /dev/null +++ b/luci-mod-admin-full/Makefile @@ -0,0 +1,18 @@ +# +# Copyright (C) 2008-2014 The LuCI Team +# Copyright (C) 2017 Ycarus (Yannick Chabanois) +# +# This is free software, licensed under the Apache License, Version 2.0 . +# + +include $(TOPDIR)/rules.mk + +LUCI_TITLE:=LuCI Administration - full-featured for full control +LUCI_DEPENDS:=+luci-base +luci-app-firewall + +PKG_BUILD_DEPENDS:=iwinfo + +include ../luci/luci.mk + +# call BuildPackage - OpenWrt buildroot signature + diff --git a/luci-mod-admin-full/htdocs/luci-static/resources/bandwidth.svg b/luci-mod-admin-full/htdocs/luci-static/resources/bandwidth.svg new file mode 100644 index 000000000..4f9148833 --- /dev/null +++ b/luci-mod-admin-full/htdocs/luci-static/resources/bandwidth.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/luci-mod-admin-full/htdocs/luci-static/resources/connections.svg b/luci-mod-admin-full/htdocs/luci-static/resources/connections.svg new file mode 100644 index 000000000..816f7e6a7 --- /dev/null +++ b/luci-mod-admin-full/htdocs/luci-static/resources/connections.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/luci-mod-admin-full/htdocs/luci-static/resources/load.svg b/luci-mod-admin-full/htdocs/luci-static/resources/load.svg new file mode 100644 index 000000000..d6817027a --- /dev/null +++ b/luci-mod-admin-full/htdocs/luci-static/resources/load.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/luci-mod-admin-full/htdocs/luci-static/resources/wifirate.svg b/luci-mod-admin-full/htdocs/luci-static/resources/wifirate.svg new file mode 100644 index 000000000..d3e848b93 --- /dev/null +++ b/luci-mod-admin-full/htdocs/luci-static/resources/wifirate.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/luci-mod-admin-full/htdocs/luci-static/resources/wireless.svg b/luci-mod-admin-full/htdocs/luci-static/resources/wireless.svg new file mode 100644 index 000000000..99d9840f6 --- /dev/null +++ b/luci-mod-admin-full/htdocs/luci-static/resources/wireless.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/luci-mod-admin-full/luasrc/controller/admin/filebrowser.lua b/luci-mod-admin-full/luasrc/controller/admin/filebrowser.lua new file mode 100644 index 000000000..257261513 --- /dev/null +++ b/luci-mod-admin-full/luasrc/controller/admin/filebrowser.lua @@ -0,0 +1,9 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2008 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +module("luci.controller.admin.filebrowser", package.seeall) + +function index() + entry( {"admin", "filebrowser"}, template("cbi/filebrowser") ).leaf = true +end diff --git a/luci-mod-admin-full/luasrc/controller/admin/index.lua b/luci-mod-admin-full/luasrc/controller/admin/index.lua new file mode 100644 index 000000000..cc8c2e3ae --- /dev/null +++ b/luci-mod-admin-full/luasrc/controller/admin/index.lua @@ -0,0 +1,42 @@ +-- Copyright 2008 Steven Barth +-- Licensed to the public under the Apache License 2.0. + +module("luci.controller.admin.index", package.seeall) + +function index() + local root = node() + if not root.target then + root.target = alias("admin") + root.index = true + end + + local page = node("admin") + page.target = firstchild() + page.title = _("Administration") + page.order = 10 + page.sysauth = "root" + page.sysauth_authenticator = "htmlauth" + page.ucidata = true + page.index = true + + -- Empty services menu to be populated by addons + entry({"admin", "services"}, firstchild(), _("Services"), 40).index = true + + entry({"admin", "logout"}, call("action_logout"), _("Logout"), 90) +end + +function action_logout() + local dsp = require "luci.dispatcher" + local utl = require "luci.util" + local sid = dsp.context.authsession + + if sid then + utl.ubus("session", "destroy", { ubus_rpc_session = sid }) + + luci.http.header("Set-Cookie", "sysauth=%s; expires=%s; path=%s/" %{ + sid, 'Thu, 01 Jan 1970 01:00:00 GMT', dsp.build_url() + }) + end + + luci.http.redirect(dsp.build_url()) +end diff --git a/luci-mod-admin-full/luasrc/controller/admin/network.lua b/luci-mod-admin-full/luasrc/controller/admin/network.lua new file mode 100644 index 000000000..2cb2108b9 --- /dev/null +++ b/luci-mod-admin-full/luasrc/controller/admin/network.lua @@ -0,0 +1,429 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2011-2015 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +module("luci.controller.admin.network", package.seeall) + +function index() + local uci = require("luci.model.uci").cursor() + local page + + page = node("admin", "network") + page.target = firstchild() + page.title = _("Network") + page.order = 50 + page.index = true + +-- if page.inreq then + local has_switch = false + + uci:foreach("network", "switch", + function(s) + has_switch = true + return false + end) + + if has_switch then + page = node("admin", "network", "vlan") + page.target = cbi("admin_network/vlan") + page.title = _("Switch") + page.order = 20 + + page = entry({"admin", "network", "switch_status"}, call("switch_status"), nil) + page.leaf = true + end + + + local has_wifi = false + + uci:foreach("wireless", "wifi-device", + function(s) + has_wifi = true + return false + end) + + if has_wifi then + page = entry({"admin", "network", "wireless_join"}, post("wifi_join"), nil) + page.leaf = true + + page = entry({"admin", "network", "wireless_add"}, post("wifi_add"), nil) + page.leaf = true + + page = entry({"admin", "network", "wireless_delete"}, post("wifi_delete"), nil) + page.leaf = true + + page = entry({"admin", "network", "wireless_status"}, call("wifi_status"), nil) + page.leaf = true + + page = entry({"admin", "network", "wireless_reconnect"}, post("wifi_reconnect"), nil) + page.leaf = true + + page = entry({"admin", "network", "wireless_shutdown"}, post("wifi_shutdown"), nil) + page.leaf = true + + page = entry({"admin", "network", "wireless"}, arcombine(template("admin_network/wifi_overview"), cbi("admin_network/wifi")), _("Wireless"), 15) + page.leaf = true + page.subindex = true + + if page.inreq then + local wdev + local net = require "luci.model.network".init(uci) + for _, wdev in ipairs(net:get_wifidevs()) do + local wnet + for _, wnet in ipairs(wdev:get_wifinets()) do + entry( + {"admin", "network", "wireless", wnet:id()}, + alias("admin", "network", "wireless"), + wdev:name() .. ": " .. wnet:shortname() + ) + end + end + end + end + + + page = entry({"admin", "network", "iface_add"}, cbi("admin_network/iface_add"), nil) + page.leaf = true + + page = entry({"admin", "network", "iface_delete"}, post("iface_delete"), nil) + page.leaf = true + + page = entry({"admin", "network", "iface_status"}, call("iface_status"), nil) + page.leaf = true + + page = entry({"admin", "network", "iface_reconnect"}, post("iface_reconnect"), nil) + page.leaf = true + + page = entry({"admin", "network", "iface_shutdown"}, post("iface_shutdown"), nil) + page.leaf = true + + page = entry({"admin", "network", "network"}, arcombine(cbi("admin_network/network"), cbi("admin_network/ifaces")), _("Interfaces"), 10) + page.leaf = true + page.subindex = true + + if page.inreq then + uci:foreach("network", "interface", + function (section) + local ifc = section[".name"] + if ifc ~= "loopback" then + entry({"admin", "network", "network", ifc}, + true, ifc:upper()) + end + end) + end + + + if nixio.fs.access("/etc/config/dhcp") then + page = node("admin", "network", "dhcp") + page.target = cbi("admin_network/dhcp") + page.title = _("DHCP and DNS") + page.order = 30 + + page = entry({"admin", "network", "dhcplease_status"}, call("lease_status"), nil) + page.leaf = true + + page = node("admin", "network", "hosts") + page.target = cbi("admin_network/hosts") + page.title = _("Hostnames") + page.order = 40 + end + + page = node("admin", "network", "routes") + page.target = cbi("admin_network/routes") + page.title = _("Static Routes") + page.order = 50 + + page = node("admin", "network", "diagnostics") + page.target = template("admin_network/diagnostics") + page.title = _("Diagnostics") + page.order = 60 + + page = entry({"admin", "network", "diag_ping"}, post("diag_ping"), nil) + page.leaf = true + + page = entry({"admin", "network", "diag_nslookup"}, post("diag_nslookup"), nil) + page.leaf = true + + page = entry({"admin", "network", "diag_traceroute"}, post("diag_traceroute"), nil) + page.leaf = true + + page = entry({"admin", "network", "diag_ping6"}, post("diag_ping6"), nil) + page.leaf = true + + page = entry({"admin", "network", "diag_traceroute6"}, post("diag_traceroute6"), nil) + page.leaf = true +-- end +end + +function wifi_join() + local tpl = require "luci.template" + local http = require "luci.http" + local dev = http.formvalue("device") + local ssid = http.formvalue("join") + + if dev and ssid then + local cancel = (http.formvalue("cancel") or http.formvalue("cbi.cancel")) + if not cancel then + local cbi = require "luci.cbi" + local map = luci.cbi.load("admin_network/wifi_add")[1] + + if map:parse() ~= cbi.FORM_DONE then + tpl.render("header") + map:render() + tpl.render("footer") + end + + return + end + end + + tpl.render("admin_network/wifi_join") +end + +function wifi_add() + local dev = luci.http.formvalue("device") + local ntm = require "luci.model.network".init() + + dev = dev and ntm:get_wifidev(dev) + + if dev then + local net = dev:add_wifinet({ + mode = "ap", + ssid = "OpenWrt", + encryption = "none" + }) + + ntm:save("wireless") + luci.http.redirect(net:adminlink()) + end +end + +function wifi_delete(network) + local ntm = require "luci.model.network".init() + local wnet = ntm:get_wifinet(network) + if wnet then + local dev = wnet:get_device() + local nets = wnet:get_networks() + if dev then + ntm:del_wifinet(network) + ntm:commit("wireless") + local _, net + for _, net in ipairs(nets) do + if net:is_empty() then + ntm:del_network(net:name()) + ntm:commit("network") + end + end + luci.sys.call("env -i /bin/ubus call network reload >/dev/null 2>/dev/null") + end + end + + luci.http.redirect(luci.dispatcher.build_url("admin/network/wireless")) +end + +function iface_status(ifaces) + local netm = require "luci.model.network".init() + local rv = { } + + local iface + for iface in ifaces:gmatch("[%w%.%-_]+") do + local net = netm:get_network(iface) + local device = net and net:get_interface() + if device then + local data = { + id = iface, + proto = net:proto(), + uptime = net:uptime(), + gwaddr = net:gwaddr(), + ipaddrs = net:ipaddrs(), + ip6addrs = net:ip6addrs(), + dnsaddrs = net:dnsaddrs(), + ip6prefix = net:ip6prefix(), + name = device:shortname(), + type = device:type(), + ifname = device:name(), + macaddr = device:mac(), + is_up = device:is_up(), + rx_bytes = device:rx_bytes(), + tx_bytes = device:tx_bytes(), + rx_packets = device:rx_packets(), + tx_packets = device:tx_packets(), + + subdevices = { } + } + + for _, device in ipairs(net:get_interfaces() or {}) do + data.subdevices[#data.subdevices+1] = { + name = device:shortname(), + type = device:type(), + ifname = device:name(), + macaddr = device:mac(), + macaddr = device:mac(), + is_up = device:is_up(), + rx_bytes = device:rx_bytes(), + tx_bytes = device:tx_bytes(), + rx_packets = device:rx_packets(), + tx_packets = device:tx_packets(), + } + end + + rv[#rv+1] = data + else + rv[#rv+1] = { + id = iface, + name = iface, + type = "ethernet" + } + end + end + + if #rv > 0 then + luci.http.prepare_content("application/json") + luci.http.write_json(rv) + return + end + + luci.http.status(404, "No such device") +end + +function iface_reconnect(iface) + local netmd = require "luci.model.network".init() + local net = netmd:get_network(iface) + if net then + luci.sys.call("env -i /sbin/ifup %q >/dev/null 2>/dev/null" % iface) + luci.http.status(200, "Reconnected") + return + end + + luci.http.status(404, "No such interface") +end + +function iface_shutdown(iface) + local netmd = require "luci.model.network".init() + local net = netmd:get_network(iface) + if net then + luci.sys.call("env -i /sbin/ifdown %q >/dev/null 2>/dev/null" % iface) + luci.http.status(200, "Shutdown") + return + end + + luci.http.status(404, "No such interface") +end + +function iface_delete(iface) + local netmd = require "luci.model.network".init() + local net = netmd:del_network(iface) + if net then + luci.sys.call("env -i /sbin/ifdown %q >/dev/null 2>/dev/null" % iface) + luci.http.redirect(luci.dispatcher.build_url("admin/network/network")) + netmd:commit("network") + netmd:commit("wireless") + return + end + + luci.http.status(404, "No such interface") +end + +function wifi_status(devs) + local s = require "luci.tools.status" + local rv = { } + + local dev + for dev in devs:gmatch("[%w%.%-]+") do + rv[#rv+1] = s.wifi_network(dev) + end + + if #rv > 0 then + luci.http.prepare_content("application/json") + luci.http.write_json(rv) + return + end + + luci.http.status(404, "No such device") +end + +local function wifi_reconnect_shutdown(shutdown, wnet) + local netmd = require "luci.model.network".init() + local net = netmd:get_wifinet(wnet) + local dev = net:get_device() + if dev and net then + dev:set("disabled", nil) + net:set("disabled", shutdown and 1 or nil) + netmd:commit("wireless") + + luci.sys.call("env -i /bin/ubus call network reload >/dev/null 2>/dev/null") + luci.http.status(200, shutdown and "Shutdown" or "Reconnected") + + return + end + + luci.http.status(404, "No such radio") +end + +function wifi_reconnect(wnet) + wifi_reconnect_shutdown(false, wnet) +end + +function wifi_shutdown(wnet) + wifi_reconnect_shutdown(true, wnet) +end + +function lease_status() + local s = require "luci.tools.status" + + luci.http.prepare_content("application/json") + luci.http.write('[') + luci.http.write_json(s.dhcp_leases()) + luci.http.write(',') + luci.http.write_json(s.dhcp6_leases()) + luci.http.write(']') +end + +function switch_status(switches) + local s = require "luci.tools.status" + + luci.http.prepare_content("application/json") + luci.http.write_json(s.switch_status(switches)) +end + +function diag_command(cmd, addr) + if addr and addr:match("^[a-zA-Z0-9%-%.:_]+$") then + luci.http.prepare_content("text/plain") + + local util = io.popen(cmd % addr) + if util then + while true do + local ln = util:read("*l") + if not ln then break end + luci.http.write(ln) + luci.http.write("\n") + end + + util:close() + end + + return + end + + luci.http.status(500, "Bad address") +end + +function diag_ping(addr) + diag_command("ping -c 5 -W 1 %q 2>&1", addr) +end + +function diag_traceroute(addr) + diag_command("traceroute -q 1 -w 1 -n %q 2>&1", addr) +end + +function diag_nslookup(addr) + diag_command("nslookup %q 2>&1", addr) +end + +function diag_ping6(addr) + diag_command("ping6 -c 5 %q 2>&1", addr) +end + +function diag_traceroute6(addr) + diag_command("traceroute6 -q 1 -w 2 -n %q 2>&1", addr) +end diff --git a/luci-mod-admin-full/luasrc/controller/admin/status.lua b/luci-mod-admin-full/luasrc/controller/admin/status.lua new file mode 100644 index 000000000..ad575e0d2 --- /dev/null +++ b/luci-mod-admin-full/luasrc/controller/admin/status.lua @@ -0,0 +1,152 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2011 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +module("luci.controller.admin.status", package.seeall) + +function index() + entry({"admin", "status"}, alias("admin", "status", "overview"), _("Status"), 20).index = true + entry({"admin", "status", "overview"}, template("admin_status/index"), _("Overview"), 1) + + entry({"admin", "status", "iptables"}, template("admin_status/iptables"), _("Firewall"), 2).leaf = true + entry({"admin", "status", "iptables_action"}, post("action_iptables")).leaf = true + + entry({"admin", "status", "routes"}, template("admin_status/routes"), _("Routes"), 3) + entry({"admin", "status", "syslog"}, call("action_syslog"), _("System Log"), 4) + entry({"admin", "status", "dmesg"}, call("action_dmesg"), _("Kernel Log"), 5) + entry({"admin", "status", "processes"}, cbi("admin_status/processes"), _("Processes"), 6) + + entry({"admin", "status", "realtime"}, alias("admin", "status", "realtime", "load"), _("Realtime Graphs"), 7) + + entry({"admin", "status", "realtime", "load"}, template("admin_status/load"), _("Load"), 1).leaf = true + entry({"admin", "status", "realtime", "load_status"}, call("action_load")).leaf = true + + entry({"admin", "status", "realtime", "bandwidth"}, template("admin_status/bandwidth"), _("Traffic"), 2).leaf = true + entry({"admin", "status", "realtime", "bandwidth_status"}, call("action_bandwidth")).leaf = true + + if nixio.fs.access("/etc/config/wireless") then + entry({"admin", "status", "realtime", "wireless"}, template("admin_status/wireless"), _("Wireless"), 3).leaf = true + entry({"admin", "status", "realtime", "wireless_status"}, call("action_wireless")).leaf = true + end + + entry({"admin", "status", "realtime", "connections"}, template("admin_status/connections"), _("Connections"), 4).leaf = true + entry({"admin", "status", "realtime", "connections_status"}, call("action_connections")).leaf = true + + entry({"admin", "status", "nameinfo"}, call("action_nameinfo")).leaf = true +end + +function action_syslog() + local syslog = luci.sys.syslog() + luci.template.render("admin_status/syslog", {syslog=syslog}) +end + +function action_dmesg() + local dmesg = luci.sys.dmesg() + luci.template.render("admin_status/dmesg", {dmesg=dmesg}) +end + +function action_iptables() + if luci.http.formvalue("zero") then + if luci.http.formvalue("family") == "6" then + luci.util.exec("/usr/sbin/ip6tables -Z") + else + luci.util.exec("/usr/sbin/iptables -Z") + end + elseif luci.http.formvalue("restart") then + luci.util.exec("/etc/init.d/firewall restart") + end + + luci.http.redirect(luci.dispatcher.build_url("admin/status/iptables")) +end + +function action_bandwidth(iface) + luci.http.prepare_content("application/json") + + local bwc = io.popen("luci-bwc -i %q 2>/dev/null" % iface) + if bwc then + luci.http.write("[") + + while true do + local ln = bwc:read("*l") + if not ln then break end + luci.http.write(ln) + end + + luci.http.write("]") + bwc:close() + end +end + +function action_wireless(iface) + luci.http.prepare_content("application/json") + + local bwc = io.popen("luci-bwc -r %q 2>/dev/null" % iface) + if bwc then + luci.http.write("[") + + while true do + local ln = bwc:read("*l") + if not ln then break end + luci.http.write(ln) + end + + luci.http.write("]") + bwc:close() + end +end + +function action_load() + luci.http.prepare_content("application/json") + + local bwc = io.popen("luci-bwc -l 2>/dev/null") + if bwc then + luci.http.write("[") + + while true do + local ln = bwc:read("*l") + if not ln then break end + luci.http.write(ln) + end + + luci.http.write("]") + bwc:close() + end +end + +function action_connections() + local sys = require "luci.sys" + + luci.http.prepare_content("application/json") + + luci.http.write("{ connections: ") + luci.http.write_json(sys.net.conntrack()) + + local bwc = io.popen("luci-bwc -c 2>/dev/null") + if bwc then + luci.http.write(", statistics: [") + + while true do + local ln = bwc:read("*l") + if not ln then break end + luci.http.write(ln) + end + + luci.http.write("]") + bwc:close() + end + + luci.http.write(" }") +end + +function action_nameinfo(...) + local i + local rv = { } + for i = 1, select('#', ...) do + local addr = select(i, ...) + local fqdn = nixio.getnameinfo(addr) + rv[addr] = fqdn or (addr:match(":") and "[%s]" % addr or addr) + end + + luci.http.prepare_content("application/json") + luci.http.write_json(rv) +end diff --git a/luci-mod-admin-full/luasrc/controller/admin/system.lua b/luci-mod-admin-full/luasrc/controller/admin/system.lua new file mode 100644 index 000000000..5478afa3e --- /dev/null +++ b/luci-mod-admin-full/luasrc/controller/admin/system.lua @@ -0,0 +1,439 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2008-2011 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +module("luci.controller.admin.system", package.seeall) + +function index() + local fs = require "nixio.fs" + + entry({"admin", "system"}, alias("admin", "system", "system"), _("System"), 30).index = true + entry({"admin", "system", "system"}, cbi("admin_system/system"), _("System"), 1) + entry({"admin", "system", "clock_status"}, post_on({ set = true }, "action_clock_status")) + + entry({"admin", "system", "admin"}, cbi("admin_system/admin"), _("Administration"), 2) + + if fs.access("/bin/opkg") then + entry({"admin", "system", "packages"}, post_on({ exec = "1" }, "action_packages"), _("Software"), 10) + entry({"admin", "system", "packages", "ipkg"}, form("admin_system/ipkg")) + end + + entry({"admin", "system", "startup"}, form("admin_system/startup"), _("Startup"), 45) + entry({"admin", "system", "crontab"}, form("admin_system/crontab"), _("Scheduled Tasks"), 46) + + if fs.access("/sbin/block") and fs.access("/etc/config/fstab") then + entry({"admin", "system", "fstab"}, cbi("admin_system/fstab"), _("Mount Points"), 50) + entry({"admin", "system", "fstab", "mount"}, cbi("admin_system/fstab/mount"), nil).leaf = true + entry({"admin", "system", "fstab", "swap"}, cbi("admin_system/fstab/swap"), nil).leaf = true + end + + if fs.access("/sys/class/leds") then + entry({"admin", "system", "leds"}, cbi("admin_system/leds"), _("LED Configuration"), 60) + end + + entry({"admin", "system", "flashops"}, call("action_flashops"), _("Backup / Flash Firmware"), 70) + entry({"admin", "system", "flashops", "reset"}, post("action_reset")) + entry({"admin", "system", "flashops", "backup"}, post("action_backup")) + entry({"admin", "system", "flashops", "backupfiles"}, form("admin_system/backupfiles")) + + -- call() instead of post() due to upload handling! + entry({"admin", "system", "flashops", "restore"}, call("action_restore")) + entry({"admin", "system", "flashops", "sysupgrade"}, call("action_sysupgrade")) + + entry({"admin", "system", "reboot"}, template("admin_system/reboot"), _("Reboot"), 90) + entry({"admin", "system", "reboot", "call"}, post("action_reboot")) +end + +function action_clock_status() + local set = tonumber(luci.http.formvalue("set")) + if set ~= nil and set > 0 then + local date = os.date("*t", set) + if date then + luci.sys.call("date -s '%04d-%02d-%02d %02d:%02d:%02d'" %{ + date.year, date.month, date.day, date.hour, date.min, date.sec + }) + luci.sys.call("/etc/init.d/sysfixtime restart") + end + end + + luci.http.prepare_content("application/json") + luci.http.write_json({ timestring = os.date("%c") }) +end + +function action_packages() + local fs = require "nixio.fs" + local ipkg = require "luci.model.ipkg" + local submit = (luci.http.formvalue("exec") == "1") + local update, upgrade + local changes = false + local install = { } + local remove = { } + local stdout = { "" } + local stderr = { "" } + local out, err + + -- Display + local display = luci.http.formvalue("display") or "installed" + + -- Letter + local letter = string.byte(luci.http.formvalue("letter") or "A", 1) + letter = (letter == 35 or (letter >= 65 and letter <= 90)) and letter or 65 + + -- Search query + local query = luci.http.formvalue("query") + query = (query ~= '') and query or nil + + + -- Modifying actions + if submit then + -- Packets to be installed + local ninst = luci.http.formvalue("install") + local uinst = nil + + -- Install from URL + local url = luci.http.formvalue("url") + if url and url ~= '' then + uinst = url + end + + -- Do install + if ninst then + install[ninst], out, err = ipkg.install(ninst) + stdout[#stdout+1] = out + stderr[#stderr+1] = err + changes = true + end + + if uinst then + local pkg + for pkg in luci.util.imatch(uinst) do + install[uinst], out, err = ipkg.install(pkg) + stdout[#stdout+1] = out + stderr[#stderr+1] = err + changes = true + end + end + + -- Remove packets + local rem = luci.http.formvalue("remove") + if rem then + remove[rem], out, err = ipkg.remove(rem) + stdout[#stdout+1] = out + stderr[#stderr+1] = err + changes = true + end + + + -- Update all packets + update = luci.http.formvalue("update") + if update then + update, out, err = ipkg.update() + stdout[#stdout+1] = out + stderr[#stderr+1] = err + end + + + -- Upgrade all packets + upgrade = luci.http.formvalue("upgrade") + if upgrade then + upgrade, out, err = ipkg.upgrade() + stdout[#stdout+1] = out + stderr[#stderr+1] = err + end + end + + + -- List state + local no_lists = true + local old_lists = false + if fs.access("/var/opkg-lists/") then + local list + for list in fs.dir("/var/opkg-lists/") do + no_lists = false + if (fs.stat("/var/opkg-lists/"..list, "mtime") or 0) < (os.time() - (24 * 60 * 60)) then + old_lists = true + break + end + end + end + + + luci.template.render("admin_system/packages", { + display = display, + letter = letter, + query = query, + install = install, + remove = remove, + update = update, + upgrade = upgrade, + no_lists = no_lists, + old_lists = old_lists, + stdout = table.concat(stdout, ""), + stderr = table.concat(stderr, "") + }) + + -- Remove index cache + if changes then + fs.unlink("/tmp/luci-indexcache") + end +end + +local function image_supported(image) + return (os.execute("sysupgrade -T %q >/dev/null" % image) == 0) +end + +local function image_checksum(image) + return (luci.sys.exec("md5sum %q" % image):match("^([^%s]+)")) +end + +local function image_sha256_checksum(image) + return (luci.sys.exec("sha256sum %q" % image):match("^([^%s]+)")) +end + +local function supports_sysupgrade() + return nixio.fs.access("/lib/upgrade/platform.sh") +end + +local function supports_reset() + return (os.execute([[grep -sqE '"rootfs_data"|"ubi"' /proc/mtd]]) == 0) +end + +local function storage_size() + local size = 0 + if nixio.fs.access("/proc/mtd") then + for l in io.lines("/proc/mtd") do + local d, s, e, n = l:match('^([^%s]+)%s+([^%s]+)%s+([^%s]+)%s+"([^%s]+)"') + if n == "linux" or n == "firmware" then + size = tonumber(s, 16) + break + end + end + elseif nixio.fs.access("/proc/partitions") then + for l in io.lines("/proc/partitions") do + local x, y, b, n = l:match('^%s*(%d+)%s+(%d+)%s+([^%s]+)%s+([^%s]+)') + if b and n and not n:match('[0-9]') then + size = tonumber(b) * 1024 + break + end + end + end + return size +end + + +function action_flashops() + -- + -- Overview + -- + luci.template.render("admin_system/flashops", { + reset_avail = supports_reset(), + upgrade_avail = supports_sysupgrade() + }) +end + +function action_sysupgrade() + local fs = require "nixio.fs" + local http = require "luci.http" + local image_tmp = "/tmp/firmware.img" + + local fp + http.setfilehandler( + function(meta, chunk, eof) + if not fp and meta and meta.name == "image" then + fp = io.open(image_tmp, "w") + end + if fp and chunk then + fp:write(chunk) + end + if fp and eof then + fp:close() + end + end + ) + + if not luci.dispatcher.test_post_security() then + fs.unlink(image_tmp) + return + end + + -- + -- Cancel firmware flash + -- + if http.formvalue("cancel") then + fs.unlink(image_tmp) + http.redirect(luci.dispatcher.build_url('admin/system/flashops')) + return + end + + -- + -- Initiate firmware flash + -- + local step = tonumber(http.formvalue("step") or 1) + if step == 1 then + if image_supported(image_tmp) then + luci.template.render("admin_system/upgrade", { + checksum = image_checksum(image_tmp), + sha256ch = image_sha256_checksum(image_tmp), + storage = storage_size(), + size = (fs.stat(image_tmp, "size") or 0), + keep = (not not http.formvalue("keep")) + }) + else + fs.unlink(image_tmp) + luci.template.render("admin_system/flashops", { + reset_avail = supports_reset(), + upgrade_avail = supports_sysupgrade(), + image_invalid = true + }) + end + -- + -- Start sysupgrade flash + -- + elseif step == 2 then + local keep = (http.formvalue("keep") == "1") and "" or "-n" + luci.template.render("admin_system/applyreboot", { + title = luci.i18n.translate("Flashing..."), + msg = luci.i18n.translate("The system is flashing now.
DO NOT POWER OFF THE DEVICE!
Wait a few minutes before you try to reconnect. It might be necessary to renew the address of your computer to reach the device again, depending on your settings."), + addr = (#keep > 0) and "192.168.1.1" or nil + }) + fork_exec("sleep 1; killall dropbear uhttpd; sleep 1; /sbin/sysupgrade %s %q" %{ keep, image_tmp }) + end +end + +function action_backup() + local reader = ltn12_popen("sysupgrade --create-backup - 2>/dev/null") + + luci.http.header( + 'Content-Disposition', 'attachment; filename="backup-%s-%s.tar.gz"' %{ + luci.sys.hostname(), + os.date("%Y-%m-%d") + }) + + luci.http.prepare_content("application/x-targz") + luci.ltn12.pump.all(reader, luci.http.write) +end + +function action_restore() + local fs = require "nixio.fs" + local http = require "luci.http" + local archive_tmp = "/tmp/restore.tar.gz" + + local fp + http.setfilehandler( + function(meta, chunk, eof) + if not fp and meta and meta.name == "archive" then + fp = io.open(archive_tmp, "w") + end + if fp and chunk then + fp:write(chunk) + end + if fp and eof then + fp:close() + end + end + ) + + if not luci.dispatcher.test_post_security() then + fs.unlink(archive_tmp) + return + end + + local upload = http.formvalue("archive") + if upload and #upload > 0 then + luci.template.render("admin_system/applyreboot") + os.execute("tar -C / -xzf %q >/dev/null 2>&1" % archive_tmp) + luci.sys.reboot() + return + end + + http.redirect(luci.dispatcher.build_url('admin/system/flashops')) +end + +function action_reset() + if supports_reset() then + luci.template.render("admin_system/applyreboot", { + title = luci.i18n.translate("Erasing..."), + msg = luci.i18n.translate("The system is erasing the configuration partition now and will reboot itself when finished."), + addr = "192.168.1.1" + }) + + fork_exec("sleep 1; killall dropbear uhttpd; sleep 1; jffs2reset -y && reboot") + return + end + + http.redirect(luci.dispatcher.build_url('admin/system/flashops')) +end + +function action_passwd() + local p1 = luci.http.formvalue("pwd1") + local p2 = luci.http.formvalue("pwd2") + local stat = nil + + if p1 or p2 then + if p1 == p2 then + stat = luci.sys.user.setpasswd("root", p1) + else + stat = 10 + end + end + + luci.template.render("admin_system/passwd", {stat=stat}) +end + +function action_reboot() + luci.sys.reboot() +end + +function fork_exec(command) + local pid = nixio.fork() + if pid > 0 then + return + elseif pid == 0 then + -- change to root dir + nixio.chdir("/") + + -- patch stdin, out, err to /dev/null + local null = nixio.open("/dev/null", "w+") + if null then + nixio.dup(null, nixio.stderr) + nixio.dup(null, nixio.stdout) + nixio.dup(null, nixio.stdin) + if null:fileno() > 2 then + null:close() + end + end + + -- replace with target command + nixio.exec("/bin/sh", "-c", command) + end +end + +function ltn12_popen(command) + + local fdi, fdo = nixio.pipe() + local pid = nixio.fork() + + if pid > 0 then + fdo:close() + local close + return function() + local buffer = fdi:read(2048) + local wpid, stat = nixio.waitpid(pid, "nohang") + if not close and wpid and stat == "exited" then + close = true + end + + if buffer and #buffer > 0 then + return buffer + elseif close then + fdi:close() + return nil + end + end + elseif pid == 0 then + nixio.dup(fdo, nixio.stdout) + fdi:close() + fdo:close() + nixio.exec("/bin/sh", "-c", command) + end +end diff --git a/luci-mod-admin-full/luasrc/controller/admin/uci.lua b/luci-mod-admin-full/luasrc/controller/admin/uci.lua new file mode 100644 index 000000000..9c33d9c18 --- /dev/null +++ b/luci-mod-admin-full/luasrc/controller/admin/uci.lua @@ -0,0 +1,64 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2010-2015 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +module("luci.controller.admin.uci", package.seeall) + +function index() + local redir = luci.http.formvalue("redir", true) or + luci.dispatcher.build_url(unpack(luci.dispatcher.context.request)) + + entry({"admin", "uci"}, nil, _("Configuration")) + entry({"admin", "uci", "changes"}, call("action_changes"), _("Changes"), 40).query = {redir=redir} + entry({"admin", "uci", "revert"}, post("action_revert"), _("Revert"), 30).query = {redir=redir} + entry({"admin", "uci", "apply"}, post("action_apply"), _("Apply"), 20).query = {redir=redir} + entry({"admin", "uci", "saveapply"}, post("action_apply"), _("Save & Apply"), 10).query = {redir=redir} +end + +function action_changes() + local uci = luci.model.uci.cursor() + local changes = uci:changes() + + luci.template.render("admin_uci/changes", { + changes = next(changes) and changes + }) +end + +function action_apply() + local path = luci.dispatcher.context.path + local uci = luci.model.uci.cursor() + local changes = uci:changes() + local reload = {} + + -- Collect files to be applied and commit changes + for r, tbl in pairs(changes) do + table.insert(reload, r) + if path[#path] ~= "apply" then + uci:load(r) + uci:commit(r) + uci:unload(r) + end + end + + luci.template.render("admin_uci/apply", { + changes = next(changes) and changes, + configs = reload + }) +end + + +function action_revert() + local uci = luci.model.uci.cursor() + local changes = uci:changes() + + -- Collect files to be reverted + for r, tbl in pairs(changes) do + uci:load(r) + uci:revert(r) + uci:unload(r) + end + + luci.template.render("admin_uci/revert", { + changes = next(changes) and changes + }) +end diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_network/dhcp.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_network/dhcp.lua new file mode 100644 index 000000000..9ccfd9b87 --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_network/dhcp.lua @@ -0,0 +1,317 @@ +-- Copyright 2008 Steven Barth +-- Licensed to the public under the Apache License 2.0. + +local ipc = require "luci.ip" +local o +require "luci.util" + +m = Map("dhcp", translate("DHCP and DNS"), + translate("Dnsmasq is a combined DHCP-Server and DNS-" .. + "Forwarder for NAT " .. + "firewalls")) + +s = m:section(TypedSection, "dnsmasq", translate("Server Settings")) +s.anonymous = true +s.addremove = false + +s:tab("general", translate("General Settings")) +s:tab("files", translate("Resolv and Hosts Files")) +s:tab("tftp", translate("TFTP Settings")) +s:tab("advanced", translate("Advanced Settings")) + +s:taboption("general", Flag, "domainneeded", + translate("Domain required"), + translate("Don't forward DNS-Requests without " .. + "DNS-Name")) + +s:taboption("general", Flag, "authoritative", + translate("Authoritative"), + translate("This is the only DHCP in the local network")) + + +s:taboption("files", Flag, "readethers", + translate("Use /etc/ethers"), + translate("Read /etc/ethers to configure the DHCP-Server")) + +s:taboption("files", Value, "leasefile", + translate("Leasefile"), + translate("file where given DHCP-leases will be stored")) + +s:taboption("files", Flag, "noresolv", + translate("Ignore resolve file")).optional = true + +rf = s:taboption("files", Value, "resolvfile", + translate("Resolve file"), + translate("local DNS file")) + +rf:depends("noresolv", "") +rf.optional = true + + +s:taboption("files", Flag, "nohosts", + translate("Ignore /etc/hosts")).optional = true + +s:taboption("files", DynamicList, "addnhosts", + translate("Additional Hosts files")).optional = true + +qu = s:taboption("advanced", Flag, "quietdhcp", + translate("Suppress logging"), + translate("Suppress logging of the routine operation of these protocols")) +qu.optional = true + +se = s:taboption("advanced", Flag, "sequential_ip", + translate("Allocate IP sequentially"), + translate("Allocate IP addresses sequentially, starting from the lowest available address")) +se.optional = true + +s:taboption("advanced", Flag, "boguspriv", + translate("Filter private"), + translate("Do not forward reverse lookups for local networks")) + +s:taboption("advanced", Flag, "filterwin2k", + translate("Filter useless"), + translate("Do not forward requests that cannot be answered by public name servers")) + + +s:taboption("advanced", Flag, "localise_queries", + translate("Localise queries"), + translate("Localise hostname depending on the requesting subnet if multiple IPs are available")) + +local have_dnssec_support = luci.util.checklib("/usr/sbin/dnsmasq", "libhogweed.so") + +if have_dnssec_support then + o = s:taboption("advanced", Flag, "dnssec", + translate("DNSSEC")) + o.optional = true + + o = s:taboption("advanced", Flag, "dnsseccheckunsigned", + translate("DNSSEC check unsigned"), + translate("Requires upstream supports DNSSEC; verify unsigned domain responses really come from unsigned domains")) + o.optional = true +end + +s:taboption("general", Value, "local", + translate("Local server"), + translate("Local domain specification. Names matching this domain are never forwarded and are resolved from DHCP or hosts files only")) + +s:taboption("general", Value, "domain", + translate("Local domain"), + translate("Local domain suffix appended to DHCP names and hosts file entries")) + +s:taboption("advanced", Flag, "expandhosts", + translate("Expand hosts"), + translate("Add local domain suffix to names served from hosts files")) + +s:taboption("advanced", Flag, "nonegcache", + translate("No negative cache"), + translate("Do not cache negative replies, e.g. for not existing domains")) + +s:taboption("advanced", Value, "serversfile", + translate("Additional servers file"), + translate("This file may contain lines like 'server=/domain/1.2.3.4' or 'server=1.2.3.4' for".. + "domain-specific or full upstream DNS servers.")) + +s:taboption("advanced", Flag, "strictorder", + translate("Strict order"), + translate("DNS servers will be queried in the " .. + "order of the resolvfile")).optional = true + + +bn = s:taboption("advanced", DynamicList, "bogusnxdomain", translate("Bogus NX Domain Override"), + translate("List of hosts that supply bogus NX domain results")) + +bn.optional = true +bn.placeholder = "67.215.65.132" + + +s:taboption("general", Flag, "logqueries", + translate("Log queries"), + translate("Write received DNS requests to syslog")).optional = true + +df = s:taboption("general", DynamicList, "server", translate("DNS forwardings"), + translate("List of DNS " .. + "servers to forward requests to")) + +df.optional = true +df.placeholder = "/example.org/10.1.2.3" + + +rp = s:taboption("general", Flag, "rebind_protection", + translate("Rebind protection"), + translate("Discard upstream RFC1918 responses")) + +rp.rmempty = false + + +rl = s:taboption("general", Flag, "rebind_localhost", + translate("Allow localhost"), + translate("Allow upstream responses in the 127.0.0.0/8 range, e.g. for RBL services")) + +rl:depends("rebind_protection", "1") + + +rd = s:taboption("general", DynamicList, "rebind_domain", + translate("Domain whitelist"), + translate("List of domains to allow RFC1918 responses for")) +rd.optional = true + +rd:depends("rebind_protection", "1") +rd.datatype = "host(1)" +rd.placeholder = "ihost.netflix.com" + + +pt = s:taboption("advanced", Value, "port", + translate("DNS server port"), + translate("Listening port for inbound DNS queries")) + +pt.optional = true +pt.datatype = "port" +pt.placeholder = 53 + + +qp = s:taboption("advanced", Value, "queryport", + translate("DNS query port"), + translate("Fixed source port for outbound DNS queries")) + +qp.optional = true +qp.datatype = "port" +qp.placeholder = translate("any") + + +lm = s:taboption("advanced", Value, "dhcpleasemax", + translate("Max. DHCP leases"), + translate("Maximum allowed number of active DHCP leases")) + +lm.optional = true +lm.datatype = "uinteger" +lm.placeholder = translate("unlimited") + + +em = s:taboption("advanced", Value, "ednspacket_max", + translate("Max. EDNS0 packet size"), + translate("Maximum allowed size of EDNS.0 UDP packets")) + +em.optional = true +em.datatype = "uinteger" +em.placeholder = 1280 + + +cq = s:taboption("advanced", Value, "dnsforwardmax", + translate("Max. concurrent queries"), + translate("Maximum allowed number of concurrent DNS queries")) + +cq.optional = true +cq.datatype = "uinteger" +cq.placeholder = 150 + + +s:taboption("tftp", Flag, "enable_tftp", + translate("Enable TFTP server")).optional = true + +tr = s:taboption("tftp", Value, "tftp_root", + translate("TFTP server root"), + translate("Root directory for files served via TFTP")) + +tr.optional = true +tr:depends("enable_tftp", "1") +tr.placeholder = "/" + + +db = s:taboption("tftp", Value, "dhcp_boot", + translate("Network boot image"), + translate("Filename of the boot image advertised to clients")) + +db.optional = true +db:depends("enable_tftp", "1") +db.placeholder = "pxelinux.0" + +o = s:taboption("general", Flag, "localservice", + translate("Local Service Only"), + translate("Limit DNS service to subnets interfaces on which we are serving DNS.")) +o.optional = false +o.rmempty = false + +o = s:taboption("general", Flag, "nonwildcard", + translate("Non-wildcard"), + translate("Bind only to specific interfaces rather than wildcard address.")) +o.optional = false +o.rmempty = false + +o = s:taboption("general", DynamicList, "interface", + translate("Listen Interfaces"), + translate("Limit listening to these interfaces, and loopback.")) +o.optional = true +o:depends("nonwildcard", true) + +o = s:taboption("general", DynamicList, "notinterface", + translate("Exclude interfaces"), + translate("Prevent listening on these interfaces.")) +o.optional = true +o:depends("nonwildcard", true) + +m:section(SimpleSection).template = "admin_network/lease_status" + +s = m:section(TypedSection, "host", translate("Static Leases"), + translate("Static leases are used to assign fixed IP addresses and symbolic hostnames to " .. + "DHCP clients. They are also required for non-dynamic interface configurations where " .. + "only hosts with a corresponding lease are served.") .. "
" .. + translate("Use the Add Button to add a new lease entry. The MAC-Address " .. + "indentifies the host, the IPv4-Address specifies to the fixed address to " .. + "use and the Hostname is assigned as symbolic name to the requesting host. " .. + "The optional Lease time can be used to set non-standard host-specific " .. + "lease time, e.g. 12h, 3d or infinite.")) + +s.addremove = true +s.anonymous = true +s.template = "cbi/tblsection" + +name = s:option(Value, "name", translate("Hostname")) +name.datatype = "hostname" +name.rmempty = true + +function name.write(self, section, value) + Value.write(self, section, value) + m:set(section, "dns", "1") +end + +function name.remove(self, section) + Value.remove(self, section) + m:del(section, "dns") +end + +mac = s:option(Value, "mac", translate("MAC-Address")) +mac.datatype = "list(macaddr)" +mac.rmempty = true + +ip = s:option(Value, "ip", translate("IPv4-Address")) +ip.datatype = "or(ip4addr,'ignore')" + +time = s:option(Value, "leasetime", translate("Lease time")) +time.rmempty = true + +hostid = s:option(Value, "hostid", translate("IPv6-Suffix (hex)")) + +ipc.neighbors({ family = 4 }, function(n) + if n.mac and n.dest then + ip:value(n.dest:string()) + mac:value(n.mac, "%s (%s)" %{ n.mac, n.dest:string() }) + end +end) + +function ip.validate(self, value, section) + local m = mac:formvalue(section) or "" + local n = name:formvalue(section) or "" + if value and #n == 0 and #m == 0 then + return nil, translate("One of hostname or mac address must be specified!") + end + return Value.validate(self, value, section) +end + + +return m diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_network/hosts.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_network/hosts.lua new file mode 100644 index 000000000..fafacf35c --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_network/hosts.lua @@ -0,0 +1,28 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2010-2015 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local ipc = require "luci.ip" + +m = Map("dhcp", translate("Hostnames")) + +s = m:section(TypedSection, "domain", translate("Host entries")) +s.addremove = true +s.anonymous = true +s.template = "cbi/tblsection" + +hn = s:option(Value, "name", translate("Hostname")) +hn.datatype = "hostname" +hn.rmempty = true + +ip = s:option(Value, "ip", translate("IP address")) +ip.datatype = "ipaddr" +ip.rmempty = true + +ipc.neighbors({ }, function(n) + if n.mac and n.dest and not n.dest:is6linklocal() then + ip:value(n.dest:string(), "%s (%s)" %{ n.dest:string(), n.mac }) + end +end) + +return m diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_network/iface_add.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_network/iface_add.lua new file mode 100644 index 000000000..4730368f9 --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_network/iface_add.lua @@ -0,0 +1,113 @@ +-- Copyright 2009-2010 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local nw = require "luci.model.network".init() +local fw = require "luci.model.firewall".init() +local utl = require "luci.util" +local uci = require "luci.model.uci".cursor() + +m = SimpleForm("network", translate("Create Interface")) +m.redirect = luci.dispatcher.build_url("admin/network/network") +m.reset = false + +newnet = m:field(Value, "_netname", translate("Name of the new interface"), + translate("The allowed characters are: A-Z, a-z, " .. + "0-9 and _" + )) + +newnet:depends("_attach", "") +newnet.default = arg[1] and "net_" .. arg[1]:gsub("[^%w_]+", "_") +newnet.datatype = "and(uciname,maxlength(15))" + +advice = m:field(DummyValue, "d1", translate("Note: interface name length"), + translate("Maximum length of the name is 15 characters including " .. + "the automatic protocol/bridge prefix (br-, 6in4-, pppoe- etc.)" + )) + +newproto = m:field(ListValue, "_netproto", translate("Protocol of the new interface")) + +--netbridge = m:field(Flag, "_bridge", translate("Create a bridge over multiple interfaces")) + +newtype = m:field(ListValue, "_type", translate("Type of the new interface")) +newtype:value("", translate("Default")) +newtype:value("macvlan", translate("Create a macvlan sub interface")) +newtype:value("bridge", translate("Create a bridge over multiple interfaces")) + + +sifname = m:field(Value, "_ifname", translate("Cover the following interface")) + +sifname.widget = "radio" +sifname.template = "cbi/network_ifacelist" +sifname.nobridges = true + + +mifname = m:field(Value, "_ifnames", translate("Cover the following interfaces")) + +mifname.widget = "checkbox" +mifname.template = "cbi/network_ifacelist" +mifname.nobridges = true + +vifname = m:field(Value, "_vifname", translate("Cover the following interface")) +vifname.default = "eth0" + +local _, p +for _, p in ipairs(nw:get_protocols()) do + if p:is_installed() then + newproto:value(p:proto(), p:get_i18n()) + --if not p:is_virtual() then netbridge:depends("_netproto", p:proto()) end + if not p:is_virtual() then newtype:depends("_netproto", p:proto()) end + if not p:is_floating() then + --sifname:depends({ _bridge = "", _netproto = p:proto()}) + --mifname:depends({ _bridge = "1", _netproto = p:proto()}) + sifname:depends({ _type = "", _netproto = p:proto() }) + mifname:depends({ _type = "bridge", _netproto = p:proto() }) + vifname:depends({ _type = "macvlan", _netproto = p:proto() }) + end + end +end + +function newproto.validate(self, value, section) + local name = newnet:formvalue(section) + if not name or #name == 0 then + newnet:add_error(section, translate("No network name specified")) + elseif m:get(name) then + newnet:add_error(section, translate("The given network name is not unique")) + end + + local proto = nw:get_protocol(value) + if proto and not proto:is_floating() then + --local br = (netbridge:formvalue(section) == "1") + --local ifn = br and mifname:formvalue(section) or sifname:formvalue(section) + local ifn = ( (newtype:formvalue(section) == "macvlan" and name) or (newtype:formvalue(section) == "bridge" and mifname:formvalue(section)) or sifname:formvalue(section) ) + for ifn in utl.imatch(ifn) do + return value + end + return nil, translate("The selected protocol needs a device assigned") + end + return value +end + +function newproto.write(self, section, value) + local name = newnet:formvalue(section) + if name and #name > 0 then + --local br = (netbridge:formvalue(section) == "1") and "bridge" or nil + --local net = nw:add_network(name, { proto = value, type = br }) + local isBridge = (newtype:formvalue(section) == "bridge") or nil + local isMacvlan = (newtype:formvalue(section) == "macvlan") or nil + local net = nw:add_network(name, { proto = value, type = newtype:formvalue(section), interface = isMacvlan and vifname:formvalue(section) or nil }) + if net then + local ifn + --br and mifname:formvalue(section) or sifname:formvalue(section) + for ifn in utl.imatch( + (isMacvlan and name) or (isBridge and mifname:formvalue(section)) or (sifname:formvalue(section)) + ) do + net:add_interface(ifn) + end + nw:save("network") + nw:save("wireless") + end + luci.http.redirect(luci.dispatcher.build_url("admin/network/network", name)) + end +end + +return m diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_network/ifaces.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_network/ifaces.lua new file mode 100644 index 000000000..68eeb5cad --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_network/ifaces.lua @@ -0,0 +1,547 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2008-2011 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local fs = require "nixio.fs" +local ut = require "luci.util" +local pt = require "luci.tools.proto" +local nw = require "luci.model.network" +local fw = require "luci.model.firewall" + +arg[1] = arg[1] or "" + +local has_dnsmasq = fs.access("/etc/config/dhcp") +local has_firewall = fs.access("/etc/config/firewall") + +m = Map("network", translate("Interfaces") .. " - " .. arg[1]:upper(), translate("On this page you can configure the network interfaces. You can bridge several interfaces by ticking the \"bridge interfaces\" field and enter the names of several network interfaces separated by spaces. You can also use VLAN notation INTERFACE.VLANNR (e.g.: eth0.1).")) +m.redirect = luci.dispatcher.build_url("admin", "network", "network") +m:chain("wireless") + +if has_firewall then + m:chain("firewall") +end + +nw.init(m.uci) +fw.init(m.uci) + + +local net = nw:get_network(arg[1]) + +local function backup_ifnames(is_bridge) + if not net:is_floating() and not m:get(net:name(), "_orig_ifname") then + local ifcs = net:get_interfaces() or { net:get_interface() } + if ifcs then + local _, ifn + local ifns = { } + for _, ifn in ipairs(ifcs) do + ifns[#ifns+1] = ifn:name() + end + if #ifns > 0 then + m:set(net:name(), "_orig_ifname", table.concat(ifns, " ")) + m:set(net:name(), "_orig_bridge", tostring(net:is_bridge())) + end + end + end +end + + +-- redirect to overview page if network does not exist anymore (e.g. after a revert) +if not net then + luci.http.redirect(luci.dispatcher.build_url("admin/network/network")) + return +end + +-- protocol switch was requested, rebuild interface config and reload page +if m:formvalue("cbid.network.%s._switch" % net:name()) then + -- get new protocol + local ptype = m:formvalue("cbid.network.%s.proto" % net:name()) or "-" + local proto = nw:get_protocol(ptype, net:name()) + if proto then + -- backup default + backup_ifnames() + + -- if current proto is not floating and target proto is not floating, + -- then attempt to retain the ifnames + --error(net:proto() .. " > " .. proto:proto()) + if not net:is_floating() and not proto:is_floating() then + -- if old proto is a bridge and new proto not, then clip the + -- interface list to the first ifname only + if net:is_bridge() and proto:is_virtual() then + local _, ifn + local first = true + for _, ifn in ipairs(net:get_interfaces() or { net:get_interface() }) do + if first then + first = false + else + net:del_interface(ifn) + end + end + m:del(net:name(), "type") + end + + -- if the current proto is floating, the target proto not floating, + -- then attempt to restore ifnames from backup + elseif net:is_floating() and not proto:is_floating() then + -- if we have backup data, then re-add all orphaned interfaces + -- from it and restore the bridge choice + local br = (m:get(net:name(), "_orig_bridge") == "true") + local ifn + local ifns = { } + for ifn in ut.imatch(m:get(net:name(), "_orig_ifname")) do + ifn = nw:get_interface(ifn) + if ifn and not ifn:get_network() then + proto:add_interface(ifn) + if not br then + break + end + end + end + if br then + m:set(net:name(), "type", "bridge") + end + + -- in all other cases clear the ifnames + else + local _, ifc + for _, ifc in ipairs(net:get_interfaces() or { net:get_interface() }) do + net:del_interface(ifc) + end + m:del(net:name(), "type") + end + + -- clear options + local k, v + for k, v in pairs(m:get(net:name())) do + if k:sub(1,1) ~= "." and + k ~= "type" and + k ~= "ifname" and + k ~= "_orig_ifname" and + k ~= "_orig_bridge" + then + m:del(net:name(), k) + end + end + + -- set proto + m:set(net:name(), "proto", proto:proto()) + m.uci:save("network") + m.uci:save("wireless") + + -- reload page + luci.http.redirect(luci.dispatcher.build_url("admin/network/network", arg[1])) + return + end +end + +-- dhcp setup was requested, create section and reload page +if m:formvalue("cbid.dhcp._enable._enable") then + m.uci:section("dhcp", "dhcp", arg[1], { + interface = arg[1], + start = "100", + limit = "150", + leasetime = "12h" + }) + + m.uci:save("dhcp") + luci.http.redirect(luci.dispatcher.build_url("admin/network/network", arg[1])) + return +end + +local ifc = net:get_interface() + +s = m:section(NamedSection, arg[1], "interface", translate("Common Configuration")) +s.addremove = false + +s:tab("general", translate("General Setup")) +s:tab("advanced", translate("Advanced Settings")) +s:tab("physical", translate("Physical Settings")) + +if has_firewall then + s:tab("firewall", translate("Firewall Settings")) +end + + +st = s:taboption("general", DummyValue, "__status", translate("Status")) + +local function set_status() + -- if current network is empty, print a warning + if not net:is_floating() and net:is_empty() then + st.template = "cbi/dvalue" + st.network = nil + st.value = translate("There is no device assigned yet, please attach a network device in the \"Physical Settings\" tab") + else + st.template = "admin_network/iface_status" + st.network = arg[1] + st.value = nil + end +end + +m.on_init = set_status +m.on_after_save = set_status + +l = s:taboption("general", Value, "label", translate("Label")) +l.rmempty = true +l:depends("multipath", "on") +l:depends("multipath", "master") +l:depends("multipath", "backup") +l:depends("multipath", "handover") + +p = s:taboption("general", ListValue, "proto", translate("Protocol")) +p.default = net:proto() + + +if not net:is_installed() then + p_install = s:taboption("general", Button, "_install") + p_install.title = translate("Protocol support is not installed") + p_install.inputtitle = translate("Install package %q" % net:opkg_package()) + p_install.inputstyle = "apply" + p_install:depends("proto", net:proto()) + + function p_install.write() + return luci.http.redirect( + luci.dispatcher.build_url("admin/system/packages") .. + "?submit=1&install=%s" % net:opkg_package() + ) + end +end + + +p_switch = s:taboption("general", Button, "_switch") +p_switch.title = translate("Really switch protocol?") +p_switch.inputtitle = translate("Switch protocol") +p_switch.inputstyle = "apply" + +local _, pr +for _, pr in ipairs(nw:get_protocols()) do + p:value(pr:proto(), pr:get_i18n()) + if pr:proto() ~= net:proto() then + p_switch:depends("proto", pr:proto()) + end +end + + +auto = s:taboption("advanced", Flag, "auto", translate("Bring up on boot")) +auto.default = (net:proto() == "none") and auto.disabled or auto.enabled + +-- Add MPTCP +if fs.access("/proc/sys/net/mptcp") then + mptcp = s:taboption("advanced", ListValue, "multipath", translate("Multipath TCP")) + mptcp:value("on", translate("enabled")) + mptcp:value("off", translate("disabled")) + mptcp:value("master", translate("master")) + mptcp:value("backup", translate("backup")) + mptcp:value("handover", translate("handover")) + mptcp.default = "off" +end + +delegate = s:taboption("advanced", Flag, "delegate", translate("Use builtin IPv6-management")) +delegate.default = delegate.enabled + + +if not net:is_virtual() then + --br = s:taboption("physical", Flag, "type", translate("Bridge interfaces"), translate("creates a bridge over specified interface(s)")) + --br.enabled = "bridge" + --br.rmempty = true + --br:depends("proto", "static") + --br:depends("proto", "dhcp") + --br:depends("proto", "none") + iftype = s:taboption("physical", ListValue, "type", translate("Type of the interface")) + iftype:value("", translate("Default")) + iftype:value("macvlan", translate("Create a macvlan sub interface")) + iftype:value("bridge", translate("Create a bridge over multiple interfaces")) + iftype:depends("proto", "static") + iftype:depends("proto", "dhcp") + iftype:depends("proto", "none") + + stp = s:taboption("physical", Flag, "stp", translate("Enable STP"), + translate("Enables the Spanning Tree Protocol on this bridge")) + stp:depends("type", "bridge") + stp.rmempty = true +-- macsource = s:taboption("physical", DynamicList, "vlanmacs", translate("Add MACs address to enable source mode")) +-- macsource:depends("type", "macvlan") +-- macsource.rmempty = true +end + +macvlanmaster = s:taboption("physical", Value, "interface", translate("Master interface")) +macvlanmaster.default = "eth0" +macvlanmaster:depends("type", "macvlan") + +if not net:is_floating() then + ifname_single = s:taboption("physical", Value, "ifname_single", translate("Interface")) + ifname_single.template = "cbi/network_ifacelist" + ifname_single.widget = "radio" + ifname_single.nobridges = true + ifname_single.rmempty = false + ifname_single.network = arg[1] + ifname_single:depends("type", "") + + function ifname_single.cfgvalue(self, s) + -- let the template figure out the related ifaces through the network model + return nil + end + + function ifname_single.write(self, s, val) + local i + local new_ifs = { } + local old_ifs = { } + + for _, i in ipairs(net:get_interfaces() or { net:get_interface() }) do + old_ifs[#old_ifs+1] = i:name() + end + + for i in ut.imatch(val) do + new_ifs[#new_ifs+1] = i + + -- if this is not a bridge, only assign first interface + if self.option == "ifname_single" then + break + end + end + + table.sort(old_ifs) + table.sort(new_ifs) + + for i = 1, math.max(#old_ifs, #new_ifs) do + if old_ifs[i] ~= new_ifs[i] then + backup_ifnames() + for i = 1, #old_ifs do + net:del_interface(old_ifs[i]) + end + for i = 1, #new_ifs do + net:add_interface(new_ifs[i]) + end + break + end + end + end +end + + +if not net:is_virtual() then + ifname_multi = s:taboption("physical", Value, "ifname_multi", translate("Interface")) + ifname_multi.template = "cbi/network_ifacelist" + ifname_multi.nobridges = true + ifname_multi.rmempty = false + ifname_multi.network = arg[1] + ifname_multi.widget = "checkbox" + ifname_multi:depends("type", "bridge") + ifname_multi.cfgvalue = ifname_single.cfgvalue + ifname_multi.write = ifname_single.write +end + + +if has_firewall then + fwzone = s:taboption("firewall", Value, "_fwzone", + translate("Create / Assign firewall-zone"), + translate("Choose the firewall zone you want to assign to this interface. Select unspecified to remove the interface from the associated zone or fill out the create field to define a new zone and attach the interface to it.")) + + fwzone.template = "cbi/firewall_zonelist" + fwzone.network = arg[1] + fwzone.rmempty = false + + function fwzone.cfgvalue(self, section) + self.iface = section + local z = fw:get_zone_by_network(section) + return z and z:name() + end + + function fwzone.write(self, section, value) + local zone = fw:get_zone(value) + + if not zone and value == '-' then + value = m:formvalue(self:cbid(section) .. ".newzone") + if value and #value > 0 then + zone = fw:add_zone(value) + else + fw:del_network(section) + end + end + + if zone then + fw:del_network(section) + zone:add_network(section) + end + end +end + + +function p.write() end +function p.remove() end +function p.validate(self, value, section) + if value == net:proto() then + if not net:is_floating() and net:is_empty() then + local ifn = ((br and (br:formvalue(section) == "bridge")) + and ifname_multi:formvalue(section) + or ifname_single:formvalue(section)) + for ifn in ut.imatch(ifn) do + return value + end + return nil, translate("The selected protocol needs a device assigned") + end + end + return value +end + + +local form, ferr = loadfile( + ut.libpath() .. "/model/cbi/admin_network/proto_%s.lua" % net:proto() +) + +if not form then + s:taboption("general", DummyValue, "_error", + translate("Missing protocol extension for proto %q" % net:proto()) + ).value = ferr +else + setfenv(form, getfenv(1))(m, s, net) +end + + +local _, field +for _, field in ipairs(s.children) do + if field ~= st and field ~= p and field ~= p_install and field ~= p_switch then + if next(field.deps) then + local _, dep + for _, dep in ipairs(field.deps) do + dep.proto = net:proto() + end + else + field:depends("proto", net:proto()) + end + end +end + + +-- +-- Display DNS settings if dnsmasq is available +-- + +if has_dnsmasq and net:proto() == "static" then + m2 = Map("dhcp", "", "") + + local has_section = false + + m2.uci:foreach("dhcp", "dhcp", function(s) + if s.interface == arg[1] then + has_section = true + return false + end + end) + + if not has_section and has_dnsmasq then + + s = m2:section(TypedSection, "dhcp", translate("DHCP Server")) + s.anonymous = true + s.cfgsections = function() return { "_enable" } end + + x = s:option(Button, "_enable") + x.title = translate("No DHCP Server configured for this interface") + x.inputtitle = translate("Setup DHCP Server") + x.inputstyle = "apply" + + elseif has_section then + + s = m2:section(TypedSection, "dhcp", translate("DHCP Server")) + s.addremove = false + s.anonymous = true + s:tab("general", translate("General Setup")) + s:tab("advanced", translate("Advanced Settings")) + s:tab("ipv6", translate("IPv6 Settings")) + + function s.filter(self, section) + return m2.uci:get("dhcp", section, "interface") == arg[1] + end + + local ignore = s:taboption("general", Flag, "ignore", + translate("Ignore interface"), + translate("Disable DHCP for " .. + "this interface.")) + + local start = s:taboption("general", Value, "start", translate("Start"), + translate("Lowest leased address as offset from the network address.")) + start.optional = true + start.datatype = "or(uinteger,ip4addr)" + start.default = "100" + + local limit = s:taboption("general", Value, "limit", translate("Limit"), + translate("Maximum number of leased addresses.")) + limit.optional = true + limit.datatype = "uinteger" + limit.default = "150" + + local ltime = s:taboption("general", Value, "leasetime", translate("Lease time"), + translate("Expiry time of leased addresses, minimum is 2 minutes (2m).")) + ltime.rmempty = true + ltime.default = "12h" + + local dd = s:taboption("advanced", Flag, "dynamicdhcp", + translate("Dynamic DHCP"), + translate("Dynamically allocate DHCP addresses for clients. If disabled, only " .. + "clients having static leases will be served.")) + dd.default = dd.enabled + + s:taboption("advanced", Flag, "force", translate("Force"), + translate("Force DHCP on this network even if another server is detected.")) + + -- XXX: is this actually useful? + --s:taboption("advanced", Value, "name", translate("Name"), + -- translate("Define a name for this network.")) + + mask = s:taboption("advanced", Value, "netmask", + translate("IPv4-Netmask"), + translate("Override the netmask sent to clients. Normally it is calculated " .. + "from the subnet that is served.")) + + mask.optional = true + mask.datatype = "ip4addr" + + s:taboption("advanced", DynamicList, "dhcp_option", translate("DHCP-Options"), + translate("Define additional DHCP options, for example \"6,192.168.2.1," .. + "192.168.2.2\" which advertises different DNS servers to clients.")) + + for i, n in ipairs(s.children) do + if n ~= ignore then + n:depends("ignore", "") + end + end + + o = s:taboption("ipv6", ListValue, "ra", translate("Router Advertisement-Service")) + o:value("", translate("disabled")) + o:value("server", translate("server mode")) + o:value("relay", translate("relay mode")) + o:value("hybrid", translate("hybrid mode")) + + o = s:taboption("ipv6", ListValue, "dhcpv6", translate("DHCPv6-Service")) + o:value("", translate("disabled")) + o:value("server", translate("server mode")) + o:value("relay", translate("relay mode")) + o:value("hybrid", translate("hybrid mode")) + + o = s:taboption("ipv6", ListValue, "ndp", translate("NDP-Proxy")) + o:value("", translate("disabled")) + o:value("relay", translate("relay mode")) + o:value("hybrid", translate("hybrid mode")) + + o = s:taboption("ipv6", ListValue, "ra_management", translate("DHCPv6-Mode"), + translate("Default is stateless + stateful")) + o:value("0", translate("stateless")) + o:value("1", translate("stateless + stateful")) + o:value("2", translate("stateful-only")) + o:depends("dhcpv6", "server") + o:depends("dhcpv6", "hybrid") + o.default = "1" + + o = s:taboption("ipv6", Flag, "ra_default", translate("Always announce default router"), + translate("Announce as default router even if no public prefix is available.")) + o:depends("ra", "server") + o:depends("ra", "hybrid") + + s:taboption("ipv6", DynamicList, "dns", translate("Announced DNS servers")) + s:taboption("ipv6", DynamicList, "domain", translate("Announced DNS domains")) + + else + m2 = nil + end +end + + +return m, m2 diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_network/network.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_network/network.lua new file mode 100644 index 000000000..86803e2e2 --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_network/network.lua @@ -0,0 +1,134 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2008 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local fs = require "nixio.fs" +local sys = require "luci.sys" + +m = Map("network", translate("Interfaces")) +m.pageaction = false +m:section(SimpleSection).template = "admin_network/iface_overview" + +if fs.access("/etc/init.d/dsl_control") then + dsl = m:section(TypedSection, "dsl", translate("DSL")) + + dsl.anonymous = true + + annex = dsl:option(ListValue, "annex", translate("Annex")) + annex:value("a", translate("Annex A + L + M (all)")) + annex:value("b", translate("Annex B (all)")) + annex:value("j", translate("Annex J (all)")) + annex:value("m", translate("Annex M (all)")) + annex:value("bdmt", translate("Annex B G.992.1")) + annex:value("b2", translate("Annex B G.992.3")) + annex:value("b2p", translate("Annex B G.992.5")) + annex:value("at1", translate("ANSI T1.413")) + annex:value("admt", translate("Annex A G.992.1")) + annex:value("alite", translate("Annex A G.992.2")) + annex:value("a2", translate("Annex A G.992.3")) + annex:value("a2p", translate("Annex A G.992.5")) + annex:value("l", translate("Annex L G.992.3 POTS 1")) + annex:value("m2", translate("Annex M G.992.3")) + annex:value("m2p", translate("Annex M G.992.5")) + + tone = dsl:option(ListValue, "tone", translate("Tone")) + tone:value("", translate("auto")) + tone:value("a", translate("A43C + J43 + A43")) + tone:value("av", translate("A43C + J43 + A43 + V43")) + tone:value("b", translate("B43 + B43C")) + tone:value("bv", translate("B43 + B43C + V43")) + + xfer_mode = dsl:option(ListValue, "xfer_mode", translate("Encapsulation mode")) + xfer_mode:value("atm", translate("ATM (Asynchronous Transfer Mode)")) + xfer_mode:value("ptm", translate("PTM/EFM (Packet Transfer Mode)")) + + line_mode = dsl:option(ListValue, "line_mode", translate("DSL line mode")) + line_mode:value("", translate("auto")) + line_mode:value("adsl", translate("ADSL")) + line_mode:value("vdsl", translate("VDSL")) + + firmware = dsl:option(Value, "firmware", translate("Firmware File")) + + m.pageaction = true +end + +-- Show ATM bridge section if we have the capabilities +if fs.access("/usr/sbin/br2684ctl") then + atm = m:section(TypedSection, "atm-bridge", translate("ATM Bridges"), + translate("ATM bridges expose encapsulated ethernet in AAL5 " .. + "connections as virtual Linux network interfaces which can " .. + "be used in conjunction with DHCP or PPP to dial into the " .. + "provider network.")) + + atm.addremove = true + atm.anonymous = true + + atm.create = function(self, section) + local sid = TypedSection.create(self, section) + local max_unit = -1 + + m.uci:foreach("network", "atm-bridge", + function(s) + local u = tonumber(s.unit) + if u ~= nil and u > max_unit then + max_unit = u + end + end) + + m.uci:set("network", sid, "unit", max_unit + 1) + m.uci:set("network", sid, "atmdev", 0) + m.uci:set("network", sid, "encaps", "llc") + m.uci:set("network", sid, "payload", "bridged") + m.uci:set("network", sid, "vci", 35) + m.uci:set("network", sid, "vpi", 8) + + return sid + end + + atm:tab("general", translate("General Setup")) + atm:tab("advanced", translate("Advanced Settings")) + + vci = atm:taboption("general", Value, "vci", translate("ATM Virtual Channel Identifier (VCI)")) + vpi = atm:taboption("general", Value, "vpi", translate("ATM Virtual Path Identifier (VPI)")) + encaps = atm:taboption("general", ListValue, "encaps", translate("Encapsulation mode")) + encaps:value("llc", translate("LLC")) + encaps:value("vc", translate("VC-Mux")) + + atmdev = atm:taboption("advanced", Value, "atmdev", translate("ATM device number")) + unit = atm:taboption("advanced", Value, "unit", translate("Bridge unit number")) + payload = atm:taboption("advanced", ListValue, "payload", translate("Forwarding mode")) + payload:value("bridged", translate("bridged")) + payload:value("routed", translate("routed")) + m.pageaction = true +end + +local network = require "luci.model.network" +local s = m:section(NamedSection, "globals", "globals", translate("Global network options")) +if network:has_ipv6() then + local o = s:option(Value, "ula_prefix", translate("IPv6 ULA-Prefix")) + o.datatype = "ip6addr" + o.rmempty = true +end +if fs.access("/proc/sys/net/mptcp") then + local mtcp = s:option(ListValue, "multipath", translate("Multipath TCP")) + mtcp:value("enable", translate("enable")) + mtcp:value("disable", translate("disable")) + local mtcppm = s:option(ListValue, "mptcp_path_manager", translate("Multipath TCP path-manager")) + mtcppm:value("default", translate("default")) + mtcppm:value("fullmesh", translate("fullmesh")) + mtcppm:value("ndiffports", translate("ndiffports")) + mtcppm:value("blinder", translate("blinder")) + local mtcpsch = s:option(ListValue, "mptcp_scheduler", translate("Multipath TCP scheduler")) + mtcpsch:value("default", translate("default")) + mtcpsch:value("roundrobin", translate("round-robin")) + mtcpsch:value("redundant", translate("redundant")) + local congestion = s:option(ListValue, "congestion", translate("Congestion Control")) + local availablecong = sys.exec("sysctl net.ipv4.tcp_available_congestion_control | awk -F'= ' '{print $NF}'") + for cong in string.gmatch(availablecong, "[^%s]+") do + congestion:value(cong, translate(cong)) + end +end +m.pageaction = true + + +return m diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_network/proto_ahcp.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_network/proto_ahcp.lua new file mode 100644 index 000000000..0818199a9 --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_network/proto_ahcp.lua @@ -0,0 +1,67 @@ +-- Copyright 2011 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local map, section, net = ... + +local device, apn, service, pincode, username, password +local ipv6, maxwait, defaultroute, metric, peerdns, dns, + keepalive_failure, keepalive_interval, demand + + +mca = s:taboption("ahcp", Value, "multicast_address", translate("Multicast address")) +mca.optional = true +mca.placeholder = "ff02::cca6:c0f9:e182:5359" +mca.datatype = "ip6addr" +mca:depends("proto", "ahcp") + +port = s:taboption("ahcp", Value, "port", translate("Port")) +port.optional = true +port.placeholder = 5359 +port.datatype = "port" +port:depends("proto", "ahcp") + +fam = s:taboption("ahcp", ListValue, "_family", translate("Protocol family")) +fam:value("", translate("IPv4 and IPv6")) +fam:value("ipv4", translate("IPv4 only")) +fam:value("ipv6", translate("IPv6 only")) +fam:depends("proto", "ahcp") + +function fam.cfgvalue(self, section) + local v4 = m.uci:get_bool("network", section, "ipv4_only") + local v6 = m.uci:get_bool("network", section, "ipv6_only") + if v4 then + return "ipv4" + elseif v6 then + return "ipv6" + end + return "" +end + +function fam.write(self, section, value) + if value == "ipv4" then + m.uci:set("network", section, "ipv4_only", "true") + m.uci:delete("network", section, "ipv6_only") + elseif value == "ipv6" then + m.uci:set("network", section, "ipv6_only", "true") + m.uci:delete("network", section, "ipv4_only") + end +end + +function fam.remove(self, section) + m.uci:delete("network", section, "ipv4_only") + m.uci:delete("network", section, "ipv6_only") +end + +nodns = s:taboption("ahcp", Flag, "no_dns", translate("Disable DNS setup")) +nodns.optional = true +nodns.enabled = "true" +nodns.disabled = "false" +nodns.default = nodns.disabled +nodns:depends("proto", "ahcp") + +ltime = s:taboption("ahcp", Value, "lease_time", translate("Lease validity time")) +ltime.optional = true +ltime.placeholder = 3666 +ltime.datatype = "uinteger" +ltime:depends("proto", "ahcp") + diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_network/routes.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_network/routes.lua new file mode 100644 index 000000000..1970f36a2 --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_network/routes.lua @@ -0,0 +1,102 @@ +-- Copyright 2008 Steven Barth +-- Licensed to the public under the Apache License 2.0. + +local wa = require "luci.tools.webadmin" +local fs = require "nixio.fs" + +m = Map("network", + translate("Routes"), + translate("Routes specify over which interface and gateway a certain host or network " .. + "can be reached.")) + +s = m:section(TypedSection, "route", translate("Static IPv4 Routes")) +s.addremove = true +s.anonymous = true + +s.template = "cbi/tblsection" + +iface = s:option(ListValue, "interface", translate("Interface")) +wa.cbi_add_networks(iface) + +t = s:option(Value, "target", translate("Target"), translate("Host-IP or Network")) +t.datatype = "ip4addr" +t.rmempty = false + +n = s:option(Value, "netmask", translate("IPv4-Netmask"), translate("if target is a network")) +n.placeholder = "255.255.255.255" +n.datatype = "ip4addr" +n.rmempty = true + +g = s:option(Value, "gateway", translate("IPv4-Gateway")) +g.datatype = "ip4addr" +g.rmempty = true + +metric = s:option(Value, "metric", translate("Metric")) +metric.placeholder = 0 +metric.datatype = "range(0,255)" +metric.size = 5 +metric.rmempty = true + +mtu = s:option(Value, "mtu", translate("MTU")) +mtu.placeholder = 1500 +mtu.datatype = "range(64,9000)" +mtu.size = 5 +mtu.rmempty = true + +routetype = s:option(Value, "type", translate("Route type")) +routetype:value("", "unicast") +routetype:value("local", "local") +routetype:value("broadcast", "broadcast") +routetype:value("multicast", "multicast") +routetype:value("unreachable", "unreachable") +routetype:value("prohibit", "prohibit") +routetype:value("blackhole", "blackhole") +routetype:value("anycast", "anycast") +routetype.default = "" +routetype.rmempty = true + +if fs.access("/proc/net/ipv6_route") then + s = m:section(TypedSection, "route6", translate("Static IPv6 Routes")) + s.addremove = true + s.anonymous = true + + s.template = "cbi/tblsection" + + iface = s:option(ListValue, "interface", translate("Interface")) + wa.cbi_add_networks(iface) + + t = s:option(Value, "target", translate("Target"), translate("IPv6-Address or Network (CIDR)")) + t.datatype = "ip6addr" + t.rmempty = false + + g = s:option(Value, "gateway", translate("IPv6-Gateway")) + g.datatype = "ip6addr" + g.rmempty = true + + metric = s:option(Value, "metric", translate("Metric")) + metric.placeholder = 0 + metric.datatype = "range(0,65535)" -- XXX: not sure + metric.size = 5 + metric.rmempty = true + + mtu = s:option(Value, "mtu", translate("MTU")) + mtu.placeholder = 1500 + mtu.datatype = "range(64,9000)" + mtu.size = 5 + mtu.rmempty = true + + routetype = s:option(Value, "type", translate("Route type")) + routetype:value("", "unicast") + routetype:value("local", "local") + routetype:value("broadcast", "broadcast") + routetype:value("multicast", "multicast") + routetype:value("unreachable", "unreachable") + routetype:value("prohibit", "prohibit") + routetype:value("blackhole", "blackhole") + routetype:value("anycast", "anycast") + routetype.default = "" + routetype.rmempty = true +end + + +return m diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_network/vlan.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_network/vlan.lua new file mode 100644 index 000000000..89a73a5ca --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_network/vlan.lua @@ -0,0 +1,363 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2010-2011 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +m = Map("network", translate("Switch"), translate("The network ports on this device can be combined to several VLANs in which computers can communicate directly with each other. VLANs are often used to separate different network segments. Often there is by default one Uplink port for a connection to the next greater network like the internet and other ports for a local network.")) + +local fs = require "nixio.fs" +local nw = require "luci.model.network" +local switches = { } + +nw.init(m.uci) + +local topologies = nw:get_switch_topologies() or {} + +local update_interfaces = function(old_ifname, new_ifname) + local info = { } + + m.uci:foreach("network", "interface", function(section) + local old_ifnames = m.uci:get("network", section[".name"], "ifname") + local new_ifnames = { } + local cur_ifname + local changed = false + for cur_ifname in luci.util.imatch(old_ifnames) do + if cur_ifname == old_ifname then + new_ifnames[#new_ifnames+1] = new_ifname + changed = true + else + new_ifnames[#new_ifnames+1] = cur_ifname + end + end + if changed then + m.uci:set("network", section[".name"], "ifname", table.concat(new_ifnames, " ")) + + info[#info+1] = translatef("Interface %q device auto-migrated from %q to %q.", + section[".name"], old_ifname, new_ifname) + end + end) + + if #info > 0 then + m.message = (m.message and m.message .. "\n" or "") .. table.concat(info, "\n") + end +end + +m.uci:foreach("network", "switch", + function(x) + local sid = x['.name'] + local switch_name = x.name or sid + local has_vlan = nil + local has_learn = nil + local has_vlan4k = nil + local has_jumbo3 = nil + local has_mirror = nil + local min_vid = 0 + local max_vid = 16 + local num_vlans = 16 + + local switch_title + local enable_vlan4k = false + + local topo = topologies[switch_name] + + if not topo then + m.message = translatef("Switch %q has an unknown topology - the VLAN settings might not be accurate.", switch_name) + topo = { + ports = { + { num = 0, label = "Port 1" }, + { num = 1, label = "Port 2" }, + { num = 2, label = "Port 3" }, + { num = 3, label = "Port 4" }, + { num = 4, label = "Port 5" }, + { num = 5, label = "CPU (eth0)", tagged = false } + } + } + end + + -- Parse some common switch properties from swconfig help output. + local swc = io.popen("swconfig dev %q help 2>/dev/null" % switch_name) + if swc then + + local is_port_attr = false + local is_vlan_attr = false + + while true do + local line = swc:read("*l") + if not line then break end + + if line:match("^%s+%-%-vlan") then + is_vlan_attr = true + + elseif line:match("^%s+%-%-port") then + is_vlan_attr = false + is_port_attr = true + + elseif line:match("cpu @") then + switch_title = line:match("^switch%d: %w+%((.-)%)") + num_vlans = tonumber(line:match("vlans: (%d+)")) or 16 + min_vid = 1 + + elseif line:match(": pvid") or line:match(": tag") or line:match(": vid") then + if is_vlan_attr then has_vlan4k = line:match(": (%w+)") end + + elseif line:match(": enable_vlan4k") then + enable_vlan4k = true + + elseif line:match(": enable_vlan") then + has_vlan = "enable_vlan" + + elseif line:match(": enable_learning") then + has_learn = "enable_learning" + + elseif line:match(": enable_mirror_rx") then + has_mirror = "enable_mirror_rx" + + elseif line:match(": max_length") then + has_jumbo3 = "max_length" + end + end + + swc:close() + end + + + -- Switch properties + s = m:section(NamedSection, x['.name'], "switch", + switch_title and translatef("Switch %q (%s)", switch_name, switch_title) + or translatef("Switch %q", switch_name)) + + s.addremove = false + + if has_vlan then + s:option(Flag, has_vlan, translate("Enable VLAN functionality")) + end + + if has_learn then + x = s:option(Flag, has_learn, translate("Enable learning and aging")) + x.default = x.enabled + end + + if has_jumbo3 then + x = s:option(Flag, has_jumbo3, translate("Enable Jumbo Frame passthrough")) + x.enabled = "3" + x.rmempty = true + end + + -- Does this switch support port mirroring? + if has_mirror then + s:option(Flag, "enable_mirror_rx", translate("Enable mirroring of incoming packets")) + s:option(Flag, "enable_mirror_tx", translate("Enable mirroring of outgoing packets")) + + local sp = s:option(ListValue, "mirror_source_port", translate("Mirror source port")) + local mp = s:option(ListValue, "mirror_monitor_port", translate("Mirror monitor port")) + + sp:depends("enable_mirror_tx", "1") + sp:depends("enable_mirror_rx", "1") + + mp:depends("enable_mirror_tx", "1") + mp:depends("enable_mirror_rx", "1") + + local _, pt + for _, pt in ipairs(topo.ports) do + sp:value(pt.num, pt.label) + mp:value(pt.num, pt.label) + end + end + + -- VLAN table + s = m:section(TypedSection, "switch_vlan", + switch_title and translatef("VLANs on %q (%s)", switch_name, switch_title) + or translatef("VLANs on %q", switch_name)) + + s.template = "cbi/tblsection" + s.addremove = true + s.anonymous = true + + -- Filter by switch + s.filter = function(self, section) + local device = m:get(section, "device") + return (device and device == switch_name) + end + + -- Override cfgsections callback to enforce row ordering by vlan id. + s.cfgsections = function(self) + local osections = TypedSection.cfgsections(self) + local sections = { } + local section + + for _, section in luci.util.spairs( + osections, + function(a, b) + return (tonumber(m:get(osections[a], has_vlan4k or "vlan")) or 9999) + < (tonumber(m:get(osections[b], has_vlan4k or "vlan")) or 9999) + end + ) do + sections[#sections+1] = section + end + + return sections + end + + -- When creating a new vlan, preset it with the highest found vid + 1. + s.create = function(self, section, origin) + -- Filter by switch + if m:get(origin, "device") ~= switch_name then + return + end + + local sid = TypedSection.create(self, section) + + local max_nr = 0 + local max_id = 0 + + m.uci:foreach("network", "switch_vlan", + function(s) + if s.device == switch_name then + local nr = tonumber(s.vlan) + local id = has_vlan4k and tonumber(s[has_vlan4k]) + if nr ~= nil and nr > max_nr then max_nr = nr end + if id ~= nil and id > max_id then max_id = id end + end + end) + + m:set(sid, "device", switch_name) + m:set(sid, "vlan", max_nr + 1) + + if has_vlan4k then + m:set(sid, has_vlan4k, max_id + 1) + end + + return sid + end + + + local port_opts = { } + local untagged = { } + + -- Parse current tagging state from the "ports" option. + local portvalue = function(self, section) + local pt + for pt in (m:get(section, "ports") or ""):gmatch("%w+") do + local pc, tu = pt:match("^(%d+)([tu]*)") + if pc == self.option then return (#tu > 0) and tu or "u" end + end + return "" + end + + -- Validate port tagging. Ensure that a port is only untagged once, + -- bail out if not. + local portvalidate = function(self, value, section) + -- ensure that the ports appears untagged only once + if value == "u" then + if not untagged[self.option] then + untagged[self.option] = true + else + return nil, + translatef("%s is untagged in multiple VLANs!", self.title) + end + end + return value + end + + + local vid = s:option(Value, has_vlan4k or "vlan", "VLAN ID", "
" % switch_name) + local mx_vid = has_vlan4k and 4094 or (num_vlans - 1) + + vid.rmempty = false + vid.forcewrite = true + vid.vlan_used = { } + vid.datatype = "and(uinteger,range("..min_vid..","..mx_vid.."))" + + -- Validate user provided VLAN ID, make sure its within the bounds + -- allowed by the switch. + vid.validate = function(self, value, section) + local v = tonumber(value) + local m = has_vlan4k and 4094 or (num_vlans - 1) + if v ~= nil and v >= min_vid and v <= m then + if not self.vlan_used[v] then + self.vlan_used[v] = true + return value + else + return nil, + translatef("Invalid VLAN ID given! Only unique IDs are allowed") + end + else + return nil, + translatef("Invalid VLAN ID given! Only IDs between %d and %d are allowed.", min_vid, m) + end + end + + -- When writing the "vid" or "vlan" option, serialize the port states + -- as well and write them as "ports" option to uci. + vid.write = function(self, section, new_vid) + local o + local p = { } + for _, o in ipairs(port_opts) do + local new_tag = o:formvalue(section) + if new_tag == "t" then + p[#p+1] = o.option .. new_tag + elseif new_tag == "u" then + p[#p+1] = o.option + end + + if o.info and o.info.device then + local old_tag = o:cfgvalue(section) + local old_vid = self:cfgvalue(section) + if old_tag ~= new_tag or old_vid ~= new_vid then + local old_ifname = (old_tag == "u") and o.info.device + or "%s.%s" %{ o.info.device, old_vid } + + local new_ifname = (new_tag == "u") and o.info.device + or "%s.%s" %{ o.info.device, new_vid } + + if old_ifname ~= new_ifname then + update_interfaces(old_ifname, new_ifname) + end + end + end + end + + if enable_vlan4k then + m:set(sid, "enable_vlan4k", "1") + end + + m:set(section, "ports", table.concat(p, " ")) + return Value.write(self, section, new_vid) + end + + -- Fallback to "vlan" option if "vid" option is supported but unset. + vid.cfgvalue = function(self, section) + return m:get(section, has_vlan4k or "vlan") + or m:get(section, "vlan") + end + + local _, pt + for _, pt in ipairs(topo.ports) do + local po = s:option(ListValue, tostring(pt.num), pt.label, '
' %{ switch_name, pt.num }) + + po:value("", translate("off")) + + if not pt.tagged then + po:value("u", translate("untagged")) + end + + po:value("t", translate("tagged")) + + po.cfgvalue = portvalue + po.validate = portvalidate + po.write = function() end + po.info = pt + + port_opts[#port_opts+1] = po + end + + table.sort(port_opts, function(a, b) return a.option < b.option end) + switches[#switches+1] = switch_name + end +) + +-- Switch status template +s = m:section(SimpleSection) +s.template = "admin_network/switch_status" +s.switches = switches + +return m diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi.lua new file mode 100644 index 000000000..6c89d7ee8 --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi.lua @@ -0,0 +1,1192 @@ +-- Copyright 2008 Steven Barth +-- Licensed to the public under the Apache License 2.0. + +local wa = require "luci.tools.webadmin" +local nw = require "luci.model.network" +local ut = require "luci.util" +local nt = require "luci.sys".net +local fs = require "nixio.fs" + +arg[1] = arg[1] or "" + +m = Map("wireless", "", + translate("The Device Configuration section covers physical settings of the radio " .. + "hardware such as channel, transmit power or antenna selection which are shared among all " .. + "defined wireless networks (if the radio hardware is multi-SSID capable). Per network settings " .. + "like encryption or operation mode are grouped in the Interface Configuration.")) + +m:chain("network") +m:chain("firewall") +m.redirect = luci.dispatcher.build_url("admin/network/wireless") + +local ifsection + +function m.on_commit(map) + local wnet = nw:get_wifinet(arg[1]) + if ifsection and wnet then + ifsection.section = wnet.sid + m.title = luci.util.pcdata(wnet:get_i18n()) + end +end + +nw.init(m.uci) + +local wnet = nw:get_wifinet(arg[1]) +local wdev = wnet and wnet:get_device() + +-- redirect to overview page if network does not exist anymore (e.g. after a revert) +if not wnet or not wdev then + luci.http.redirect(luci.dispatcher.build_url("admin/network/wireless")) + return +end + +-- wireless toggle was requested, commit and reload page +function m.parse(map) + local new_cc = m:formvalue("cbid.wireless.%s.country" % wdev:name()) + local old_cc = m:get(wdev:name(), "country") + + if m:formvalue("cbid.wireless.%s.__toggle" % wdev:name()) then + if wdev:get("disabled") == "1" or wnet:get("disabled") == "1" then + wnet:set("disabled", nil) + else + wnet:set("disabled", "1") + end + wdev:set("disabled", nil) + + nw:commit("wireless") + luci.sys.call("(env -i /bin/ubus call network reload) >/dev/null 2>/dev/null") + + luci.http.redirect(luci.dispatcher.build_url("admin/network/wireless", arg[1])) + return + end + + Map.parse(map) + + if m:get(wdev:name(), "type") == "mac80211" and new_cc and new_cc ~= old_cc then + luci.sys.call("iw reg set %q" % new_cc) + luci.http.redirect(luci.dispatcher.build_url("admin/network/wireless", arg[1])) + return + end +end + +m.title = luci.util.pcdata(wnet:get_i18n()) + + +local function txpower_list(iw) + local list = iw.txpwrlist or { } + local off = tonumber(iw.txpower_offset) or 0 + local new = { } + local prev = -1 + local _, val + for _, val in ipairs(list) do + local dbm = val.dbm + off + local mw = math.floor(10 ^ (dbm / 10)) + if mw ~= prev then + prev = mw + new[#new+1] = { + display_dbm = dbm, + display_mw = mw, + driver_dbm = val.dbm, + driver_mw = val.mw + } + end + end + return new +end + +local function txpower_current(pwr, list) + pwr = tonumber(pwr) + if pwr ~= nil then + local _, item + for _, item in ipairs(list) do + if item.driver_dbm >= pwr then + return item.driver_dbm + end + end + end + return pwr or "" +end + +local iw = luci.sys.wifi.getiwinfo(arg[1]) +local hw_modes = iw.hwmodelist or { } +local tx_power_list = txpower_list(iw) +local tx_power_cur = txpower_current(wdev:get("txpower"), tx_power_list) + +s = m:section(NamedSection, wdev:name(), "wifi-device", translate("Device Configuration")) +s.addremove = false + +s:tab("general", translate("General Setup")) +s:tab("macfilter", translate("MAC-Filter")) +s:tab("advanced", translate("Advanced Settings")) + +--[[ +back = s:option(DummyValue, "_overview", translate("Overview")) +back.value = "" +back.titleref = luci.dispatcher.build_url("admin", "network", "wireless") +]] + +st = s:taboption("general", DummyValue, "__status", translate("Status")) +st.template = "admin_network/wifi_status" +st.ifname = arg[1] + +en = s:taboption("general", Button, "__toggle") + +if wdev:get("disabled") == "1" or wnet:get("disabled") == "1" then + en.title = translate("Wireless network is disabled") + en.inputtitle = translate("Enable") + en.inputstyle = "apply" +else + en.title = translate("Wireless network is enabled") + en.inputtitle = translate("Disable") + en.inputstyle = "reset" +end + + +local hwtype = wdev:get("type") + +-- NanoFoo +local nsantenna = wdev:get("antenna") + +-- Check whether there are client interfaces on the same radio, +-- if yes, lock the channel choice as these stations will dicatate the freq +local found_sta = nil +local _, net +if wnet:mode() ~= "sta" then + for _, net in ipairs(wdev:get_wifinets()) do + if net:mode() == "sta" and net:get("disabled") ~= "1" then + if not found_sta then + found_sta = {} + found_sta.channel = net:channel() + found_sta.names = {} + end + found_sta.names[#found_sta.names+1] = net:shortname() + end + end +end + +if found_sta then + ch = s:taboption("general", DummyValue, "choice", translate("Channel")) + ch.value = translatef("Locked to channel %s used by: %s", + found_sta.channel or "(auto)", table.concat(found_sta.names, ", ")) +else + ch = s:taboption("general", Value, "_mode_freq", '
'..translate("Operating frequency")) + ch.hwmodes = hw_modes + ch.htmodes = iw.htmodelist + ch.freqlist = iw.freqlist + ch.template = "cbi/wireless_modefreq" + + function ch.cfgvalue(self, section) + return { + m:get(section, "hwmode") or "", + m:get(section, "channel") or "auto", + m:get(section, "htmode") or "" + } + end + + function ch.formvalue(self, section) + return { + m:formvalue(self:cbid(section) .. ".band") or (hw_modes.g and "11g" or "11a"), + m:formvalue(self:cbid(section) .. ".channel") or "auto", + m:formvalue(self:cbid(section) .. ".htmode") or "" + } + end + + function ch.write(self, section, value) + m:set(section, "hwmode", value[1]) + m:set(section, "channel", value[2]) + m:set(section, "htmode", value[3]) + end +end + +------------------- MAC80211 Device ------------------ + +if hwtype == "mac80211" then + if #tx_power_list > 0 then + tp = s:taboption("general", ListValue, + "txpower", translate("Transmit Power"), "dBm") + tp.rmempty = true + tp.default = tx_power_cur + function tp.cfgvalue(...) + return txpower_current(Value.cfgvalue(...), tx_power_list) + end + + tp:value("", translate("auto")) + for _, p in ipairs(tx_power_list) do + tp:value(p.driver_dbm, "%i dBm (%i mW)" + %{ p.display_dbm, p.display_mw }) + end + end + + local cl = iw and iw.countrylist + if cl and #cl > 0 then + cc = s:taboption("advanced", ListValue, "country", translate("Country Code"), translate("Use ISO/IEC 3166 alpha2 country codes.")) + cc.default = tostring(iw and iw.country or "00") + for _, c in ipairs(cl) do + cc:value(c.alpha2, "%s - %s" %{ c.alpha2, c.name }) + end + else + s:taboption("advanced", Value, "country", translate("Country Code"), translate("Use ISO/IEC 3166 alpha2 country codes.")) + end + + s:taboption("advanced", Value, "distance", translate("Distance Optimization"), + translate("Distance to farthest network member in meters.")) + + -- external antenna profiles + local eal = iw and iw.extant + if eal and #eal > 0 then + ea = s:taboption("advanced", ListValue, "extant", translate("Antenna Configuration")) + for _, eap in ipairs(eal) do + ea:value(eap.id, "%s (%s)" %{ eap.name, eap.description }) + if eap.selected then + ea.default = eap.id + end + end + end + + s:taboption("advanced", Value, "frag", translate("Fragmentation Threshold")) + s:taboption("advanced", Value, "rts", translate("RTS/CTS Threshold")) +end + + +------------------- Madwifi Device ------------------ + +if hwtype == "atheros" then + tp = s:taboption("general", + (#tx_power_list > 0) and ListValue or Value, + "txpower", translate("Transmit Power"), "dBm") + + tp.rmempty = true + tp.default = tx_power_cur + + function tp.cfgvalue(...) + return txpower_current(Value.cfgvalue(...), tx_power_list) + end + + tp:value("", translate("auto")) + for _, p in ipairs(tx_power_list) do + tp:value(p.driver_dbm, "%i dBm (%i mW)" + %{ p.display_dbm, p.display_mw }) + end + + s:taboption("advanced", Flag, "diversity", translate("Diversity")).rmempty = false + + if not nsantenna then + ant1 = s:taboption("advanced", ListValue, "txantenna", translate("Transmitter Antenna")) + ant1.widget = "radio" + ant1.orientation = "horizontal" + ant1:depends("diversity", "") + ant1:value("0", translate("auto")) + ant1:value("1", translate("Antenna 1")) + ant1:value("2", translate("Antenna 2")) + + ant2 = s:taboption("advanced", ListValue, "rxantenna", translate("Receiver Antenna")) + ant2.widget = "radio" + ant2.orientation = "horizontal" + ant2:depends("diversity", "") + ant2:value("0", translate("auto")) + ant2:value("1", translate("Antenna 1")) + ant2:value("2", translate("Antenna 2")) + + else -- NanoFoo + local ant = s:taboption("advanced", ListValue, "antenna", translate("Transmitter Antenna")) + ant:value("auto") + ant:value("vertical") + ant:value("horizontal") + ant:value("external") + end + + s:taboption("advanced", Value, "distance", translate("Distance Optimization"), + translate("Distance to farthest network member in meters.")) + s:taboption("advanced", Value, "regdomain", translate("Regulatory Domain")) + s:taboption("advanced", Value, "country", translate("Country Code")) + s:taboption("advanced", Flag, "outdoor", translate("Outdoor Channels")) + + --s:option(Flag, "nosbeacon", translate("Disable HW-Beacon timer")) +end + + + +------------------- Broadcom Device ------------------ + +if hwtype == "broadcom" then + tp = s:taboption("general", + (#tx_power_list > 0) and ListValue or Value, + "txpower", translate("Transmit Power"), "dBm") + + tp.rmempty = true + tp.default = tx_power_cur + + function tp.cfgvalue(...) + return txpower_current(Value.cfgvalue(...), tx_power_list) + end + + tp:value("", translate("auto")) + for _, p in ipairs(tx_power_list) do + tp:value(p.driver_dbm, "%i dBm (%i mW)" + %{ p.display_dbm, p.display_mw }) + end + + mode = s:taboption("advanced", ListValue, "hwmode", translate("Band")) + if hw_modes.b then + mode:value("11b", "2.4GHz (802.11b)") + if hw_modes.g then + mode:value("11bg", "2.4GHz (802.11b+g)") + end + end + if hw_modes.g then + mode:value("11g", "2.4GHz (802.11g)") + mode:value("11gst", "2.4GHz (802.11g + Turbo)") + mode:value("11lrs", "2.4GHz (802.11g Limited Rate Support)") + end + if hw_modes.a then mode:value("11a", "5GHz (802.11a)") end + if hw_modes.n then + if hw_modes.g then + mode:value("11ng", "2.4GHz (802.11g+n)") + mode:value("11n", "2.4GHz (802.11n)") + end + if hw_modes.a then + mode:value("11na", "5GHz (802.11a+n)") + mode:value("11n", "5GHz (802.11n)") + end + htmode = s:taboption("advanced", ListValue, "htmode", translate("HT mode (802.11n)")) + htmode:depends("hwmode", "11ng") + htmode:depends("hwmode", "11na") + htmode:depends("hwmode", "11n") + htmode:value("HT20", "20MHz") + htmode:value("HT40", "40MHz") + end + + ant1 = s:taboption("advanced", ListValue, "txantenna", translate("Transmitter Antenna")) + ant1.widget = "radio" + ant1:depends("diversity", "") + ant1:value("3", translate("auto")) + ant1:value("0", translate("Antenna 1")) + ant1:value("1", translate("Antenna 2")) + + ant2 = s:taboption("advanced", ListValue, "rxantenna", translate("Receiver Antenna")) + ant2.widget = "radio" + ant2:depends("diversity", "") + ant2:value("3", translate("auto")) + ant2:value("0", translate("Antenna 1")) + ant2:value("1", translate("Antenna 2")) + + s:taboption("advanced", Flag, "frameburst", translate("Frame Bursting")) + + s:taboption("advanced", Value, "distance", translate("Distance Optimization")) + --s:option(Value, "slottime", translate("Slot time")) + + s:taboption("advanced", Value, "country", translate("Country Code")) + s:taboption("advanced", Value, "maxassoc", translate("Connection Limit")) +end + + +--------------------- HostAP Device --------------------- + +if hwtype == "prism2" then + s:taboption("advanced", Value, "txpower", translate("Transmit Power"), "att units").rmempty = true + + s:taboption("advanced", Flag, "diversity", translate("Diversity")).rmempty = false + + s:taboption("advanced", Value, "txantenna", translate("Transmitter Antenna")) + s:taboption("advanced", Value, "rxantenna", translate("Receiver Antenna")) +end + + +----------------------- Interface ----------------------- + +s = m:section(NamedSection, wnet.sid, "wifi-iface", translate("Interface Configuration")) +ifsection = s +s.addremove = false +s.anonymous = true +s.defaults.device = wdev:name() + +s:tab("general", translate("General Setup")) +s:tab("encryption", translate("Wireless Security")) +s:tab("macfilter", translate("MAC-Filter")) +s:tab("advanced", translate("Advanced Settings")) + +ssid = s:taboption("general", Value, "ssid", translate("ESSID")) +ssid.datatype = "maxlength(32)" + +mode = s:taboption("general", ListValue, "mode", translate("Mode")) +mode.override_values = true +mode:value("ap", translate("Access Point")) +mode:value("sta", translate("Client")) +mode:value("adhoc", translate("Ad-Hoc")) + +bssid = s:taboption("general", Value, "bssid", translate("BSSID")) + +network = s:taboption("general", Value, "network", translate("Network"), + translate("Choose the network(s) you want to attach to this wireless interface or " .. + "fill out the create field to define a new network.")) + +network.rmempty = true +network.template = "cbi/network_netlist" +network.widget = "checkbox" +network.novirtual = true + +function network.write(self, section, value) + local i = nw:get_interface(section) + if i then + if value == '-' then + value = m:formvalue(self:cbid(section) .. ".newnet") + if value and #value > 0 then + local n = nw:add_network(value, {proto="none"}) + if n then n:add_interface(i) end + else + local n = i:get_network() + if n then n:del_interface(i) end + end + else + local v + for _, v in ipairs(i:get_networks()) do + v:del_interface(i) + end + for v in ut.imatch(value) do + local n = nw:get_network(v) + if n then + if not n:is_empty() then + n:set("type", "bridge") + end + n:add_interface(i) + end + end + end + end +end + +-------------------- MAC80211 Interface ---------------------- + +if hwtype == "mac80211" then + if fs.access("/usr/sbin/iw") then + mode:value("mesh", "802.11s") + end + + mode:value("ahdemo", translate("Pseudo Ad-Hoc (ahdemo)")) + mode:value("monitor", translate("Monitor")) + bssid:depends({mode="adhoc"}) + bssid:depends({mode="sta"}) + bssid:depends({mode="sta-wds"}) + + mp = s:taboption("macfilter", ListValue, "macfilter", translate("MAC-Address Filter")) + mp:depends({mode="ap"}) + mp:depends({mode="ap-wds"}) + mp:value("", translate("disable")) + mp:value("allow", translate("Allow listed only")) + mp:value("deny", translate("Allow all except listed")) + + ml = s:taboption("macfilter", DynamicList, "maclist", translate("MAC-List")) + ml.datatype = "macaddr" + ml:depends({macfilter="allow"}) + ml:depends({macfilter="deny"}) + nt.mac_hints(function(mac, name) ml:value(mac, "%s (%s)" %{ mac, name }) end) + + mode:value("ap-wds", "%s (%s)" % {translate("Access Point"), translate("WDS")}) + mode:value("sta-wds", "%s (%s)" % {translate("Client"), translate("WDS")}) + + function mode.write(self, section, value) + if value == "ap-wds" then + ListValue.write(self, section, "ap") + m.uci:set("wireless", section, "wds", 1) + elseif value == "sta-wds" then + ListValue.write(self, section, "sta") + m.uci:set("wireless", section, "wds", 1) + else + ListValue.write(self, section, value) + m.uci:delete("wireless", section, "wds") + end + end + + function mode.cfgvalue(self, section) + local mode = ListValue.cfgvalue(self, section) + local wds = m.uci:get("wireless", section, "wds") == "1" + + if mode == "ap" and wds then + return "ap-wds" + elseif mode == "sta" and wds then + return "sta-wds" + else + return mode + end + end + + hidden = s:taboption("general", Flag, "hidden", translate("Hide ESSID")) + hidden:depends({mode="ap"}) + hidden:depends({mode="ap-wds"}) + + wmm = s:taboption("general", Flag, "wmm", translate("WMM Mode")) + wmm:depends({mode="ap"}) + wmm:depends({mode="ap-wds"}) + wmm.default = wmm.enabled + + ifname = s:taboption("advanced", Value, "ifname", translate("Interface name"), translate("Override default interface name")) + ifname.optional = true +end + + + +-------------------- Madwifi Interface ---------------------- + +if hwtype == "atheros" then + mode:value("ahdemo", translate("Pseudo Ad-Hoc (ahdemo)")) + mode:value("monitor", translate("Monitor")) + mode:value("ap-wds", "%s (%s)" % {translate("Access Point"), translate("WDS")}) + mode:value("sta-wds", "%s (%s)" % {translate("Client"), translate("WDS")}) + mode:value("wds", translate("Static WDS")) + + function mode.write(self, section, value) + if value == "ap-wds" then + ListValue.write(self, section, "ap") + m.uci:set("wireless", section, "wds", 1) + elseif value == "sta-wds" then + ListValue.write(self, section, "sta") + m.uci:set("wireless", section, "wds", 1) + else + ListValue.write(self, section, value) + m.uci:delete("wireless", section, "wds") + end + end + + function mode.cfgvalue(self, section) + local mode = ListValue.cfgvalue(self, section) + local wds = m.uci:get("wireless", section, "wds") == "1" + + if mode == "ap" and wds then + return "ap-wds" + elseif mode == "sta" and wds then + return "sta-wds" + else + return mode + end + end + + bssid:depends({mode="adhoc"}) + bssid:depends({mode="ahdemo"}) + bssid:depends({mode="wds"}) + + wdssep = s:taboption("advanced", Flag, "wdssep", translate("Separate WDS")) + wdssep:depends({mode="ap-wds"}) + + s:taboption("advanced", Flag, "doth", "802.11h") + hidden = s:taboption("general", Flag, "hidden", translate("Hide ESSID")) + hidden:depends({mode="ap"}) + hidden:depends({mode="adhoc"}) + hidden:depends({mode="ap-wds"}) + hidden:depends({mode="sta-wds"}) + isolate = s:taboption("advanced", Flag, "isolate", translate("Separate Clients"), + translate("Prevents client-to-client communication")) + isolate:depends({mode="ap"}) + s:taboption("advanced", Flag, "bgscan", translate("Background Scan")) + + mp = s:taboption("macfilter", ListValue, "macpolicy", translate("MAC-Address Filter")) + mp:value("", translate("disable")) + mp:value("allow", translate("Allow listed only")) + mp:value("deny", translate("Allow all except listed")) + + ml = s:taboption("macfilter", DynamicList, "maclist", translate("MAC-List")) + ml.datatype = "macaddr" + ml:depends({macpolicy="allow"}) + ml:depends({macpolicy="deny"}) + nt.mac_hints(function(mac, name) ml:value(mac, "%s (%s)" %{ mac, name }) end) + + s:taboption("advanced", Value, "rate", translate("Transmission Rate")) + s:taboption("advanced", Value, "mcast_rate", translate("Multicast Rate")) + s:taboption("advanced", Value, "frag", translate("Fragmentation Threshold")) + s:taboption("advanced", Value, "rts", translate("RTS/CTS Threshold")) + s:taboption("advanced", Value, "minrate", translate("Minimum Rate")) + s:taboption("advanced", Value, "maxrate", translate("Maximum Rate")) + s:taboption("advanced", Flag, "compression", translate("Compression")) + + s:taboption("advanced", Flag, "bursting", translate("Frame Bursting")) + s:taboption("advanced", Flag, "turbo", translate("Turbo Mode")) + s:taboption("advanced", Flag, "ff", translate("Fast Frames")) + + s:taboption("advanced", Flag, "wmm", translate("WMM Mode")) + s:taboption("advanced", Flag, "xr", translate("XR Support")) + s:taboption("advanced", Flag, "ar", translate("AR Support")) + + local swm = s:taboption("advanced", Flag, "sw_merge", translate("Disable HW-Beacon timer")) + swm:depends({mode="adhoc"}) + + local nos = s:taboption("advanced", Flag, "nosbeacon", translate("Disable HW-Beacon timer")) + nos:depends({mode="sta"}) + nos:depends({mode="sta-wds"}) + + local probereq = s:taboption("advanced", Flag, "probereq", translate("Do not send probe responses")) + probereq.enabled = "0" + probereq.disabled = "1" +end + + +-------------------- Broadcom Interface ---------------------- + +if hwtype == "broadcom" then + mode:value("wds", translate("WDS")) + mode:value("monitor", translate("Monitor")) + + hidden = s:taboption("general", Flag, "hidden", translate("Hide ESSID")) + hidden:depends({mode="ap"}) + hidden:depends({mode="adhoc"}) + hidden:depends({mode="wds"}) + + isolate = s:taboption("advanced", Flag, "isolate", translate("Separate Clients"), + translate("Prevents client-to-client communication")) + isolate:depends({mode="ap"}) + + s:taboption("advanced", Flag, "doth", "802.11h") + s:taboption("advanced", Flag, "wmm", translate("WMM Mode")) + + bssid:depends({mode="wds"}) + bssid:depends({mode="adhoc"}) +end + + +----------------------- HostAP Interface --------------------- + +if hwtype == "prism2" then + mode:value("wds", translate("WDS")) + mode:value("monitor", translate("Monitor")) + + hidden = s:taboption("general", Flag, "hidden", translate("Hide ESSID")) + hidden:depends({mode="ap"}) + hidden:depends({mode="adhoc"}) + hidden:depends({mode="wds"}) + + bssid:depends({mode="sta"}) + + mp = s:taboption("macfilter", ListValue, "macpolicy", translate("MAC-Address Filter")) + mp:value("", translate("disable")) + mp:value("allow", translate("Allow listed only")) + mp:value("deny", translate("Allow all except listed")) + ml = s:taboption("macfilter", DynamicList, "maclist", translate("MAC-List")) + ml:depends({macpolicy="allow"}) + ml:depends({macpolicy="deny"}) + nt.mac_hints(function(mac, name) ml:value(mac, "%s (%s)" %{ mac, name }) end) + + s:taboption("advanced", Value, "rate", translate("Transmission Rate")) + s:taboption("advanced", Value, "frag", translate("Fragmentation Threshold")) + s:taboption("advanced", Value, "rts", translate("RTS/CTS Threshold")) +end + + +------------------- WiFI-Encryption ------------------- + +encr = s:taboption("encryption", ListValue, "encryption", translate("Encryption")) +encr.override_values = true +encr.override_depends = true +encr:depends({mode="ap"}) +encr:depends({mode="sta"}) +encr:depends({mode="adhoc"}) +encr:depends({mode="ahdemo"}) +encr:depends({mode="ap-wds"}) +encr:depends({mode="sta-wds"}) +encr:depends({mode="mesh"}) + +cipher = s:taboption("encryption", ListValue, "cipher", translate("Cipher")) +cipher:depends({encryption="wpa"}) +cipher:depends({encryption="wpa2"}) +cipher:depends({encryption="psk"}) +cipher:depends({encryption="psk2"}) +cipher:depends({encryption="wpa-mixed"}) +cipher:depends({encryption="psk-mixed"}) +cipher:value("auto", translate("auto")) +cipher:value("ccmp", translate("Force CCMP (AES)")) +cipher:value("tkip", translate("Force TKIP")) +cipher:value("tkip+ccmp", translate("Force TKIP and CCMP (AES)")) + +function encr.cfgvalue(self, section) + local v = tostring(ListValue.cfgvalue(self, section)) + if v == "wep" then + return "wep-open" + elseif v and v:match("%+") then + return (v:gsub("%+.+$", "")) + end + return v +end + +function encr.write(self, section, value) + local e = tostring(encr:formvalue(section)) + local c = tostring(cipher:formvalue(section)) + if value == "wpa" or value == "wpa2" then + self.map.uci:delete("wireless", section, "key") + end + if e and (c == "tkip" or c == "ccmp" or c == "tkip+ccmp") then + e = e .. "+" .. c + end + self.map:set(section, "encryption", e) +end + +function cipher.cfgvalue(self, section) + local v = tostring(ListValue.cfgvalue(encr, section)) + if v and v:match("%+") then + v = v:gsub("^[^%+]+%+", "") + if v == "aes" then v = "ccmp" + elseif v == "tkip+aes" then v = "tkip+ccmp" + elseif v == "aes+tkip" then v = "tkip+ccmp" + elseif v == "ccmp+tkip" then v = "tkip+ccmp" + end + end + return v +end + +function cipher.write(self, section) + return encr:write(section) +end + + +encr:value("none", "No Encryption") +encr:value("wep-open", translate("WEP Open System"), {mode="ap"}, {mode="sta"}, {mode="ap-wds"}, {mode="sta-wds"}, {mode="adhoc"}, {mode="ahdemo"}, {mode="wds"}) +encr:value("wep-shared", translate("WEP Shared Key"), {mode="ap"}, {mode="sta"}, {mode="ap-wds"}, {mode="sta-wds"}, {mode="adhoc"}, {mode="ahdemo"}, {mode="wds"}) + +if hwtype == "atheros" or hwtype == "mac80211" or hwtype == "prism2" then + local supplicant = fs.access("/usr/sbin/wpa_supplicant") + local hostapd = fs.access("/usr/sbin/hostapd") + + -- Probe EAP support + local has_ap_eap = (os.execute("hostapd -veap >/dev/null 2>/dev/null") == 0) + local has_sta_eap = (os.execute("wpa_supplicant -veap >/dev/null 2>/dev/null") == 0) + + if hostapd and supplicant then + encr:value("psk", "WPA-PSK", {mode="ap"}, {mode="sta"}, {mode="ap-wds"}, {mode="sta-wds"}) + encr:value("psk2", "WPA2-PSK", {mode="ap"}, {mode="sta"}, {mode="ap-wds"}, {mode="sta-wds"}) + encr:value("psk-mixed", "WPA-PSK/WPA2-PSK Mixed Mode", {mode="ap"}, {mode="sta"}, {mode="ap-wds"}, {mode="sta-wds"}) + if has_ap_eap and has_sta_eap then + encr:value("wpa", "WPA-EAP", {mode="ap"}, {mode="sta"}, {mode="ap-wds"}, {mode="sta-wds"}) + encr:value("wpa2", "WPA2-EAP", {mode="ap"}, {mode="sta"}, {mode="ap-wds"}, {mode="sta-wds"}) + end + elseif hostapd and not supplicant then + encr:value("psk", "WPA-PSK", {mode="ap"}, {mode="ap-wds"}) + encr:value("psk2", "WPA2-PSK", {mode="ap"}, {mode="ap-wds"}) + encr:value("psk-mixed", "WPA-PSK/WPA2-PSK Mixed Mode", {mode="ap"}, {mode="ap-wds"}) + if has_ap_eap then + encr:value("wpa", "WPA-EAP", {mode="ap"}, {mode="ap-wds"}) + encr:value("wpa2", "WPA2-EAP", {mode="ap"}, {mode="ap-wds"}) + end + encr.description = translate( + "WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " .. + "and ad-hoc mode) to be installed." + ) + elseif not hostapd and supplicant then + encr:value("psk", "WPA-PSK", {mode="sta"}, {mode="sta-wds"}) + encr:value("psk2", "WPA2-PSK", {mode="sta"}, {mode="sta-wds"}) + encr:value("psk-mixed", "WPA-PSK/WPA2-PSK Mixed Mode", {mode="sta"}, {mode="sta-wds"}) + if has_sta_eap then + encr:value("wpa", "WPA-EAP", {mode="sta"}, {mode="sta-wds"}) + encr:value("wpa2", "WPA2-EAP", {mode="sta"}, {mode="sta-wds"}) + end + encr.description = translate( + "WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " .. + "and ad-hoc mode) to be installed." + ) + else + encr.description = translate( + "WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " .. + "and ad-hoc mode) to be installed." + ) + end +elseif hwtype == "broadcom" then + encr:value("psk", "WPA-PSK") + encr:value("psk2", "WPA2-PSK") + encr:value("psk+psk2", "WPA-PSK/WPA2-PSK Mixed Mode") +end + +auth_server = s:taboption("encryption", Value, "auth_server", translate("Radius-Authentication-Server")) +auth_server:depends({mode="ap", encryption="wpa"}) +auth_server:depends({mode="ap", encryption="wpa2"}) +auth_server:depends({mode="ap-wds", encryption="wpa"}) +auth_server:depends({mode="ap-wds", encryption="wpa2"}) +auth_server.rmempty = true +auth_server.datatype = "host(0)" + +auth_port = s:taboption("encryption", Value, "auth_port", translate("Radius-Authentication-Port"), translatef("Default %d", 1812)) +auth_port:depends({mode="ap", encryption="wpa"}) +auth_port:depends({mode="ap", encryption="wpa2"}) +auth_port:depends({mode="ap-wds", encryption="wpa"}) +auth_port:depends({mode="ap-wds", encryption="wpa2"}) +auth_port.rmempty = true +auth_port.datatype = "port" + +auth_secret = s:taboption("encryption", Value, "auth_secret", translate("Radius-Authentication-Secret")) +auth_secret:depends({mode="ap", encryption="wpa"}) +auth_secret:depends({mode="ap", encryption="wpa2"}) +auth_secret:depends({mode="ap-wds", encryption="wpa"}) +auth_secret:depends({mode="ap-wds", encryption="wpa2"}) +auth_secret.rmempty = true +auth_secret.password = true + +acct_server = s:taboption("encryption", Value, "acct_server", translate("Radius-Accounting-Server")) +acct_server:depends({mode="ap", encryption="wpa"}) +acct_server:depends({mode="ap", encryption="wpa2"}) +acct_server:depends({mode="ap-wds", encryption="wpa"}) +acct_server:depends({mode="ap-wds", encryption="wpa2"}) +acct_server.rmempty = true +acct_server.datatype = "host(0)" + +acct_port = s:taboption("encryption", Value, "acct_port", translate("Radius-Accounting-Port"), translatef("Default %d", 1813)) +acct_port:depends({mode="ap", encryption="wpa"}) +acct_port:depends({mode="ap", encryption="wpa2"}) +acct_port:depends({mode="ap-wds", encryption="wpa"}) +acct_port:depends({mode="ap-wds", encryption="wpa2"}) +acct_port.rmempty = true +acct_port.datatype = "port" + +acct_secret = s:taboption("encryption", Value, "acct_secret", translate("Radius-Accounting-Secret")) +acct_secret:depends({mode="ap", encryption="wpa"}) +acct_secret:depends({mode="ap", encryption="wpa2"}) +acct_secret:depends({mode="ap-wds", encryption="wpa"}) +acct_secret:depends({mode="ap-wds", encryption="wpa2"}) +acct_secret.rmempty = true +acct_secret.password = true + +wpakey = s:taboption("encryption", Value, "_wpa_key", translate("Key")) +wpakey:depends("encryption", "psk") +wpakey:depends("encryption", "psk2") +wpakey:depends("encryption", "psk+psk2") +wpakey:depends("encryption", "psk-mixed") +wpakey.datatype = "wpakey" +wpakey.rmempty = true +wpakey.password = true + +wpakey.cfgvalue = function(self, section, value) + local key = m.uci:get("wireless", section, "key") + if key == "1" or key == "2" or key == "3" or key == "4" then + return nil + end + return key +end + +wpakey.write = function(self, section, value) + self.map.uci:set("wireless", section, "key", value) + self.map.uci:delete("wireless", section, "key1") +end + + +wepslot = s:taboption("encryption", ListValue, "_wep_key", translate("Used Key Slot")) +wepslot:depends("encryption", "wep-open") +wepslot:depends("encryption", "wep-shared") +wepslot:value("1", translatef("Key #%d", 1)) +wepslot:value("2", translatef("Key #%d", 2)) +wepslot:value("3", translatef("Key #%d", 3)) +wepslot:value("4", translatef("Key #%d", 4)) + +wepslot.cfgvalue = function(self, section) + local slot = tonumber(m.uci:get("wireless", section, "key")) + if not slot or slot < 1 or slot > 4 then + return 1 + end + return slot +end + +wepslot.write = function(self, section, value) + self.map.uci:set("wireless", section, "key", value) +end + +local slot +for slot=1,4 do + wepkey = s:taboption("encryption", Value, "key" .. slot, translatef("Key #%d", slot)) + wepkey:depends("encryption", "wep-open") + wepkey:depends("encryption", "wep-shared") + wepkey.datatype = "wepkey" + wepkey.rmempty = true + wepkey.password = true + + function wepkey.write(self, section, value) + if value and (#value == 5 or #value == 13) then + value = "s:" .. value + end + return Value.write(self, section, value) + end +end + + +if hwtype == "atheros" or hwtype == "mac80211" or hwtype == "prism2" then + + -- Probe 802.11r support (and EAP support as a proxy for Openwrt) + local has_80211r = (os.execute("hostapd -v11r 2>/dev/null || hostapd -veap 2>/dev/null") == 0) + + ieee80211r = s:taboption("encryption", Flag, "ieee80211r", + translate("802.11r Fast Transition"), + translate("Enables fast roaming among access points that belong " .. + "to the same Mobility Domain")) + ieee80211r:depends({mode="ap", encryption="wpa"}) + ieee80211r:depends({mode="ap", encryption="wpa2"}) + ieee80211r:depends({mode="ap-wds", encryption="wpa"}) + ieee80211r:depends({mode="ap-wds", encryption="wpa2"}) + if has_80211r then + ieee80211r:depends({mode="ap", encryption="psk"}) + ieee80211r:depends({mode="ap", encryption="psk2"}) + ieee80211r:depends({mode="ap", encryption="psk-mixed"}) + end + ieee80211r.rmempty = true + + nasid = s:taboption("encryption", Value, "nasid", translate("NAS ID"), + translate("Used for two different purposes: RADIUS NAS ID and " .. + "802.11r R0KH-ID. Not needed with normal WPA(2)-PSK.")) + nasid:depends({mode="ap", encryption="wpa"}) + nasid:depends({mode="ap", encryption="wpa2"}) + nasid:depends({mode="ap-wds", encryption="wpa"}) + nasid:depends({mode="ap-wds", encryption="wpa2"}) + nasid:depends({ieee80211r="1"}) + nasid.rmempty = true + + mobility_domain = s:taboption("encryption", Value, "mobility_domain", + translate("Mobility Domain"), + translate("4-character hexadecimal ID")) + mobility_domain:depends({ieee80211r="1"}) + mobility_domain.placeholder = "4f57" + mobility_domain.datatype = "and(hexstring,rangelength(4,4))" + mobility_domain.rmempty = true + + r0_key_lifetime = s:taboption("encryption", Value, "r0_key_lifetime", + translate("R0 Key Lifetime"), translate("minutes")) + r0_key_lifetime:depends({ieee80211r="1"}) + r0_key_lifetime.placeholder = "10000" + r0_key_lifetime.datatype = "uinteger" + r0_key_lifetime.rmempty = true + + r1_key_holder = s:taboption("encryption", Value, "r1_key_holder", + translate("R1 Key Holder"), + translate("6-octet identifier as a hex string - no colons")) + r1_key_holder:depends({ieee80211r="1"}) + r1_key_holder.placeholder = "00004f577274" + r1_key_holder.datatype = "and(hexstring,rangelength(12,12))" + r1_key_holder.rmempty = true + + reassociation_deadline = s:taboption("encryption", Value, "reassociation_deadline", + translate("Reassociation Deadline"), + translate("time units (TUs / 1.024 ms) [1000-65535]")) + reassociation_deadline:depends({ieee80211r="1"}) + reassociation_deadline.placeholder = "1000" + reassociation_deadline.datatype = "range(1000,65535)" + reassociation_deadline.rmempty = true + + pmk_r1_push = s:taboption("encryption", Flag, "pmk_r1_push", translate("PMK R1 Push")) + pmk_r1_push:depends({ieee80211r="1"}) + pmk_r1_push.placeholder = "0" + pmk_r1_push.rmempty = true + + r0kh = s:taboption("encryption", DynamicList, "r0kh", translate("External R0 Key Holder List"), + translate("List of R0KHs in the same Mobility Domain. " .. + "
Format: MAC-address,NAS-Identifier,128-bit key as hex string. " .. + "
This list is used to map R0KH-ID (NAS Identifier) to a destination " .. + "MAC address when requesting PMK-R1 key from the R0KH that the STA " .. + "used during the Initial Mobility Domain Association.")) + + r0kh:depends({ieee80211r="1"}) + r0kh.rmempty = true + + r1kh = s:taboption("encryption", DynamicList, "r1kh", translate("External R1 Key Holder List"), + translate ("List of R1KHs in the same Mobility Domain. ".. + "
Format: MAC-address,R1KH-ID as 6 octets with colons,128-bit key as hex string. ".. + "
This list is used to map R1KH-ID to a destination MAC address " .. + "when sending PMK-R1 key from the R0KH. This is also the " .. + "list of authorized R1KHs in the MD that can request PMK-R1 keys.")) + r1kh:depends({ieee80211r="1"}) + r1kh.rmempty = true + -- End of 802.11r options + + eaptype = s:taboption("encryption", ListValue, "eap_type", translate("EAP-Method")) + eaptype:value("tls", "TLS") + eaptype:value("ttls", "TTLS") + eaptype:value("peap", "PEAP") + eaptype:value("fast", "FAST") + eaptype:depends({mode="sta", encryption="wpa"}) + eaptype:depends({mode="sta", encryption="wpa2"}) + eaptype:depends({mode="sta-wds", encryption="wpa"}) + eaptype:depends({mode="sta-wds", encryption="wpa2"}) + + cacert = s:taboption("encryption", FileUpload, "ca_cert", translate("Path to CA-Certificate")) + cacert:depends({mode="sta", encryption="wpa"}) + cacert:depends({mode="sta", encryption="wpa2"}) + cacert:depends({mode="sta-wds", encryption="wpa"}) + cacert:depends({mode="sta-wds", encryption="wpa2"}) + cacert.rmempty = true + + clientcert = s:taboption("encryption", FileUpload, "client_cert", translate("Path to Client-Certificate")) + clientcert:depends({mode="sta", eap_type="tls", encryption="wpa"}) + clientcert:depends({mode="sta", eap_type="tls", encryption="wpa2"}) + clientcert:depends({mode="sta-wds", eap_type="tls", encryption="wpa"}) + clientcert:depends({mode="sta-wds", eap_type="tls", encryption="wpa2"}) + + privkey = s:taboption("encryption", FileUpload, "priv_key", translate("Path to Private Key")) + privkey:depends({mode="sta", eap_type="tls", encryption="wpa2"}) + privkey:depends({mode="sta", eap_type="tls", encryption="wpa"}) + privkey:depends({mode="sta-wds", eap_type="tls", encryption="wpa2"}) + privkey:depends({mode="sta-wds", eap_type="tls", encryption="wpa"}) + + privkeypwd = s:taboption("encryption", Value, "priv_key_pwd", translate("Password of Private Key")) + privkeypwd:depends({mode="sta", eap_type="tls", encryption="wpa2"}) + privkeypwd:depends({mode="sta", eap_type="tls", encryption="wpa"}) + privkeypwd:depends({mode="sta-wds", eap_type="tls", encryption="wpa2"}) + privkeypwd:depends({mode="sta-wds", eap_type="tls", encryption="wpa"}) + privkeypwd.rmempty = true + privkeypwd.password = true + + auth = s:taboption("encryption", ListValue, "auth", translate("Authentication")) + auth:value("PAP", "PAP", {eap_type="ttls"}) + auth:value("CHAP", "CHAP", {eap_type="ttls"}) + auth:value("MSCHAP", "MSCHAP", {eap_type="ttls"}) + auth:value("MSCHAPV2", "MSCHAPv2", {eap_type="ttls"}) + auth:value("EAP-GTC") + auth:value("EAP-MD5") + auth:value("EAP-MSCHAPV2") + auth:value("EAP-TLS") + auth:depends({mode="sta", eap_type="fast", encryption="wpa2"}) + auth:depends({mode="sta", eap_type="fast", encryption="wpa"}) + auth:depends({mode="sta", eap_type="peap", encryption="wpa2"}) + auth:depends({mode="sta", eap_type="peap", encryption="wpa"}) + auth:depends({mode="sta", eap_type="ttls", encryption="wpa2"}) + auth:depends({mode="sta", eap_type="ttls", encryption="wpa"}) + auth:depends({mode="sta-wds", eap_type="fast", encryption="wpa2"}) + auth:depends({mode="sta-wds", eap_type="fast", encryption="wpa"}) + auth:depends({mode="sta-wds", eap_type="peap", encryption="wpa2"}) + auth:depends({mode="sta-wds", eap_type="peap", encryption="wpa"}) + auth:depends({mode="sta-wds", eap_type="ttls", encryption="wpa2"}) + auth:depends({mode="sta-wds", eap_type="ttls", encryption="wpa"}) + + cacert2 = s:taboption("encryption", FileUpload, "ca_cert2", translate("Path to inner CA-Certificate")) + cacert2:depends({mode="sta", auth="EAP-TLS", encryption="wpa"}) + cacert2:depends({mode="sta", auth="EAP-TLS", encryption="wpa2"}) + cacert2:depends({mode="sta-wds", auth="EAP-TLS", encryption="wpa"}) + cacert2:depends({mode="sta-wds", auth="EAP-TLS", encryption="wpa2"}) + + clientcert2 = s:taboption("encryption", FileUpload, "client_cert2", translate("Path to inner Client-Certificate")) + clientcert2:depends({mode="sta", auth="EAP-TLS", encryption="wpa"}) + clientcert2:depends({mode="sta", auth="EAP-TLS", encryption="wpa2"}) + clientcert2:depends({mode="sta-wds", auth="EAP-TLS", encryption="wpa"}) + clientcert2:depends({mode="sta-wds", auth="EAP-TLS", encryption="wpa2"}) + + privkey2 = s:taboption("encryption", FileUpload, "priv_key2", translate("Path to inner Private Key")) + privkey2:depends({mode="sta", auth="EAP-TLS", encryption="wpa"}) + privkey2:depends({mode="sta", auth="EAP-TLS", encryption="wpa2"}) + privkey2:depends({mode="sta-wds", auth="EAP-TLS", encryption="wpa"}) + privkey2:depends({mode="sta-wds", auth="EAP-TLS", encryption="wpa2"}) + + privkeypwd2 = s:taboption("encryption", Value, "priv_key2_pwd", translate("Password of inner Private Key")) + privkeypwd2:depends({mode="sta", auth="EAP-TLS", encryption="wpa"}) + privkeypwd2:depends({mode="sta", auth="EAP-TLS", encryption="wpa2"}) + privkeypwd2:depends({mode="sta-wds", auth="EAP-TLS", encryption="wpa"}) + privkeypwd2:depends({mode="sta-wds", auth="EAP-TLS", encryption="wpa2"}) + privkeypwd2.rmempty = true + privkeypwd2.password = true + + identity = s:taboption("encryption", Value, "identity", translate("Identity")) + identity:depends({mode="sta", eap_type="fast", encryption="wpa2"}) + identity:depends({mode="sta", eap_type="fast", encryption="wpa"}) + identity:depends({mode="sta", eap_type="peap", encryption="wpa2"}) + identity:depends({mode="sta", eap_type="peap", encryption="wpa"}) + identity:depends({mode="sta", eap_type="ttls", encryption="wpa2"}) + identity:depends({mode="sta", eap_type="ttls", encryption="wpa"}) + identity:depends({mode="sta-wds", eap_type="fast", encryption="wpa2"}) + identity:depends({mode="sta-wds", eap_type="fast", encryption="wpa"}) + identity:depends({mode="sta-wds", eap_type="peap", encryption="wpa2"}) + identity:depends({mode="sta-wds", eap_type="peap", encryption="wpa"}) + identity:depends({mode="sta-wds", eap_type="ttls", encryption="wpa2"}) + identity:depends({mode="sta-wds", eap_type="ttls", encryption="wpa"}) + identity:depends({mode="sta", eap_type="tls", encryption="wpa2"}) + identity:depends({mode="sta", eap_type="tls", encryption="wpa"}) + identity:depends({mode="sta-wds", eap_type="tls", encryption="wpa2"}) + identity:depends({mode="sta-wds", eap_type="tls", encryption="wpa"}) + + anonymous_identity = s:taboption("encryption", Value, "anonymous_identity", translate("Anonymous Identity")) + anonymous_identity:depends({mode="sta", eap_type="fast", encryption="wpa2"}) + anonymous_identity:depends({mode="sta", eap_type="fast", encryption="wpa"}) + anonymous_identity:depends({mode="sta", eap_type="peap", encryption="wpa2"}) + anonymous_identity:depends({mode="sta", eap_type="peap", encryption="wpa"}) + anonymous_identity:depends({mode="sta", eap_type="ttls", encryption="wpa2"}) + anonymous_identity:depends({mode="sta", eap_type="ttls", encryption="wpa"}) + anonymous_identity:depends({mode="sta-wds", eap_type="fast", encryption="wpa2"}) + anonymous_identity:depends({mode="sta-wds", eap_type="fast", encryption="wpa"}) + anonymous_identity:depends({mode="sta-wds", eap_type="peap", encryption="wpa2"}) + anonymous_identity:depends({mode="sta-wds", eap_type="peap", encryption="wpa"}) + anonymous_identity:depends({mode="sta-wds", eap_type="ttls", encryption="wpa2"}) + anonymous_identity:depends({mode="sta-wds", eap_type="ttls", encryption="wpa"}) + anonymous_identity:depends({mode="sta", eap_type="tls", encryption="wpa2"}) + anonymous_identity:depends({mode="sta", eap_type="tls", encryption="wpa"}) + anonymous_identity:depends({mode="sta-wds", eap_type="tls", encryption="wpa2"}) + anonymous_identity:depends({mode="sta-wds", eap_type="tls", encryption="wpa"}) + + password = s:taboption("encryption", Value, "password", translate("Password")) + password:depends({mode="sta", eap_type="fast", encryption="wpa2"}) + password:depends({mode="sta", eap_type="fast", encryption="wpa"}) + password:depends({mode="sta", eap_type="peap", encryption="wpa2"}) + password:depends({mode="sta", eap_type="peap", encryption="wpa"}) + password:depends({mode="sta", eap_type="ttls", encryption="wpa2"}) + password:depends({mode="sta", eap_type="ttls", encryption="wpa"}) + password:depends({mode="sta-wds", eap_type="fast", encryption="wpa2"}) + password:depends({mode="sta-wds", eap_type="fast", encryption="wpa"}) + password:depends({mode="sta-wds", eap_type="peap", encryption="wpa2"}) + password:depends({mode="sta-wds", eap_type="peap", encryption="wpa"}) + password:depends({mode="sta-wds", eap_type="ttls", encryption="wpa2"}) + password:depends({mode="sta-wds", eap_type="ttls", encryption="wpa"}) + password.rmempty = true + password.password = true +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
(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 == "atheros" or hwtype == "mac80211" or hwtype == "prism2" then + local wpasupplicant = fs.access("/usr/sbin/wpa_supplicant") + local hostcli = fs.access("/usr/sbin/hostapd_cli") + if hostcli and wpasupplicant then + wps = s:taboption("encryption", Flag, "wps_pushbutton", translate("Enable WPS pushbutton, requires WPA(2)-PSK")) + wps.enabled = "1" + wps.disabled = "0" + wps.rmempty = false + wps:depends("encryption", "psk") + wps:depends("encryption", "psk2") + wps:depends("encryption", "psk-mixed") + end +end + +return m diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi_add.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi_add.lua new file mode 100644 index 000000000..8277deb2f --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_network/wifi_add.lua @@ -0,0 +1,173 @@ +-- Copyright 2009 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local fs = require "nixio.fs" +local nw = require "luci.model.network" +local fw = require "luci.model.firewall" +local uci = require "luci.model.uci".cursor() +local http = require "luci.http" + +local iw = luci.sys.wifi.getiwinfo(http.formvalue("device")) + +local has_firewall = fs.access("/etc/config/firewall") + +if not iw then + luci.http.redirect(luci.dispatcher.build_url("admin/network/wireless")) + return +end + +m = SimpleForm("network", translatef("Joining Network: %q", http.formvalue("join"))) +m.cancel = translate("Back to scan results") +m.reset = false + +function m.on_cancel() + local dev = http.formvalue("device") + http.redirect(luci.dispatcher.build_url( + dev and "admin/network/wireless_join?device=" .. dev + or "admin/network/wireless" + )) +end + +nw.init(uci) +fw.init(uci) + +m.hidden = { + device = http.formvalue("device"), + join = http.formvalue("join"), + channel = http.formvalue("channel"), + mode = http.formvalue("mode"), + bssid = http.formvalue("bssid"), + wep = http.formvalue("wep"), + wpa_suites = http.formvalue("wpa_suites"), + wpa_version = http.formvalue("wpa_version") +} + +if iw and iw.mbssid_support then + replace = m:field(Flag, "replace", translate("Replace wireless configuration"), + translate("Check this option to delete the existing networks from this radio.")) + + function replace.cfgvalue() return "0" end +else + replace = m:field(DummyValue, "replace", translate("Replace wireless configuration")) + replace.default = translate("The hardware is not multi-SSID capable and the existing " .. + "configuration will be replaced if you proceed.") + + function replace.formvalue() return "1" end +end + +if http.formvalue("wep") == "1" then + key = m:field(Value, "key", translate("WEP passphrase"), + translate("Specify the secret encryption key here.")) + + key.password = true + key.datatype = "wepkey" + +elseif (tonumber(m.hidden.wpa_version) or 0) > 0 and + (m.hidden.wpa_suites == "PSK" or m.hidden.wpa_suites == "PSK2") +then + key = m:field(Value, "key", translate("WPA passphrase"), + translate("Specify the secret encryption key here.")) + + key.password = true + key.datatype = "wpakey" + --m.hidden.wpa_suite = (tonumber(http.formvalue("wpa_version")) or 0) >= 2 and "psk2" or "psk" +end + +newnet = m:field(Value, "_netname_new", translate("Name of the new network"), + translate("The allowed characters are: A-Z, a-z, " .. + "0-9 and _" + )) + +newnet.default = m.hidden.mode == "Ad-Hoc" and "mesh" or "wwan" +newnet.datatype = "uciname" + +if has_firewall then + fwzone = m:field(Value, "_fwzone", + translate("Create / Assign firewall-zone"), + translate("Choose the firewall zone you want to assign to this interface. Select unspecified to remove the interface from the associated zone or fill out the create field to define a new zone and attach the interface to it.")) + + fwzone.template = "cbi/firewall_zonelist" + fwzone.default = m.hidden.mode == "Ad-Hoc" and "mesh" or "wan" +end + +function newnet.parse(self, section) + local net, zone + + if has_firewall then + local zval = fwzone:formvalue(section) + zone = fw:get_zone(zval) + + if not zone and zval == '-' then + zval = m:formvalue(fwzone:cbid(section) .. ".newzone") + if zval and #zval > 0 then + zone = fw:add_zone(zval) + end + end + end + + local wdev = nw:get_wifidev(m.hidden.device) + + wdev:set("disabled", false) + wdev:set("channel", m.hidden.channel) + + if replace:formvalue(section) then + local n + for _, n in ipairs(wdev:get_wifinets()) do + wdev:del_wifinet(n) + end + end + + local wconf = { + device = m.hidden.device, + ssid = m.hidden.join, + mode = (m.hidden.mode == "Ad-Hoc" and "adhoc" or "sta") + } + + if m.hidden.wep == "1" then + wconf.encryption = "wep-open" + wconf.key = "1" + wconf.key1 = key and key:formvalue(section) or "" + elseif (tonumber(m.hidden.wpa_version) or 0) > 0 then + wconf.encryption = (tonumber(m.hidden.wpa_version) or 0) >= 2 and "psk2" or "psk" + wconf.key = key and key:formvalue(section) or "" + else + wconf.encryption = "none" + end + + if wconf.mode == "adhoc" or wconf.mode == "sta" then + wconf.bssid = m.hidden.bssid + end + + local value = self:formvalue(section) + net = nw:add_network(value, { proto = "dhcp" }) + + if not net then + self.error = { [section] = "missing" } + else + wconf.network = net:name() + + local wnet = wdev:add_wifinet(wconf) + if wnet then + if zone then + fw:del_network(net:name()) + zone:add_network(net:name()) + end + + uci:save("wireless") + uci:save("network") + uci:save("firewall") + + luci.http.redirect(wnet:adminlink()) + end + end +end + +if has_firewall then + function fwzone.cfgvalue(self, section) + self.iface = section + local z = fw:get_zone_by_network(section) + return z and z:name() + end +end + +return m diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_status/processes.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_status/processes.lua new file mode 100644 index 000000000..0a6e48fd8 --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_status/processes.lua @@ -0,0 +1,34 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2008 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +f = SimpleForm("processes", translate("Processes"), translate("This list gives an overview over currently running system processes and their status.")) +f.reset = false +f.submit = false + +t = f:section(Table, luci.sys.process.list()) +t:option(DummyValue, "PID", translate("PID")) +t:option(DummyValue, "USER", translate("Owner")) +t:option(DummyValue, "COMMAND", translate("Command")) +t:option(DummyValue, "%CPU", translate("CPU usage (%)")) +t:option(DummyValue, "%MEM", translate("Memory usage (%)")) + +hup = t:option(Button, "_hup", translate("Hang Up")) +hup.inputstyle = "reload" +function hup.write(self, section) + null, self.tag_error[section] = luci.sys.process.signal(section, 1) +end + +term = t:option(Button, "_term", translate("Terminate")) +term.inputstyle = "remove" +function term.write(self, section) + null, self.tag_error[section] = luci.sys.process.signal(section, 15) +end + +kill = t:option(Button, "_kill", translate("Kill")) +kill.inputstyle = "reset" +function kill.write(self, section) + null, self.tag_error[section] = luci.sys.process.signal(section, 9) +end + +return f \ No newline at end of file diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_system/admin.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_system/admin.lua new file mode 100644 index 000000000..493a735bd --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_system/admin.lua @@ -0,0 +1,121 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2011 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local fs = require "nixio.fs" + +m = Map("system", translate("Router Password"), + translate("Changes the administrator password for accessing the device")) + +s = m:section(TypedSection, "_dummy", "") +s.addremove = false +s.anonymous = true + +pw1 = s:option(Value, "pw1", translate("Password")) +pw1.password = true + +pw2 = s:option(Value, "pw2", translate("Confirmation")) +pw2.password = true + +function s.cfgsections() + return { "_pass" } +end + +function m.parse(map) + local v1 = pw1:formvalue("_pass") + local v2 = pw2:formvalue("_pass") + + if v1 and v2 and #v1 > 0 and #v2 > 0 then + if v1 == v2 then + if luci.sys.user.setpasswd(luci.dispatcher.context.authuser, v1) == 0 then + m.message = translate("Password successfully changed!") + else + m.message = translate("Unknown Error, password not changed!") + end + else + m.message = translate("Given password confirmation did not match, password not changed!") + end + end + + Map.parse(map) +end + + +if fs.access("/etc/config/dropbear") then + +m2 = Map("dropbear", translate("SSH Access"), + translate("Dropbear offers SSH network shell access and an integrated SCP server")) + +s = m2:section(TypedSection, "dropbear", translate("Dropbear Instance")) +s.anonymous = true +s.addremove = true + + +ni = s:option(Value, "Interface", translate("Interface"), + translate("Listen only on the given interface or, if unspecified, on all")) + +ni.template = "cbi/network_netlist" +ni.nocreate = true +ni.unspecified = true + + +pt = s:option(Value, "Port", translate("Port"), + translate("Specifies the listening port of this Dropbear instance")) + +pt.datatype = "port" +pt.default = 22 + + +pa = s:option(Flag, "PasswordAuth", translate("Password authentication"), + translate("Allow SSH password authentication")) + +pa.enabled = "on" +pa.disabled = "off" +pa.default = pa.enabled +pa.rmempty = false + + +ra = s:option(Flag, "RootPasswordAuth", translate("Allow root logins with password"), + translate("Allow the root user to login with password")) + +ra.enabled = "on" +ra.disabled = "off" +ra.default = ra.enabled + + +gp = s:option(Flag, "GatewayPorts", translate("Gateway ports"), + translate("Allow remote hosts to connect to local SSH forwarded ports")) + +gp.enabled = "on" +gp.disabled = "off" +gp.default = gp.disabled + + +s2 = m2:section(TypedSection, "_dummy", translate("SSH-Keys"), + translate("Here you can paste public SSH-Keys (one per line) for SSH public-key authentication.")) +s2.addremove = false +s2.anonymous = true +s2.template = "cbi/tblsection" + +function s2.cfgsections() + return { "_keys" } +end + +keys = s2:option(TextValue, "_data", "") +keys.wrap = "off" +keys.rows = 3 +keys.rmempty = false + +function keys.cfgvalue() + return fs.readfile("/etc/dropbear/authorized_keys") or "" +end + +function keys.write(self, section, value) + if value then + fs.writefile("/etc/dropbear/authorized_keys", value:gsub("\r\n", "\n")) + end +end + +end + +return m, m2 diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_system/backupfiles.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_system/backupfiles.lua new file mode 100644 index 000000000..ee2401e93 --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_system/backupfiles.lua @@ -0,0 +1,80 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2011 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +if luci.http.formvalue("cbid.luci.1._list") then + luci.http.redirect(luci.dispatcher.build_url("admin/system/flashops/backupfiles") .. "?display=list") +elseif luci.http.formvalue("cbid.luci.1._edit") then + luci.http.redirect(luci.dispatcher.build_url("admin/system/flashops/backupfiles") .. "?display=edit") + return +end + +m = SimpleForm("luci", translate("Backup file list")) +m:append(Template("admin_system/backupfiles")) + +if luci.http.formvalue("display") ~= "list" then + f = m:section(SimpleSection, nil, translate("This is a list of shell glob patterns for matching files and directories to include during sysupgrade. Modified files in /etc/config/ and certain other configurations are automatically preserved.")) + + l = f:option(Button, "_list", translate("Show current backup file list")) + l.inputtitle = translate("Open list...") + l.inputstyle = "apply" + + c = f:option(TextValue, "_custom") + c.rmempty = false + c.cols = 70 + c.rows = 30 + + c.cfgvalue = function(self, section) + return nixio.fs.readfile("/etc/sysupgrade.conf") + end + + c.write = function(self, section, value) + value = value:gsub("\r\n?", "\n") + return nixio.fs.writefile("/etc/sysupgrade.conf", value) + end +else + m.submit = false + m.reset = false + + f = m:section(SimpleSection, nil, translate("Below is the determined list of files to backup. It consists of changed configuration files marked by opkg, essential base files and the user defined backup patterns.")) + + l = f:option(Button, "_edit", translate("Back to configuration")) + l.inputtitle = translate("Close list...") + l.inputstyle = "link" + + + d = f:option(DummyValue, "_detected") + d.rawhtml = true + d.cfgvalue = function(s) + local list = io.popen( + "( find $(sed -ne '/^[[:space:]]*$/d; /^#/d; p' /etc/sysupgrade.conf " .. + "/lib/upgrade/keep.d/* 2>/dev/null) -type f 2>/dev/null; " .. + "opkg list-changed-conffiles ) | sort -u" + ) + + if list then + local files = { "
    " } + + while true do + local ln = list:read("*l") + if not ln then + break + else + files[#files+1] = "
  • " + files[#files+1] = luci.util.pcdata(ln) + files[#files+1] = "
  • " + end + end + + list:close() + files[#files+1] = "
" + + return table.concat(files, "") + end + + return "" .. translate("No files found") .. "" + end + +end + +return m diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_system/buttons.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_system/buttons.lua new file mode 100644 index 000000000..6a81d7154 --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_system/buttons.lua @@ -0,0 +1,27 @@ +-- Copyright 2008 Steven Barth +-- Licensed to the public under the Apache License 2.0. + +m = Map("system", translate("Buttons"), + translate("This page allows the configuration of custom button actions")) + +s = m:section(TypedSection, "button", "") +s.anonymous = true +s.addremove = true + +s:option(Value, "button", translate("Name")) + +act = s:option(ListValue, "action", + translate("Action"), + translate("Specifies the button state to handle")) + +act:value("released") + +s:option(Value, "handler", + translate("Handler"), + translate("Path to executable which handles the button event")) + +min = s:option(Value, "min", translate("Minimum hold time")) +min.rmempty = true + +max = s:option(Value, "max", translate("Maximum hold time")) +max.rmempty = true diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_system/crontab.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_system/crontab.lua new file mode 100644 index 000000000..016a6199a --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_system/crontab.lua @@ -0,0 +1,32 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2008-2013 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local fs = require "nixio.fs" +local cronfile = "/etc/crontabs/root" + +f = SimpleForm("crontab", translate("Scheduled Tasks"), + translate("This is the system crontab in which scheduled tasks can be defined.") .. + translate("
Note: you need to manually restart the cron service if the " .. + "crontab file was empty before editing.")) + +t = f:field(TextValue, "crons") +t.rmempty = true +t.rows = 10 +function t.cfgvalue() + return fs.readfile(cronfile) or "" +end + +function f.handle(self, state, data) + if state == FORM_VALID then + if data.crons then + fs.writefile(cronfile, data.crons:gsub("\r\n", "\n")) + luci.sys.call("/usr/bin/crontab %q" % cronfile) + else + fs.writefile(cronfile, "") + end + end + return true +end + +return f diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab.lua new file mode 100644 index 000000000..fd466d5c2 --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab.lua @@ -0,0 +1,270 @@ +-- Copyright 2008 Steven Barth +-- Licensed to the public under the Apache License 2.0. + +require("luci.tools.webadmin") + +local fs = require "nixio.fs" +local util = require "nixio.util" +local tp = require "luci.template.parser" + +local block = io.popen("block info", "r") +local ln, dev, devices = nil, nil, {} + +repeat + ln = block:read("*l") + dev = ln and ln:match("^/dev/(.-):") + + if dev then + local e, s, key, val = { } + + for key, val in ln:gmatch([[(%w+)="(.-)"]]) do + e[key:lower()] = val + devices[val] = e + end + + s = tonumber((fs.readfile("/sys/class/block/%s/size" % dev))) + + e.dev = "/dev/%s" % dev + e.size = s and math.floor(s / 2048) + + devices[e.dev] = e + end +until not ln + +block:close() + +m = Map("fstab", translate("Mount Points")) +s = m:section(TypedSection, "global", translate("Global Settings")) +s.addremove = false +s.anonymous = true + +detect = s:option(Button, "block_detect", translate("Generate Config"), translate("Find all currently attached filesystems and swap and replace configuration with defaults based on what was detected")) +detect.inputstyle = "reload" + +detect.write = function(self, section) + luci.sys.call("block detect >/etc/config/fstab") + luci.http.redirect(luci.dispatcher.build_url("admin/system", "fstab")) +end + +o = s:option(Flag, "anon_swap", translate("Anonymous Swap"), translate("Mount swap not specifically configured")) +o.default = o.disabled +o.rmempty = false + +o = s:option(Flag, "anon_mount", translate("Anonymous Mount"), translate("Mount filesystems not specifically configured")) +o.default = o.disabled +o.rmempty = false + +o = s:option(Flag, "auto_swap", translate("Automount Swap"), translate("Automatically mount swap on hotplug")) +o.default = o.enabled +o.rmempty = false + +o = s:option(Flag, "auto_mount", translate("Automount Filesystem"), translate("Automatically mount filesystems on hotplug")) +o.default = o.enabled +o.rmempty = false + +o = s:option(Flag, "check_fs", translate("Check fileystems before mount"), translate("Automatically check filesystem for errors before mounting")) +o.default = o.disabled +o.rmempty = false + +local mounts = luci.sys.mounts() +local non_system_mounts = {} +for rawmount, val in pairs(mounts) do + if (string.find(val.mountpoint, "/tmp/.jail") == nil) then + repeat + val.umount = false + if (val.mountpoint == "/") then + break + elseif (val.mountpoint == "/overlay") then + break + elseif (val.mountpoint == "/rom") then + break + elseif (val.mountpoint == "/tmp") then + break + elseif (val.mountpoint == "/tmp/shm") then + break + elseif (val.mountpoint == "/tmp/upgrade") then + break + elseif (val.mountpoint == "/dev") then + break + end + val.umount = true + until true + non_system_mounts[rawmount] = val + end +end + +v = m:section(Table, non_system_mounts, translate("Mounted file systems")) + +fs = v:option(DummyValue, "fs", translate("Filesystem")) + +mp = v:option(DummyValue, "mountpoint", translate("Mount Point")) + +avail = v:option(DummyValue, "avail", translate("Available")) +function avail.cfgvalue(self, section) + return luci.tools.webadmin.byte_format( + ( tonumber(mounts[section].available) or 0 ) * 1024 + ) .. " / " .. luci.tools.webadmin.byte_format( + ( tonumber(mounts[section].blocks) or 0 ) * 1024 + ) +end + +used = v:option(DummyValue, "used", translate("Used")) +function used.cfgvalue(self, section) + return ( mounts[section].percent or "0%" ) .. " (" .. + luci.tools.webadmin.byte_format( + ( tonumber(mounts[section].used) or 0 ) * 1024 + ) .. ")" +end + +unmount = v:option(Button, "unmount", translate("Unmount")) +unmount.render = function(self, section, scope) + if non_system_mounts[section].umount then + self.title = translate("Unmount") + self.inputstyle = "remove" + Button.render(self, section, scope) + end +end + +unmount.write = function(self, section) + if non_system_mounts[section].umount then + luci.sys.call("/bin/umount '%s'" % luci.util.shellstartsqescape(non_system_mounts[section].mountpoint)) + return luci.http.redirect(luci.dispatcher.build_url("admin/system", "fstab")) + end +end + +mount = m:section(TypedSection, "mount", translate("Mount Points"), translate("Mount Points define at which point a memory device will be attached to the filesystem")) +mount.anonymous = true +mount.addremove = true +mount.template = "cbi/tblsection" +mount.extedit = luci.dispatcher.build_url("admin/system/fstab/mount/%s") + +mount.create = function(...) + local sid = TypedSection.create(...) + if sid then + luci.http.redirect(mount.extedit % sid) + return + end +end + + +mount:option(Flag, "enabled", translate("Enabled")).rmempty = false + +dev = mount:option(DummyValue, "device", translate("Device")) +dev.rawhtml = true +dev.cfgvalue = function(self, section) + local v, e + + v = m.uci:get("fstab", section, "uuid") + e = v and devices[v:lower()] + if v and e and e.size then + return "UUID: %s (%s, %d MB)" %{ tp.pcdata(v), e.dev, e.size } + elseif v and e then + return "UUID: %s (%s)" %{ tp.pcdata(v), e.dev } + elseif v then + return "UUID: %s (%s)" %{ tp.pcdata(v), translate("not present") } + end + + v = m.uci:get("fstab", section, "label") + e = v and devices[v] + if v and e and e.size then + return "Label: %s (%s, %d MB)" %{ tp.pcdata(v), e.dev, e.size } + elseif v and e then + return "Label: %s (%s)" %{ tp.pcdata(v), e.dev } + elseif v then + return "Label: %s (%s)" %{ tp.pcdata(v), translate("not present") } + end + + v = Value.cfgvalue(self, section) or "?" + e = v and devices[v] + if v and e and e.size then + return "%s (%d MB)" %{ tp.pcdata(v), e.size } + elseif v and e then + return tp.pcdata(v) + elseif v then + return "%s (%s)" %{ tp.pcdata(v), translate("not present") } + end +end + +mp = mount:option(DummyValue, "target", translate("Mount Point")) +mp.cfgvalue = function(self, section) + if m.uci:get("fstab", section, "is_rootfs") == "1" then + return "/overlay" + else + return Value.cfgvalue(self, section) or "?" + end +end + +fs = mount:option(DummyValue, "fstype", translate("Filesystem")) +fs.cfgvalue = function(self, section) + local v, e + + v = m.uci:get("fstab", section, "uuid") + v = v and v:lower() or m.uci:get("fstab", section, "label") + v = v or m.uci:get("fstab", section, "device") + + e = v and devices[v] + + return e and e.type or m.uci:get("fstab", section, "fstype") or "?" +end + +op = mount:option(DummyValue, "options", translate("Options")) +op.cfgvalue = function(self, section) + return Value.cfgvalue(self, section) or "defaults" +end + +rf = mount:option(DummyValue, "is_rootfs", translate("Root")) +rf.cfgvalue = function(self, section) + local target = m.uci:get("fstab", section, "target") + if target == "/" then + return translate("yes") + elseif target == "/overlay" then + return translate("overlay") + else + return translate("no") + end +end + +ck = mount:option(DummyValue, "enabled_fsck", translate("Check")) +ck.cfgvalue = function(self, section) + return Value.cfgvalue(self, section) == "1" + and translate("yes") or translate("no") +end + + +swap = m:section(TypedSection, "swap", "SWAP", translate("If your physical memory is insufficient unused data can be temporarily swapped to a swap-device resulting in a higher amount of usable RAM. Be aware that swapping data is a very slow process as the swap-device cannot be accessed with the high datarates of the RAM.")) +swap.anonymous = true +swap.addremove = true +swap.template = "cbi/tblsection" +swap.extedit = luci.dispatcher.build_url("admin/system/fstab/swap/%s") + +swap.create = function(...) + local sid = TypedSection.create(...) + if sid then + luci.http.redirect(swap.extedit % sid) + return + end +end + + +swap:option(Flag, "enabled", translate("Enabled")).rmempty = false + +dev = swap:option(DummyValue, "device", translate("Device")) +dev.cfgvalue = function(self, section) + local v + + v = m.uci:get("fstab", section, "uuid") + if v then return "UUID: %s" % v end + + v = m.uci:get("fstab", section, "label") + if v then return "Label: %s" % v end + + v = Value.cfgvalue(self, section) or "?" + e = v and devices[v] + if v and e and e.size then + return "%s (%s MB)" % {v, e.size} + else + return v + end +end + +return m diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab/mount.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab/mount.lua new file mode 100644 index 000000000..a85872afa --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab/mount.lua @@ -0,0 +1,151 @@ +-- Copyright 2010 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local fs = require "nixio.fs" +local util = require "nixio.util" + +local has_fscheck = fs.access("/usr/sbin/e2fsck") + +local block = io.popen("block info", "r") +local ln, dev, devices = nil, nil, {} + +repeat + ln = block:read("*l") + dev = ln and ln:match("^/dev/(.-):") + + if dev then + local e, s, key, val = { } + + for key, val in ln:gmatch([[(%w+)="(.-)"]]) do + e[key:lower()] = val + end + + s = tonumber((fs.readfile("/sys/class/block/%s/size" % dev))) + + e.dev = "/dev/%s" % dev + e.size = s and math.floor(s / 2048) + + devices[#devices+1] = e + end +until not ln + +block:close() + + +m = Map("fstab", translate("Mount Points - Mount Entry")) +m.redirect = luci.dispatcher.build_url("admin/system/fstab") + +if not arg[1] or m.uci:get("fstab", arg[1]) ~= "mount" then + luci.http.redirect(m.redirect) + return +end + + + +mount = m:section(NamedSection, arg[1], "mount", translate("Mount Entry")) +mount.anonymous = true +mount.addremove = false + +mount:tab("general", translate("General Settings")) +mount:tab("advanced", translate("Advanced Settings")) + + +mount:taboption("general", Flag, "enabled", translate("Enable this mount")).rmempty = false + + +o = mount:taboption("general", Value, "uuid", translate("UUID"), + translate("If specified, mount the device by its UUID instead of a fixed device node")) + +o:value("", translate("-- match by uuid --")) + +for i, d in ipairs(devices) do + if d.uuid and d.size then + o:value(d.uuid, "%s (%s, %d MB)" %{ d.uuid, d.dev, d.size }) + elseif d.uuid then + o:value(d.uuid, "%s (%s)" %{ d.uuid, d.dev }) + end +end + + +o = mount:taboption("general", Value, "label", translate("Label"), + translate("If specified, mount the device by the partition label instead of a fixed device node")) + +o:value("", translate("-- match by label --")) + +o:depends("uuid", "") + +for i, d in ipairs(devices) do + if d.label and d.size then + o:value(d.label, "%s (%s, %d MB)" %{ d.label, d.dev, d.size }) + elseif d.label then + o:value(d.label, "%s (%s)" %{ d.label, d.dev }) + end +end + + +o = mount:taboption("general", Value, "device", translate("Device"), + translate("The device file of the memory or partition (e.g. /dev/sda1)")) + +o:value("", translate("-- match by device --")) + +o:depends({ uuid = "", label = "" }) + +for i, d in ipairs(devices) do + if d.size then + o:value(d.dev, "%s (%d MB)" %{ d.dev, d.size }) + else + o:value(d.dev) + end +end + + +o = mount:taboption("general", Value, "target", translate("Mount point"), + translate("Specifies the directory the device is attached to")) + +o:value("/", translate("Use as root filesystem (/)")) +o:value("/overlay", translate("Use as external overlay (/overlay)")) + + +o = mount:taboption("general", DummyValue, "__notice", translate("Root preparation")) +o:depends("target", "/") +o.rawhtml = true +o.default = [[ +

%s

mkdir -p /tmp/introot
+mkdir -p /tmp/extroot
+mount --bind / /tmp/introot
+mount /dev/sda1 /tmp/extroot
+tar -C /tmp/introot -cvf - . | tar -C /tmp/extroot -xf -
+umount /tmp/introot
+umount /tmp/extroot
+]] %{ + translate("Make sure to clone the root filesystem using something like the commands below:"), + +} + + +o = mount:taboption("advanced", Value, "fstype", translate("Filesystem"), + translate("The filesystem that was used to format the memory (e.g. ext3)")) + +o:value("", "auto") + +local fs +for fs in io.lines("/proc/filesystems") do + fs = fs:match("%S+") + if fs ~= "nodev" then + o:value(fs) + end +end + + +o = mount:taboption("advanced", Value, "options", translate("Mount options"), + translate("See \"mount\" manpage for details")) + +o.placeholder = "defaults" + + +if has_fscheck then + o = mount:taboption("advanced", Flag, "enabled_fsck", translate("Run filesystem check"), + translate("Run a filesystem check before mounting the device")) +end + +return m diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab/swap.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab/swap.lua new file mode 100644 index 000000000..82468d5fc --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_system/fstab/swap.lua @@ -0,0 +1,54 @@ +-- Copyright 2010 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local fs = require "nixio.fs" +local util = require "nixio.util" + +local devices = {} +util.consume((fs.glob("/dev/sd*")), devices) +util.consume((fs.glob("/dev/hd*")), devices) +util.consume((fs.glob("/dev/scd*")), devices) +util.consume((fs.glob("/dev/mmc*")), devices) + +local size = {} +for i, dev in ipairs(devices) do + local s = tonumber((fs.readfile("/sys/class/block/%s/size" % dev:sub(6)))) + size[dev] = s and math.floor(s / 2048) +end + + +m = Map("fstab", translate("Mount Points - Swap Entry")) +m.redirect = luci.dispatcher.build_url("admin/system/fstab") + +if not arg[1] or m.uci:get("fstab", arg[1]) ~= "swap" then + luci.http.redirect(m.redirect) + return +end + + +mount = m:section(NamedSection, arg[1], "swap", translate("Swap Entry")) +mount.anonymous = true +mount.addremove = false + +mount:tab("general", translate("General Settings")) +mount:tab("advanced", translate("Advanced Settings")) + + +mount:taboption("general", Flag, "enabled", translate("Enable this swap")).rmempty = false + + +o = mount:taboption("general", Value, "device", translate("Device"), + translate("The device file of the memory or partition (e.g. /dev/sda1)")) + +for i, d in ipairs(devices) do + o:value(d, size[d] and "%s (%s MB)" % {d, size[d]}) +end + +o = mount:taboption("advanced", Value, "uuid", translate("UUID"), + translate("If specified, mount the device by its UUID instead of a fixed device node")) + +o = mount:taboption("advanced", Value, "label", translate("Label"), + translate("If specified, mount the device by the partition label instead of a fixed device node")) + + +return m diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_system/ipkg.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_system/ipkg.lua new file mode 100644 index 000000000..7c6d7e1c6 --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_system/ipkg.lua @@ -0,0 +1,64 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2008-2011 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local ipkgfile = "/etc/opkg.conf" +local distfeeds = "/etc/opkg/distfeeds.conf" +local customfeeds = "/etc/opkg/customfeeds.conf" + +f = SimpleForm("ipkgconf", translate("OPKG-Configuration"), translate("General options for opkg")) + +f:append(Template("admin_system/ipkg")) + +t = f:field(TextValue, "lines") +t.wrap = "off" +t.rows = 10 +function t.cfgvalue() + return nixio.fs.readfile(ipkgfile) or "" +end + +function t.write(self, section, data) + return nixio.fs.writefile(ipkgfile, data:gsub("\r\n", "\n")) +end + +function f.handle(self, state, data) + return true +end + +g = SimpleForm("distfeedconf", translate("Distribution feeds"), + translate("Build/distribution specific feed definitions. This file will NOT be preserved in any sysupgrade.")) + +d = g:field(TextValue, "lines2") +d.wrap = "off" +d.rows = 10 +function d.cfgvalue() + return nixio.fs.readfile(distfeeds) or "" +end + +function d.write(self, section, data) + return nixio.fs.writefile(distfeeds, data:gsub("\r\n", "\n")) +end + +function g.handle(self, state, data) + return true +end + +h = SimpleForm("customfeedconf", translate("Custom feeds"), + translate("Custom feed definitions, e.g. private feeds. This file can be preserved in a sysupgrade.")) + +c = h:field(TextValue, "lines3") +c.wrap = "off" +c.rows = 10 +function c.cfgvalue() + return nixio.fs.readfile(customfeeds) or "" +end + +function c.write(self, section, data) + return nixio.fs.writefile(customfeeds, data:gsub("\r\n", "\n")) +end + +function h.handle(self, state, data) + return true +end + +return f, g, h diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_system/leds.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_system/leds.lua new file mode 100644 index 000000000..74e2f1a19 --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_system/leds.lua @@ -0,0 +1,155 @@ +-- Copyright 2008 Steven Barth +-- Licensed to the public under the Apache License 2.0. + +m = Map("system", translate("LED Configuration"), translate("Customizes the behaviour of the device LEDs if possible.")) + +local sysfs_path = "/sys/class/leds/" +local leds = {} + +local fs = require "nixio.fs" +local nu = require "nixio.util" +local util = require "luci.util" + +if fs.access(sysfs_path) then + leds = nu.consume((fs.dir(sysfs_path))) +end + +if #leds == 0 then + return m +end + + +s = m:section(TypedSection, "led", "") +s.anonymous = true +s.addremove = true + +function s.parse(self, ...) + TypedSection.parse(self, ...) + os.execute("/etc/init.d/led enable") +end + + +s:option(Value, "name", translate("Name")) + + +sysfs = s:option(ListValue, "sysfs", translate("LED Name")) +for k, v in ipairs(leds) do + sysfs:value(v) +end + +s:option(Flag, "default", translate("Default state")).rmempty = false + + +trigger = s:option(ListValue, "trigger", translate("Trigger")) + +local triggers = fs.readfile(sysfs_path .. leds[1] .. "/trigger") +for t in triggers:gmatch("[%w-]+") do + trigger:value(t, translate(t:gsub("-", ""))) +end + + +delayon = s:option(Value, "delayon", translate ("On-State Delay")) +delayon:depends("trigger", "timer") + +delayoff = s:option(Value, "delayoff", translate ("Off-State Delay")) +delayoff:depends("trigger", "timer") + + +dev = s:option(ListValue, "_net_dev", translate("Device")) +dev.rmempty = true +dev:value("") +dev:depends("trigger", "netdev") + +function dev.cfgvalue(self, section) + return m.uci:get("system", section, "dev") +end + +function dev.write(self, section, value) + m.uci:set("system", section, "dev", value) +end + +function dev.remove(self, section) + local t = trigger:formvalue(section) + if t ~= "netdev" and t ~= "usbdev" then + m.uci:delete("system", section, "dev") + end +end + +for k, v in pairs(luci.sys.net.devices()) do + if v ~= "lo" then + dev:value(v) + end +end + + +mode = s:option(MultiValue, "mode", translate("Trigger Mode")) +mode.rmempty = true +mode:depends("trigger", "netdev") +mode:value("link", translate("Link On")) +mode:value("tx", translate("Transmit")) +mode:value("rx", translate("Receive")) + + +usbdev = s:option(ListValue, "_usb_dev", translate("USB Device")) +usbdev:depends("trigger", "usbdev") +usbdev.rmempty = true +usbdev:value("") + +function usbdev.cfgvalue(self, section) + return m.uci:get("system", section, "dev") +end + +function usbdev.write(self, section, value) + m.uci:set("system", section, "dev", value) +end + +function usbdev.remove(self, section) + local t = trigger:formvalue(section) + if t ~= "netdev" and t ~= "usbdev" then + m.uci:delete("system", section, "dev") + end +end + + +usbport = s:option(MultiValue, "port", translate("USB Ports")) +usbport:depends("trigger", "usbport") +usbport.rmempty = true +usbport.widget = "checkbox" +usbport.cast = "table" +usbport.size = 1 + +function usbport.valuelist(self, section) + local port, ports = nil, {} + for port in util.imatch(m.uci:get("system", section, "port")) do + local b, n = port:match("^usb(%d+)-port(%d+)$") + if not (b and n) then + b, n = port:match("^(%d+)-(%d+)$") + end + if b and n then + ports[#ports+1] = "usb%u-port%u" %{ tonumber(b), tonumber(n) } + end + end + return ports +end + +function usbport.validate(self, value) + return type(value) == "string" and { value } or value +end + + +for p in nixio.fs.glob("/sys/bus/usb/devices/[0-9]*/manufacturer") do + local id = p:match("%d+-%d+") + local mf = nixio.fs.readfile("/sys/bus/usb/devices/" .. id .. "/manufacturer") or "?" + local pr = nixio.fs.readfile("/sys/bus/usb/devices/" .. id .. "/product") or "?" + usbdev:value(id, "%s (%s - %s)" %{ id, mf, pr }) +end + +for p in nixio.fs.glob("/sys/bus/usb/devices/*/usb[0-9]*-port[0-9]*") do + local bus, port = p:match("usb(%d+)-port(%d+)") + if bus and port then + usbport:value("usb%u-port%u" %{ tonumber(bus), tonumber(port) }, + "Hub %u, Port %u" %{ tonumber(bus), tonumber(port) }) + end +end + +return m diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_system/startup.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_system/startup.lua new file mode 100644 index 000000000..9e19ac50a --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_system/startup.lua @@ -0,0 +1,97 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2010-2012 Jo-Philipp Wich +-- Copyright 2010 Manuel Munz +-- Licensed to the public under the Apache License 2.0. + +local fs = require "nixio.fs" +local sys = require "luci.sys" + +local inits = { } + +for _, name in ipairs(sys.init.names()) do + local index = sys.init.index(name) + local enabled = sys.init.enabled(name) + + if index < 255 then + inits["%02i.%s" % { index, name }] = { + name = name, + index = tostring(index), + enabled = enabled + } + end +end + + +m = SimpleForm("initmgr", translate("Initscripts"), translate("You can enable or disable installed init scripts here. Changes will applied after a device reboot.
Warning: If you disable essential init scripts like \"network\", your device might become inaccessible!")) +m.reset = false +m.submit = false + + +s = m:section(Table, inits) + +i = s:option(DummyValue, "index", translate("Start priority")) +n = s:option(DummyValue, "name", translate("Initscript")) + + +e = s:option(Button, "endisable", translate("Enable/Disable")) + +e.render = function(self, section, scope) + if inits[section].enabled then + self.title = translate("Enabled") + self.inputstyle = "save" + else + self.title = translate("Disabled") + self.inputstyle = "reset" + end + + Button.render(self, section, scope) +end + +e.write = function(self, section) + if inits[section].enabled then + inits[section].enabled = false + return sys.init.disable(inits[section].name) + else + inits[section].enabled = true + return sys.init.enable(inits[section].name) + end +end + + +start = s:option(Button, "start", translate("Start")) +start.inputstyle = "apply" +start.write = function(self, section) + sys.call("/etc/init.d/%s %s >/dev/null" %{ inits[section].name, self.option }) +end + +restart = s:option(Button, "restart", translate("Restart")) +restart.inputstyle = "reload" +restart.write = start.write + +stop = s:option(Button, "stop", translate("Stop")) +stop.inputstyle = "remove" +stop.write = start.write + + + +f = SimpleForm("rc", translate("Local Startup"), + translate("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.")) + +t = f:field(TextValue, "rcs") +t.rmempty = true +t.rows = 20 + +function t.cfgvalue() + return fs.readfile("/etc/rc.local") or "" +end + +function f.handle(self, state, data) + if state == FORM_VALID then + if data.rcs then + fs.writefile("/etc/rc.local", data.rcs:gsub("\r\n", "\n")) + end + end + return true +end + +return m, f diff --git a/luci-mod-admin-full/luasrc/model/cbi/admin_system/system.lua b/luci-mod-admin-full/luasrc/model/cbi/admin_system/system.lua new file mode 100644 index 000000000..c7fdfcddb --- /dev/null +++ b/luci-mod-admin-full/luasrc/model/cbi/admin_system/system.lua @@ -0,0 +1,224 @@ +-- Copyright 2008 Steven Barth +-- Copyright 2011 Jo-Philipp Wich +-- Licensed to the public under the Apache License 2.0. + +local sys = require "luci.sys" +local zones = require "luci.sys.zoneinfo" +local fs = require "nixio.fs" +local conf = require "luci.config" + +local m, s, o +local has_ntpd = fs.access("/usr/sbin/ntpd") + +m = Map("system", translate("System"), translate("Here you can configure the basic aspects of your device like its hostname or the timezone.")) +m:chain("luci") + + +s = m:section(TypedSection, "system", translate("System Properties")) +s.anonymous = true +s.addremove = false + +s:tab("general", translate("General Settings")) +s:tab("logging", translate("Logging")) +s:tab("language", translate("Language and Style")) + + +-- +-- System Properties +-- + +o = s:taboption("general", DummyValue, "_systime", translate("Local Time")) +o.template = "admin_system/clock_status" + + +o = s:taboption("general", Value, "hostname", translate("Hostname")) +o.datatype = "hostname" + +function o.write(self, section, value) + Value.write(self, section, value) + sys.hostname(value) +end + + +o = s:taboption("general", ListValue, "zonename", translate("Timezone")) +o:value("UTC") + +for i, zone in ipairs(zones.TZ) do + o:value(zone[1]) +end + +function o.write(self, section, value) + local function lookup_zone(title) + for _, zone in ipairs(zones.TZ) do + if zone[1] == title then return zone[2] end + end + end + + AbstractValue.write(self, section, value) + local timezone = lookup_zone(value) or "GMT0" + self.map.uci:set("system", section, "timezone", timezone) + fs.writefile("/etc/TZ", timezone .. "\n") +end + + +-- +-- Logging +-- + +o = s:taboption("logging", Value, "log_size", translate("System log buffer size"), "kiB") +o.optional = true +o.placeholder = 16 +o.datatype = "uinteger" + +o = s:taboption("logging", Value, "log_ip", translate("External system log server")) +o.optional = true +o.placeholder = "0.0.0.0" +o.datatype = "ip4addr" + +o = s:taboption("logging", Value, "log_port", translate("External system log server port")) +o.optional = true +o.placeholder = 514 +o.datatype = "port" + +o = s:taboption("logging", ListValue, "log_proto", translate("External system log server protocol")) +o:value("udp", "UDP") +o:value("tcp", "TCP") + +o = s:taboption("logging", Value, "log_file", translate("Write system log to file")) +o.optional = true +o.placeholder = "/tmp/system.log" + +o = s:taboption("logging", ListValue, "conloglevel", translate("Log output level")) +o:value(8, translate("Debug")) +o:value(7, translate("Info")) +o:value(6, translate("Notice")) +o:value(5, translate("Warning")) +o:value(4, translate("Error")) +o:value(3, translate("Critical")) +o:value(2, translate("Alert")) +o:value(1, translate("Emergency")) + +o = s:taboption("logging", ListValue, "cronloglevel", translate("Cron Log Level")) +o.default = 8 +o:value(5, translate("Debug")) +o:value(8, translate("Normal")) +o:value(9, translate("Warning")) + + +-- +-- Langauge & Style +-- + +o = s:taboption("language", ListValue, "_lang", translate("Language")) +o:value("auto") + +local i18ndir = luci.i18n.i18ndir .. "base." +for k, v in luci.util.kspairs(conf.languages) do + local file = i18ndir .. k:gsub("_", "-") + if k:sub(1, 1) ~= "." and fs.access(file .. ".lmo") then + o:value(k, v) + end +end + +function o.cfgvalue(...) + return m.uci:get("luci", "main", "lang") +end + +function o.write(self, section, value) + m.uci:set("luci", "main", "lang", value) +end + + +o = s:taboption("language", ListValue, "_mediaurlbase", translate("Design")) +for k, v in pairs(conf.themes) do + if k:sub(1, 1) ~= "." then + o:value(v, k) + end +end + +function o.cfgvalue(...) + return m.uci:get("luci", "main", "mediaurlbase") +end + +function o.write(self, section, value) + m.uci:set("luci", "main", "mediaurlbase", value) +end + + +-- +-- NTP +-- + +if has_ntpd then + + -- timeserver setup was requested, create section and reload page + if m:formvalue("cbid.system._timeserver._enable") then + m.uci:section("system", "timeserver", "ntp", + { + server = { "0.openwrt.pool.ntp.org", "1.openwrt.pool.ntp.org", "2.openwrt.pool.ntp.org", "3.openwrt.pool.ntp.org" } + } + ) + + m.uci:save("system") + luci.http.redirect(luci.dispatcher.build_url("admin/system", arg[1])) + return + end + + local has_section = false + m.uci:foreach("system", "timeserver", + function(s) + has_section = true + return false + end) + + if not has_section then + + s = m:section(TypedSection, "timeserver", translate("Time Synchronization")) + s.anonymous = true + s.cfgsections = function() return { "_timeserver" } end + + x = s:option(Button, "_enable") + x.title = translate("Time Synchronization is not configured yet.") + x.inputtitle = translate("Set up Time Synchronization") + x.inputstyle = "apply" + + else + + s = m:section(TypedSection, "timeserver", translate("Time Synchronization")) + s.anonymous = true + s.addremove = false + + o = s:option(Flag, "enable", translate("Enable NTP client")) + o.rmempty = false + + function o.cfgvalue(self) + return sys.init.enabled("sysntpd") + and self.enabled or self.disabled + end + + function o.write(self, section, value) + if value == self.enabled then + sys.init.enable("sysntpd") + sys.call("env -i /etc/init.d/sysntpd start >/dev/null") + else + sys.call("env -i /etc/init.d/sysntpd stop >/dev/null") + sys.init.disable("sysntpd") + end + end + + + o = s:option(Flag, "enable_server", translate("Provide NTP server")) + o:depends("enable", "1") + + + o = s:option(DynamicList, "server", translate("NTP server candidates")) + o.datatype = "host(0)" + o:depends("enable", "1") + + -- retain server list even if disabled + function o.remove() end + + end +end + +return m diff --git a/luci-mod-admin-full/luasrc/view/admin_network/diagnostics.htm b/luci-mod-admin-full/luasrc/view/admin_network/diagnostics.htm new file mode 100644 index 000000000..f4adb2606 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_network/diagnostics.htm @@ -0,0 +1,115 @@ +<%# + Copyright 2010 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%+header%> + +<% +local fs = require "nixio.fs" +local has_ping6 = fs.access("/bin/ping6") or fs.access("/usr/bin/ping6") +local has_traceroute6 = fs.access("/usr/bin/traceroute6") + +local dns_host = luci.config.diag and luci.config.diag.dns or "dev.openwrt.org" +local ping_host = luci.config.diag and luci.config.diag.ping or "dev.openwrt.org" +local route_host = luci.config.diag and luci.config.diag.route or "dev.openwrt.org" +%> + + + + +
+
+

<%:Diagnostics%>

+ +
+ <%:Network Utilities%> + +
+ +
+
+ <% if has_ping6 then %> + + + <% else %> + + <% end %> +
+ +
+
+ <% if has_traceroute6 then %> + + + <% else %> + + <% end %> + <% if not has_traceroute6 then %> +

 

+

<%:Install iputils-traceroute6 for IPv6 traceroute%>

+ <% end %> +
+ +
+
+ +
+ +

+ +
+
+ + +
+ +<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_network/iface_overview.htm b/luci-mod-admin-full/luasrc/view/admin_network/iface_overview.htm new file mode 100644 index 000000000..2512a35b3 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_network/iface_overview.htm @@ -0,0 +1,254 @@ +<%# + Copyright 2010 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%- + local ntm = require "luci.model.network".init() + local fwm = require "luci.model.firewall".init() + + local net + local ifaces = { } + local netlist = { } + for _, net in ipairs(ntm:get_networks()) do + if net:name() ~= "loopback" then + local z = fwm:get_zone_by_network(net:name()) + ifaces[#ifaces+1] = net:name() + netlist[#netlist+1] = { + net:name(), z and z:name() or "-", z + } + end + end + + table.sort(netlist, + function(a, b) + if a[2] ~= b[2] then + return a[2] < b[2] + else + return a[1] < b[1] + end + end) +-%> + + + + + + +
+
+ <%:Interface Overview%> + + + + + + + + <% + for i, net in ipairs(netlist) do + local z = net[3] + local c = z and z:get_color() or "#EEEEEE" + local t = z and translate("Part of zone %q" % z:name()) or translate("No zone assigned") + %> + + + + + + <% end %> +
<%:Network%><%:Status%><%:Actions%>
+
+
+ <%=net[1]:upper()%> +
+
+
+ ? +
+
+
+ <%:Collecting data...%> + + + + '" title="<%:Edit this interface%>" value="<%:Edit%>" id="<%=net[1]%>-ifc-edit" /> + +
+ + '" /> +
+
diff --git a/luci-mod-admin-full/luasrc/view/admin_network/iface_status.htm b/luci-mod-admin-full/luasrc/view/admin_network/iface_status.htm new file mode 100644 index 000000000..b15dd13f3 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_network/iface_status.htm @@ -0,0 +1,87 @@ +<%+cbi/valueheader%> + + + + + + + + + +
+
+ ? +
+ <%:Collecting data...%> +
+ +<%+cbi/valuefooter%> diff --git a/luci-mod-admin-full/luasrc/view/admin_network/lease_status.htm b/luci-mod-admin-full/luasrc/view/admin_network/lease_status.htm new file mode 100644 index 000000000..b4baedff2 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_network/lease_status.htm @@ -0,0 +1,138 @@ + + +
+ <%:Active DHCP Leases%> + + + + + + + + + + +
<%:Hostname%><%:IPv4-Address%><%:MAC-Address%><%:Leasetime remaining%>

<%:Collecting data...%>
+
+ + diff --git a/luci-mod-admin-full/luasrc/view/admin_network/switch_status.htm b/luci-mod-admin-full/luasrc/view/admin_network/switch_status.htm new file mode 100644 index 000000000..96fbffdb0 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_network/switch_status.htm @@ -0,0 +1,44 @@ + diff --git a/luci-mod-admin-full/luasrc/view/admin_network/wifi_join.htm b/luci-mod-admin-full/luasrc/view/admin_network/wifi_join.htm new file mode 100644 index 000000000..3533c6fa4 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_network/wifi_join.htm @@ -0,0 +1,149 @@ +<%# + Copyright 2009-2015 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%- + + local sys = require "luci.sys" + local utl = require "luci.util" + + function guess_wifi_signal(info) + local scale = (100 / (info.quality_max or 100) * (info.quality or 0)) + local icon + + if not info.bssid or info.bssid == "00:00:00:00:00:00" then + icon = resource .. "/icons/signal-none.png" + elseif scale < 15 then + icon = resource .. "/icons/signal-0.png" + elseif scale < 35 then + icon = resource .. "/icons/signal-0-25.png" + elseif scale < 55 then + icon = resource .. "/icons/signal-25-50.png" + elseif scale < 75 then + icon = resource .. "/icons/signal-50-75.png" + else + icon = resource .. "/icons/signal-75-100.png" + end + + return icon + end + + function percent_wifi_signal(info) + local qc = info.quality or 0 + local qm = info.quality_max or 0 + + if info.bssid and qc > 0 and qm > 0 then + return math.floor((100 / qm) * qc) + else + return 0 + end + end + + function format_wifi_encryption(info) + if info.wep == true then + return "WEP" + elseif info.wpa > 0 then + return translatef("%s - %s", + table.concat(info.pair_ciphers, ", "), + table.concat(info.group_ciphers, ", "), + (info.wpa == 3) and translate("mixed WPA/WPA2") + or (info.wpa == 2 and "WPA2" or "WPA"), + table.concat(info.auth_suites, ", ") + ) + elseif info.enabled then + return "%s" % translate("unknown") + else + return "%s" % translate("open") + end + end + + local dev = luci.http.formvalue("device") + local iw = luci.sys.wifi.getiwinfo(dev) + + if not iw then + luci.http.redirect(luci.dispatcher.build_url("admin/network/wireless")) + return + end + + + function scanlist(times) + local i, k, v + local l = { } + local s = { } + + for i = 1, times do + for k, v in ipairs(iw.scanlist or { }) do + if not s[v.bssid] then + l[#l+1] = v + s[v.bssid] = true + end + end + end + + return l + end +-%> + +<%+header%> + +

<%:Join Network: Wireless Scan%>

+ +
+
+ + + <% for i, net in ipairs(scanlist(3)) do net.encryption = net.encryption or { } %> + + + + + + <% end %> + +
+ +
+ <%=percent_wifi_signal(net)%>% +
+
+ <%=net.ssid and utl.pcdata(net.ssid) or "%s" % translate("hidden")%>
+ Channel: <%=net.channel%> | + Mode: <%=net.mode%> | + BSSID: <%=net.bssid%> | + Encryption: <%=format_wifi_encryption(net.encryption)%> +
+
+ + + + + + + + <% if net.encryption.wpa then %> + + <% for _, v in ipairs(net.encryption.auth_suites) do %> + <% end; for _, v in ipairs(net.encryption.group_ciphers) do %> + <% end; for _, v in ipairs(net.encryption.pair_ciphers) do %> + <% end; end %> + + " /> + + +
+
+
+
+
+
" method="get"> + +
+
+ + + +
+
+ +<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_network/wifi_overview.htm b/luci-mod-admin-full/luasrc/view/admin_network/wifi_overview.htm new file mode 100644 index 000000000..9c351d393 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_network/wifi_overview.htm @@ -0,0 +1,470 @@ +<%# + Copyright 2008-2009 Steven Barth + Copyright 2008-2015 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%- + + local ip = require "luci.ip" + local fs = require "nixio.fs" + local utl = require "luci.util" + local uci = require "luci.model.uci".cursor() + local ntm = require "luci.model.network" + + local has_iwinfo = pcall(require, "iwinfo") + + ntm.init(uci) + + function guess_wifi_hw(dev) + local bands = "" + local ifname = dev:name() + local name, idx = ifname:match("^([a-z]+)(%d+)") + idx = tonumber(idx) + + if has_iwinfo then + local bl = dev.iwinfo.hwmodelist + if bl and next(bl) then + if bl.a then bands = bands .. "a" end + if bl.b then bands = bands .. "b" end + if bl.g then bands = bands .. "g" end + if bl.n then bands = bands .. "n" end + if bl.ac then bands = bands .. "ac" end + end + + local hw = dev.iwinfo.hardware_name + if hw then + return "%s 802.11%s" %{ hw, bands } + end + end + + -- wl.o + if name == "wl" then + local name = translatef("Broadcom 802.11%s Wireless Controller", bands) + local nm = 0 + + local fd = nixio.open("/proc/bus/pci/devices", "r") + if fd then + local ln + for ln in fd:linesource() do + if ln:match("wl$") then + if nm == idx then + local version = ln:match("^%S+%s+%S%S%S%S([0-9a-f]+)") + name = translatef( + "Broadcom BCM%04x 802.11 Wireless Controller", + tonumber(version, 16) + ) + + break + else + nm = nm + 1 + end + end + end + fd:close() + end + + return name + + -- madwifi + elseif name == "ath" or name == "wifi" then + return translatef("Atheros 802.11%s Wireless Controller", bands) + + -- ralink + elseif name == "ra" then + return translatef("RaLink 802.11%s Wireless Controller", bands) + + -- hermes + elseif name == "eth" then + return translate("Hermes 802.11b Wireless Controller") + + -- hostap + elseif name == "wlan" and fs.stat("/proc/net/hostap/" .. ifname, "type") == "dir" then + return translate("Prism2/2.5/3 802.11b Wireless Controller") + + -- dunno yet + else + return translatef("Generic 802.11%s Wireless Controller", bands) + end + end + + local devices = ntm:get_wifidevs() + local netlist = { } + local netdevs = { } + + local dev + for _, dev in ipairs(devices) do + local net + for _, net in ipairs(dev:get_wifinets()) do + netlist[#netlist+1] = net:id() + netdevs[net:id()] = dev:name() + end + end +-%> + +<%+header%> + +<% if not has_iwinfo then %> +
+ <%:Package libiwinfo required!%>
+ <%_The libiwinfo-lua package is not installed. You must install this component for working wireless configuration!%> +
+<% end %> + + + + +

<%:Wireless Overview%>

+ + + +
+ + <% for _, dev in ipairs(devices) do local nets = dev:get_wifinets() %> + +
+ + + + + + + + + + + <% if #nets > 0 then %> + <% for i, net in ipairs(nets) do %> + + + + + + + <% end %> + <% else %> + + + + + <% end %> + +
+ <%=guess_wifi_hw(dev)%> (<%=dev:name()%>)
+ +
+
+ + + +
+
+ + + +
+
+ 0% + + <%:Collecting data...%> + + + + +
+ <%:No network configured on this device%> +
+
+ + <% end %> + + +

<%:Associated Stations%>

+ +
+ + + + + + + + + + + + +
<%:SSID%><%:MAC-Address%><%:Host%><%:Signal%> / <%:Noise%><%:RX Rate%> / <%:TX Rate%>
+ <%:Collecting data...%> +
+
+
+ +<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_network/wifi_status.htm b/luci-mod-admin-full/luasrc/view/admin_network/wifi_status.htm new file mode 100644 index 000000000..04687f38e --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_network/wifi_status.htm @@ -0,0 +1,78 @@ +<%+cbi/valueheader%> + + + + + + + + + +
+
+ 0% +
+ <%:Collecting data...%> +
+ +<%+cbi/valuefooter%> diff --git a/luci-mod-admin-full/luasrc/view/admin_status/bandwidth.htm b/luci-mod-admin-full/luasrc/view/admin_status/bandwidth.htm new file mode 100644 index 000000000..33bbee784 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_status/bandwidth.htm @@ -0,0 +1,301 @@ +<%# + Copyright 2010 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%- + local ntm = require "luci.model.network".init() + + local dev + local devices = { } + for _, dev in luci.util.vspairs(luci.sys.net.devices()) do + if dev ~= "lo" and not ntm:ignore_interface(dev) then + devices[#devices+1] = dev + end + end + + local curdev = luci.http.formvalue("dev") or devices[1] +-%> + +<%+header%> + + + + +

<%:Realtime Traffic%>

+ + + + +
-
+
+ + + + + + + + + + + + + + + + + + + + + + +
<%:Inbound:%>0 <%:kbit/s%>
(0 <%:kB/s%>)
<%:Average:%>0 <%:kbit/s%>
(0 <%:kB/s%>)
<%:Peak:%>0 <%:kbit/s%>
(0 <%:kB/s%>)
<%:Outbound:%>0 <%:kbit/s%>
(0 <%:kB/s%>)
<%:Average:%>0 <%:kbit/s%>
(0 <%:kB/s%>)
<%:Peak:%>0 <%:kbit/s%>
(0 <%:kB/s%>)
+ +<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_status/connections.htm b/luci-mod-admin-full/luasrc/view/admin_status/connections.htm new file mode 100644 index 000000000..b7ebc4145 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_status/connections.htm @@ -0,0 +1,376 @@ +<%# + Copyright 2010 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%+header%> + + + + +

<%:Realtime Connections%>

+ +
<%:This page gives an overview over currently active network connections.%>
+ +
+ <%:Active Connections%> + + +
-
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
<%:UDP:%>0<%:Average:%>0<%:Peak:%>0
<%:TCP:%>0<%:Average:%>0<%:Peak:%>0
<%:Other:%>0<%:Average:%>0<%:Peak:%>0
+
+ +
+ + + + + + + + + + +
<%:Network%><%:Protocol%><%:Source%><%:Destination%><%:Transfer%>
<%:Collecting data...%>
+
+
+ +<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_status/dmesg.htm b/luci-mod-admin-full/luasrc/view/admin_status/dmesg.htm new file mode 100644 index 000000000..c119b5729 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_status/dmesg.htm @@ -0,0 +1,12 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%+header%> +

<%:Kernel Log%>

+
+ +
+<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_status/index.htm b/luci-mod-admin-full/luasrc/view/admin_status/index.htm new file mode 100644 index 000000000..d29a89427 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_status/index.htm @@ -0,0 +1,827 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008-2011 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<% + local fs = require "nixio.fs" + local util = require "luci.util" + local stat = require "luci.tools.status" + local ver = require "luci.version" + + local has_ipv6 = fs.access("/proc/net/ipv6_route") + local has_dhcp = fs.access("/etc/config/dhcp") + local has_wifi = ((fs.stat("/etc/config/wireless", "size") or 0) > 0) + + local sysinfo = luci.util.ubus("system", "info") or { } + local boardinfo = luci.util.ubus("system", "board") or { } + local unameinfo = nixio.uname() or { } + + local meminfo = sysinfo.memory or { + total = 0, + free = 0, + buffered = 0, + shared = 0 + } + + local swapinfo = sysinfo.swap or { + total = 0, + free = 0 + } + + local has_dsl = fs.access("/etc/init.d/dsl_control") + + if luci.http.formvalue("status") == "1" then + local ntm = require "luci.model.network".init() + local wan = ntm:get_wannet() + local wan6 = ntm:get_wan6net() + + local conn_count = tonumber( + fs.readfile("/proc/sys/net/netfilter/nf_conntrack_count")) or 0 + + local conn_max = tonumber(( + luci.sys.exec("sysctl net.nf_conntrack_max") or + luci.sys.exec("sysctl net.ipv4.netfilter.ip_conntrack_max") or + ""):match("%d+")) or 4096 + + local rv = { + uptime = sysinfo.uptime or 0, + localtime = os.date(), + loadavg = sysinfo.load or { 0, 0, 0 }, + memory = meminfo, + swap = swapinfo, + connmax = conn_max, + conncount = conn_count, + leases = stat.dhcp_leases(), + leases6 = stat.dhcp6_leases(), + wifinets = stat.wifi_networks() + } + + if wan then + rv.wan = { + ipaddr = wan:ipaddr(), + gwaddr = wan:gwaddr(), + netmask = wan:netmask(), + dns = wan:dnsaddrs(), + expires = wan:expires(), + uptime = wan:uptime(), + proto = wan:proto(), + ifname = wan:ifname(), + link = wan:adminlink() + } + end + + if wan6 then + rv.wan6 = { + ip6addr = wan6:ip6addr(), + gw6addr = wan6:gw6addr(), + dns = wan6:dns6addrs(), + ip6prefix = wan6:ip6prefix(), + uptime = wan6:uptime(), + proto = wan6:proto(), + ifname = wan6:ifname(), + link = wan6:adminlink() + } + end + + if has_dsl then + local dsl_stat = luci.sys.exec("/etc/init.d/dsl_control lucistat") + local dsl_func = loadstring(dsl_stat) + if dsl_func then + rv.dsl = dsl_func() + end + end + + luci.http.prepare_content("application/json") + luci.http.write_json(rv) + + return + elseif luci.http.formvalue("hosts") == "1" then + luci.http.prepare_content("application/json") + luci.http.write_json(luci.sys.net.host_hints()) + + return + end +-%> + +<%+header%> + + + + +

<%:Status%>

+ +
+ <%:System%> + + + + + + + + + +
<%:Hostname%><%=luci.sys.hostname() or "?"%>
<%:Model%><%=pcdata(boardinfo.model or boardinfo.system or "?")%>
<%:Firmware Version%> + <%=pcdata(ver.distname)%> <%=pcdata(ver.distversion)%> / + <%=pcdata(ver.luciname)%> (<%=pcdata(ver.luciversion)%>) +
<%:Kernel Version%><%=unameinfo.release or "?"%>
<%:Local Time%>-
<%:Uptime%>-
<%:Load Average%>-
+
+ +
+ <%:Memory%> + + + + + +
<%:Total Available%>-
<%:Free%>-
<%:Buffered%>-
+
+ +<% if swapinfo.total > 0 then %> +
+ <%:Swap%> + + + + +
<%:Total Available%>-
<%:Free%>-
+
+<% end %> + +
+ <%:Network%> + + + + <% if has_ipv6 then %> + + <% end %> + +
<%:IPv4 WAN Status%> + + + +

?
<%:Collecting data...%>
+
<%:IPv6 WAN Status%> + + + +

?
<%:Collecting data...%>
+
<%:Active Connections%>-
+
+ +<% if has_dhcp then %> +
+ <%:DHCP Leases%> + + + + + + + + + + + +
<%:Hostname%><%:IPv4-Address%><%:MAC-Address%><%:Leasetime remaining%>

<%:Collecting data...%>
+
+ + +<% end %> + +<% if has_dsl then %> +
+ <%:DSL%> + + +
<%:DSL Status%> + + + +

?
<%:Collecting data...%>
+
+
+<% end %> + +<% if has_wifi then %> +
+ <%:Wireless%> + + + +
<%:Collecting data...%>
+
+ +
+ <%:Associated Stations%> + + + + + + + + + + + + + +
 <%:Network%><%:MAC-Address%><%:Host%><%:Signal%> / <%:Noise%><%:RX Rate%> / <%:TX Rate%>

<%:Collecting data...%>
+
+<% end %> + +<%- + local incdir = util.libpath() .. "/view/admin_status/index/" + if fs.access(incdir) then + local inc + for inc in fs.dir(incdir) do + if inc:match("%.htm$") then + include("admin_status/index/" .. inc:gsub("%.htm$", "")) + end + end + end +-%> + +<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_status/iptables.htm b/luci-mod-admin-full/luasrc/view/admin_status/iptables.htm new file mode 100644 index 000000000..3f4b83b80 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_status/iptables.htm @@ -0,0 +1,156 @@ +<%# + Copyright 2008-2009 Steven Barth + Copyright 2008-2015 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%- + + require "luci.sys.iptparser" + local wba = require "luci.tools.webadmin" + local fs = require "nixio.fs" + local io = require "io" + + local has_ip6tables = fs.access("/usr/sbin/ip6tables") + local mode = 4 + + if has_ip6tables then + mode = luci.dispatcher.context.requestpath + mode = tonumber(mode[#mode] ~= "iptables" and mode[#mode]) or 4 + end + + local ipt = luci.sys.iptparser.IptParser(mode) + + local rowcnt = 1 + function rowstyle() + rowcnt = rowcnt + 1 + return (rowcnt % 2) + 1 + end + + function link_target(t,c) + if ipt:is_custom_target(c) then + return '%s' %{ t:lower(), c, c } + end + return c + end + + function link_iface(i) + local net = wba.iface_get_network(i) + if net and i ~= "lo" then + return '%s' %{ + url("admin/network/network", net), i + } + + end + return i + end + + local tables = { "Filter", "NAT", "Mangle", "Raw" } + if mode == 6 then + tables = { "Filter", "Mangle", "Raw" } + local ok, lines = pcall(io.lines, "/proc/net/ip6_tables_names") + if ok and lines then + local line + for line in lines do + if line == "nat" then + tables = { "Filter", "NAT", "Mangle", "Raw" } + end + end + end + end +-%> + +<%+header%> + + + +

<%:Firewall Status%>

+
+ +<% if has_ip6tables then %> + +<% end %> + +
+ +
" style="position: absolute; right: 0"> + + + + +
+ +
+ + <% for _, tbl in ipairs(tables) do chaincnt = 0 %> +

<%:Table%>: <%=tbl%>

+ + <% for _, chain in ipairs(ipt:chains(tbl)) do + rowcnt = 0 + chaincnt = chaincnt + 1 + chaininfo = ipt:chain(tbl, chain) + %> + + + + + + + + + + + + + + + + <% for _, rule in ipairs(ipt:find({table=tbl, chain=chain})) do %> + + + + + + + + + + + + <% end %> + + <% if rowcnt == 1 then %> + + + + <% end %> + <% end %> + + <% if chaincnt == 0 then %> + + + + <% end %> +
+
+ <%:Chain%> <%=chain%> + (<%- if chaininfo.policy then -%> + <%:Policy%>: <%=chaininfo.policy%>, <%:Packets%>: <%=chaininfo.packets%>, <%:Traffic%>: <%=wba.byte_format(chaininfo.bytes)-%> + <%- else -%> + <%:References%>: <%=chaininfo.references-%> + <%- end -%>) +
<%:Pkts.%><%:Traffic%><%:Target%><%:Prot.%><%:In%><%:Out%><%:Source%><%:Destination%><%:Options%>
<%=rule.packets%><%=wba.byte_format(rule.bytes)%><%=rule.target and link_target(tbl, rule.target) or "-"%><%=rule.protocol%><%=link_iface(rule.inputif)%><%=link_iface(rule.outputif)%><%=rule.source%><%=rule.destination%><%=#rule.options > 0 and luci.util.pcdata(table.concat(rule.options, " ")) or "-"%>
<%:No rules in this chain%>
<%:No chains in this table%>
+

+ <% end %> +
+
+ +<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_status/load.htm b/luci-mod-admin-full/luasrc/view/admin_status/load.htm new file mode 100644 index 000000000..97a2f5ed5 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_status/load.htm @@ -0,0 +1,284 @@ +<%# + Copyright 2010 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%+header%> + + + + +

<%:Realtime Load%>

+ + +
-
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
<%:1 Minute Load:%>0<%:Average:%>0<%:Peak:%>0
<%:5 Minute Load:%>0<%:Average:%>0<%:Peak:%>0
<%:15 Minute Load:%>0<%:Average:%>0<%:Peak:%>0
+ +<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_status/routes.htm b/luci-mod-admin-full/luasrc/view/admin_status/routes.htm new file mode 100644 index 000000000..5f2c07493 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_status/routes.htm @@ -0,0 +1,162 @@ +<%# + Copyright 2008-2009 Steven Barth + Copyright 2008-2015 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%- + require "luci.tools.webadmin" + require "nixio.fs" + + local ip = require "luci.ip" + local style = true + local _, v + + local rtn = { + [255] = "local", + [254] = "main", + [253] = "default", + [0] = "unspec" + } + + if nixio.fs.access("/etc/iproute2/rt_tables") then + local ln + for ln in io.lines("/etc/iproute2/rt_tables") do + local i, n = ln:match("^(%d+)%s+(%S+)") + if i and n then + rtn[tonumber(i)] = n + end + end + end +-%> + +<%+header%> + +
+

<%:Routes%>

+
<%:The following rules are currently active on this system.%>
+ +
+ ARP +
+ + + + + + + + <% + for _, v in ipairs(ip.neighbors({ family = 4 })) do + if v.mac then + %> + + + + + + <% + style = not style + end + end + %> +
<%_IPv4-Address%><%_MAC-Address%><%:Interface%>
<%=v.dest%><%=v.mac%><%=v.dev%>
+
+
+
+ +
+ <%_Active IPv4-Routes%> + +
+ + + + + + + + + <% for _, v in ipairs(ip.routes({ family = 4, type = 1 })) do %> + + + + + + + + <% style = not style end %> +
<%:Network%><%:Target%><%_IPv4-Gateway%><%:Metric%><%:Table%>
<%=luci.tools.webadmin.iface_get_network(v.dev) or v.dev%><%=v.dest%><%=v.gw%><%=v.metric or 0%><%=rtn[v.table] or v.table%>
+
+
+
+ + <% + if nixio.fs.access("/proc/net/ipv6_route") then + style = true + %> +
+ <%_Active IPv6-Routes%> + +
+ + + + + + + + + <% + for _, v in ipairs(ip.routes({ family = 6, type = 1 })) do + if v.dest and not v.dest:is6linklocal() then + %> + + + + + + + + <% + style = not style + end + end + %> +
<%:Network%><%:Target%><%:Source%><%:Metric%><%:Table%>
<%=luci.tools.webadmin.iface_get_network(v.dev) or '(' .. v.dev .. ')'%><%=v.dest%><%=v.from%><%=v.metric or 0%><%=rtn[v.table] or v.table%>
+
+
+
+ +
+ <%:IPv6 Neighbours%> + +
+ + + + + + + <% + for _, v in ipairs(ip.neighbors({ family = 6 })) do + if v.dest and not v.dest:is6linklocal() and v.mac then + %> + + + + + + <% + style = not style + end + end + %> +
<%:IPv6-Address%><%:MAC-Address%><%:Interface%>
<%=v.dest%><%=v.mac%><%=luci.tools.webadmin.iface_get_network(v.dev) or '(' .. v.dev .. ')'%>
+
+
+
+ <% end %> +
+ +<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_status/syslog.htm b/luci-mod-admin-full/luasrc/view/admin_status/syslog.htm new file mode 100644 index 000000000..b87f21d08 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_status/syslog.htm @@ -0,0 +1,12 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%+header%> +

<%:System Log%>

+
+ +
+<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_status/wireless.htm b/luci-mod-admin-full/luasrc/view/admin_status/wireless.htm new file mode 100644 index 000000000..aa658ff0c --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_status/wireless.htm @@ -0,0 +1,370 @@ +<%# + Copyright 2011 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%- + local ntm = require "luci.model.network".init() + + local dev + local devices = { } + for _, dev in luci.util.vspairs(luci.sys.net.devices()) do + if dev:match("^wlan%d") or dev:match("^ath%d") or dev:match("^wl%d") then + devices[#devices+1] = dev + end + end + + local curdev = luci.http.formvalue("dev") or devices[1] +-%> + +<%+header%> + + + + +

<%:Realtime Wireless%>

+ + + + +
-
+
+ + + + + + + + + + + + + + + + + + + + + + +
<%:Signal:%>0 <%:dBm%><%:Average:%>0 <%:dBm%><%:Peak:%>0 <%:dBm%>
<%:Noise:%>0 <%:dBm%><%:Average:%>0 <%:dBm%><%:Peak:%>0 <%:dBm%>
+ +
+ + +
-
+
+ + + + + + + + + + + + +
<%:Phy Rate:%>0 MBit/s<%:Average:%>0 MBit/s<%:Peak:%>0 MBit/s
+ +<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_system/applyreboot.htm b/luci-mod-admin-full/luasrc/view/admin_system/applyreboot.htm new file mode 100644 index 000000000..e722a4809 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_system/applyreboot.htm @@ -0,0 +1,41 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + + + + <%=luci.sys.hostname()%> - <% if title then %><%=title%><% else %><%:Rebooting...%><% end %> + + + + + +
+
+

<%:System%> - <% if title then %><%=title%><% else %><%:Rebooting...%><% end %>

+
+

+ <% if msg then %><%=msg%><% else %><%:Changes applied.%><% end %> +

+

+ <%:Loading%> + <%:Waiting for changes to be applied...%> +

+
+
+
+ + diff --git a/luci-mod-admin-full/luasrc/view/admin_system/backupfiles.htm b/luci-mod-admin-full/luasrc/view/admin_system/backupfiles.htm new file mode 100644 index 000000000..c1f3361ae --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_system/backupfiles.htm @@ -0,0 +1,10 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + + diff --git a/luci-mod-admin-full/luasrc/view/admin_system/clock_status.htm b/luci-mod-admin-full/luasrc/view/admin_system/clock_status.htm new file mode 100644 index 000000000..37d8ae0e8 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_system/clock_status.htm @@ -0,0 +1,36 @@ +<%+cbi/valueheader%> + + + +<%:Collecting data...%> + + +<%+cbi/valuefooter%> diff --git a/luci-mod-admin-full/luasrc/view/admin_system/flashops.htm b/luci-mod-admin-full/luasrc/view/admin_system/flashops.htm new file mode 100644 index 000000000..3e3f65d91 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_system/flashops.htm @@ -0,0 +1,93 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008-2015 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%+header%> + +

<%:Flash operations%>

+ + + +
+ +
+ <%:Backup / Restore%> +
<%:Click "Generate archive" to download a tar archive of the current configuration files. To reset the firmware to its initial state, click "Perform reset" (only possible with squashfs images).%>
+
+
+ +
+ +
+ +
+
+
+ <% if reset_avail then %> +
+ +
+ +
+ +
+
+
+ <% end %> +
+
+
<%:To restore configuration files, you can upload a previously generated backup archive here.%>
+
+
+
+ +
+ + + +
+
+
+
+
+ +
+ +
+ <%:Flash new firmware image%> + <% if upgrade_avail then %> +
+ +
<%:Upload a sysupgrade-compatible image here to replace the running firmware. Check "Keep settings" to retain the current configuration (requires a compatible firmware image).%>
+
+
+ +
+ +
+
+
+ +
+ + +
+
+
+ <% if image_invalid then %> +
<%:The uploaded image file does not contain a supported format. Make sure that you choose the generic image format for your platform. %>
+ <% end %> +
+ <% else %> +
<%:Sorry, there is no sysupgrade support present; a new firmware image must be flashed manually. Please refer to the wiki for device specific install instructions.%>
+ <% end %> +
+ +
+ +<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_system/ipkg.htm b/luci-mod-admin-full/luasrc/view/admin_system/ipkg.htm new file mode 100644 index 000000000..a7ff4e50b --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_system/ipkg.htm @@ -0,0 +1,10 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + + diff --git a/luci-mod-admin-full/luasrc/view/admin_system/packages.htm b/luci-mod-admin-full/luasrc/view/admin_system/packages.htm new file mode 100644 index 000000000..d5d78289b --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_system/packages.htm @@ -0,0 +1,212 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008-2010 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%- +local opkg = require "luci.model.ipkg" +local fs = require "nixio.fs" +local wa = require "luci.tools.webadmin" +local rowcnt = 1 + +function rowstyle() + rowcnt = rowcnt + 1 + return (rowcnt % 2) + 1 +end + +local fstat = fs.statvfs(opkg.overlay_root()) +local space_total = fstat and fstat.blocks or 0 +local space_free = fstat and fstat.bfree or 0 +local space_used = space_total - space_free + +local used_perc = math.floor(0.5 + ((space_total > 0) and ((100 / space_total) * space_used) or 100)) +local free_byte = space_free * fstat.frsize + +local filter = { } + + +local opkg_list = luci.model.ipkg.list_all +local querypat +if query and #query > 0 then + querypat = '*%s*' % query + opkg_list = luci.model.ipkg.find +end + +local letterpat +if letter == 35 then + letterpat = "[^a-z]*" +else + letterpat = string.char(letter, 42) -- 'A' '*' +end + +-%> + +<%+header%> + +

<%:Software%>

+ +
+ + + +
+ + + +
+
+ <% if (install and next(install)) or (remove and next(remove)) or update or upgrade then %> +
+ <% if #stdout > 0 then %>
<%=pcdata(stdout)%>
<% end %> + <% if #stderr > 0 then %>
<%=pcdata(stderr)%>
<% end %> +
+ <% end %> + + <% if querypat then %> +
+ <%:Displaying only packages containing%> "<%=pcdata(query)%>" + +
+
+ <% end %> + + <% if no_lists or old_lists then %> +
+ <% if old_lists then %> + <%:Package lists are older than 24 hours%> + <% else %> + <%:No package lists available%> + <% end %> + +
+ <% end %> + +
+ <%:Free space%>: <%=(100-used_perc)%>% (<%=wa.byte_format(free_byte)%>) +
+
 
+
+
+
+ +
+ +
+ + +
+ +
+ + +
+
+ +
+ +
+ + +
+
+
+
+
+ + +

<%:Status%>

+ + + + + <% if display ~= "available" then %> +
+ + + + + + + <% local empty = true; luci.model.ipkg.list_installed(querypat, function(n, v, s, d) empty = false; filter[n] = true %> + + + + + + <% end) %> + <% if empty then %> + + + + + + <% end %> +
 <%:Package name%><%:Version%>
+
+ + + + <%:Remove%> +
+
<%=luci.util.pcdata(n)%><%=luci.util.pcdata(v)%>
 <%:none%><%:none%>
+
+ <% else %> +
+ <% if not querypat then %> + +
+ <% end %> + + + + + + + + + <% local empty = true; opkg_list(querypat or letterpat, function(n, v, s, d) if filter[n] then return end; empty = false %> + + + + + + + + <% end) %> + <% if empty then %> + + + + + + + + <% end %> +
 <%:Package name%><%:Version%><%:Size (.ipk)%><%:Description%>
+
+ + + + <%:Install%> +
+
<%=luci.util.pcdata(n)%><%=luci.util.pcdata(v)%><%=luci.util.pcdata(s)%><%=luci.util.pcdata(d)%>
 <%:none%><%:none%><%:none%><%:none%>
+ <% if not querypat then %> +
+ <% end %> +
+ <% end %> +
+ +<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_system/reboot.htm b/luci-mod-admin-full/luasrc/view/admin_system/reboot.htm new file mode 100644 index 000000000..c9551804d --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_system/reboot.htm @@ -0,0 +1,59 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008-2015 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%+header%> + +

<%:Reboot%>

+
+ +

<%:Reboots the operating system of your device%>

+ +<%- local c = require("luci.model.uci").cursor():changes(); if c and next(c) then -%> +

<%:Warning: There are unsaved changes that will get lost on reboot!%>

+<%- end -%> + +
+ + + + + + + +<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_system/upgrade.htm b/luci-mod-admin-full/luasrc/view/admin_system/upgrade.htm new file mode 100644 index 000000000..7175248db --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_system/upgrade.htm @@ -0,0 +1,59 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008-2009 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%+header%> + +

<%:Flash Firmware%> - <%:Verify%>

+

+ <%_ The flash image was uploaded. + Below is the checksum and file size listed, + compare them with the original file to ensure data integrity.
+ Click "Proceed" below to start the flash procedure. %> + + <% if storage > 0 and size > storage then %> +

+

<%:It appears that you are trying to + flash an image that does not fit into the flash memory, please verify + the image file! %>
+ <% end %> + +

+ +
+
    +
  • <%:Checksum%>
    + <%:MD5%>: <%=checksum%>
    + <%:SHA256%>: <%=sha256ch%>
  • +
  • <%:Size%>: <% + local w = require "luci.tools.webadmin" + write(w.byte_format(size)) + + if storage > 0 then + write(luci.i18n.translatef( + " (%s available)", + w.byte_format(storage) + )) + end + %>
  • +
  • <% if keep then %> + <%:Configuration files will be kept.%> + <% else %> + <%:Note: Configuration files will be erased.%> + <% end %>
  • +
+
+ +
+
+ + + " /> + + +
+
+ +<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_uci/apply.htm b/luci-mod-admin-full/luasrc/view/admin_uci/apply.htm new file mode 100644 index 000000000..370027e51 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_uci/apply.htm @@ -0,0 +1,23 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%+header%> + +

<%:Configuration%> / <%:Apply%>

+ +<% if changes then %> + <%+cbi/apply_xhr%> + <%+admin_uci/changelog%> + + <%- cbi_apply_xhr('uci-apply', configs) -%> + +

<%:The following changes have been committed%>:

+ <%- uci_changelog(changes) -%> +<% else %> +

<%:There are no pending changes to apply!%>

+<% end %> + +<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_uci/changelog.htm b/luci-mod-admin-full/luasrc/view/admin_uci/changelog.htm new file mode 100644 index 000000000..4ed4f0a10 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_uci/changelog.htm @@ -0,0 +1,79 @@ +<%# + Copyright 2010 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<% export("uci_changelog", function(changes) -%> +
+ <%:Legend:%> +
+
  <%:Section added%>
+
  <%:Section removed%>
+
  <%:Option changed%>
+
  <%:Option removed%>
+
+
+
+ +
<% + local util = luci.util + local ret = { } + + for r, tbl in pairs(changes) do + for s, os in pairs(tbl) do + -- section add + if os['.type'] and os['.type'] ~= "" then + ret[#ret+1] = "%s.%s=%s" %{ r, s, os['.type'] } + for o, v in util.kspairs(os) do + if o:sub(1,1) ~= "." then + if type(v) == "table" then + local i + for i = 1, #v do + ret[#ret+1] = "
%s.%s.%s+=%s" + %{ r, s, o, util.pcdata(v[i]) } + end + else + ret[#ret+1] = "
%s.%s.%s=%s" + %{ r, s, o, util.pcdata(v) } + end + end + end + ret[#ret+1] = "

" + + -- section delete + elseif os['.type'] and os['.type'] == "" then + ret[#ret+1] = "%s.%s
" %{ r, s } + + -- modifications + else + ret[#ret+1] = "%s.%s
" %{ r, s } + for o, v in util.kspairs(os) do + if o:sub(1,1) ~= "." then + if v and #v > 0 then + ret[#ret+1] = "" + if type(v) == "table" then + local i + for i = 1, #v do + ret[#ret+1] = "%s.%s.%s+=%s
" + %{ r, s, o, util.pcdata(v[i]) } + end + + else + ret[#ret+1] = "%s.%s.%s=%s
" + %{ r, s, o, util.pcdata(v) } + end + ret[#ret+1] = "
" + else + ret[#ret+1] = "%s.%s.%s
" %{ r, s, o } + end + end + end + ret[#ret+1] = "

" + end + end + end + + write(table.concat(ret)) + %>
+
+<%- end) %> diff --git a/luci-mod-admin-full/luasrc/view/admin_uci/changes.htm b/luci-mod-admin-full/luasrc/view/admin_uci/changes.htm new file mode 100644 index 000000000..c3373604f --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_uci/changes.htm @@ -0,0 +1,46 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008-2015 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%+header%> + +

<%:Configuration%> / <%:Changes%>

+ +<% if changes then %> + <%+admin_uci/changelog%> + <%- uci_changelog(changes) -%> +<% else %> +

<%:There are no pending changes!%>

+<% end %> + +
+ <% local r = luci.http.formvalue("redir"); if r and #r > 0 then %> +
+
+ +
+
+ <% end %> + +
+
+ + " /> + +
+
+ + " /> + +
+
+ + " /> + +
+
+
+ +<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/admin_uci/revert.htm b/luci-mod-admin-full/luasrc/view/admin_uci/revert.htm new file mode 100644 index 000000000..5da7281a8 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/admin_uci/revert.htm @@ -0,0 +1,27 @@ +<%# + Copyright 2008 Steven Barth + Copyright 2008 Jo-Philipp Wich + Licensed to the public under the Apache License 2.0. +-%> + +<%+header%> + +

<%:Configuration%> / <%:Revert%>

+ +<% if changes then %> + <%+cbi/apply_xhr%> + <%+admin_uci/changelog%> + +

<%:The following changes have been reverted%>:

+ <%- uci_changelog(changes) -%> +<% else %> +

<%:There are no pending changes to revert!%>

+<% end %> + +
+
"> + +
+
+ +<%+footer%> diff --git a/luci-mod-admin-full/luasrc/view/cbi/wireless_modefreq.htm b/luci-mod-admin-full/luasrc/view/cbi/wireless_modefreq.htm new file mode 100644 index 000000000..2fb64b3c4 --- /dev/null +++ b/luci-mod-admin-full/luasrc/view/cbi/wireless_modefreq.htm @@ -0,0 +1,168 @@ +<%+cbi/valueheader%> + + + + + + + +
+ + + +<%+cbi/valuefooter%> diff --git a/luci-mod-admin-full/root/etc/hotplug.d/iface/03-macvlan b/luci-mod-admin-full/root/etc/hotplug.d/iface/03-macvlan new file mode 100755 index 000000000..6278ee4ed --- /dev/null +++ b/luci-mod-admin-full/root/etc/hotplug.d/iface/03-macvlan @@ -0,0 +1,41 @@ +#!/bin/sh +# vim: set noexpandtab tabstop=4 shiftwidth=4 softtabstop=4 : + +. /lib/functions.sh + +config_load network + +_setup_macaddr() { + uci -q get "network.$1_dev.macaddr" >/dev/null && return + uci -q set "network.$1_dev.macaddr=$2" +} + +# Configuration by interface +_setup_interface() { + uci -q get "network.$1_dev.ifname" >/dev/null && return + + # do not create macvlan for vlan + local _ifname + config_get _ifname "$1" ifname + case "$_ifname" in + eth*.*) return ;; + esac + + local _type + config_get _type "$1" type + [ "$_type" = "macvlan" ] || return 0 + + uci -q batch <<-EOF + set network.$1_dev=device + set network.$1_dev.name=$1 + set network.$1_dev.type=macvlan + set network.$1_dev.ifname=eth0 + set network.$1.ifname=$1 + set network.$1.defaultroute=0 + EOF + + _macaddr=$(uci -q get "network.$1.macaddr") + _setup_macaddr "$1" "${_macaddr:-auto$(date +%s)}" + uci -q set "network.$1.type=macvlan" # legacy +} +config_foreach _setup_interface interface diff --git a/luci-mod-admin-full/root/etc/uci-defaults/50_luci-mod-admin-full b/luci-mod-admin-full/root/etc/uci-defaults/50_luci-mod-admin-full new file mode 100755 index 000000000..372eb1512 --- /dev/null +++ b/luci-mod-admin-full/root/etc/uci-defaults/50_luci-mod-admin-full @@ -0,0 +1,22 @@ +#!/bin/sh + +if [ "$(uci -q get luci.diag)" != "internal" ]; then + host="" + + if [ -s /etc/os-release ]; then + . /etc/os-release + host="${HOME_URL:-${BUG_URL:-$LEDE_DEVICE_MANUFACTURER_URL}}" + host="${host#*://}" + host="${host%%/*}" + fi + + uci -q batch <<-EOF >/dev/null + set luci.diag=internal + set luci.diag.dns='${host:-openwrt.org}' + set luci.diag.ping='${host:-openwrt.org}' + set luci.diag.route='${host:-openwrt.org}' + commit luci + EOF +fi + +exit 0 diff --git a/luci-mod-admin-full/src/Makefile b/luci-mod-admin-full/src/Makefile new file mode 100644 index 000000000..d6ed8c6e4 --- /dev/null +++ b/luci-mod-admin-full/src/Makefile @@ -0,0 +1,14 @@ +%.o: %.c + $(CC) $(CPPFLAGS) $(CFLAGS) $(FPIC) -c -o $@ $< + +clean: + rm -f luci-bwc *.o + +luci-bwc: luci-bwc.o + $(CC) $(LDFLAGS) -o $@ $^ -ldl + +compile: luci-bwc + +install: compile + mkdir -p $(DESTDIR)/usr/bin + cp luci-bwc $(DESTDIR)/usr/bin/luci-bwc diff --git a/luci-mod-admin-full/src/luci-bwc.c b/luci-mod-admin-full/src/luci-bwc.c new file mode 100644 index 000000000..8ddd91727 --- /dev/null +++ b/luci-mod-admin-full/src/luci-bwc.c @@ -0,0 +1,778 @@ +/* + * luci-bwc - Very simple bandwidth collector cache for LuCI realtime graphs + * + * Copyright (C) 2010 Jo-Philipp Wich + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include + +#define STEP_COUNT 60 +#define STEP_TIME 1 +#define TIMEOUT 10 + +#define PID_PATH "/var/run/luci-bwc.pid" + +#define DB_PATH "/var/lib/luci-bwc" +#define DB_IF_FILE DB_PATH "/if/%s" +#define DB_RD_FILE DB_PATH "/radio/%s" +#define DB_CN_FILE DB_PATH "/connections" +#define DB_LD_FILE DB_PATH "/load" + +#define IF_SCAN_PATTERN \ + " %[^ :]:%u %u" \ + " %*d %*d %*d %*d %*d %*d" \ + " %u %u" + +#define LD_SCAN_PATTERN \ + "%f %f %f" + + +struct file_map { + int fd; + int size; + char *mmap; +}; + +struct traffic_entry { + uint32_t time; + uint32_t rxb; + uint32_t rxp; + uint32_t txb; + uint32_t txp; +}; + +struct conn_entry { + uint32_t time; + uint32_t udp; + uint32_t tcp; + uint32_t other; +}; + +struct load_entry { + uint32_t time; + uint16_t load1; + uint16_t load5; + uint16_t load15; +}; + +struct radio_entry { + uint32_t time; + uint16_t rate; + uint8_t rssi; + uint8_t noise; +}; + +static int readpid(void) +{ + int fd; + int pid = -1; + char buf[9] = { 0 }; + + if ((fd = open(PID_PATH, O_RDONLY)) > -1) + { + if (read(fd, buf, sizeof(buf))) + { + buf[8] = 0; + pid = atoi(buf); + } + + close(fd); + } + + return pid; +} + +static int writepid(void) +{ + int fd; + int wlen; + char buf[9] = { 0 }; + + if ((fd = open(PID_PATH, O_WRONLY | O_CREAT | O_TRUNC, 0600)) > -1) + { + wlen = snprintf(buf, sizeof(buf), "%i", getpid()); + write(fd, buf, wlen); + close(fd); + + return 0; + } + + return -1; +} + +static int timeout = TIMEOUT; +static int countdown = -1; + +static void reset_countdown(int sig) +{ + countdown = timeout; + +} + + +static char *progname; +static int prognamelen; + +static struct iwinfo_ops *backend = NULL; + + +static int init_directory(char *path) +{ + char *p = path; + + for (p = &path[1]; *p; p++) + { + if (*p == '/') + { + *p = 0; + + if (mkdir(path, 0700) && (errno != EEXIST)) + return -1; + + *p = '/'; + } + } + + return 0; +} + +static int init_file(char *path, int esize) +{ + int i, file; + char buf[sizeof(struct traffic_entry)] = { 0 }; + + if (init_directory(path)) + return -1; + + if ((file = open(path, O_WRONLY | O_CREAT, 0600)) >= 0) + { + for (i = 0; i < STEP_COUNT; i++) + { + if (write(file, buf, esize) < 0) + break; + } + + close(file); + + return 0; + } + + return -1; +} + +static inline uint32_t timeof(void *entry) +{ + return ntohl(((struct traffic_entry *)entry)->time); +} + +static int update_file(const char *path, void *entry, int esize) +{ + int rv = -1; + int file; + char *map; + + if ((file = open(path, O_RDWR)) >= 0) + { + map = mmap(NULL, esize * STEP_COUNT, PROT_READ | PROT_WRITE, + MAP_SHARED | MAP_LOCKED, file, 0); + + if ((map != NULL) && (map != MAP_FAILED)) + { + if (timeof(entry) > timeof(map + esize * (STEP_COUNT-1))) + { + memmove(map, map + esize, esize * (STEP_COUNT-1)); + memcpy(map + esize * (STEP_COUNT-1), entry, esize); + } + + munmap(map, esize * STEP_COUNT); + + rv = 0; + } + + close(file); + } + + return rv; +} + +static int mmap_file(const char *path, int esize, struct file_map *m) +{ + m->fd = -1; + m->size = -1; + m->mmap = NULL; + + if ((m->fd = open(path, O_RDONLY)) >= 0) + { + m->size = STEP_COUNT * esize; + m->mmap = mmap(NULL, m->size, PROT_READ, + MAP_SHARED | MAP_LOCKED, m->fd, 0); + + if ((m->mmap != NULL) && (m->mmap != MAP_FAILED)) + return 0; + } + + return -1; +} + +static void umap_file(struct file_map *m) +{ + if ((m->mmap != NULL) && (m->mmap != MAP_FAILED)) + munmap(m->mmap, m->size); + + if (m->fd > -1) + close(m->fd); +} + +static void * iw_open(void) +{ + return dlopen("/usr/lib/libiwinfo.so", RTLD_LAZY); +} + +static int iw_update( + void *iw, const char *ifname, uint16_t *rate, uint8_t *rssi, uint8_t *noise +) { + struct iwinfo_ops *(*probe)(const char *); + int val; + + if (!backend) + { + probe = dlsym(iw, "iwinfo_backend"); + + if (!probe) + return 0; + + backend = probe(ifname); + + if (!backend) + return 0; + } + + *rate = (backend->bitrate && !backend->bitrate(ifname, &val)) ? val : 0; + *rssi = (backend->signal && !backend->signal(ifname, &val)) ? val : 0; + *noise = (backend->noise && !backend->noise(ifname, &val)) ? val : 0; + + return 1; +} + +static void iw_close(void *iw) +{ + void (*finish)(void); + + finish = dlsym(iw, "iwinfo_finish"); + + if (finish) + finish(); + + dlclose(iw); +} + + +static int update_ifstat( + const char *ifname, uint32_t rxb, uint32_t rxp, uint32_t txb, uint32_t txp +) { + char path[1024]; + + struct stat s; + struct traffic_entry e; + + snprintf(path, sizeof(path), DB_IF_FILE, ifname); + + if (stat(path, &s)) + { + if (init_file(path, sizeof(struct traffic_entry))) + { + fprintf(stderr, "Failed to init %s: %s\n", + path, strerror(errno)); + + return -1; + } + } + + e.time = htonl(time(NULL)); + e.rxb = htonl(rxb); + e.rxp = htonl(rxp); + e.txb = htonl(txb); + e.txp = htonl(txp); + + return update_file(path, &e, sizeof(struct traffic_entry)); +} + +static int update_radiostat( + const char *ifname, uint16_t rate, uint8_t rssi, uint8_t noise +) { + char path[1024]; + + struct stat s; + struct radio_entry e; + + snprintf(path, sizeof(path), DB_RD_FILE, ifname); + + if (stat(path, &s)) + { + if (init_file(path, sizeof(struct radio_entry))) + { + fprintf(stderr, "Failed to init %s: %s\n", + path, strerror(errno)); + + return -1; + } + } + + e.time = htonl(time(NULL)); + e.rate = htons(rate); + e.rssi = rssi; + e.noise = noise; + + return update_file(path, &e, sizeof(struct radio_entry)); +} + +static int update_cnstat(uint32_t udp, uint32_t tcp, uint32_t other) +{ + char path[1024]; + + struct stat s; + struct conn_entry e; + + snprintf(path, sizeof(path), DB_CN_FILE); + + if (stat(path, &s)) + { + if (init_file(path, sizeof(struct conn_entry))) + { + fprintf(stderr, "Failed to init %s: %s\n", + path, strerror(errno)); + + return -1; + } + } + + e.time = htonl(time(NULL)); + e.udp = htonl(udp); + e.tcp = htonl(tcp); + e.other = htonl(other); + + return update_file(path, &e, sizeof(struct conn_entry)); +} + +static int update_ldstat(uint16_t load1, uint16_t load5, uint16_t load15) +{ + char path[1024]; + + struct stat s; + struct load_entry e; + + snprintf(path, sizeof(path), DB_LD_FILE); + + if (stat(path, &s)) + { + if (init_file(path, sizeof(struct load_entry))) + { + fprintf(stderr, "Failed to init %s: %s\n", + path, strerror(errno)); + + return -1; + } + } + + e.time = htonl(time(NULL)); + e.load1 = htons(load1); + e.load5 = htons(load5); + e.load15 = htons(load15); + + return update_file(path, &e, sizeof(struct load_entry)); +} + +static int run_daemon(void) +{ + FILE *info; + uint32_t rxb, txb, rxp, txp; + uint32_t udp, tcp, other; + uint16_t rate; + uint8_t rssi, noise; + float lf1, lf5, lf15; + char line[1024]; + char ifname[16]; + int i; + void *iw; + struct sigaction sa; + + struct stat s; + const char *ipc = stat("/proc/net/nf_conntrack", &s) + ? "/proc/net/ip_conntrack" : "/proc/net/nf_conntrack"; + + switch (fork()) + { + case -1: + perror("fork()"); + return -1; + + case 0: + if (chdir("/") < 0) + { + perror("chdir()"); + exit(1); + } + + close(0); + close(1); + close(2); + break; + + default: + return 0; + } + + /* setup USR1 signal handler to reset timer */ + sa.sa_handler = reset_countdown; + sa.sa_flags = SA_RESTART; + sigemptyset(&sa.sa_mask); + sigaction(SIGUSR1, &sa, NULL); + + /* write pid */ + if (writepid()) + { + fprintf(stderr, "Failed to write pid file: %s\n", strerror(errno)); + return 1; + } + + /* initialize iwinfo */ + iw = iw_open(); + + /* go */ + for (reset_countdown(0); countdown >= 0; countdown--) + { + /* alter progname for ps, top */ + memset(progname, 0, prognamelen); + snprintf(progname, prognamelen, "luci-bwc %d", countdown); + + if ((info = fopen("/proc/net/dev", "r")) != NULL) + { + while (fgets(line, sizeof(line), info)) + { + if (strchr(line, '|')) + continue; + + if (sscanf(line, IF_SCAN_PATTERN, ifname, &rxb, &rxp, &txb, &txp)) + { + if (strncmp(ifname, "lo", sizeof(ifname))) + update_ifstat(ifname, rxb, rxp, txb, txp); + } + } + + fclose(info); + } + + if (iw) + { + for (i = 0; i < 5; i++) + { +#define iw_checkif(pattern) \ + do { \ + snprintf(ifname, sizeof(ifname), pattern, i); \ + if (iw_update(iw, ifname, &rate, &rssi, &noise)) \ + { \ + update_radiostat(ifname, rate, rssi, noise); \ + continue; \ + } \ + } while(0) + + iw_checkif("wlan%d"); + iw_checkif("ath%d"); + iw_checkif("wl%d"); + } + } + + if ((info = fopen(ipc, "r")) != NULL) + { + udp = 0; + tcp = 0; + other = 0; + + while (fgets(line, sizeof(line), info)) + { + if (strstr(line, "TIME_WAIT")) + continue; + + if ((strstr(line, "src=127.0.0.1 ") && strstr(line, "dst=127.0.0.1 ")) + || (strstr(line, "src=::1 ") && strstr(line, "dst=::1 "))) + continue; + + if (sscanf(line, "%*s %*d %s", ifname) || sscanf(line, "%s %*d", ifname)) + { + if (!strcmp(ifname, "tcp")) + tcp++; + else if (!strcmp(ifname, "udp")) + udp++; + else + other++; + } + } + + update_cnstat(udp, tcp, other); + + fclose(info); + } + + if ((info = fopen("/proc/loadavg", "r")) != NULL) + { + if (fscanf(info, LD_SCAN_PATTERN, &lf1, &lf5, &lf15)) + { + update_ldstat((uint16_t)(lf1 * 100), + (uint16_t)(lf5 * 100), + (uint16_t)(lf15 * 100)); + } + + fclose(info); + } + + sleep(STEP_TIME); + } + + unlink(PID_PATH); + + if (iw) + iw_close(iw); + + return 0; +} + +static void check_daemon(void) +{ + int pid; + + if ((pid = readpid()) < 0 || kill(pid, 0) < 0) + { + /* daemon ping failed, try to start it up */ + if (run_daemon()) + { + fprintf(stderr, + "Failed to ping daemon and unable to start it up: %s\n", + strerror(errno)); + + exit(1); + } + } + else if (kill(pid, SIGUSR1)) + { + fprintf(stderr, "Failed to send signal: %s\n", strerror(errno)); + exit(2); + } +} + +static int run_dump_ifname(const char *ifname) +{ + int i; + char path[1024]; + struct file_map m; + struct traffic_entry *e; + + check_daemon(); + snprintf(path, sizeof(path), DB_IF_FILE, ifname); + + if (mmap_file(path, sizeof(struct traffic_entry), &m)) + { + fprintf(stderr, "Failed to open %s: %s\n", path, strerror(errno)); + return 1; + } + + for (i = 0; i < m.size; i += sizeof(struct traffic_entry)) + { + e = (struct traffic_entry *) &m.mmap[i]; + + if (!e->time) + continue; + + printf("[ %u, %u, %" PRIu32 + ", %u, %u ]%s\n", + ntohl(e->time), + ntohl(e->rxb), ntohl(e->rxp), + ntohl(e->txb), ntohl(e->txp), + ((i + sizeof(struct traffic_entry)) < m.size) ? "," : ""); + } + + umap_file(&m); + + return 0; +} + +static int run_dump_radio(const char *ifname) +{ + int i; + char path[1024]; + struct file_map m; + struct radio_entry *e; + + check_daemon(); + snprintf(path, sizeof(path), DB_RD_FILE, ifname); + + if (mmap_file(path, sizeof(struct radio_entry), &m)) + { + fprintf(stderr, "Failed to open %s: %s\n", path, strerror(errno)); + return 1; + } + + for (i = 0; i < m.size; i += sizeof(struct radio_entry)) + { + e = (struct radio_entry *) &m.mmap[i]; + + if (!e->time) + continue; + + printf("[ %u, %d, %d, %d ]%s\n", + ntohl(e->time), + e->rate, e->rssi, e->noise, + ((i + sizeof(struct radio_entry)) < m.size) ? "," : ""); + } + + umap_file(&m); + + return 0; +} + +static int run_dump_conns(void) +{ + int i; + char path[1024]; + struct file_map m; + struct conn_entry *e; + + check_daemon(); + snprintf(path, sizeof(path), DB_CN_FILE); + + if (mmap_file(path, sizeof(struct conn_entry), &m)) + { + fprintf(stderr, "Failed to open %s: %s\n", path, strerror(errno)); + return 1; + } + + for (i = 0; i < m.size; i += sizeof(struct conn_entry)) + { + e = (struct conn_entry *) &m.mmap[i]; + + if (!e->time) + continue; + + printf("[ %u, %u, %u, %u ]%s\n", + ntohl(e->time), ntohl(e->udp), + ntohl(e->tcp), ntohl(e->other), + ((i + sizeof(struct conn_entry)) < m.size) ? "," : ""); + } + + umap_file(&m); + + return 0; +} + +static int run_dump_load(void) +{ + int i; + char path[1024]; + struct file_map m; + struct load_entry *e; + + check_daemon(); + snprintf(path, sizeof(path), DB_LD_FILE); + + if (mmap_file(path, sizeof(struct load_entry), &m)) + { + fprintf(stderr, "Failed to open %s: %s\n", path, strerror(errno)); + return 1; + } + + for (i = 0; i < m.size; i += sizeof(struct load_entry)) + { + e = (struct load_entry *) &m.mmap[i]; + + if (!e->time) + continue; + + printf("[ %u, %u, %u, %u ]%s\n", + ntohl(e->time), + ntohs(e->load1), ntohs(e->load5), ntohs(e->load15), + ((i + sizeof(struct load_entry)) < m.size) ? "," : ""); + } + + umap_file(&m); + + return 0; +} + + +int main(int argc, char *argv[]) +{ + int opt; + + progname = argv[0]; + prognamelen = -1; + + for (opt = 0; opt < argc; opt++) + prognamelen += 1 + strlen(argv[opt]); + + while ((opt = getopt(argc, argv, "t:i:r:cl")) > -1) + { + switch (opt) + { + case 't': + timeout = atoi(optarg); + break; + + case 'i': + if (optarg) + return run_dump_ifname(optarg); + break; + + case 'r': + if (optarg) + return run_dump_radio(optarg); + break; + + case 'c': + return run_dump_conns(); + + case 'l': + return run_dump_load(); + + default: + break; + } + } + + fprintf(stderr, + "Usage:\n" + " %s [-t timeout] -i ifname\n" + " %s [-t timeout] -r radiodev\n" + " %s [-t timeout] -c\n" + " %s [-t timeout] -l\n", + argv[0], argv[0], argv[0], argv[0] + ); + + return 1; +}