From mboxrd@z Thu Jan 1 00:00:00 1970 From: git@ipfire.org To: ipfire-scm@lists.ipfire.org Subject: [git.ipfire.org] IPFire 2.x development tree branch, master, updated. cf361ef4b55134254150b5070069f9d25b201bd1 Date: Wed, 18 Oct 2017 20:27:31 +0100 Message-ID: <20171018192733.D79251081BCF@git01.ipfire.org> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============8304237986910129327==" List-Id: --===============8304237986910129327== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "IPFire 2.x development tree". The branch, master has been updated via cf361ef4b55134254150b5070069f9d25b201bd1 (commit) via fb1eb40f9b84c190c62dec16897fefb552b4f50e (commit) via fcd8ab4c236d434e655866c3aa3cf90c8eefc110 (commit) via 6c6c1e3f043b7c4e99fabb6e92fce226089392af (commit) via 348ba8e2c54db7608ca9c2584c4c14b3466e6fbb (commit) via 9dcfcb003985d3296473aee9032a324bba9d94dc (commit) via 77ad762c430761bbf2d4be03bf2836d99685359d (commit) via 5fd54721c2275def506ac54cc2e4e810f57fa491 (commit) via c061d66fca5e252dab8fa2e5be5c684faeec75e0 (commit) via bc9544929c61080e662d8668d5ea0b833965fdd9 (commit) via 1c1babf44bf3524726c098d787e4a01eb81950d6 (commit) via af6c5929b0034f0d9e802acaf83bfa36a7cea901 (commit) via f32174956eb8dc6d961c0fe09796e092b6846ae4 (commit) via 3a62dca68e411e90565ab4c9654cae88e56dcfdd (commit) via 440cd2cbfdfb2d386c200a05deb14fcd3a7cb1e6 (commit) via 7207d80c4ecf070495b3d3e65c9f50dfad6d6a1a (commit) via 5ed7bbd52fe8fc124100ece71df0052e23276569 (commit) via b62c826fd8f9b41ac6006d4af8d0d5851f3ba1b4 (commit) via e3c3625c34f2ea370014b1a3798edd9909b03497 (commit) via 30b0e0ca1bd991d737e527b11f3cf83c446104e3 (commit) via d7d5774529358c4ccbfc841f7ac1726d384a6bc9 (commit) via a54350cdb9d56691644486a49b7e5b7594d8d504 (commit) via ebfb8996930ec1e3b4f7d09208d2ab60a8f30603 (commit) via c484679bb3ea4672bf34ba3fd1d5d7596f00a11a (commit) via fb76fc5144d9b072cace93c008da90aa4ccfcbfa (commit) via f754146b1eee3f7a78424959633680f593f36d92 (commit) via 7ef43add025bd53142cb31c17240e1b3b031115b (commit) via e735d91f03adf2e0eed8780de52473fe40419bb3 (commit) via 50846453cb2dee4bd80220a01c714ea7add2e7a3 (commit) via 78fa47700d39c3f84a5c31e72140472564328aea (commit) via fbc9cfd7697ad09d6022c2c858f0d942d35ee388 (commit) via 73ba2286201fbcf2bfb9786f29d2758e6aa380c6 (commit) via 5760f93a74dc8569f206b742b3aa3035d9d582fd (commit) via f227ae4fd2336f86b2e0ada26144bca7190e0548 (commit) via 5c6ae344fc30101566d82fa44dbb7d11a3b7ee9b (commit) via 0b289b3af01080c802a8559a1c86327b77b1f7b9 (commit) via e2bd5a6eb9385b82970c0e0afff5825950772fe1 (commit) via 2f27148cbbf9482a11bc05c1afb410e3bb1bebb0 (commit) via 3c3dfd165eec77898bd9e0bf72ee92dbe9987d61 (commit) via ebf697a097f38c11a603e22f7f742e24bba601a2 (commit) via b66b02ab73863bcb9130300d8ef0eecdc51efde3 (commit) via b0b4d09c56774e84938109963a32916716e96f85 (commit) via dc6ed83537e1bcc1347ad16bee095ef4d641bc69 (commit) via 436479a29fb81a66e66304a76862e48cddfaf424 (commit) via c8e03c7c53ba59acf4aed8dca38d23a88f2167c9 (commit) via e34e72b6e1d0e4ac5b4e08b661b1ab6e7062d2f5 (commit) via bfa0f1dfc0b85d81ff500cac4f13175fc260ba65 (commit) via 2ac90665e8ca5684e811012f2923b0cfec93e065 (commit) via e3fc1d0a2b13e866ec2043c2c5309d4add2423da (commit) via bef7ad5bbecbb3ed36d8c3c38fcca67b84487213 (commit) via 6772cc8035ba6a03b2251380f61cc9a4100d9229 (commit) via 5e6fcc884403ee428dec544b32565a33af54ba94 (commit) via 1294c52ca5d01e9293b37b2f301c0c873098ab83 (commit) via 112a09508e9538d67af9e60c207724eca49b1c51 (commit) via bbc69f228db9e050e1b585a1ac09c495d32ef41a (commit) via cb40ff6027c8eb06d4f2446c4a606084a39addc0 (commit) via 9c8395456753ac6b7fd0141a6b0be83415841bf0 (commit) via b1773d1a37700ce2b07290750052d91983a65620 (commit) via 027614d2dc3107a4e071e8dac49ce8a74c36e4ea (commit) via 0a219160ac7dfe243c94c1f04c182d29206df8ec (commit) via 1f06098ba7f4894c9e3dfb744c38f6ef5c576743 (commit) via 70f6cba43efc1269712ed17020c2e1cf9d6fe86e (commit) via e2d934cf2bbc9409e878b719a6688476ab9b6874 (commit) via 67970637d0965ee01255a4d3a27dfa186c57f54c (commit) via fc9a434cbcef07ab3c5a81d5514036ac3962219c (commit) via 36f5d20ef73844906b557808ecb651097238683f (commit) via 082771c1f4d61fd633c04081ddbfebe25494db14 (commit) via c42237247aec6de190d135b61213054b8b7e2e22 (commit) via d62fd7553da8699bd60e3decb6b646d4436d372d (commit) via 1b0ff72dad0225f1b636605e17a42c465f96d884 (commit) via fb96829a746d5a7ace9835c1aa566f5b0d8bc406 (commit) via afd0cd232fa0d545ebdb70a114f044cde7b99985 (commit) via 5f1b9511022bca252c27b9e60284bf4f4486af46 (commit) via 1d68e28753c7eae374924e0b4ba5ee7cc985c711 (commit) via 963beecdb8bf374d71f22fb0aaf39e5f215318d7 (commit) via 78148cc1e55b0fc85e8433ef30e7e4652e6c6c63 (commit) via 5511fa319a68abcccd68e575f68383f58cb1a388 (commit) via 94e1d35c541d7cbba43c1703a4a590b441bfd3e5 (commit) via 9b6227cc2a961148d007a3f5a2d388c231af47b4 (commit) via 445b43f87732df392776964a82e3ed3058cfee6b (commit) via c91899797b58c719132445778b3b1f1b017a80f4 (commit) via b020b6190f8dd8c5728731148ab11ded9687dcd0 (commit) via 22ce4c3ad6d93879955060e5582384f334ef15f6 (commit) via 6033b2710346f9bf4e1182db706775ccde59e5c1 (commit) via 4eecd722b746fa325d126849c3f3cc0e743bf70c (commit) via 02de682e2118769f1e80fab42f3adb284f60d7c6 (commit) via 733de0e4a0b16d4b03f193f7eec7ce51de071a30 (commit) via 115b5e624e22212b0b0ba8db852bfec7a402c3fe (commit) via 45b1b7cf65ed067d4df4560716e401e4915e02d8 (commit) via 497b9108559e8eac8daba6e8e9e8ff83d5040c69 (commit) via eb3e3017cbd65d3b46bf1ca69195e72e56f64442 (commit) via aed55ef9f81ea07da49b5b051354911d87d428ce (commit) via 8b0679cc89926ccd7e6f8b42e4a20dd3b3c4e371 (commit) via 792f1a3bdf47eba051a752f27e30a92d53a523b3 (commit) via 41964aba093a6b37f7534c0990b25c29e38ea371 (commit) via a0b271e4745dafb7daade5dcf4d18406daaddee9 (commit) via 733932de749c1c92f8f4b38a53cdbf876dd7fe6e (commit) via 9cba29f119459e3ebf5964ee265edd8194042b5a (commit) via 5cd9e28bc407f9c3f01a2512a14adda83f89f92e (commit) via 58fd5dd482d1e4fdf4a5eb554dd9c4a6ad93369b (commit) via 4f75fbfe12ba48d8f4275d76259db8dd02bfe0fa (commit) via 810198110e60d29c6ca9e73b622ab350ae9f9f82 (commit) via e7d16ea553d56ad24240f1f6fe1276ecadaa647f (commit) via a41fe924aefb1237c546fdebb55a4fd4c13d580c (commit) via b7a126d9c8bfb9d03752672b90750a23bdd9119a (commit) via 8802d70a2836012e8e7a8c17eb5fbc589a944e5c (commit) via e2752bfe719b51b1cb2f9153b8ddfab5d4483938 (commit) via 278309b9ef3d1a053b9cc201f1b6e0284334d233 (commit) via 297ebdd47bbe5170c57f7ea0079c37830da61827 (commit) via 827d3f61da96ebc8881f3fbf283fd67c8bad6809 (commit) via 97b91e8a946233d1a5cf90ed36d744dd07f434f9 (commit) via 9735e1670aa846e8e022a88260943bfc348927fc (commit) via f8d35875d8c83347c71a724e1d5af06d1660d4c9 (commit) via 4b33d29de7ea95d2ae9a128d6fb2304331d9bdc1 (commit) via dbfd2622f58727f4b0f9bed8934a770a2050491f (commit) via 966971e58914ef254595532118d37dd604231a5c (commit) via 48fb1d3b6935e0c94f022df389e1212ef2dbf9d7 (commit) via 050ce7567826a0a45f092a74d8bdb180daa6a86d (commit) via a2c26388dbc9cd388da37aa326bb9e6806d94f12 (commit) via 0a02d9bb0c0dd52d2d0f3f45264bdf512eb66380 (commit) via d57e8c67bc7ef3d71cb0c339734e49d9912cf581 (commit) via 11fc9575d79644d7830eca59cf90b0d0393bf32b (commit) via abc41f02dd31774d3bc311b4631fb5cf7f8992cd (commit) via 43834c49693a6c2ce25e31509e9ab2f8d6f32bd7 (commit) via 4ddf453804d10c387297fb1a5acb1e6694daddbc (commit) via a79b220c5a6ad33126276958a506befe8b437a25 (commit) via 59a2d9c2d5ab9be52d437f890dcb513a0b4af0c1 (commit) via 0806170370f87f949efd327e1ad7377050b3626f (commit) via 213335372da6a5cb106e6ded17521b9a70d84d40 (commit) via 6945954c445ff0af6196571bd352e8c8fe0e286b (commit) via 1d77d1262a0b4b1d0fc975da799d7e85d29c94d3 (commit) via 7ab3f84b2ab7a6bbf1428a1e04755ebd3742830f (commit) via 2d92a4eca4768b79c6cb2ce4604c0eced3f59a2c (commit) via f339af27044567c36ddc8f27a15a0e4b90297c0b (commit) via 45129439bc2b16b712f015a661af4bdfbd815f60 (commit) via 6820454e5436954c56f28116ee06d5266cd8484f (commit) via 52383f583ed7602a7822564dd497165a1b0084f7 (commit) via b32d9e92bee391e172236e4ee4d7661bfd5a1f11 (commit) via 83ba0896f6240a9110198e19a936e86b492cb766 (commit) via fb1d26d1bc50a7a453026a600f763309150320ce (commit) via 76ece3236237626450838b2fb18d5ca213549f51 (commit) via 07d56062a90d84c8504783b1c70fb06466a90dc2 (commit) via 5dc32e5877f7cd8bb96ef6becc9a9370490a1c15 (commit) via f3802750ac9b03d7bfdb767e71436a1387607ec0 (commit) via facfdcd040d158b529da6134140bf42a1c5a2fca (commit) via 6d31cfdd58e5826373da4f5eaa07fd31dbcbee7d (commit) via e14adf759ae830dc6f36c97d31e42a449529c502 (commit) via c7e78cc62e6699f00962caf440ed25270c461334 (commit) via e01c5ab71a78b4061cf98fd03be76112842a6bf2 (commit) via 47406df0fea9108a9b921884c58c53ca6ce6cb37 (commit) via a6c985284d0d1a56ba8646a817b6bcd85aaa68e3 (commit) via 8ef627839fa3e7fd636a243153ed68126f967871 (commit) via c04d2de74ee3b300b59dacdb29d0c174ed269025 (commit) via 585703d8a3da1ec4952851efa53d3ab926870b14 (commit) via 19cd2b6a7cd5951bb2c74004f27c5be82924880a (commit) via 1fc9a43056d516e335e6761443d77bba77ba44d9 (commit) via 5ca163cd82d651f5036cda30a4fa4c54c1559439 (commit) via bbaa3613b4e779fed958dc3f7918a65c57576fe8 (commit) via 4d9002279f6cd5c73f0e6092c22ae2bfa49460bb (commit) via 8b92078917ab3c3fdbdd2070ba803f23aff237d7 (commit) via cec16b8242f27a7718cb54477403651f752c109e (commit) via 5906c96206c934e55883390aa0f931b851b4a8b3 (commit) via 0d6a599aba381244bd67de8bf6d6a7ed812cbe9e (commit) via 0c24f0a9df0cee1c7c7e1cf804fe23856ea7bb6b (commit) via 5fbeaf133312d0ca8e28b842f6eb7d31a172d8ab (commit) via 7ef66b6199e6215fd3b2b0fb42ec3e03ff1bddc7 (commit) via ee40139d9ad0f5b1f07c5735641e45ebb6bd573a (commit) from bee416e2829a5063819ee97f299482e4f894e9e5 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit cf361ef4b55134254150b5070069f9d25b201bd1 Author: Arne Fitzenreiter Date: Wed Oct 18 21:25:59 2017 +0200 finish core115 =20 Signed-off-by: Arne Fitzenreiter commit fb1eb40f9b84c190c62dec16897fefb552b4f50e Author: Arne Fitzenreiter Date: Wed Oct 18 21:24:43 2017 +0200 core115: add extrahd.cgi to updater =20 this file was missing in early core114 testbuilds so ship it again. =20 Signed-off-by: Arne Fitzenreiter commit fcd8ab4c236d434e655866c3aa3cf90c8eefc110 Merge: 6c6c1e3 bee416e Author: Arne Fitzenreiter Date: Wed Oct 18 21:20:23 2017 +0200 Merge branch 'master' into core115 commit 6c6c1e3f043b7c4e99fabb6e92fce226089392af Author: Peter M=C3=BCller Date: Tue Oct 17 19:49:07 2017 +0200 redirect to TLS WebUI if authorisation required =20 Do not allow credentials being submitted in plaintext to Apache. Instead, redirect the user with a 301 to the TLS version of IPFire's web interface. =20 Signed-off-by: Peter M=C3=BCller Signed-off-by: Michael Tremer ----------------------------------------------------------------------- Summary of changes: config/backup/include | 1 + config/cfgroot/general-functions.pl | 8 +- config/cfgroot/lang.pl | 14 + config/cfgroot/network-functions.pl | 20 + config/cron/crontab | 6 + config/extrahd/extrahd.pl | 2 - config/httpd/vhosts.d/captive.conf | 30 + config/httpd/vhosts.d/ipfire-interface-ssl.conf | 30 +- config/httpd/vhosts.d/ipfire-interface.conf | 35 +- config/menu/30-network.menu | 5 + config/ovpn/openssl/ovpn.cnf | 4 + config/rootfiles/common/apache2 | 4 + config/rootfiles/common/bootstrap | 17 + config/rootfiles/common/configroot | 10 +- config/rootfiles/common/misc-progs | 1 + config/rootfiles/common/perl-Font-TTF | 164 +++++ .../common/{Net-Telnet =3D> perl-IO-String} | 8 +- .../rootfiles/{packages =3D> common}/perl-PDF-API2 | 2 + config/rootfiles/common/stage2 | 1 + config/rootfiles/common/ubuntu-font-family | 13 + config/rootfiles/common/unbound | 2 +- config/rootfiles/common/web-user-interface | 21 +- config/rootfiles/common/x86_64/stage2 | 1 + config/rootfiles/core/{114 =3D> 115}/exclude | 0 .../rootfiles/core/{114 =3D> 115}/filelists/apache2 | 0 config/rootfiles/core/115/filelists/bootstrap | 1 + config/rootfiles/core/115/filelists/files | 31 + .../{oldcore/111 =3D> core/115}/filelists/logrotate | 0 .../{oldcore/100 =3D> core/115}/filelists/openvpn | 0 config/rootfiles/core/115/filelists/perl-Font-TTF | 1 + config/rootfiles/core/115/filelists/perl-IO-String | 1 + config/rootfiles/core/115/filelists/perl-PDF-API2 | 1 + .../core/115/filelists/ubuntu-font-family | 1 + .../103 =3D> core/115}/filelists/wpa_supplicant | 0 config/rootfiles/core/{114 =3D> 115}/meta | 0 .../rootfiles/{oldcore/111 =3D> core/115}/update.sh | 40 +- config/rootfiles/{core =3D> oldcore}/114/exclude | 0 .../{core =3D> oldcore}/114/filelists/apache2 | 0 .../rootfiles/{core =3D> oldcore}/114/filelists/apr | 0 .../{core =3D> oldcore}/114/filelists/aprutil | 0 .../{core =3D> oldcore}/114/filelists/files | 0 .../{core =3D> oldcore}/114/filelists/gnutls | 0 .../{core =3D> oldcore}/114/filelists/hdparm | 0 .../114/filelists/i586/strongswan-padlock | 0 .../rootfiles/{core =3D> oldcore}/114/filelists/php | 0 .../{core =3D> oldcore}/114/filelists/squid | 0 .../{core =3D> oldcore}/114/filelists/strongswan | 0 .../{core =3D> oldcore}/114/filelists/unbound | 0 config/rootfiles/{core =3D> oldcore}/114/meta | 0 config/rootfiles/{core =3D> oldcore}/114/update.sh | 0 config/xen-image/xen-image-maker.sh | 4 +- doc/language_issues.de | 27 + doc/language_issues.en | 24 + doc/language_issues.es | 47 ++ doc/language_issues.fr | 47 +- doc/language_issues.it | 47 ++ doc/language_issues.nl | 47 ++ doc/language_issues.pl | 47 ++ doc/language_issues.ru | 47 ++ doc/language_issues.tr | 47 ++ doc/language_missings | 249 ++++++- html/cgi-bin/captive.cgi | 794 +++++++++++++++++++= ++ html/cgi-bin/captive/index.cgi | 238 ++++++ .../pakfire.conf =3D> html/cgi-bin/captive/logo.cgi | 38 +- html/cgi-bin/{mdstat.cgi =3D> captive/redirect.cgi} | 49 +- html/cgi-bin/logs.cgi/log.dat | 2 + html/cgi-bin/ovpnmain.cgi | 31 +- html/cgi-bin/proxy.cgi | 4 +- html/cgi-bin/vpnmain.cgi | 4 + html/html/captive/assets/captive.css | 194 +++++ html/html/{ =3D> captive/assets}/favicon.ico | Bin .../images/tux2.png =3D> captive/assets/ipfire.png} | Bin html/html/captive/template.html | 79 ++ html/html/dial.cgi | 4 - langs/de/cgi-bin/de.pl | 59 ++ langs/en/cgi-bin/en.pl | 72 +- lfs/Config | 6 +- lfs/apache2 | 11 +- lfs/{usb_modeswitch =3D> bootstrap} | 20 +- lfs/cdrom | 5 +- lfs/configroot | 4 +- lfs/ddns | 2 +- lfs/fireinfo | 2 +- lfs/flash-images | 2 +- lfs/installer | 1 + lfs/ipfire-netboot | 10 +- lfs/logrotate | 4 +- lfs/openvpn | 7 +- lfs/pakfire3 | 2 +- lfs/{swig =3D> perl-Font-TTF} | 9 +- lfs/{swig =3D> perl-IO-String} | 9 +- lfs/perl-PDF-API2 | 10 +- lfs/squid-accounting | 4 +- lfs/stage2 | 1 + lfs/tor | 6 +- lfs/{mdadm =3D> ubuntu-font-family} | 21 +- lfs/unbound | 4 +- lfs/web-user-interface | 23 +- make.sh | 8 +- src/initscripts/system/firewall | 11 + src/installer/configure.ac | 16 +- src/installer/dracut-module/module-setup.sh | 3 + src/installer/hw.c | 2 +- src/installer/hw.h | 4 +- src/installer/main.c | 12 +- src/installer/po/ar.po | 13 +- src/installer/po/ca.po | 4 +- src/installer/po/cs_CZ.po | 4 +- src/installer/po/da.po | 4 +- src/installer/po/de.po | 2 +- src/installer/po/el_GR.po | 4 +- src/installer/po/es.po | 4 +- src/installer/po/fa.po | 4 +- src/installer/po/fr.po | 61 +- src/installer/po/hr.po | 4 +- src/installer/po/hu.po | 137 ++-- src/installer/po/id.po | 4 +- src/installer/po/it.po | 4 +- src/installer/po/ja.po | 137 ++-- src/installer/po/jv.po | 2 +- src/installer/po/km_KH.po | 4 +- src/installer/po/nl.po | 4 +- src/installer/po/pl.po | 8 +- src/installer/po/pt_BR.po | 4 +- src/installer/po/pt_PT.po | 11 +- src/installer/po/ro_RO.po | 137 ++-- src/installer/po/ru.po | 18 +- src/installer/po/rw.po | 4 +- src/installer/po/sk.po | 4 +- src/installer/po/sq.po | 13 +- src/installer/po/sr.po | 2 +- src/installer/po/su.po | 2 +- src/installer/po/sv.po | 137 ++-- src/installer/po/th.po | 4 +- src/installer/po/tk.po | 4 +- src/installer/po/tr.po | 6 +- src/installer/po/uk.po | 4 +- src/installer/po/uz(a)Latn.po | 4 +- src/installer/po/vi.po | 4 +- src/installer/po/zh.po | 4 +- src/misc-progs/Makefile | 3 +- src/misc-progs/captivectrl.c | 361 ++++++++++ src/misc-progs/wirelessctrl.c | 17 + src/patches/apache-2.4.27-CVE-2017-9798-fix.patch | 15 - src/patches/apache-2.4.27-PR61382-fix.patch | 783 -------------------- src/scripts/backupiso | 2 +- .../getdnsfromdhcpc.pl =3D> scripts/captive-cleanup} | 49 +- src/scripts/httpscert | 37 +- src/setup/po/ar.po | 19 +- src/setup/po/ca.po | 4 +- src/setup/po/cs_CZ.po | 4 +- src/setup/po/da.po | 10 +- src/setup/po/de.po | 2 +- src/setup/po/el_GR.po | 4 +- src/setup/po/es.po | 4 +- src/setup/po/fa.po | 4 +- src/setup/po/fr.po | 135 ++-- src/setup/po/hr.po | 4 +- src/setup/po/hu.po | 265 +++---- src/setup/po/id.po | 4 +- src/setup/po/it.po | 4 +- src/setup/po/ja.po | 265 +++---- src/setup/po/jv.po | 2 +- src/setup/po/km_KH.po | 4 +- src/setup/po/nl.po | 4 +- src/setup/po/pl.po | 10 +- src/setup/po/pt_BR.po | 6 +- src/setup/po/pt_PT.po | 17 +- src/setup/po/ro_RO.po | 250 +++---- src/setup/po/ru.po | 55 +- src/setup/po/rw.po | 2 +- src/setup/po/sk.po | 4 +- src/setup/po/sq.po | 2 +- src/setup/po/sr.po | 2 +- src/setup/po/su.po | 2 +- src/setup/po/sv.po | 265 +++---- src/setup/po/th.po | 4 +- src/setup/po/tk.po | 4 +- src/setup/po/tr.po | 8 +- src/setup/po/uk.po | 4 +- src/setup/po/uz(a)Latn.po | 4 +- src/setup/po/vi.po | 4 +- src/setup/po/zh.po | 4 +- 183 files changed, 4212 insertions(+), 2101 deletions(-) create mode 100644 config/httpd/vhosts.d/captive.conf create mode 100644 config/rootfiles/common/bootstrap create mode 100644 config/rootfiles/common/perl-Font-TTF copy config/rootfiles/common/{Net-Telnet =3D> perl-IO-String} (53%) rename config/rootfiles/{packages =3D> common}/perl-PDF-API2 (98%) create mode 100644 config/rootfiles/common/ubuntu-font-family copy config/rootfiles/core/{114 =3D> 115}/exclude (100%) copy config/rootfiles/core/{114 =3D> 115}/filelists/apache2 (100%) create mode 120000 config/rootfiles/core/115/filelists/bootstrap create mode 100644 config/rootfiles/core/115/filelists/files copy config/rootfiles/{oldcore/111 =3D> core/115}/filelists/logrotate (100%) copy config/rootfiles/{oldcore/100 =3D> core/115}/filelists/openvpn (100%) create mode 120000 config/rootfiles/core/115/filelists/perl-Font-TTF create mode 120000 config/rootfiles/core/115/filelists/perl-IO-String create mode 120000 config/rootfiles/core/115/filelists/perl-PDF-API2 create mode 120000 config/rootfiles/core/115/filelists/ubuntu-font-family copy config/rootfiles/{oldcore/103 =3D> core/115}/filelists/wpa_supplicant (= 100%) copy config/rootfiles/core/{114 =3D> 115}/meta (100%) copy config/rootfiles/{oldcore/111 =3D> core/115}/update.sh (72%) rename config/rootfiles/{core =3D> oldcore}/114/exclude (100%) rename config/rootfiles/{core =3D> oldcore}/114/filelists/apache2 (100%) rename config/rootfiles/{core =3D> oldcore}/114/filelists/apr (100%) rename config/rootfiles/{core =3D> oldcore}/114/filelists/aprutil (100%) rename config/rootfiles/{core =3D> oldcore}/114/filelists/files (100%) rename config/rootfiles/{core =3D> oldcore}/114/filelists/gnutls (100%) rename config/rootfiles/{core =3D> oldcore}/114/filelists/hdparm (100%) rename config/rootfiles/{core =3D> oldcore}/114/filelists/i586/strongswan-pa= dlock (100%) rename config/rootfiles/{core =3D> oldcore}/114/filelists/php (100%) rename config/rootfiles/{core =3D> oldcore}/114/filelists/squid (100%) rename config/rootfiles/{core =3D> oldcore}/114/filelists/strongswan (100%) rename config/rootfiles/{core =3D> oldcore}/114/filelists/unbound (100%) rename config/rootfiles/{core =3D> oldcore}/114/meta (100%) rename config/rootfiles/{core =3D> oldcore}/114/update.sh (100%) create mode 100755 html/cgi-bin/captive.cgi create mode 100755 html/cgi-bin/captive/index.cgi copy src/pakfire/pakfire.conf =3D> html/cgi-bin/captive/logo.cgi (70%) copy html/cgi-bin/{mdstat.cgi =3D> captive/redirect.cgi} (57%) mode change 100644 =3D> 100755 create mode 100644 html/html/captive/assets/captive.css copy html/html/{ =3D> captive/assets}/favicon.ico (100%) copy html/html/{themes/ipfire/images/tux2.png =3D> captive/assets/ipfire.png= } (100%) create mode 100644 html/html/captive/template.html delete mode 100644 html/html/dial.cgi copy lfs/{usb_modeswitch =3D> bootstrap} (87%) copy lfs/{swig =3D> perl-Font-TTF} (95%) copy lfs/{swig =3D> perl-IO-String} (95%) copy lfs/{mdadm =3D> ubuntu-font-family} (88%) create mode 100644 src/misc-progs/captivectrl.c delete mode 100644 src/patches/apache-2.4.27-CVE-2017-9798-fix.patch delete mode 100644 src/patches/apache-2.4.27-PR61382-fix.patch copy src/{initscripts/helper/getdnsfromdhcpc.pl =3D> scripts/captive-cleanup= } (62%) mode change 100644 =3D> 100755 Difference in files: diff --git a/config/backup/include b/config/backup/include index e1edeff..ba78c69 100644 --- a/config/backup/include +++ b/config/backup/include @@ -41,3 +41,4 @@ /root/.bash_history /var/ipfire/ethernet/aliases /var/ipfire/ethernet/wireless +/var/ipfire/captive/* diff --git a/config/cfgroot/general-functions.pl b/config/cfgroot/general-fun= ctions.pl index f448c34..0577afe 100644 --- a/config/cfgroot/general-functions.pl +++ b/config/cfgroot/general-functions.pl @@ -235,7 +235,13 @@ sub writehashpart sub age { my ($dev, $ino, $mode, $nlink, $uid, $gid, $rdev, $size, $atime, $mtime, $ctime, $blksize, $blocks) =3D stat $_[0]; - my $totalsecs =3D time() - $mtime; + my $t =3D time() - $mtime; + + return &format_time($t); +} + +sub format_time($) { + my $totalsecs =3D shift; my @s =3D (); =20 my $secs =3D $totalsecs % 60; diff --git a/config/cfgroot/lang.pl b/config/cfgroot/lang.pl index c77e0a0..2b09c4a 100644 --- a/config/cfgroot/lang.pl +++ b/config/cfgroot/lang.pl @@ -179,4 +179,18 @@ sub FindWebLanguage() { return undef; } =20 +sub DetectBrowserLanguages() { + my $langs =3D $ENV{"HTTP_ACCEPT_LANGUAGE"}; + my @results =3D (); + + foreach my $lang (split /[,;]/, $langs) { + # Drop all q=3D arguments + next if ($lang =3D~ m/^q=3D/); + + push(@results, $lang); + } + + return @results; +} + 1; diff --git a/config/cfgroot/network-functions.pl b/config/cfgroot/network-fun= ctions.pl index 66f1ed5..93b8190 100644 --- a/config/cfgroot/network-functions.pl +++ b/config/cfgroot/network-functions.pl @@ -374,6 +374,26 @@ sub wifi_get_signal_level($) { =20 return $signal_level; } + +sub get_hardware_address($) { + my $ip_address =3D shift; + my $ret; + + open(FILE, "/proc/net/arp") or die("Could not read ARP table"); + + while () { + my ($ip_addr, $hwtype, $flags, $hwaddr, $mask, $device) =3D split(/\s+/, $= _); + if ($ip_addr eq $ip_address) { + $ret =3D $hwaddr; + last; + } + } + + close(FILE); + + return $ret; +} + 1; =20 # Remove the next line to enable the testsuite diff --git a/config/cron/crontab b/config/cron/crontab index c6d8a72..4561f4a 100644 --- a/config/cron/crontab +++ b/config/cron/crontab @@ -65,6 +65,12 @@ HOME=3D/ # Retry sending spooled mails regularly %hourly * /usr/sbin/dma -q =20 +# Cleanup captive clients +%hourly * /usr/bin/captive-cleanup + +# Reload captive firewall rules +%nightly * 23-1 /usr/local/bin/captivectrl >/dev/null + # Cleanup the mail spool directory %weekly * * /usr/sbin/dma-cleanup-spool =20 diff --git a/config/extrahd/extrahd.pl b/config/extrahd/extrahd.pl index 3c6fa02..3b57e92 100644 --- a/config/extrahd/extrahd.pl +++ b/config/extrahd/extrahd.pl @@ -48,8 +48,6 @@ close FILE; ############################################################################= ################################################ ############################################################################= ################################################ =20 -print "$ARGV[0] $ARGV[1]"; - if ( "$ARGV[0]" eq "mount" ) { system("/bin/cp -f /etc/fstab $fstab"); =20 diff --git a/config/httpd/vhosts.d/captive.conf b/config/httpd/vhosts.d/capti= ve.conf new file mode 100644 index 0000000..e4e1d78 --- /dev/null +++ b/config/httpd/vhosts.d/captive.conf @@ -0,0 +1,30 @@ +Listen 1013 + + + DocumentRoot /srv/web/ipfire/html/captive + + # Close all connections as soon as a reply has been sent. + # Most browsers open loads of connections which then causes + # the access page being loaded again after a correct coupon + # code was entered. + KeepAlive Off + + ScriptAlias /cgi-bin/ /srv/web/ipfire/cgi-bin/captive/ + Alias /assets/ /srv/web/ipfire/html/captive/assets/ + + Alias /favicon.ico /srv/web/ipfire/html/captive/assets/favicon.ico + + # All unknown URIs will be redirected to the first + # redirector script. + ScriptAliasMatch .* /srv/web/ipfire/cgi-bin/captive/redirect.cgi + + + Options ExecCGI + Require all granted + + + + Options +FollowSymlinks + Require all granted + + diff --git a/config/httpd/vhosts.d/ipfire-interface-ssl.conf b/config/httpd/v= hosts.d/ipfire-interface-ssl.conf index 6f35396..c9ccd5b 100644 --- a/config/httpd/vhosts.d/ipfire-interface-ssl.conf +++ b/config/httpd/vhosts.d/ipfire-interface-ssl.conf @@ -9,10 +9,12 @@ TransferLog /var/log/httpd/access_log SSLEngine on SSLProtocol all -SSLv2 -SSLv3 - SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256= :ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM= -SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-E= CDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES2= 56-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-S= HA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES= 256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM= -SHA384:AES128:AES256:HIGH:!RC4:!aNULL:!eNULL:!EXPORT:!DES:!3DES:!MD5:!PSK + SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:E= CDHE-ECDSA-AES128-SHA:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384= :ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA256:E= CDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE= -RSA-AES256-SHA:AES128-GCM-SHA256:AES128-SHA256:AES128-SHA:CAMELLIA128-SHA:AE= S256-GCM-SHA384:AES256-SHA256:AES256-SHA:CAMELLIA256-SHA SSLHonorCipherOrder on SSLCertificateFile /etc/httpd/server.crt SSLCertificateKeyFile /etc/httpd/server.key + SSLCertificateFile /etc/httpd/server-ecdsa.crt + SSLCertificateKeyFile /etc/httpd/server-ecdsa.key =20 Options ExecCGI @@ -23,7 +25,10 @@ AuthName "IPFire - Restricted" AuthType Basic AuthUserFile /var/ipfire/auth/users - Require user admin + + Require user admin + Require ssl + ScriptAlias /cgi-bin/ /srv/web/ipfire/cgi-bin/ @@ -32,24 +37,16 @@ AuthName "IPFire - Restricted" AuthType Basic AuthUserFile /var/ipfire/auth/users - Require user admin + + Require user admin + Require ssl + Require all granted Require all granted - - Require user admin - - - - AllowOverride None - Options None - AuthName "IPFire - Restricted" - AuthType Basic - AuthUserFile /var/ipfire/auth/users - Require user dial admin SSLOptions +StdEnvVars @@ -85,6 +82,9 @@ AuthName "IPFire - Restricted" AuthType Basic AuthUserFile /var/ipfire/auth/users - Require user admin + + Require user admin + Require ssl + diff --git a/config/httpd/vhosts.d/ipfire-interface.conf b/config/httpd/vhost= s.d/ipfire-interface.conf index 619f90f..be15cd0 100644 --- a/config/httpd/vhosts.d/ipfire-interface.conf +++ b/config/httpd/vhosts.d/ipfire-interface.conf @@ -12,36 +12,17 @@ Require all granted - AuthName "IPFire - Restricted" - AuthType Basic - AuthUserFile /var/ipfire/auth/users - Require user admin + Options SymLinksIfOwnerMatch + RewriteEngine on + RewriteCond %{HTTPS} off + RewriteRule (.*) https://%{SERVER_NAME}:444/$1 [R=3D301,L] ScriptAlias /cgi-bin/ /srv/web/ipfire/cgi-bin/ - AllowOverride None - Options None - AuthName "IPFire - Restricted" - AuthType Basic - AuthUserFile /var/ipfire/auth/users - Require user admin - - Require all granted - - - Require all granted - - - Require user admin - - - - AllowOverride None - Options None - AuthName "IPFire - Restricted" - AuthType Basic - AuthUserFile /var/ipfire/auth/users - Require user dial admin + Options SymLinksIfOwnerMatch + RewriteEngine on + RewriteCond %{HTTPS} off + RewriteRule (.*) https://%{SERVER_NAME}:444/$1 [R=3D301,L] Alias /updatecache/ /var/updatecache/ diff --git a/config/menu/30-network.menu b/config/menu/30-network.menu index 8e1336a..137fd68 100644 --- a/config/menu/30-network.menu +++ b/config/menu/30-network.menu @@ -23,6 +23,11 @@ 'title' =3D> "$Lang::tr{'dhcp server'}", 'enabled' =3D> 1, }; + $subnetwork->{'32.captive'} =3D {'caption' =3D> $Lang::tr{'Captive menu'}, + 'uri' =3D> '/cgi-bin/captive.cgi', + 'title' =3D> $Lang::tr{'Captive menu'}, + 'enabled' =3D> 1, + }; $subnetwork->{'40.scheduler'} =3D { 'caption' =3D> $Lang::tr{'connscheduler'}, 'uri' =3D> '/cgi-bin/connscheduler.cgi', diff --git a/config/ovpn/openssl/ovpn.cnf b/config/ovpn/openssl/ovpn.cnf index ab026c1..40daf2a 100644 --- a/config/ovpn/openssl/ovpn.cnf +++ b/config/ovpn/openssl/ovpn.cnf @@ -77,6 +77,8 @@ basicConstraints =3D CA:FALSE nsComment =3D "OpenSSL Generated Certificate" subjectKeyIdentifier =3D hash authorityKeyIdentifier =3D keyid,issuer:always +extendedKeyUsage =3D clientAuth +keyUsage =3D digitalSignature =20 [ server ] =20 @@ -86,6 +88,8 @@ nsCertType =3D server nsComment =3D "OpenSSL Generated Server Certificate" subjectKeyIdentifier =3D hash authorityKeyIdentifier =3D keyid,issuer:always=20 +extendedKeyUsage =3D serverAuth +keyUsage =3D digitalSignature, keyEncipherment =20 [ v3_req ] basicConstraints =3D CA:FALSE diff --git a/config/rootfiles/common/apache2 b/config/rootfiles/common/apache2 index 233301a..040b482 100644 --- a/config/rootfiles/common/apache2 +++ b/config/rootfiles/common/apache2 @@ -43,6 +43,7 @@ etc/httpd/conf/server-tuning.conf etc/httpd/conf/ssl-global.conf etc/httpd/conf/uid.conf #etc/httpd/conf/vhosts.d +etc/httpd/conf/vhosts.d/captive.conf etc/httpd/conf/vhosts.d/ipfire-interface-ssl.conf etc/httpd/conf/vhosts.d/ipfire-interface.conf #etc/httpd/conf/vhosts.d/nagios.conf @@ -91,6 +92,8 @@ etc/httpd/conf/vhosts.d/ipfire-interface.conf #srv/web/ipfire/error/include/top.html #srv/web/ipfire/htdocs #srv/web/ipfire/htdocs/index.html +#srv/web/ipfire/html +srv/web/ipfire/html/captive #srv/web/ipfire/icons #srv/web/ipfire/icons/README #srv/web/ipfire/icons/README.html @@ -1662,3 +1665,4 @@ usr/sbin/httpd #usr/share/man/man8/rotatelogs.8 #usr/share/man/man8/suexec.8 var/log/httpd +var/log/httpd/captive diff --git a/config/rootfiles/common/bootstrap b/config/rootfiles/common/boot= strap new file mode 100644 index 0000000..cc5566a --- /dev/null +++ b/config/rootfiles/common/bootstrap @@ -0,0 +1,17 @@ +#usr/share/bootstrap +#usr/share/bootstrap/css +usr/share/bootstrap/css/bootstrap.css +usr/share/bootstrap/css/bootstrap.css.map +usr/share/bootstrap/css/bootstrap-grid.css +usr/share/bootstrap/css/bootstrap-grid.css.map +usr/share/bootstrap/css/bootstrap-grid.min.css +usr/share/bootstrap/css/bootstrap-grid.min.css.map +usr/share/bootstrap/css/bootstrap.min.css +usr/share/bootstrap/css/bootstrap.min.css.map +usr/share/bootstrap/css/bootstrap-reboot.css +usr/share/bootstrap/css/bootstrap-reboot.css.map +usr/share/bootstrap/css/bootstrap-reboot.min.css +usr/share/bootstrap/css/bootstrap-reboot.min.css.map +#usr/share/bootstrap/js +usr/share/bootstrap/js/bootstrap.js +usr/share/bootstrap/js/bootstrap.min.js diff --git a/config/rootfiles/common/configroot b/config/rootfiles/common/con= figroot index 911a780..58424ed 100644 --- a/config/rootfiles/common/configroot +++ b/config/rootfiles/common/configroot @@ -11,6 +11,11 @@ var/ipfire/auth var/ipfire/backup/exclude.user var/ipfire/backup/include.user var/ipfire/ca +var/ipfire/captive +var/ipfire/captive/agb.txt +var/ipfire/captive/clients +var/ipfire/captive/settings +var/ipfire/captive/voucher_out var/ipfire/certs #var/ipfire/certs/index.txt #var/ipfire/certs/serial @@ -51,16 +56,14 @@ var/ipfire/extrahd #var/ipfire/extrahd/settings var/ipfire/firewall #var/ipfire/firewall/config -#var/ipfire/firewall/dmz #var/ipfire/firewall/geoipblock #var/ipfire/firewall/input -#var/ipfire/firewall/nat #var/ipfire/firewall/outgoing #var/ipfire/firewall/p2protocols #var/ipfire/firewall/settings var/ipfire/fwhosts -#var/ipfire/fwhosts/customgroups #var/ipfire/fwhosts/customgeoipgrp +#var/ipfire/fwhosts/customgroups #var/ipfire/fwhosts/customhosts #var/ipfire/fwhosts/customnetworks #var/ipfire/fwhosts/customservicegrp @@ -116,6 +119,7 @@ var/ipfire/menu.d/70-log.menu #var/ipfire/menu.d/EX-tor.menu #var/ipfire/menu.d/EX-wlanap.menu var/ipfire/modem +var/ipfire/modem-lib.pl #var/ipfire/modem/defaults #var/ipfire/modem/settings var/ipfire/modem-lib.pl diff --git a/config/rootfiles/common/misc-progs b/config/rootfiles/common/mis= c-progs index f94f319..7891795 100644 --- a/config/rootfiles/common/misc-progs +++ b/config/rootfiles/common/misc-progs @@ -1,6 +1,7 @@ usr/local/bin/addonctrl #usr/local/bin/applejuicectrl usr/local/bin/backupctrl +usr/local/bin/captivectrl #usr/local/bin/clamavctrl usr/local/bin/collectdctrl usr/local/bin/ddnsctrl diff --git a/config/rootfiles/common/perl-Font-TTF b/config/rootfiles/common/= perl-Font-TTF new file mode 100644 index 0000000..e21941c --- /dev/null +++ b/config/rootfiles/common/perl-Font-TTF @@ -0,0 +1,164 @@ +#usr/lib/perl5/site_perl/5.12.3/Font +#usr/lib/perl5/site_perl/5.12.3/Font/TTF +usr/lib/perl5/site_perl/5.12.3/Font/TTF.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/AATKern.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/AATutils.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Anchor.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Bsln.pm +#usr/lib/perl5/site_perl/5.12.3/Font/TTF/Changes_old.txt +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Cmap.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Coverage.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Cvt_.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/DSIG.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Delta.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Dumper.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/EBDT.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/EBLC.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Fdsc.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Feat.pm +#usr/lib/perl5/site_perl/5.12.3/Font/TTF/Features +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Features/Cvar.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Features/Size.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Features/Sset.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Fmtx.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Font.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Fpgm.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/GDEF.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/GPOS.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/GSUB.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Glat.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Gloc.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Glyf.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Glyph.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/GrFeat.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Hdmx.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Head.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Hhea.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Hmtx.pm +#usr/lib/perl5/site_perl/5.12.3/Font/TTF/Kern +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Kern.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Kern/ClassArray.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Kern/CompactClassArray.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Kern/OrderedList.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Kern/StateTable.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Kern/Subtable.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/LTSH.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Loca.pm +#usr/lib/perl5/site_perl/5.12.3/Font/TTF/Manual.pod +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Maxp.pm +#usr/lib/perl5/site_perl/5.12.3/Font/TTF/Mort +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Mort.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Mort/Chain.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Mort/Contextual.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Mort/Insertion.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Mort/Ligature.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Mort/Noncontextual.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Mort/Rearrangement.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Mort/Subtable.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Name.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/OS_2.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/OTTags.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/OldCmap.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/OldMort.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/PCLT.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/PSNames.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Post.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Prep.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Prop.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Segarr.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Silf.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Sill.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Table.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Ttc.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Ttopen.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Useall.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Utils.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Vhea.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Vmtx.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Win32.pm +#usr/lib/perl5/site_perl/5.12.3/Font/TTF/Woff +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Woff.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Woff/MetaData.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/Woff/PrivateData.pm +usr/lib/perl5/site_perl/5.12.3/Font/TTF/XMLparse.pm +#usr/lib/perl5/site_perl/5.12.3/ttfmod.pl +#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Font +#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Font/TTF +#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Font/TTF/.pa= cklist +#usr/share/man/man3/Font::TTF.3 +#usr/share/man/man3/Font::TTF::AATKern.3 +#usr/share/man/man3/Font::TTF::AATutils.3 +#usr/share/man/man3/Font::TTF::Anchor.3 +#usr/share/man/man3/Font::TTF::Bsln.3 +#usr/share/man/man3/Font::TTF::Cmap.3 +#usr/share/man/man3/Font::TTF::Coverage.3 +#usr/share/man/man3/Font::TTF::Cvt_.3 +#usr/share/man/man3/Font::TTF::DSIG.3 +#usr/share/man/man3/Font::TTF::Delta.3 +#usr/share/man/man3/Font::TTF::Dumper.3 +#usr/share/man/man3/Font::TTF::EBDT.3 +#usr/share/man/man3/Font::TTF::EBLC.3 +#usr/share/man/man3/Font::TTF::Fdsc.3 +#usr/share/man/man3/Font::TTF::Feat.3 +#usr/share/man/man3/Font::TTF::Features::Cvar.3 +#usr/share/man/man3/Font::TTF::Features::Size.3 +#usr/share/man/man3/Font::TTF::Features::Sset.3 +#usr/share/man/man3/Font::TTF::Fmtx.3 +#usr/share/man/man3/Font::TTF::Font.3 +#usr/share/man/man3/Font::TTF::Fpgm.3 +#usr/share/man/man3/Font::TTF::GDEF.3 +#usr/share/man/man3/Font::TTF::GPOS.3 +#usr/share/man/man3/Font::TTF::GSUB.3 +#usr/share/man/man3/Font::TTF::Glat.3 +#usr/share/man/man3/Font::TTF::Gloc.3 +#usr/share/man/man3/Font::TTF::Glyf.3 +#usr/share/man/man3/Font::TTF::Glyph.3 +#usr/share/man/man3/Font::TTF::GrFeat.3 +#usr/share/man/man3/Font::TTF::Hdmx.3 +#usr/share/man/man3/Font::TTF::Head.3 +#usr/share/man/man3/Font::TTF::Hhea.3 +#usr/share/man/man3/Font::TTF::Hmtx.3 +#usr/share/man/man3/Font::TTF::Kern.3 +#usr/share/man/man3/Font::TTF::Kern::ClassArray.3 +#usr/share/man/man3/Font::TTF::Kern::CompactClassArray.3 +#usr/share/man/man3/Font::TTF::Kern::OrderedList.3 +#usr/share/man/man3/Font::TTF::Kern::StateTable.3 +#usr/share/man/man3/Font::TTF::Kern::Subtable.3 +#usr/share/man/man3/Font::TTF::LTSH.3 +#usr/share/man/man3/Font::TTF::Loca.3 +#usr/share/man/man3/Font::TTF::Manual.3 +#usr/share/man/man3/Font::TTF::Maxp.3 +#usr/share/man/man3/Font::TTF::Mort.3 +#usr/share/man/man3/Font::TTF::Mort::Chain.3 +#usr/share/man/man3/Font::TTF::Mort::Contextual.3 +#usr/share/man/man3/Font::TTF::Mort::Insertion.3 +#usr/share/man/man3/Font::TTF::Mort::Ligature.3 +#usr/share/man/man3/Font::TTF::Mort::Noncontextual.3 +#usr/share/man/man3/Font::TTF::Mort::Rearrangement.3 +#usr/share/man/man3/Font::TTF::Mort::Subtable.3 +#usr/share/man/man3/Font::TTF::Name.3 +#usr/share/man/man3/Font::TTF::OS_2.3 +#usr/share/man/man3/Font::TTF::OTTags.3 +#usr/share/man/man3/Font::TTF::OldCmap.3 +#usr/share/man/man3/Font::TTF::OldMort.3 +#usr/share/man/man3/Font::TTF::PCLT.3 +#usr/share/man/man3/Font::TTF::PSNames.3 +#usr/share/man/man3/Font::TTF::Post.3 +#usr/share/man/man3/Font::TTF::Prep.3 +#usr/share/man/man3/Font::TTF::Prop.3 +#usr/share/man/man3/Font::TTF::Segarr.3 +#usr/share/man/man3/Font::TTF::Silf.3 +#usr/share/man/man3/Font::TTF::Sill.3 +#usr/share/man/man3/Font::TTF::Table.3 +#usr/share/man/man3/Font::TTF::Ttc.3 +#usr/share/man/man3/Font::TTF::Ttopen.3 +#usr/share/man/man3/Font::TTF::Useall.3 +#usr/share/man/man3/Font::TTF::Utils.3 +#usr/share/man/man3/Font::TTF::Vhea.3 +#usr/share/man/man3/Font::TTF::Vmtx.3 +#usr/share/man/man3/Font::TTF::Win32.3 +#usr/share/man/man3/Font::TTF::Woff.3 +#usr/share/man/man3/Font::TTF::Woff::MetaData.3 +#usr/share/man/man3/Font::TTF::Woff::PrivateData.3 +#usr/share/man/man3/Font::TTF::XMLparse.3 +#usr/share/man/man3/ttfmod.3 diff --git a/config/rootfiles/common/perl-IO-String b/config/rootfiles/common= /perl-IO-String new file mode 100644 index 0000000..89be911 --- /dev/null +++ b/config/rootfiles/common/perl-IO-String @@ -0,0 +1,4 @@ +usr/lib/perl5/site_perl/5.12.3/IO/String.pm +#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/IO/String +#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/IO/String/.p= acklist +#usr/share/man/man3/IO::String.3 diff --git a/config/rootfiles/packages/perl-PDF-API2 b/config/rootfiles/commo= n/perl-PDF-API2 similarity index 98% rename from config/rootfiles/packages/perl-PDF-API2 rename to config/rootfiles/common/perl-PDF-API2 index 642579a..17dc85a 100644 --- a/config/rootfiles/packages/perl-PDF-API2 +++ b/config/rootfiles/common/perl-PDF-API2 @@ -124,7 +124,9 @@ usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/= Image/GIF.pm usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Image/JPEG.pm usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Image/PNG.pm usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Image/PNM.pm +usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Image/TIFF usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Image/TIFF.pm +usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Image/TIFF/File.pm usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/uniglyph.txt usr/lib/perl5/site_perl/5.12.3/PDF/API2/UniWrap.pm usr/lib/perl5/site_perl/5.12.3/PDF/API2/Util.pm diff --git a/config/rootfiles/common/stage2 b/config/rootfiles/common/stage2 index ec36774..8c6dd40 100644 --- a/config/rootfiles/common/stage2 +++ b/config/rootfiles/common/stage2 @@ -69,6 +69,7 @@ run #sbin #srv #usr/bin +usr/bin/captive-cleanup #usr/bin/perl #usr/include #usr/lib diff --git a/config/rootfiles/common/ubuntu-font-family b/config/rootfiles/co= mmon/ubuntu-font-family new file mode 100644 index 0000000..b9f7c0b --- /dev/null +++ b/config/rootfiles/common/ubuntu-font-family @@ -0,0 +1,13 @@ +usr/share/fonts/Ubuntu-B.ttf +usr/share/fonts/Ubuntu-BI.ttf +usr/share/fonts/Ubuntu-C.ttf +usr/share/fonts/Ubuntu-L.ttf +usr/share/fonts/Ubuntu-LI.ttf +usr/share/fonts/Ubuntu-M.ttf +usr/share/fonts/Ubuntu-MI.ttf +usr/share/fonts/Ubuntu-R.ttf +usr/share/fonts/Ubuntu-RI.ttf +usr/share/fonts/UbuntuMono-B.ttf +usr/share/fonts/UbuntuMono-BI.ttf +usr/share/fonts/UbuntuMono-R.ttf +usr/share/fonts/UbuntuMono-RI.ttf diff --git a/config/rootfiles/common/unbound b/config/rootfiles/common/unbound index 6d153f2..1c39945 100644 --- a/config/rootfiles/common/unbound +++ b/config/rootfiles/common/unbound @@ -11,7 +11,7 @@ etc/unbound/unbound.conf #usr/lib/libunbound.la #usr/lib/libunbound.so usr/lib/libunbound.so.2 -usr/lib/libunbound.so.2.5.5 +usr/lib/libunbound.so.2.5.6 usr/sbin/unbound usr/sbin/unbound-anchor usr/sbin/unbound-checkconf diff --git a/config/rootfiles/common/web-user-interface b/config/rootfiles/co= mmon/web-user-interface index f204f16..d538b8a 100644 --- a/config/rootfiles/common/web-user-interface +++ b/config/rootfiles/common/web-user-interface @@ -8,6 +8,11 @@ srv/web/ipfire/cgi-bin/aliases.cgi srv/web/ipfire/cgi-bin/atm-status.cgi srv/web/ipfire/cgi-bin/backup.cgi srv/web/ipfire/cgi-bin/bluetooth.cgi +#srv/web/ipfire/cgi-bin/captive +srv/web/ipfire/cgi-bin/captive.cgi +srv/web/ipfire/cgi-bin/captive/index.cgi +srv/web/ipfire/cgi-bin/captive/logo.cgi +srv/web/ipfire/cgi-bin/captive/redirect.cgi srv/web/ipfire/cgi-bin/chpasswd.cgi srv/web/ipfire/cgi-bin/connections.cgi srv/web/ipfire/cgi-bin/connscheduler.cgi @@ -23,8 +28,8 @@ srv/web/ipfire/cgi-bin/fireinfo.cgi srv/web/ipfire/cgi-bin/firewall.cgi srv/web/ipfire/cgi-bin/fwhosts.cgi srv/web/ipfire/cgi-bin/geoip-block.cgi -#srv/web/ipfire/cgi-bin/guardian.cgi srv/web/ipfire/cgi-bin/gpl.cgi +#srv/web/ipfire/cgi-bin/guardian.cgi srv/web/ipfire/cgi-bin/gui.cgi srv/web/ipfire/cgi-bin/hardwaregraphs.cgi srv/web/ipfire/cgi-bin/hosts.cgi @@ -89,8 +94,20 @@ srv/web/ipfire/cgi-bin/wirelessclient.cgi srv/web/ipfire/cgi-bin/wlanap.cgi #srv/web/ipfire/html srv/web/ipfire/html/blob.gif +#srv/web/ipfire/html/captive +#srv/web/ipfire/html/captive/assets +srv/web/ipfire/html/captive/assets/Ubuntu-L.ttf +srv/web/ipfire/html/captive/assets/Ubuntu-M.ttf +srv/web/ipfire/html/captive/assets/Ubuntu-R.ttf +srv/web/ipfire/html/captive/assets/bootstrap-grid.min.css +srv/web/ipfire/html/captive/assets/bootstrap-grid.min.css.map +srv/web/ipfire/html/captive/assets/bootstrap-reboot.min.css +srv/web/ipfire/html/captive/assets/bootstrap-reboot.min.css.map +srv/web/ipfire/html/captive/assets/captive.css +srv/web/ipfire/html/captive/assets/favicon.ico +srv/web/ipfire/html/captive/assets/ipfire.png +srv/web/ipfire/html/captive/template.html srv/web/ipfire/html/clwarn.cgi -srv/web/ipfire/html/dial.cgi srv/web/ipfire/html/favicon.ico #srv/web/ipfire/html/images srv/web/ipfire/html/images/IPFire.png diff --git a/config/rootfiles/common/x86_64/stage2 b/config/rootfiles/common/= x86_64/stage2 index 95eff36..2897adc 100644 --- a/config/rootfiles/common/x86_64/stage2 +++ b/config/rootfiles/common/x86_64/stage2 @@ -70,6 +70,7 @@ run #sbin #srv #usr/bin +usr/bin/captive-cleanup #usr/bin/perl #usr/include #usr/lib diff --git a/config/rootfiles/core/114/exclude b/config/rootfiles/core/115/ex= clude similarity index 100% rename from config/rootfiles/core/114/exclude rename to config/rootfiles/core/115/exclude diff --git a/config/rootfiles/core/114/filelists/apache2 b/config/rootfiles/c= ore/115/filelists/apache2 similarity index 100% rename from config/rootfiles/core/114/filelists/apache2 rename to config/rootfiles/core/115/filelists/apache2 diff --git a/config/rootfiles/core/115/filelists/bootstrap b/config/rootfiles= /core/115/filelists/bootstrap new file mode 120000 index 0000000..ed985a6 --- /dev/null +++ b/config/rootfiles/core/115/filelists/bootstrap @@ -0,0 +1 @@ +../../../common/bootstrap \ No newline at end of file diff --git a/config/rootfiles/core/115/filelists/files b/config/rootfiles/cor= e/115/filelists/files new file mode 100644 index 0000000..72c5e5f --- /dev/null +++ b/config/rootfiles/core/115/filelists/files @@ -0,0 +1,31 @@ +etc/system-release +etc/issue +etc/httpd/conf/vhosts.d/captive.conf +etc/httpd/conf/vhosts.d/ipfire-interface.conf +etc/httpd/conf/vhosts.d/ipfire-interface-ssl.conf +etc/rc.d/init.d/firewall +srv/web/ipfire/cgi-bin/captive/index.cgi +srv/web/ipfire/cgi-bin/captive/logo.cgi +srv/web/ipfire/cgi-bin/captive/redirect.cgi +srv/web/ipfire/cgi-bin/captive.cgi +srv/web/ipfire/cgi-bin/extrahd.cgi +srv/web/ipfire/cgi-bin/ovpnmain.cgi +srv/web/ipfire/cgi-bin/proxy.cgi +srv/web/ipfire/cgi-bin/vpnmain.cgi +srv/web/ipfire/html/captive +usr/bin/captive-cleanup +usr/local/bin/backupiso +usr/local/bin/captivectrl +usr/local/bin/httpscert +usr/local/bin/wirelessctrl +var/ipfire/backup/include +var/ipfire/captive +var/ipfire/extrahd/bin/extrahd.pl +var/ipfire/general-functions.pl +var/ipfire/lang.pl +var/ipfire/langs +var/ipfire/menu.d/30-network.menu +var/ipfire/modem-lib.pl +var/ipfire/network-functions.pl +var/ipfire/ovpn/openssl/ovpn.cnf +var/log/httpd/captive diff --git a/config/rootfiles/core/115/filelists/logrotate b/config/rootfiles= /core/115/filelists/logrotate new file mode 120000 index 0000000..bc192c0 --- /dev/null +++ b/config/rootfiles/core/115/filelists/logrotate @@ -0,0 +1 @@ +../../../common/logrotate \ No newline at end of file diff --git a/config/rootfiles/core/115/filelists/openvpn b/config/rootfiles/c= ore/115/filelists/openvpn new file mode 120000 index 0000000..493f3f7 --- /dev/null +++ b/config/rootfiles/core/115/filelists/openvpn @@ -0,0 +1 @@ +../../../common/openvpn \ No newline at end of file diff --git a/config/rootfiles/core/115/filelists/perl-Font-TTF b/config/rootf= iles/core/115/filelists/perl-Font-TTF new file mode 120000 index 0000000..6bb27c3 --- /dev/null +++ b/config/rootfiles/core/115/filelists/perl-Font-TTF @@ -0,0 +1 @@ +../../../common/perl-Font-TTF \ No newline at end of file diff --git a/config/rootfiles/core/115/filelists/perl-IO-String b/config/root= files/core/115/filelists/perl-IO-String new file mode 120000 index 0000000..2953e22 --- /dev/null +++ b/config/rootfiles/core/115/filelists/perl-IO-String @@ -0,0 +1 @@ +../../../common/perl-IO-String \ No newline at end of file diff --git a/config/rootfiles/core/115/filelists/perl-PDF-API2 b/config/rootf= iles/core/115/filelists/perl-PDF-API2 new file mode 120000 index 0000000..8047841 --- /dev/null +++ b/config/rootfiles/core/115/filelists/perl-PDF-API2 @@ -0,0 +1 @@ +../../../common/perl-PDF-API2 \ No newline at end of file diff --git a/config/rootfiles/core/115/filelists/ubuntu-font-family b/config/= rootfiles/core/115/filelists/ubuntu-font-family new file mode 120000 index 0000000..6183519 --- /dev/null +++ b/config/rootfiles/core/115/filelists/ubuntu-font-family @@ -0,0 +1 @@ +../../../common/ubuntu-font-family \ No newline at end of file diff --git a/config/rootfiles/core/115/filelists/wpa_supplicant b/config/root= files/core/115/filelists/wpa_supplicant new file mode 120000 index 0000000..1d04c03 --- /dev/null +++ b/config/rootfiles/core/115/filelists/wpa_supplicant @@ -0,0 +1 @@ +../../../common/wpa_supplicant \ No newline at end of file diff --git a/config/rootfiles/core/114/meta b/config/rootfiles/core/115/meta similarity index 100% rename from config/rootfiles/core/114/meta rename to config/rootfiles/core/115/meta diff --git a/config/rootfiles/core/115/update.sh b/config/rootfiles/core/115/= update.sh new file mode 100644 index 0000000..61634a7 --- /dev/null +++ b/config/rootfiles/core/115/update.sh @@ -0,0 +1,97 @@ +#!/bin/bash +############################################################################ +# # +# This file is part of the IPFire Firewall. # +# # +# IPFire is free software; you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation; either version 3 of the License, or # +# (at your option) any later version. # +# # +# IPFire is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with IPFire; if not, write to the Free Software # +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # +# # +# Copyright (C) 2017 IPFire-Team . = # +# # +############################################################################ +# +. /opt/pakfire/lib/functions.sh +/usr/local/bin/backupctrl exclude >/dev/null 2>&1 + +core=3D115 + +# Remove old core updates from pakfire cache to save space... +for (( i=3D1; i<=3D$core; i++ )); do + rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire +done + +# Stop services +openvpnctrl -k +openvpnctrl -kn2n + + +# Extract files +extract_files + +# Remove files +rm -vf \ + /srv/web/ipfire/html/dial.cgi + +# update linker config +ldconfig + +# Update Language cache +/usr/local/bin/update-lang-cache + +# generate ECDSA key on existing installations to prevent Apache from crashi= ng +/usr/local/bin/httpscert + +# Start services +/etc/rc.d/init.d/apache2 restart +openvpnctrl -s +openvpnctrl -sn2n + +grep -q "captivectrl" /var/spool/cron/root.orig || cat <> /var/spool/c= ron/root.orig +# Cleanup captive clients +%hourly * /usr/bin/captive-cleanup + +# Reload captive firewall rules +%nightly * 23-1 /usr/local/bin/captivectrl >/dev/null +EOF +fcrontab -z + +# Load captive portal configuration +/etc/rc.d/init.d/firewall restart + +# Regenerate IPsec configuration +sudo -u nobody /srv/web/ipfire/cgi-bin/vpnmain.cgi +if grep -q "ENABLED=3Don" /var/ipfire/vpn/settings; then + /etc/init.d/ipsec restart +fi + +# Let pakfire forget the perl-PDF-API2 package +rm -fv /opt/pakfire/db/rootfiles/perl-PDF-API2 +rm -fv /opt/pakfire/db/*/meta-perl-PDF-API2 + +# This update need a reboot... +#touch /var/run/need_reboot + +# Finish +/etc/init.d/fireinfo start +sendprofile + +# Update grub config to display new core version +if [ -e /boot/grub/grub.cfg ]; then + grub-mkconfig -o /boot/grub/grub.cfg +fi + +sync + +# Don't report the exitcode last command +exit 0 diff --git a/config/rootfiles/oldcore/114/exclude b/config/rootfiles/oldcore/= 114/exclude new file mode 100644 index 0000000..d6fd053 --- /dev/null +++ b/config/rootfiles/oldcore/114/exclude @@ -0,0 +1,30 @@ +boot/config.txt +boot/grub/grub.cfg +boot/grub/grubenv +etc/alternatives +etc/collectd.custom +etc/default/grub +etc/ipsec.conf +etc/ipsec.secrets +etc/ipsec.user.conf +etc/ipsec.user.secrets +etc/localtime +etc/shadow +etc/snort/snort.conf +etc/ssh/ssh_config +etc/ssh/sshd_config +etc/ssl/openssl.cnf +etc/sudoers +etc/sysconfig/firewall.local +etc/sysconfig/rc.local +etc/udev/rules.d/30-persistent-network.rules +srv/web/ipfire/html/proxy.pac +var/ipfire/dma +var/ipfire/time +var/ipfire/ovpn +var/lib/alternatives +var/log/cache +var/log/dhcpcd.log +var/log/messages +var/state/dhcp/dhcpd.leases +var/updatecache diff --git a/config/rootfiles/oldcore/114/filelists/apache2 b/config/rootfile= s/oldcore/114/filelists/apache2 new file mode 120000 index 0000000..eef95ef --- /dev/null +++ b/config/rootfiles/oldcore/114/filelists/apache2 @@ -0,0 +1 @@ +../../../common/apache2 \ No newline at end of file diff --git a/config/rootfiles/core/114/filelists/apr b/config/rootfiles/oldco= re/114/filelists/apr similarity index 100% rename from config/rootfiles/core/114/filelists/apr rename to config/rootfiles/oldcore/114/filelists/apr diff --git a/config/rootfiles/core/114/filelists/aprutil b/config/rootfiles/o= ldcore/114/filelists/aprutil similarity index 100% rename from config/rootfiles/core/114/filelists/aprutil rename to config/rootfiles/oldcore/114/filelists/aprutil diff --git a/config/rootfiles/core/114/filelists/files b/config/rootfiles/old= core/114/filelists/files similarity index 100% rename from config/rootfiles/core/114/filelists/files rename to config/rootfiles/oldcore/114/filelists/files diff --git a/config/rootfiles/core/114/filelists/gnutls b/config/rootfiles/ol= dcore/114/filelists/gnutls similarity index 100% rename from config/rootfiles/core/114/filelists/gnutls rename to config/rootfiles/oldcore/114/filelists/gnutls diff --git a/config/rootfiles/core/114/filelists/hdparm b/config/rootfiles/ol= dcore/114/filelists/hdparm similarity index 100% rename from config/rootfiles/core/114/filelists/hdparm rename to config/rootfiles/oldcore/114/filelists/hdparm diff --git a/config/rootfiles/core/114/filelists/i586/strongswan-padlock b/co= nfig/rootfiles/oldcore/114/filelists/i586/strongswan-padlock similarity index 100% rename from config/rootfiles/core/114/filelists/i586/strongswan-padlock rename to config/rootfiles/oldcore/114/filelists/i586/strongswan-padlock diff --git a/config/rootfiles/core/114/filelists/php b/config/rootfiles/oldco= re/114/filelists/php similarity index 100% rename from config/rootfiles/core/114/filelists/php rename to config/rootfiles/oldcore/114/filelists/php diff --git a/config/rootfiles/core/114/filelists/squid b/config/rootfiles/old= core/114/filelists/squid similarity index 100% rename from config/rootfiles/core/114/filelists/squid rename to config/rootfiles/oldcore/114/filelists/squid diff --git a/config/rootfiles/core/114/filelists/strongswan b/config/rootfile= s/oldcore/114/filelists/strongswan similarity index 100% rename from config/rootfiles/core/114/filelists/strongswan rename to config/rootfiles/oldcore/114/filelists/strongswan diff --git a/config/rootfiles/core/114/filelists/unbound b/config/rootfiles/o= ldcore/114/filelists/unbound similarity index 100% rename from config/rootfiles/core/114/filelists/unbound rename to config/rootfiles/oldcore/114/filelists/unbound diff --git a/config/rootfiles/oldcore/114/meta b/config/rootfiles/oldcore/114= /meta new file mode 100644 index 0000000..d547fa8 --- /dev/null +++ b/config/rootfiles/oldcore/114/meta @@ -0,0 +1 @@ +DEPS=3D"" diff --git a/config/rootfiles/core/114/update.sh b/config/rootfiles/oldcore/1= 14/update.sh similarity index 100% rename from config/rootfiles/core/114/update.sh rename to config/rootfiles/oldcore/114/update.sh diff --git a/config/xen-image/xen-image-maker.sh b/config/xen-image/xen-image= -maker.sh index d10ea21..7c70a64 100644 --- a/config/xen-image/xen-image-maker.sh +++ b/config/xen-image/xen-image-maker.sh @@ -38,7 +38,7 @@ FSTYPE=3Dext3 ############################################################################= ## =20 SOURCEISO=3D$SNAME-$VERSION.i586-full-core$CORE.iso -HTTPDIR=3Dhttp://download.ipfire.org/releases/ipfire-2.x/$VERSION-core$CORE +HTTPDIR=3Dhttps://downloads.ipfire.org/releases/ipfire-2.x/$VERSION-core$CORE =20 TMPDIR=3D./ipfire-tmp ISODIR=3D$TMPDIR/iso @@ -54,7 +54,7 @@ KERNEL=3Dlinux-$KERN_TYPE-$KVER-$KERN_PACK.ipfire if [ "$XEN_IMG_TYPE" =3D=3D "xva" ]; then # download xva.py if it not exist. if [ ! -e xva.py ]; then - wget http://source.ipfire.org/source-2.x/xva.py + wget https://source.ipfire.org/source-2.x/xva.py fi # XenCenter use other devicenames and # xvdd seems to be reserved (converter bug?). diff --git a/doc/language_issues.de b/doc/language_issues.de index b9f7747..0443130 100644 --- a/doc/language_issues.de +++ b/doc/language_issues.de @@ -1,4 +1,25 @@ WARNING: translation string unused: Async logging enabled +WARNING: translation string unused: Captive 1day +WARNING: translation string unused: Captive 1month +WARNING: translation string unused: Captive 1week +WARNING: translation string unused: Captive activate +WARNING: translation string unused: Captive auth_lic +WARNING: translation string unused: Captive auth_vou +WARNING: translation string unused: Captive err doublevoucher +WARNING: translation string unused: Captive expire +WARNING: translation string unused: Captive genvoucher +WARNING: translation string unused: Captive invalid logosize +WARNING: translation string unused: Captive invalid_voucher +WARNING: translation string unused: Captive ip +WARNING: translation string unused: Captive logo_set +WARNING: translation string unused: Captive logo_upload +WARNING: translation string unused: Captive logo_upload1 +WARNING: translation string unused: Captive noexpiretime +WARNING: translation string unused: Captive nr +WARNING: translation string unused: Captive time +WARNING: translation string unused: Captive voactive +WARNING: translation string unused: Captive voucher +WARNING: translation string unused: Captive vout WARNING: translation string unused: ConnSched scheduler WARNING: translation string unused: ConnSched select profile WARNING: translation string unused: HDD temperature @@ -665,9 +686,11 @@ WARNING: translation string unused: xtaccess all error WARNING: translation string unused: xtaccess bad transfert WARNING: translation string unused: year-graph WARNING: translation string unused: yearly firewallhits +WARNING: untranslated string: 24 hours WARNING: untranslated string: Scan for Songs WARNING: untranslated string: addons WARNING: untranslated string: bytes +WARNING: untranslated string: captive WARNING: untranslated string: community rules WARNING: untranslated string: dead peer detection WARNING: untranslated string: emerging rules @@ -714,11 +737,15 @@ WARNING: untranslated string: ike lifetime should be be= tween 1 and 8 hours WARNING: untranslated string: info messages WARNING: untranslated string: no data WARNING: untranslated string: none +WARNING: untranslated string: one hour +WARNING: untranslated string: one month +WARNING: untranslated string: one week WARNING: untranslated string: qos add subclass WARNING: untranslated string: route config changed WARNING: untranslated string: routing config added WARNING: untranslated string: routing config changed WARNING: untranslated string: routing table WARNING: untranslated string: show tls-auth key +WARNING: untranslated string: unlimited WARNING: untranslated string: vpn force mobike WARNING: untranslated string: vpn statistics n2n diff --git a/doc/language_issues.en b/doc/language_issues.en index f2f6ab7..eebb5d6 100644 --- a/doc/language_issues.en +++ b/doc/language_issues.en @@ -1,4 +1,26 @@ WARNING: translation string unused: Async logging enabled +WARNING: translation string unused: Captive 1day +WARNING: translation string unused: Captive 1month +WARNING: translation string unused: Captive 1week +WARNING: translation string unused: Captive activate +WARNING: translation string unused: Captive auth_lic +WARNING: translation string unused: Captive auth_vou +WARNING: translation string unused: Captive err doublevoucher +WARNING: translation string unused: Captive expire +WARNING: translation string unused: Captive heading terms +WARNING: translation string unused: Captive heading voucher +WARNING: translation string unused: Captive invalid coupon +WARNING: translation string unused: Captive invalid logosize +WARNING: translation string unused: Captive invalid_voucher +WARNING: translation string unused: Captive ip +WARNING: translation string unused: Captive logo_set +WARNING: translation string unused: Captive noexpiretime +WARNING: translation string unused: Captive nr +WARNING: translation string unused: Captive please enter a coupon code +WARNING: translation string unused: Captive time +WARNING: translation string unused: Captive voactive +WARNING: translation string unused: Captive voucher +WARNING: translation string unused: Captive vout WARNING: translation string unused: ConnSched scheduler WARNING: translation string unused: ConnSched select profile WARNING: translation string unused: HDD temperature @@ -701,8 +723,10 @@ WARNING: translation string unused: xtaccess all error WARNING: translation string unused: xtaccess bad transfert WARNING: translation string unused: year-graph WARNING: translation string unused: yearly firewallhits +WARNING: untranslated string: Captive clients WARNING: untranslated string: Scan for Songs WARNING: untranslated string: bytes +WARNING: untranslated string: captive WARNING: untranslated string: fwhost cust geoipgrp WARNING: untranslated string: fwhost err hostip WARNING: untranslated string: guardian block a host diff --git a/doc/language_issues.es b/doc/language_issues.es index d34d63f..4ade5d5 100644 --- a/doc/language_issues.es +++ b/doc/language_issues.es @@ -613,11 +613,46 @@ WARNING: translation string unused: web proxy configura= tion WARNING: translation string unused: week-graph WARNING: translation string unused: weekly firewallhits WARNING: translation string unused: wildcards +WARNING: translation string unused: wlanap access point WARNING: translation string unused: wlanap wlan services WARNING: translation string unused: xtaccess all error WARNING: translation string unused: xtaccess bad transfert WARNING: translation string unused: year-graph WARNING: translation string unused: yearly firewallhits +WARNING: untranslated string: 24 hours +WARNING: untranslated string: Captive ACTIVATE +WARNING: untranslated string: Captive GAIN ACCESS +WARNING: untranslated string: Captive WiFi coupon +WARNING: untranslated string: Captive activated +WARNING: untranslated string: Captive active on +WARNING: untranslated string: Captive agree tac +WARNING: untranslated string: Captive authentication +WARNING: untranslated string: Captive brand color +WARNING: untranslated string: Captive branding +WARNING: untranslated string: Captive client session expiry time +WARNING: untranslated string: Captive clients +WARNING: untranslated string: Captive config +WARNING: untranslated string: Captive coupon +WARNING: untranslated string: Captive expiry time +WARNING: untranslated string: Captive export coupons +WARNING: untranslated string: Captive generate coupons +WARNING: untranslated string: Captive generated coupon no +WARNING: untranslated string: Captive issued coupons +WARNING: untranslated string: Captive logo uploaded +WARNING: untranslated string: Captive mac +WARNING: untranslated string: Captive menu +WARNING: untranslated string: Captive nolimit +WARNING: untranslated string: Captive please accept the terms and conditions +WARNING: untranslated string: Captive portal +WARNING: untranslated string: Captive portal coupons +WARNING: untranslated string: Captive terms +WARNING: untranslated string: Captive terms short +WARNING: untranslated string: Captive title +WARNING: untranslated string: Captive upload logo +WARNING: untranslated string: Captive upload logo recommendations +WARNING: untranslated string: Captive valid for +WARNING: untranslated string: Captive vouchervalid +WARNING: untranslated string: Captive wrong ext WARNING: untranslated string: ConnSched dial WARNING: untranslated string: ConnSched hangup WARNING: untranslated string: ConnSched reboot @@ -649,6 +684,7 @@ WARNING: untranslated string: bit WARNING: untranslated string: block WARNING: untranslated string: bytes WARNING: untranslated string: capabilities +WARNING: untranslated string: captive WARNING: untranslated string: ccd add WARNING: untranslated string: ccd choose net WARNING: untranslated string: ccd client options @@ -729,6 +765,7 @@ WARNING: untranslated string: drop action1 WARNING: untranslated string: drop action2 WARNING: untranslated string: drop forward WARNING: untranslated string: drop outgoing +WARNING: untranslated string: eight hours WARNING: untranslated string: email config WARNING: untranslated string: email empty field WARNING: untranslated string: email invalid @@ -776,6 +813,7 @@ WARNING: untranslated string: firewall logs country WARNING: untranslated string: firewall rules WARNING: untranslated string: first WARNING: untranslated string: flag +WARNING: untranslated string: four hours WARNING: untranslated string: fw default drop WARNING: untranslated string: fw settings WARNING: untranslated string: fw settings color @@ -1019,6 +1057,10 @@ WARNING: untranslated string: no hardware random numbe= r generator WARNING: untranslated string: none WARNING: untranslated string: not a valid dh key WARNING: untranslated string: notice +WARNING: untranslated string: one hour +WARNING: untranslated string: one month +WARNING: untranslated string: one week +WARNING: untranslated string: one year WARNING: untranslated string: openvpn default WARNING: untranslated string: openvpn destination port used WARNING: untranslated string: openvpn fragment allowed with udp @@ -1140,9 +1182,12 @@ WARNING: untranslated string: tor traffic limit hard WARNING: untranslated string: tor traffic limit soft WARNING: untranslated string: tor traffic read written WARNING: untranslated string: tor use exit nodes +WARNING: untranslated string: twelve hours +WARNING: untranslated string: two weeks WARNING: untranslated string: unblock WARNING: untranslated string: unblock all WARNING: untranslated string: uncheck all +WARNING: untranslated string: unlimited WARNING: untranslated string: uplink WARNING: untranslated string: uplink bit rate WARNING: untranslated string: upload dh key @@ -1208,4 +1253,6 @@ WARNING: untranslated string: wlan client wpa mode ccmp= ccmp WARNING: untranslated string: wlan client wpa mode ccmp tkip WARNING: untranslated string: wlan client wpa mode tkip tkip WARNING: untranslated string: wlan clients +WARNING: untranslated string: wlanap +WARNING: untranslated string: wlanap configuration WARNING: untranslated string: wlanap country diff --git a/doc/language_issues.fr b/doc/language_issues.fr index 4a91676..eae0337 100644 --- a/doc/language_issues.fr +++ b/doc/language_issues.fr @@ -628,6 +628,40 @@ WARNING: translation string unused: xtaccess all error WARNING: translation string unused: xtaccess bad transfert WARNING: translation string unused: year-graph WARNING: translation string unused: yearly firewallhits +WARNING: untranslated string: 24 hours +WARNING: untranslated string: Captive ACTIVATE +WARNING: untranslated string: Captive GAIN ACCESS +WARNING: untranslated string: Captive WiFi coupon +WARNING: untranslated string: Captive activated +WARNING: untranslated string: Captive active on +WARNING: untranslated string: Captive agree tac +WARNING: untranslated string: Captive authentication +WARNING: untranslated string: Captive brand color +WARNING: untranslated string: Captive branding +WARNING: untranslated string: Captive client session expiry time +WARNING: untranslated string: Captive clients +WARNING: untranslated string: Captive config +WARNING: untranslated string: Captive coupon +WARNING: untranslated string: Captive expiry time +WARNING: untranslated string: Captive export coupons +WARNING: untranslated string: Captive generate coupons +WARNING: untranslated string: Captive generated coupon no +WARNING: untranslated string: Captive issued coupons +WARNING: untranslated string: Captive logo uploaded +WARNING: untranslated string: Captive mac +WARNING: untranslated string: Captive menu +WARNING: untranslated string: Captive nolimit +WARNING: untranslated string: Captive please accept the terms and conditions +WARNING: untranslated string: Captive portal +WARNING: untranslated string: Captive portal coupons +WARNING: untranslated string: Captive terms +WARNING: untranslated string: Captive terms short +WARNING: untranslated string: Captive title +WARNING: untranslated string: Captive upload logo +WARNING: untranslated string: Captive upload logo recommendations +WARNING: untranslated string: Captive valid for +WARNING: untranslated string: Captive vouchervalid +WARNING: untranslated string: Captive wrong ext WARNING: untranslated string: ConnSched dial WARNING: untranslated string: ConnSched hangup WARNING: untranslated string: ConnSched reboot @@ -658,6 +692,7 @@ WARNING: untranslated string: bit WARNING: untranslated string: block WARNING: untranslated string: bytes WARNING: untranslated string: capabilities +WARNING: untranslated string: captive WARNING: untranslated string: ccd add WARNING: untranslated string: ccd choose net WARNING: untranslated string: ccd client options @@ -739,6 +774,7 @@ WARNING: untranslated string: drop action1 WARNING: untranslated string: drop action2 WARNING: untranslated string: drop forward WARNING: untranslated string: drop outgoing +WARNING: untranslated string: eight hours WARNING: untranslated string: email config WARNING: untranslated string: email empty field WARNING: untranslated string: email invalid @@ -786,6 +822,7 @@ WARNING: untranslated string: firewall logs country WARNING: untranslated string: firewall rules WARNING: untranslated string: first WARNING: untranslated string: flag +WARNING: untranslated string: four hours WARNING: untranslated string: fw default drop WARNING: untranslated string: fw settings WARNING: untranslated string: fw settings color @@ -1038,6 +1075,10 @@ WARNING: untranslated string: not a valid dh key WARNING: untranslated string: notice WARNING: untranslated string: ntp common settings WARNING: untranslated string: ntp sync +WARNING: untranslated string: one hour +WARNING: untranslated string: one month +WARNING: untranslated string: one week +WARNING: untranslated string: one year WARNING: untranslated string: openvpn default WARNING: untranslated string: openvpn destination port used WARNING: untranslated string: openvpn fragment allowed with udp @@ -1154,9 +1195,12 @@ WARNING: untranslated string: tor traffic limit hard WARNING: untranslated string: tor traffic limit soft WARNING: untranslated string: tor traffic read written WARNING: untranslated string: tor use exit nodes +WARNING: untranslated string: twelve hours +WARNING: untranslated string: two weeks WARNING: untranslated string: unblock WARNING: untranslated string: unblock all WARNING: untranslated string: uncheck all +WARNING: untranslated string: unlimited WARNING: untranslated string: uplink WARNING: untranslated string: uplink bit rate WARNING: untranslated string: upload dh key @@ -1225,8 +1269,9 @@ WARNING: untranslated string: wlan client wpa mode ccmp= ccmp WARNING: untranslated string: wlan client wpa mode ccmp tkip WARNING: untranslated string: wlan client wpa mode tkip tkip WARNING: untranslated string: wlan clients -WARNING: untranslated string: wlanap access point +WARNING: untranslated string: wlanap WARNING: untranslated string: wlanap channel +WARNING: untranslated string: wlanap configuration WARNING: untranslated string: wlanap country WARNING: untranslated string: wlanap debugging WARNING: untranslated string: wlanap del interface diff --git a/doc/language_issues.it b/doc/language_issues.it index 0baf400..13508b6 100644 --- a/doc/language_issues.it +++ b/doc/language_issues.it @@ -690,11 +690,46 @@ WARNING: translation string unused: web proxy configura= tion WARNING: translation string unused: week-graph WARNING: translation string unused: weekly firewallhits WARNING: translation string unused: wildcards +WARNING: translation string unused: wlanap access point WARNING: translation string unused: wlanap wlan services WARNING: translation string unused: xtaccess all error WARNING: translation string unused: xtaccess bad transfert WARNING: translation string unused: year-graph WARNING: translation string unused: yearly firewallhits +WARNING: untranslated string: 24 hours +WARNING: untranslated string: Captive ACTIVATE +WARNING: untranslated string: Captive GAIN ACCESS +WARNING: untranslated string: Captive WiFi coupon +WARNING: untranslated string: Captive activated +WARNING: untranslated string: Captive active on +WARNING: untranslated string: Captive agree tac +WARNING: untranslated string: Captive authentication +WARNING: untranslated string: Captive brand color +WARNING: untranslated string: Captive branding +WARNING: untranslated string: Captive client session expiry time +WARNING: untranslated string: Captive clients +WARNING: untranslated string: Captive config +WARNING: untranslated string: Captive coupon +WARNING: untranslated string: Captive expiry time +WARNING: untranslated string: Captive export coupons +WARNING: untranslated string: Captive generate coupons +WARNING: untranslated string: Captive generated coupon no +WARNING: untranslated string: Captive issued coupons +WARNING: untranslated string: Captive logo uploaded +WARNING: untranslated string: Captive mac +WARNING: untranslated string: Captive menu +WARNING: untranslated string: Captive nolimit +WARNING: untranslated string: Captive please accept the terms and conditions +WARNING: untranslated string: Captive portal +WARNING: untranslated string: Captive portal coupons +WARNING: untranslated string: Captive terms +WARNING: untranslated string: Captive terms short +WARNING: untranslated string: Captive title +WARNING: untranslated string: Captive upload logo +WARNING: untranslated string: Captive upload logo recommendations +WARNING: untranslated string: Captive valid for +WARNING: untranslated string: Captive vouchervalid +WARNING: untranslated string: Captive wrong ext WARNING: untranslated string: MTU settings WARNING: untranslated string: Number of Countries for the pie chart WARNING: untranslated string: Scan for Songs @@ -707,6 +742,7 @@ WARNING: untranslated string: advproxy group required WARNING: untranslated string: application layer gateways WARNING: untranslated string: block WARNING: untranslated string: bytes +WARNING: untranslated string: captive WARNING: untranslated string: check all WARNING: untranslated string: dhcp dns enable update WARNING: untranslated string: dhcp dns key name @@ -715,6 +751,7 @@ WARNING: untranslated string: dhcp dns update algo WARNING: untranslated string: dhcp dns update secret WARNING: untranslated string: dl client arch insecure WARNING: untranslated string: dnssec disabled warning +WARNING: untranslated string: eight hours WARNING: untranslated string: email config WARNING: untranslated string: email empty field WARNING: untranslated string: email invalid @@ -737,6 +774,7 @@ WARNING: untranslated string: firewall graph port WARNING: untranslated string: firewall log country WARNING: untranslated string: firewall log ip WARNING: untranslated string: firewall log port +WARNING: untranslated string: four hours WARNING: untranslated string: fwdfw err concon WARNING: untranslated string: fwdfw err ratecon WARNING: untranslated string: fwdfw limitconcon @@ -808,6 +846,10 @@ WARNING: untranslated string: masquerading enabled WARNING: untranslated string: messages WARNING: untranslated string: no data WARNING: untranslated string: none +WARNING: untranslated string: one hour +WARNING: untranslated string: one month +WARNING: untranslated string: one week +WARNING: untranslated string: one year WARNING: untranslated string: outgoing compression in bytes per second WARNING: untranslated string: outgoing overhead in bytes per second WARNING: untranslated string: ovpn add conf @@ -822,9 +864,12 @@ WARNING: untranslated string: routing table WARNING: untranslated string: samba join a domain WARNING: untranslated string: samba join domain WARNING: untranslated string: search +WARNING: untranslated string: twelve hours +WARNING: untranslated string: two weeks WARNING: untranslated string: unblock WARNING: untranslated string: unblock all WARNING: untranslated string: uncheck all +WARNING: untranslated string: unlimited WARNING: untranslated string: uplink bit rate WARNING: untranslated string: vpn broken WARNING: untranslated string: vpn connecting @@ -852,3 +897,5 @@ WARNING: untranslated string: wlan client method WARNING: untranslated string: wlan client password WARNING: untranslated string: wlan client tls cipher WARNING: untranslated string: wlan client tls version +WARNING: untranslated string: wlanap +WARNING: untranslated string: wlanap configuration diff --git a/doc/language_issues.nl b/doc/language_issues.nl index 4f64b5d..74590a2 100644 --- a/doc/language_issues.nl +++ b/doc/language_issues.nl @@ -686,11 +686,46 @@ WARNING: translation string unused: web proxy configura= tion WARNING: translation string unused: week-graph WARNING: translation string unused: weekly firewallhits WARNING: translation string unused: wildcards +WARNING: translation string unused: wlanap access point WARNING: translation string unused: wlanap wlan services WARNING: translation string unused: xtaccess all error WARNING: translation string unused: xtaccess bad transfert WARNING: translation string unused: year-graph WARNING: translation string unused: yearly firewallhits +WARNING: untranslated string: 24 hours +WARNING: untranslated string: Captive ACTIVATE +WARNING: untranslated string: Captive GAIN ACCESS +WARNING: untranslated string: Captive WiFi coupon +WARNING: untranslated string: Captive activated +WARNING: untranslated string: Captive active on +WARNING: untranslated string: Captive agree tac +WARNING: untranslated string: Captive authentication +WARNING: untranslated string: Captive brand color +WARNING: untranslated string: Captive branding +WARNING: untranslated string: Captive client session expiry time +WARNING: untranslated string: Captive clients +WARNING: untranslated string: Captive config +WARNING: untranslated string: Captive coupon +WARNING: untranslated string: Captive expiry time +WARNING: untranslated string: Captive export coupons +WARNING: untranslated string: Captive generate coupons +WARNING: untranslated string: Captive generated coupon no +WARNING: untranslated string: Captive issued coupons +WARNING: untranslated string: Captive logo uploaded +WARNING: untranslated string: Captive mac +WARNING: untranslated string: Captive menu +WARNING: untranslated string: Captive nolimit +WARNING: untranslated string: Captive please accept the terms and conditions +WARNING: untranslated string: Captive portal +WARNING: untranslated string: Captive portal coupons +WARNING: untranslated string: Captive terms +WARNING: untranslated string: Captive terms short +WARNING: untranslated string: Captive title +WARNING: untranslated string: Captive upload logo +WARNING: untranslated string: Captive upload logo recommendations +WARNING: untranslated string: Captive valid for +WARNING: untranslated string: Captive vouchervalid +WARNING: untranslated string: Captive wrong ext WARNING: untranslated string: MTU settings WARNING: untranslated string: Number of Countries for the pie chart WARNING: untranslated string: Scan for Songs @@ -706,6 +741,7 @@ WARNING: untranslated string: atm device WARNING: untranslated string: block WARNING: untranslated string: bytes WARNING: untranslated string: capabilities +WARNING: untranslated string: captive WARNING: untranslated string: check all WARNING: untranslated string: default WARNING: untranslated string: dh @@ -727,6 +763,7 @@ WARNING: untranslated string: dnssec not supported WARNING: untranslated string: dnssec validating WARNING: untranslated string: download tls-auth key WARNING: untranslated string: drop outgoing +WARNING: untranslated string: eight hours WARNING: untranslated string: email config WARNING: untranslated string: email empty field WARNING: untranslated string: email invalid @@ -750,6 +787,7 @@ WARNING: untranslated string: firewall log country WARNING: untranslated string: firewall log ip WARNING: untranslated string: firewall log port WARNING: untranslated string: firewall logs country +WARNING: untranslated string: four hours WARNING: untranslated string: fwdfw err concon WARNING: untranslated string: fwdfw err ratecon WARNING: untranslated string: fwdfw limitconcon @@ -840,6 +878,10 @@ WARNING: untranslated string: nameserver WARNING: untranslated string: no data WARNING: untranslated string: none WARNING: untranslated string: not a valid dh key +WARNING: untranslated string: one hour +WARNING: untranslated string: one month +WARNING: untranslated string: one week +WARNING: untranslated string: one year WARNING: untranslated string: outgoing compression in bytes per second WARNING: untranslated string: outgoing overhead in bytes per second WARNING: untranslated string: ovpn add conf @@ -868,9 +910,12 @@ WARNING: untranslated string: show tls-auth key WARNING: untranslated string: software version WARNING: untranslated string: source ip country WARNING: untranslated string: ta key +WARNING: untranslated string: twelve hours +WARNING: untranslated string: two weeks WARNING: untranslated string: unblock WARNING: untranslated string: unblock all WARNING: untranslated string: uncheck all +WARNING: untranslated string: unlimited WARNING: untranslated string: uplink bit rate WARNING: untranslated string: upload dh key WARNING: untranslated string: vendor @@ -900,3 +945,5 @@ WARNING: untranslated string: wlan client method WARNING: untranslated string: wlan client password WARNING: untranslated string: wlan client tls cipher WARNING: untranslated string: wlan client tls version +WARNING: untranslated string: wlanap +WARNING: untranslated string: wlanap configuration diff --git a/doc/language_issues.pl b/doc/language_issues.pl index d34d63f..4ade5d5 100644 --- a/doc/language_issues.pl +++ b/doc/language_issues.pl @@ -613,11 +613,46 @@ WARNING: translation string unused: web proxy configura= tion WARNING: translation string unused: week-graph WARNING: translation string unused: weekly firewallhits WARNING: translation string unused: wildcards +WARNING: translation string unused: wlanap access point WARNING: translation string unused: wlanap wlan services WARNING: translation string unused: xtaccess all error WARNING: translation string unused: xtaccess bad transfert WARNING: translation string unused: year-graph WARNING: translation string unused: yearly firewallhits +WARNING: untranslated string: 24 hours +WARNING: untranslated string: Captive ACTIVATE +WARNING: untranslated string: Captive GAIN ACCESS +WARNING: untranslated string: Captive WiFi coupon +WARNING: untranslated string: Captive activated +WARNING: untranslated string: Captive active on +WARNING: untranslated string: Captive agree tac +WARNING: untranslated string: Captive authentication +WARNING: untranslated string: Captive brand color +WARNING: untranslated string: Captive branding +WARNING: untranslated string: Captive client session expiry time +WARNING: untranslated string: Captive clients +WARNING: untranslated string: Captive config +WARNING: untranslated string: Captive coupon +WARNING: untranslated string: Captive expiry time +WARNING: untranslated string: Captive export coupons +WARNING: untranslated string: Captive generate coupons +WARNING: untranslated string: Captive generated coupon no +WARNING: untranslated string: Captive issued coupons +WARNING: untranslated string: Captive logo uploaded +WARNING: untranslated string: Captive mac +WARNING: untranslated string: Captive menu +WARNING: untranslated string: Captive nolimit +WARNING: untranslated string: Captive please accept the terms and conditions +WARNING: untranslated string: Captive portal +WARNING: untranslated string: Captive portal coupons +WARNING: untranslated string: Captive terms +WARNING: untranslated string: Captive terms short +WARNING: untranslated string: Captive title +WARNING: untranslated string: Captive upload logo +WARNING: untranslated string: Captive upload logo recommendations +WARNING: untranslated string: Captive valid for +WARNING: untranslated string: Captive vouchervalid +WARNING: untranslated string: Captive wrong ext WARNING: untranslated string: ConnSched dial WARNING: untranslated string: ConnSched hangup WARNING: untranslated string: ConnSched reboot @@ -649,6 +684,7 @@ WARNING: untranslated string: bit WARNING: untranslated string: block WARNING: untranslated string: bytes WARNING: untranslated string: capabilities +WARNING: untranslated string: captive WARNING: untranslated string: ccd add WARNING: untranslated string: ccd choose net WARNING: untranslated string: ccd client options @@ -729,6 +765,7 @@ WARNING: untranslated string: drop action1 WARNING: untranslated string: drop action2 WARNING: untranslated string: drop forward WARNING: untranslated string: drop outgoing +WARNING: untranslated string: eight hours WARNING: untranslated string: email config WARNING: untranslated string: email empty field WARNING: untranslated string: email invalid @@ -776,6 +813,7 @@ WARNING: untranslated string: firewall logs country WARNING: untranslated string: firewall rules WARNING: untranslated string: first WARNING: untranslated string: flag +WARNING: untranslated string: four hours WARNING: untranslated string: fw default drop WARNING: untranslated string: fw settings WARNING: untranslated string: fw settings color @@ -1019,6 +1057,10 @@ WARNING: untranslated string: no hardware random numbe= r generator WARNING: untranslated string: none WARNING: untranslated string: not a valid dh key WARNING: untranslated string: notice +WARNING: untranslated string: one hour +WARNING: untranslated string: one month +WARNING: untranslated string: one week +WARNING: untranslated string: one year WARNING: untranslated string: openvpn default WARNING: untranslated string: openvpn destination port used WARNING: untranslated string: openvpn fragment allowed with udp @@ -1140,9 +1182,12 @@ WARNING: untranslated string: tor traffic limit hard WARNING: untranslated string: tor traffic limit soft WARNING: untranslated string: tor traffic read written WARNING: untranslated string: tor use exit nodes +WARNING: untranslated string: twelve hours +WARNING: untranslated string: two weeks WARNING: untranslated string: unblock WARNING: untranslated string: unblock all WARNING: untranslated string: uncheck all +WARNING: untranslated string: unlimited WARNING: untranslated string: uplink WARNING: untranslated string: uplink bit rate WARNING: untranslated string: upload dh key @@ -1208,4 +1253,6 @@ WARNING: untranslated string: wlan client wpa mode ccmp= ccmp WARNING: untranslated string: wlan client wpa mode ccmp tkip WARNING: untranslated string: wlan client wpa mode tkip tkip WARNING: untranslated string: wlan clients +WARNING: untranslated string: wlanap +WARNING: untranslated string: wlanap configuration WARNING: untranslated string: wlanap country diff --git a/doc/language_issues.ru b/doc/language_issues.ru index d07c421..6468d5f 100644 --- a/doc/language_issues.ru +++ b/doc/language_issues.ru @@ -615,11 +615,46 @@ WARNING: translation string unused: warn when traffic r= eaches WARNING: translation string unused: web proxy configuration WARNING: translation string unused: weekly firewallhits WARNING: translation string unused: wildcards +WARNING: translation string unused: wlanap access point WARNING: translation string unused: wlanap wlan services WARNING: translation string unused: xtaccess all error WARNING: translation string unused: xtaccess bad transfert WARNING: translation string unused: yearly firewallhits +WARNING: untranslated string: 24 hours WARNING: untranslated string: Add a route +WARNING: untranslated string: Captive ACTIVATE +WARNING: untranslated string: Captive GAIN ACCESS +WARNING: untranslated string: Captive WiFi coupon +WARNING: untranslated string: Captive activated +WARNING: untranslated string: Captive active on +WARNING: untranslated string: Captive agree tac +WARNING: untranslated string: Captive authentication +WARNING: untranslated string: Captive brand color +WARNING: untranslated string: Captive branding +WARNING: untranslated string: Captive client session expiry time +WARNING: untranslated string: Captive clients +WARNING: untranslated string: Captive config +WARNING: untranslated string: Captive coupon +WARNING: untranslated string: Captive expiry time +WARNING: untranslated string: Captive export coupons +WARNING: untranslated string: Captive generate coupons +WARNING: untranslated string: Captive generated coupon no +WARNING: untranslated string: Captive issued coupons +WARNING: untranslated string: Captive logo uploaded +WARNING: untranslated string: Captive mac +WARNING: untranslated string: Captive menu +WARNING: untranslated string: Captive nolimit +WARNING: untranslated string: Captive please accept the terms and conditions +WARNING: untranslated string: Captive portal +WARNING: untranslated string: Captive portal coupons +WARNING: untranslated string: Captive terms +WARNING: untranslated string: Captive terms short +WARNING: untranslated string: Captive title +WARNING: untranslated string: Captive upload logo +WARNING: untranslated string: Captive upload logo recommendations +WARNING: untranslated string: Captive valid for +WARNING: untranslated string: Captive vouchervalid +WARNING: untranslated string: Captive wrong ext WARNING: untranslated string: ConnSched dial WARNING: untranslated string: ConnSched hangup WARNING: untranslated string: ConnSched reboot @@ -651,6 +686,7 @@ WARNING: untranslated string: bit WARNING: untranslated string: block WARNING: untranslated string: bytes WARNING: untranslated string: capabilities +WARNING: untranslated string: captive WARNING: untranslated string: ccd add WARNING: untranslated string: ccd choose net WARNING: untranslated string: ccd client options @@ -733,6 +769,7 @@ WARNING: untranslated string: drop action1 WARNING: untranslated string: drop action2 WARNING: untranslated string: drop forward WARNING: untranslated string: drop outgoing +WARNING: untranslated string: eight hours WARNING: untranslated string: email config WARNING: untranslated string: email empty field WARNING: untranslated string: email invalid @@ -770,6 +807,7 @@ WARNING: untranslated string: firewall logs country WARNING: untranslated string: firewall rules WARNING: untranslated string: first WARNING: untranslated string: flag +WARNING: untranslated string: four hours WARNING: untranslated string: fw default drop WARNING: untranslated string: fw settings WARNING: untranslated string: fw settings color @@ -1021,6 +1059,10 @@ WARNING: untranslated string: no hardware random numbe= r generator WARNING: untranslated string: none WARNING: untranslated string: not a valid dh key WARNING: untranslated string: notice +WARNING: untranslated string: one hour +WARNING: untranslated string: one month +WARNING: untranslated string: one week +WARNING: untranslated string: one year WARNING: untranslated string: openvpn default WARNING: untranslated string: openvpn destination port used WARNING: untranslated string: openvpn fragment allowed with udp @@ -1135,9 +1177,12 @@ WARNING: untranslated string: tor traffic limit hard WARNING: untranslated string: tor traffic limit soft WARNING: untranslated string: tor traffic read written WARNING: untranslated string: tor use exit nodes +WARNING: untranslated string: twelve hours +WARNING: untranslated string: two weeks WARNING: untranslated string: unblock WARNING: untranslated string: unblock all WARNING: untranslated string: uncheck all +WARNING: untranslated string: unlimited WARNING: untranslated string: uplink WARNING: untranslated string: uplink bit rate WARNING: untranslated string: upload dh key @@ -1203,4 +1248,6 @@ WARNING: untranslated string: wlan client wpa mode ccmp= ccmp WARNING: untranslated string: wlan client wpa mode ccmp tkip WARNING: untranslated string: wlan client wpa mode tkip tkip WARNING: untranslated string: wlan clients +WARNING: untranslated string: wlanap +WARNING: untranslated string: wlanap configuration WARNING: untranslated string: wlanap country diff --git a/doc/language_issues.tr b/doc/language_issues.tr index 034dd2a..ade6c89 100644 --- a/doc/language_issues.tr +++ b/doc/language_issues.tr @@ -698,21 +698,59 @@ WARNING: translation string unused: web proxy configura= tion WARNING: translation string unused: week-graph WARNING: translation string unused: weekly firewallhits WARNING: translation string unused: wildcards +WARNING: translation string unused: wlanap access point WARNING: translation string unused: wlanap wlan services WARNING: translation string unused: xtaccess all error WARNING: translation string unused: xtaccess bad transfert WARNING: translation string unused: year-graph WARNING: translation string unused: yearly firewallhits +WARNING: untranslated string: 24 hours +WARNING: untranslated string: Captive ACTIVATE +WARNING: untranslated string: Captive GAIN ACCESS +WARNING: untranslated string: Captive WiFi coupon +WARNING: untranslated string: Captive activated +WARNING: untranslated string: Captive active on +WARNING: untranslated string: Captive agree tac +WARNING: untranslated string: Captive authentication +WARNING: untranslated string: Captive brand color +WARNING: untranslated string: Captive branding +WARNING: untranslated string: Captive client session expiry time +WARNING: untranslated string: Captive clients +WARNING: untranslated string: Captive config +WARNING: untranslated string: Captive coupon +WARNING: untranslated string: Captive expiry time +WARNING: untranslated string: Captive export coupons +WARNING: untranslated string: Captive generate coupons +WARNING: untranslated string: Captive generated coupon no +WARNING: untranslated string: Captive issued coupons +WARNING: untranslated string: Captive logo uploaded +WARNING: untranslated string: Captive mac +WARNING: untranslated string: Captive menu +WARNING: untranslated string: Captive nolimit +WARNING: untranslated string: Captive please accept the terms and conditions +WARNING: untranslated string: Captive portal +WARNING: untranslated string: Captive portal coupons +WARNING: untranslated string: Captive terms +WARNING: untranslated string: Captive terms short +WARNING: untranslated string: Captive title +WARNING: untranslated string: Captive upload logo +WARNING: untranslated string: Captive upload logo recommendations +WARNING: untranslated string: Captive valid for +WARNING: untranslated string: Captive vouchervalid +WARNING: untranslated string: Captive wrong ext WARNING: untranslated string: Scan for Songs WARNING: untranslated string: application layer gateways WARNING: untranslated string: bytes +WARNING: untranslated string: captive WARNING: untranslated string: dnssec disabled warning +WARNING: untranslated string: eight hours WARNING: untranslated string: firewall graph country WARNING: untranslated string: firewall graph ip WARNING: untranslated string: firewall graph port WARNING: untranslated string: firewall log country WARNING: untranslated string: firewall log ip WARNING: untranslated string: firewall log port +WARNING: untranslated string: four hours WARNING: untranslated string: fwhost cust geoipgrp WARNING: untranslated string: fwhost err hostip WARNING: untranslated string: guardian @@ -755,10 +793,17 @@ WARNING: untranslated string: guardian watch snort aler= tfile WARNING: untranslated string: ike lifetime should be between 1 and 8 hours WARNING: untranslated string: info messages WARNING: untranslated string: no data +WARNING: untranslated string: one hour +WARNING: untranslated string: one month +WARNING: untranslated string: one week +WARNING: untranslated string: one year WARNING: untranslated string: route config changed WARNING: untranslated string: routing config added WARNING: untranslated string: routing config changed WARNING: untranslated string: routing table +WARNING: untranslated string: twelve hours +WARNING: untranslated string: two weeks +WARNING: untranslated string: unlimited WARNING: untranslated string: uplink bit rate WARNING: untranslated string: vpn broken WARNING: untranslated string: vpn connecting @@ -783,3 +828,5 @@ WARNING: untranslated string: wlan client method WARNING: untranslated string: wlan client password WARNING: untranslated string: wlan client tls cipher WARNING: untranslated string: wlan client tls version +WARNING: untranslated string: wlanap +WARNING: untranslated string: wlanap configuration diff --git a/doc/language_missings b/doc/language_missings index fd372c1..2fc918c 100644 --- a/doc/language_missings +++ b/doc/language_missings @@ -2,6 +2,10 @@ # Checking cgi-bin translations for language: en # ############################################################################ < addon +< Captive clients +< Captive genvoucher +< Captive logo_upload +< Captive logo_upload1 < ccd maxclients < ovpn_fragment ############################################################################ @@ -32,6 +36,60 @@ < bit < block < capabilities +< Captive 1day +< Captive 1month +< Captive 1week +< Captive activate +< Captive ACTIVATE +< Captive activated +< Captive active on +< Captive agree tac +< Captive authentication +< Captive auth_lic +< Captive auth_vou +< Captive brand color +< Captive branding +< Captive clients +< Captive client session expiry time +< Captive config +< Captive coupon +< Captive err doublevoucher +< Captive expire +< Captive expiry time +< Captive export coupons +< Captive GAIN ACCESS +< Captive generate coupons +< Captive generated coupon no +< Captive genvoucher +< Captive invalid logosize +< Captive invalid_voucher +< Captive ip +< Captive issued coupons +< Captive logo_set +< Captive logo_upload +< Captive logo_upload1 +< Captive logo uploaded +< Captive mac +< Captive menu +< Captive noexpiretime +< Captive nolimit +< Captive nr +< Captive please accept the terms and conditions +< Captive portal +< Captive portal coupons +< Captive terms +< Captive terms short +< Captive time +< Captive title +< Captive upload logo +< Captive upload logo recommendations +< Captive valid for +< Captive voactive +< Captive voucher +< Captive vouchervalid +< Captive vout +< Captive WiFi coupon +< Captive wrong ext < ccd add < ccd choose net < ccd clientip @@ -121,6 +179,7 @@ < drop action2 < drop forward < drop outgoing +< eight hours < email config < email empty field < email error @@ -172,6 +231,7 @@ < first < flag < forward firewall +< four hours < fw default drop < fwdfw ACCEPT < fwdfw action @@ -432,6 +492,7 @@ < ntp common settings < ntp sync < Number of Countries for the pie chart +< one year < openvpn default < openvpn destination port used < openvpn disabled @@ -552,6 +613,8 @@ < tor traffic limit soft < tor traffic read written < tor use exit nodes +< twelve hours +< two weeks < unblock < unblock all < uncheck all @@ -579,8 +642,9 @@ < vpn statistic rw < vpn weak < wireless network -< wlanap access point +< wlanap < wlanap channel +< wlanap configuration < wlanap country < wlanap debugging < wlanap del interface @@ -674,6 +738,60 @@ < bit < block < capabilities +< Captive 1day +< Captive 1month +< Captive 1week +< Captive activate +< Captive ACTIVATE +< Captive activated +< Captive active on +< Captive agree tac +< Captive authentication +< Captive auth_lic +< Captive auth_vou +< Captive brand color +< Captive branding +< Captive clients +< Captive client session expiry time +< Captive config +< Captive coupon +< Captive err doublevoucher +< Captive expire +< Captive expiry time +< Captive export coupons +< Captive GAIN ACCESS +< Captive generate coupons +< Captive generated coupon no +< Captive genvoucher +< Captive invalid logosize +< Captive invalid_voucher +< Captive ip +< Captive issued coupons +< Captive logo_set +< Captive logo_upload +< Captive logo_upload1 +< Captive logo uploaded +< Captive mac +< Captive menu +< Captive noexpiretime +< Captive nolimit +< Captive nr +< Captive please accept the terms and conditions +< Captive portal +< Captive portal coupons +< Captive terms +< Captive terms short +< Captive time +< Captive title +< Captive upload logo +< Captive upload logo recommendations +< Captive valid for +< Captive voactive +< Captive voucher +< Captive vouchervalid +< Captive vout +< Captive WiFi coupon +< Captive wrong ext < ccd add < ccd choose net < ccd clientip @@ -762,6 +880,7 @@ < drop action2 < drop forward < drop outgoing +< eight hours < email config < email empty field < email error @@ -813,6 +932,7 @@ < first < flag < forward firewall +< four hours < fw default drop < fwdfw ACCEPT < fwdfw action @@ -1061,6 +1181,7 @@ < not a valid dh key < notice < Number of Countries for the pie chart +< one year < openvpn default < openvpn destination port used < openvpn disabled @@ -1199,6 +1320,8 @@ < tor traffic limit soft < tor traffic read written < tor use exit nodes +< twelve hours +< two weeks < unblock < unblock all < uncheck all @@ -1223,6 +1346,8 @@ < vpn statistic rw < vpn weak < wireless network +< wlanap +< wlanap configuration < wlanap country < wlan client < wlan client advanced settings @@ -1297,6 +1422,60 @@ < bit < block < capabilities +< Captive 1day +< Captive 1month +< Captive 1week +< Captive activate +< Captive ACTIVATE +< Captive activated +< Captive active on +< Captive agree tac +< Captive authentication +< Captive auth_lic +< Captive auth_vou +< Captive brand color +< Captive branding +< Captive clients +< Captive client session expiry time +< Captive config +< Captive coupon +< Captive err doublevoucher +< Captive expire +< Captive expiry time +< Captive export coupons +< Captive GAIN ACCESS +< Captive generate coupons +< Captive generated coupon no +< Captive genvoucher +< Captive invalid logosize +< Captive invalid_voucher +< Captive ip +< Captive issued coupons +< Captive logo_set +< Captive logo_upload +< Captive logo_upload1 +< Captive logo uploaded +< Captive mac +< Captive menu +< Captive noexpiretime +< Captive nolimit +< Captive nr +< Captive please accept the terms and conditions +< Captive portal +< Captive portal coupons +< Captive terms +< Captive terms short +< Captive time +< Captive title +< Captive upload logo +< Captive upload logo recommendations +< Captive valid for +< Captive voactive +< Captive voucher +< Captive vouchervalid +< Captive vout +< Captive WiFi coupon +< Captive wrong ext < ccd add < ccd choose net < ccd clientip @@ -1385,6 +1564,7 @@ < drop action2 < drop forward < drop outgoing +< eight hours < email config < email empty field < email error @@ -1428,6 +1608,7 @@ < first < flag < forward firewall +< four hours < fw default drop < fwdfw ACCEPT < fwdfw action @@ -1686,6 +1867,7 @@ < not a valid dh key < notice < Number of Countries for the pie chart +< one year < openvpn default < openvpn destination port used < openvpn disabled @@ -1808,6 +1990,8 @@ < tor traffic limit soft < tor traffic read written < tor use exit nodes +< twelve hours +< two weeks < unblock < unblock all < uncheck all @@ -1832,6 +2016,8 @@ < vpn statistic rw < vpn weak < wireless network +< wlanap +< wlanap configuration < wlanap country < wlan client < wlan client advanced settings @@ -1907,6 +2093,60 @@ < bit < block < capabilities +< Captive 1day +< Captive 1month +< Captive 1week +< Captive activate +< Captive ACTIVATE +< Captive activated +< Captive active on +< Captive agree tac +< Captive authentication +< Captive auth_lic +< Captive auth_vou +< Captive brand color +< Captive branding +< Captive clients +< Captive client session expiry time +< Captive config +< Captive coupon +< Captive err doublevoucher +< Captive expire +< Captive expiry time +< Captive export coupons +< Captive GAIN ACCESS +< Captive generate coupons +< Captive generated coupon no +< Captive genvoucher +< Captive invalid logosize +< Captive invalid_voucher +< Captive ip +< Captive issued coupons +< Captive logo_set +< Captive logo_upload +< Captive logo_upload1 +< Captive logo uploaded +< Captive mac +< Captive menu +< Captive noexpiretime +< Captive nolimit +< Captive nr +< Captive please accept the terms and conditions +< Captive portal +< Captive portal coupons +< Captive terms +< Captive terms short +< Captive time +< Captive title +< Captive upload logo +< Captive upload logo recommendations +< Captive valid for +< Captive voactive +< Captive voucher +< Captive vouchervalid +< Captive vout +< Captive WiFi coupon +< Captive wrong ext < ccd add < ccd choose net < ccd clientip @@ -1998,6 +2238,7 @@ < drop forward < drop outgoing < Edit an existing route +< eight hours < email config < email empty field < email error @@ -2041,6 +2282,7 @@ < first < flag < forward firewall +< four hours < frequency < fw default drop < fwdfw ACCEPT @@ -2303,6 +2545,7 @@ < not a valid dh key < notice < Number of Countries for the pie chart +< one year < openvpn default < openvpn destination port used < openvpn disabled @@ -2422,6 +2665,8 @@ < tor traffic limit soft < tor traffic read written < tor use exit nodes +< twelve hours +< two weeks < unblock < unblock all < uncheck all @@ -2447,6 +2692,8 @@ < vpn weak < week-graph < wireless network +< wlanap +< wlanap configuration < wlanap country < wlan client < wlan client advanced settings diff --git a/html/cgi-bin/captive.cgi b/html/cgi-bin/captive.cgi new file mode 100755 index 0000000..242549d --- /dev/null +++ b/html/cgi-bin/captive.cgi @@ -0,0 +1,794 @@ +#!/usr/bin/perl +############################################################################= ### +# = # +# IPFire.org - A linux based firewall = # +# Copyright (C) 2016 IPFire Team = # +# = # +# This program is free software: you can redistribute it and/or modify = # +# it under the terms of the GNU General Public License as published by = # +# the Free Software Foundation, either version 3 of the License, or = # +# (at your option) any later version. = # +# = # +# This program is distributed in the hope that it will be useful, = # +# but WITHOUT ANY WARRANTY; without even the implied warranty of = # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the = # +# GNU General Public License for more details. = # +# = # +# You should have received a copy of the GNU General Public License = # +# along with this program. If not, see . = # +# = # +############################################################################= ### + +#use strict; +use Encode; +use HTML::Entities(); +use File::Basename; +use PDF::API2; +use constant mm =3D> 25.4 / 72; + +# enable only the following on debugging purpose +#use warnings; +#use CGI::Carp 'fatalsToBrowser'; + +require '/var/ipfire/general-functions.pl'; +require "${General::swroot}/lang.pl"; +require "${General::swroot}/header.pl"; + +my %session_times =3D ( + 3600 =3D> $Lang::tr{'one hour'}, + 14400 =3D> $Lang::tr{'four hours'}, + 28800 =3D> $Lang::tr{'eight hours'}, + 43200 =3D> $Lang::tr{'twelve hours'}, + 86400 =3D> $Lang::tr{'24 hours'}, + 604800 =3D> $Lang::tr{'one week'}, + 1209600 =3D> $Lang::tr{'two weeks'}, + 18144000 =3D> $Lang::tr{'one month'}, + 31536000 =3D> $Lang::tr{'one year'}, + 0 =3D> "- $Lang::tr{'unlimited'} -", +); + +my %selected =3D (); + +my $coupons =3D "${General::swroot}/captive/coupons"; +my %couponhash =3D (); + +my $logo =3D "${General::swroot}/captive/logo.dat"; + +my %settings=3D(); +my %mainsettings; +my %color; +my %cgiparams=3D(); +my %netsettings=3D(); +my %checked=3D(); +my $errormessage=3D''; +my $clients=3D"${General::swroot}/captive/clients"; +my %clientshash=3D(); +my $settingsfile=3D"${General::swroot}/captive/settings"; +unless (-e $settingsfile) { system("touch $settingsfile"); } + +&Header::getcgihash(\%cgiparams); + +&General::readhash("${General::swroot}/main/settings", \%mainsettings); +&General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/i= nclude/colors.txt", \%color); +&General::readhash("$settingsfile", \%settings) if(-f $settingsfile); +&General::readhash("${General::swroot}/ethernet/settings", \%netsettings); + +if ($cgiparams{'ACTION'} eq "export-coupons") { + my $pdf =3D &generate_pdf(); + + print "Content-Type: application/pdf\n"; + print "Content-Disposition: attachment; filename=3Dcaptive-portal-coupons.p= df\n"; + print "\n"; # end headers + + # Send PDF + print $pdf; + + exit(0); +} + + +&Header::showhttpheaders(); + +if ($cgiparams{'ACTION'} eq $Lang::tr{'save'}) { + my $file =3D $cgiparams{'logo'}; + if ($file) { + # Check if the file extension is PNG/JPEG + chomp $file; + + my ($name, $path, $ext) =3D fileparse($file, qr/\.[^.]*$/); + if ($ext ne ".png" && $ext ne ".jpg" && $ext ne ".jpeg") { + $errormessage =3D $Lang::tr{'Captive wrong ext'}; + } + } + + $settings{'ENABLE_GREEN'} =3D $cgiparams{'ENABLE_GREEN'}; + $settings{'ENABLE_BLUE'} =3D $cgiparams{'ENABLE_BLUE'}; + $settings{'AUTH'} =3D $cgiparams{'AUTH'}; + $settings{'TITLE'} =3D $cgiparams{'TITLE'}; + $settings{'COLOR'} =3D $cgiparams{'COLOR'}; + $settings{'SESSION_TIME'} =3D $cgiparams{'SESSION_TIME'}; + + if (!$errormessage){ + #Check if we need to upload a new logo + if ($file) { + # Save logo + my ($filehandle) =3D CGI::upload("logo"); + + # XXX check filesize + + open(FILE, ">$logo"); + binmode $filehandle; + while (<$filehandle>) { + print FILE; + } + close(FILE); + } + + &General::writehash("$settingsfile", \%settings); + + # Save terms + $cgiparams{'TERMS'} =3D &Header::escape($cgiparams{'TERMS'}); + open(FH, ">:utf8", "/var/ipfire/captive/terms.txt") or die("$!"); + print FH $cgiparams{'TERMS'}; + close(FH); + $cgiparams{'TERMS'} =3D ""; + + #execute binary to reload firewall rules + system("/usr/local/bin/captivectrl"); + + if ($cgiparams{'ENABLE_BLUE'} eq 'on'){ + system("/usr/local/bin/wirelessctrl"); + } + } +} + +if ($cgiparams{'ACTION'} eq "$Lang::tr{'Captive generate coupons'}") { + #check valid remark + if ($cgiparams{'REMARK'} ne '' && !&validremark($cgiparams{'REMARK'})){ + $errormessage=3D$Lang::tr{'fwhost err remark'}; + } + + if (!$errormessage) { + # Remember selected values + foreach my $val (("SESSION_TIME", "COUNT", "REMARK")) { + $settings{$val} =3D $cgiparams{$val}; + } + &General::writehash($settingsfile, \%settings); + + &General::readhasharray($coupons, \%couponhash) if (-e $coupons); + my $now =3D time(); + + # Expiry time in seconds + my $expires =3D $settings{'SESSION_TIME'}; + + my $count =3D $settings{'COUNT'} || 1; + while($count-- > 0) { + # Generate a new code + my $code =3D &gencode(); + + # Check if the coupon code already exists + foreach my $key (keys %couponhash) { + if($couponhash{$key}[1] eq $code) { + # Code already exists, so try again + $code =3D ""; + $count++; + last; + } + } + + next if ($code eq ""); + + # Get a new key from hash + my $key =3D &General::findhasharraykey(\%couponhash); + + # Initialize all fields + foreach my $i (0 .. 3) { $couponhash{$key}[$i] =3D ""; } + + $couponhash{$key}[0] =3D $now; + $couponhash{$key}[1] =3D $code; + $couponhash{$key}[2] =3D $expires; + $couponhash{$key}[3] =3D $settings{'REMARK'}; + } + + # Save everything to disk + &General::writehasharray($coupons, \%couponhash); + } +} + +if ($cgiparams{'ACTION'} eq 'delete-coupon') { + #deletes an already generated but unused voucher + + #read all generated vouchers + &General::readhasharray($coupons, \%couponhash) if (-e $coupons); + foreach my $key (keys %couponhash) { + if($cgiparams{'key'} eq $couponhash{$key}[0]){ + #write logenty with decoded remark + my $rem=3DHTML::Entities::decode_entities($couponhash{$key}[4]); + &General::log("Captive", "Delete unused coupon $couponhash{$key}[1] $coup= onhash{$key}[2] hours valid expires on $couponhash{$key}[3] remark $rem"); + #delete line from hash + delete $couponhash{$key}; + last; + } + } + #write back hash + &General::writehasharray($coupons, \%couponhash); +} + +if ($cgiparams{'ACTION'} eq 'delete-client') { + #delete voucher and connection in use + + #read all active clients + &General::readhasharray($clients, \%clientshash) if (-e $clients); + foreach my $key (keys %clientshash) { + if($cgiparams{'key'} eq $clientshash{$key}[0]){ + #prepare log entry with decoded remark + my $rem=3DHTML::Entities::decode_entities($clientshash{$key}[7]); + #write logentry + &General::log("Captive", "Deleted client in use $clientshash{$key}[1] $cl= ientshash{$key}[2] hours valid expires on $clientshash{$key}[3] remark $rem -= Connection will be terminated"); + #delete line from hash + delete $clientshash{$key}; + last; + } + } + #write back hash + &General::writehasharray("$clients", \%clientshash); + #reload firewallrules to kill connection of client + system("/usr/local/bin/captivectrl"); +} + +#open webpage, print header and open box +&Header::openpage($Lang::tr{'Captive menu'}, 1, ''); +&Header::openbigbox(); + +# If an error message exists, show a box with the error message +if ($errormessage) { + &Header::openbox('100%', 'left', $Lang::tr{'error messages'}); + print $errormessage; + &Header::closebox(); +} + +# Prints the config box on the website +&Header::openbox('100%', 'left', $Lang::tr{'Captive config'}); +print <\n + +END +; + +#check which parameters have to be enabled (from settings file) +$checked{'ENABLE_GREEN'}{'off'} =3D ''; +$checked{'ENABLE_GREEN'}{'on'} =3D ''; +$checked{'ENABLE_GREEN'}{$settings{'ENABLE_GREEN'}} =3D "checked=3D'checked'= "; + +$checked{'ENABLE_BLUE'}{'off'} =3D ''; +$checked{'ENABLE_BLUE'}{'on'} =3D ''; +$checked{'ENABLE_BLUE'}{$settings{'ENABLE_BLUE'}} =3D "checked=3D'checked'"; + +$checked{'UNLIMITED'}{'off'} =3D ''; +$checked{'UNLIMITED'}{'on'} =3D ''; +$checked{'UNLIMITED'}{$settings{'UNLIMITED'}} =3D "checked=3D'checked'"; + +$selected{'AUTH'} =3D (); +$selected{'AUTH'}{'COUPON'} =3D ""; +$selected{'AUTH'}{'TERMS'} =3D ""; +$selected{'AUTH'}{$settings{'AUTH'}} =3D "selected"; + +if ($netsettings{'GREEN_DEV'}){ + print < + + + +END +} + +if ($netsettings{'BLUE_DEV'}){ + print < + + + +END +} + +print< + + + +END +; + +if ($settings{'AUTH'} eq 'TERMS') { + $selected{'SESSION_TIME'} =3D (); + foreach my $session_time (keys %session_times) { + $selected{'SESSION_TIME'}{$session_time} =3D ""; + } + $selected{'SESSION_TIME'}{$settings{'SESSION_TIME'}} =3D "selected"; + + print < + + + +END +} + +print< + + + + + + + + + + + + + + +END + +if (-e $logo) { + print < + + + +END +} + +my $terms =3D &getterms(); +print < + + + + + + + +
+ $Lang::tr{'Captive active on'} + $Lang::tr{'green'} + + +
+ $Lang::tr{'Captive active on'} + $Lang::tr{'blue'} + + +
+ $Lang::tr{'Captive authentication'} + + +
$Lang::tr{'Captive client session expiry time'} +
+
+ $Lang::tr{'Captive branding'} +
+ $Lang::tr{'Captive title'} + + +
$Lang::tr{'Captive brand color'} + +
+ $Lang::tr{'Captive upload logo'} + + +
$Lang::tr{'Captive upload logo recommendations'} +
$Lang::tr{'Captive logo uploaded'}$Lang::tr{'yes'}
$Lang::tr{'Captive terms'} + +
+ +
+END + +&Header::closebox(); + +#if settings is set to use coupons, the coupon part has to be displayed +if ($settings{'AUTH'} eq 'COUPON') { + &coupons(); +} + +# Show active clients +&show_clients(); + +sub getterms() { + my @ret; + + open(FILE, "<:utf8", "/var/ipfire/captive/terms.txt"); + while() { + push(@ret, HTML::Entities::decode_entities($_)); + } + close(FILE); + + return join(/\n/, @ret); +} + +sub gencode(){ + #generate a random code only letters from A-Z except 'O' and 0-9 + my @chars =3D ("A".."N", "P".."Z", "0".."9"); + my $randomstring; + $randomstring .=3D $chars[rand @chars] for 1..8; + return $randomstring; +} + +sub coupons() { + &Header::openbox('100%', 'left', $Lang::tr{'Captive generate coupons'}); + + $selected{'SESSION_TIME'} =3D (); + foreach my $session_time (keys %session_times) { + $selected{'SESSION_TIME'}{$session_time} =3D ""; + } + $selected{'SESSION_TIME'}{$settings{'SESSION_TIME'}} =3D "selected"; + + print < + + + + + + + + + + + + + +
+ $Lang::tr{'Captive vouchervalid'} + +
$Lang::tr{'remark'} + +
$Lang::tr{'Captive generated coupon no'} + +
+ +
+ +
+ +END + + &Header::closebox(); + + # Show all coupons if exist + if (! -z $coupons) { + &show_coupons(); + } +} + +sub show_coupons() { + &General::readhasharray($coupons, \%couponhash) if (-e $coupons); + + #if there are already generated but unsused coupons, print a table + &Header::openbox('100%', 'left', $Lang::tr{'Captive issued coupons'}); + + print < + + + $Lang::tr{'Captive coupon'} + + $Lang::tr{'Captive expiry time'} + $Lang::tr{'remark'} + $Lang::tr{'delete'} + +END + + foreach my $key (keys %couponhash) { + my $expirytime =3D $Lang::tr{'Captive nolimit'}; + if ($couponhash{$key}[2] > 0) { + $expirytime =3D &General::format_time($couponhash{$key}[2]); + } + + if ($count++ % 2) { + $col=3D"bgcolor=3D'$color{'color20'}'"; + } else { + $col=3D"bgcolor=3D'$color{'color22'}'"; + } + + print < + + $couponhash{$key}[1] + + + $expirytime + + + $couponhash{$key}[3] + + +
+ + + +
+ + +END + } + + print ""; + + # Download PDF + print < +
+ + +
+ +END + + &Header::closebox(); +} + +sub show_clients() { + # if there are active clients which use coupons show table + return if ( -z $clients || ! -f $clients ); + + my $count=3D0; + my $col; + + &Header::openbox('100%', 'left', $Lang::tr{'Captive clients'}); + + print < + + $Lang::tr{'Captive coupon'} + $Lang::tr{'Captive activated'} + $Lang::tr{'Captive expiry time'} + $Lang::tr{'Captive mac'} + $Lang::tr{'remark'} + $Lang::tr{'delete'} + +END + + &General::readhasharray($clients, \%clientshash) if (-e $clients); + foreach my $key (keys %clientshash) { + #calculate time from clientshash (starttime) + my $starttime =3D sub{sprintf '%02d.%02d.%04d %02d:%02d', $_[3], $_[4]+1, = $_[5]+1900, $_[2], $_[1] }->(localtime($clientshash{$key}[2])); + + #calculate endtime from clientshash + my $endtime; + if ($clientshash{$key}[3] eq '0'){ + $endtime=3D$Lang::tr{'Captive nolimit'}; + } else { + $endtime =3D sub{sprintf '%02d.%02d.%04d %02d:%02d', $_[3], $_[4]+1, $_[5= ]+1900, $_[2], $_[1] }->(localtime($clientshash{$key}[2]+$clientshash{$key}[= 3])); + } + + if ($count++ % 2) { + $col=3D"bgcolor=3D'$color{'color20'}'"; + } else { + $col=3D"bgcolor=3D'$color{'color22'}'"; + } + + my $coupon =3D ($clientshash{$key}[4] eq "LICENSE") ? $Lang::tr{'Captive t= erms short'} : $clientshash{$key}[4]; + + print < + $coupon + $starttime + $endtime + $clientshash{$key}[0] + $clientshash{$key}[5] + +
+ + + +
+ + +END + } + + print ""; + + &Header::closebox(); +} + +sub validremark +{ + # Checks a hostname against RFC1035 + my $remark =3D $_[0]; + # Each part should be at least two characters in length + # but no more than 63 characters + if (length ($remark) < 1 || length ($remark) > 255) { + return 0;} + # Only valid characters are a-z, A-Z, 0-9 and - + if ($remark !~ /^[a-z=C3=A4=C3=B6=C3=BCA-Z=C3=96=C3=84=C3=9C0-9-.:;\|_()\/\= s]*$/) { + return 0;} + # First character can only be a letter or a digit + if (substr ($remark, 0, 1) !~ /^[a-z=C3=A4=C3=B6=C3=BCA-Z=C3=96=C3=84=C3=9C= 0-9]*$/) { + return 0;} + # Last character can only be a letter or a digit + if (substr ($remark, -1, 1) !~ /^[a-z=C3=B6=C3=A4=C3=BCA-Z=C3=96=C3=84=C3= =9C0-9.:;_)]*$/) { + return 0;} + return 1; +} + +sub generate_pdf() { + my $pdf =3D PDF::API2->new(); + + my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) =3D gmtime= (time); + my $timestamp =3D sprintf("D:%04d%02d%02d%02d%02d%02d+00;00", $year+1900, $= mon+1, $mday, $hour, $min, $sec); + + $pdf->info( + "Creator" =3D> $Lang::tr{'Captive portal'}, + "Title" =3D> $Lang::tr{'Captive portal coupons'}, + "CreationDate" =3D> $timestamp, + "ModDate" =3D> $timestamp, + ); + + # Set page size + $pdf->mediabox("A4"); + $pdf->trimbox(28/mm, 27/mm, 182/mm, 270/mm); + + # Set font + my $font =3D $pdf->ttfont("/usr/share/fonts/Ubuntu-R.ttf"); + + my $page_h_margin =3D 27/mm; + my $page_v_margin =3D 28/mm; + + my $height =3D 68/mm; + my $width =3D 91/mm; + my $margin =3D 2/mm; + + # Tux Image + my $tux_image =3D $pdf->image_png("/srv/web/ipfire/html/captive/assets/ipfi= re.png"); + my $logo_height =3D 12/mm; + my $logo_width =3D 12/mm; + + my @coupons =3D (); + my %coupon_expiry_times =3D (); + + # Read coupons + &General::readhasharray($coupons, \%couponhash) if (-e $coupons); + foreach my $key (keys %couponhash) { + $coupon_expiry_times{$couponhash{$key}[1]} =3D $couponhash{$key}[2]; + push @coupons, $couponhash{$key}[1]; + } + + while (@coupons) { + # Make a new page + my $page =3D $pdf->page(); + + # Graphics + $gfx =3D $page->gfx(); + + # Headline font + my $f_headline =3D $page->text(); + $f_headline->font($font, 20); + + # Subheadline font + my $f_subheadline =3D $page->text(); + $f_subheadline->font($font, 14); + + # Coupon font + my $f_coupon =3D $page->text(); + $f_coupon->font($font, 36); + + # Lifetime + my $f_lifetime =3D $page->text(); + $f_lifetime->font($font, 14); + + # Watermark font + my $f_watermark =3D $page->text(); + $f_watermark->fillcolor("#666666"); + $f_watermark->font($font, 10); + + my $i =3D 0; + while (@coupons && $i < 8) { + my $coupon =3D shift @coupons; + + # Box corners + my $x =3D ($page_v_margin / 2) + (($i % 2) ? $width : 0); + my $y =3D ($page_h_margin / 2) + (int($i / 2) * $height); + + # Weidth and height of the box + my $w =3D $width - $margin; + my $h =3D $height - $margin; + + # Center + my $cx =3D $x + ($w / 2); + my $cy =3D $y + ($h / 2); + + # Draw border box + $gfx->strokecolor("#333333"); + $gfx->linedash(1/mm, 1/mm); + $gfx->rect($x, $y, $w, $h); + $gfx->stroke(); + $gfx->endpath(); + + # Headline + $f_headline->translate($cx, ($y + $h - $cy) / 1.7 + $cy); + $f_subheadline->translate($cx, ($y + $h - $cy) / 2.4 + $cy); + + if ($settings{'TITLE'}) { + $f_headline->text_center($settings{'TITLE'}); + $f_subheadline->text_center(decode("utf8", $Lang::tr{'Captive WiFi coupo= n'})); + } else { + $f_headline->text_center(decode("utf8", $Lang::tr{'Captive WiFi coupon'}= )); + } + + # Coupon + $f_coupon->translate($cx, $cy); + $f_coupon->text_center(decode("utf8", $coupon)); + + # Show lifetime + my $expiry_time =3D $coupon_expiry_times{$coupon}; + $f_lifetime->translate($cx, $cy - ($y + $h - $cy) / 4); + if ($expiry_time > 0) { + my $lifetime =3D &General::format_time($expiry_time); + $f_lifetime->text_center(decode("utf8", $Lang::tr{'Captive valid for'} .= " " . $lifetime)); + } else { + $f_lifetime->text_center(decode("utf8", $Lang::tr{'Captive nolimit'})); + } + + # Add watermark + $gfx->image($tux_image, $x + $w - $logo_width - $margin, $y + $margin, $l= ogo_width, $logo_height); + $f_watermark->translate($x + $w - ($margin * 2) - $logo_width, $y + ($log= o_height / 2)); + $f_watermark->text_right("Powered by IPFire"); + + $i++; + } + } + + # Write out the PDF document + return $pdf->stringify(); +} + +&Header::closebigbox(); +&Header::closepage(); diff --git a/html/cgi-bin/captive/index.cgi b/html/cgi-bin/captive/index.cgi new file mode 100755 index 0000000..e9606b1 --- /dev/null +++ b/html/cgi-bin/captive/index.cgi @@ -0,0 +1,238 @@ +#!/usr/bin/perl +############################################################################= ### +# = # +# IPFire.org - A linux based firewall = # +# Copyright (C) 2016 Alexander Marx alexander.marx(a)ipfire.org = # +# = # +# This program is free software you can redistribute it and/or modify = # +# it under the terms of the GNU General Public License as published by = # +# the Free Software Foundation, either version 3 of the License, or = # +# (at your option) any later version. = # +# = # +# This program is distributed in the hope that it will be useful, = # +# but WITHOUT ANY WARRANTY; without even the implied warranty of = # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the = # +# GNU General Public License for more details. = # +# = # +# You should have received a copy of the GNU General Public License = # +# along with this program. If not, see . = # +# = # +############################################################################= ### + +use strict; +use CGI ':standard'; +use URI::Escape; +use HTML::Entities(); +use HTML::Template; + +# enable only the following on debugging purpose +#use warnings; +#use CGI::Carp 'fatalsToBrowser'; + +require '/var/ipfire/general-functions.pl'; +require "${General::swroot}/lang.pl"; + +# Load the most appropriate language from the browser configuration +my @langs =3D &Lang::DetectBrowserLanguages(); +&Lang::reload(@langs); + +my $coupons =3D "${General::swroot}/captive/coupons"; +my %couponhash =3D (); + +my %clientshash=3D(); +my %cgiparams=3D(); +my %settings=3D(); +my $clients=3D"${General::swroot}/captive/clients"; +my $settingsfile=3D"${General::swroot}/captive/settings"; +my $errormessage; +my $url=3Dparam('redirect'); + +#Create /var/ipfire/captive/clients if not exist +unless (-f $clients){ system("touch $clients"); } + +#Get GUI variables +&getcgihash(\%cgiparams); + +#Read settings +&General::readhash("$settingsfile", \%settings) if(-f $settingsfile); + +# Actions +if ($cgiparams{'ACTION'} eq "SUBMIT") { + # Get client IP address + my $ip_address =3D $ENV{X_FORWARDED_FOR} || $ENV{REMOTE_ADDR}; + + # Retrieve the MAC address from the ARP table + my $mac_address =3D &Network::get_hardware_address($ip_address); + + &General::readhasharray("$clients", \%clientshash); + my $key =3D &General::findhasharraykey(\%clientshash); + + # Create a new client line + foreach my $i (0 .. 5) { $clientshash{$key}[$i] =3D ""; } + + # MAC address of the client + $clientshash{$key}[0] =3D $mac_address; + + # IP address of the client + $clientshash{$key}[1] =3D $ip_address; + + # Current time + $clientshash{$key}[2] =3D time(); + + if ($settings{"AUTH"} eq "COUPON") { + &General::readhasharray($coupons, \%couponhash); + + if ($cgiparams{'COUPON'}) { + # Convert coupon input to uppercase + $cgiparams{'COUPON'} =3D uc $cgiparams{'COUPON'}; + + # Walk through all valid coupons and find the right one + my $found =3D 0; + foreach my $coupon (keys %couponhash) { + if ($couponhash{$coupon}[1] eq $cgiparams{'COUPON'}) { + $found =3D 1; + + # Copy expiry time + $clientshash{$key}[3] =3D $couponhash{$coupon}[2]; + + # Save coupon code + $clientshash{$key}[4] =3D $cgiparams{'COUPON'}; + + # Copy coupon remark + $clientshash{$key}[5] =3D $couponhash{$coupon}[3]; + + # Delete used coupon + delete $couponhash{$coupon}; + &General::writehasharray($coupons, \%couponhash); + + last; + } + } + + if ($found =3D=3D 1) { + &General::log("Captive", "Internet access granted via coupon ($clientsha= sh{$key}[4]) for $ip_address until $clientshash{$key}[3]"); + } else { + $errormessage =3D $Lang::tr{"Captive invalid coupon"}; + } + + # No coupon given + } else { + $errormessage =3D $Lang::tr{"Captive please enter a coupon code"}; + } + + # Terms + } else { + # Make sure that they have been accepted + if ($cgiparams{'TERMS'} eq "on") { + # Copy session expiry time + $clientshash{$key}[3] =3D $settings{'SESSION_TIME'} || "0"; + + # No coupon code + $clientshash{$key}[4] =3D "TERMS"; + + &General::log("Captive", "Internet access granted via license agreement f= or $ip_address until $clientshash{$key}[3]"); + + # The terms have not been accepted + } else { + $errormessage =3D $Lang::tr{'Captive please accept the terms and conditio= ns'}; + } + } + + # If no errors were found, save configruation and reload + if (!$errormessage) { + &General::writehasharray("$clients", \%clientshash); + + system("/usr/local/bin/captivectrl"); + + # Redirect client to the original URL + print "Status: 302 Moved Temporarily\n"; + print "Location: $url\n"; + print "Connection: close\n\n"; + exit 0; + } +} + +my $tmpl =3D HTML::Template->new( + filename =3D> "/srv/web/ipfire/html/captive/template.html", + die_on_bad_params =3D> 0 +); + +$tmpl->param(REDIRECT =3D> $url); + +# Coupon +if ($settings{'AUTH'} eq "COUPON") { + $tmpl->param(COUPON =3D> 1); + $tmpl->param(L_HEADING =3D> $Lang::tr{'Captive coupon'}); +} else { + $tmpl->param(L_HEADING =3D> $Lang::tr{'Captive terms'}); +} + +$tmpl->param(TITLE =3D> $settings{'TITLE'}); +$tmpl->param(COLOR =3D> $settings{'COLOR'}); +$tmpl->param(ERROR =3D> $errormessage); + +$tmpl->param(TERMS =3D> &getterms()); + +# Some translated strings +$tmpl->param(L_ACTIVATE =3D> $Lang::tr{'Captive ACTIVATE'}); +$tmpl->param(L_GAIN_ACCESS =3D> $Lang::tr{'Captive GAIN ACCESS'}); +$tmpl->param(L_AGREE_TERMS =3D> $Lang::tr{'Captive agree tac'}); + +# Print header +print "Pragma: no-cache\n"; +print "Cache-control: no-cache\n"; +print "Connection: close\n"; +print "Content-type: text/html\n\n"; + +# Print rendered template +print $tmpl->output(); + +sub getcgihash { + my ($hash, $params) =3D @_; + my $cgi =3D CGI->new (); + $hash->{'__CGI__'} =3D $cgi; + return if ($ENV{'REQUEST_METHOD'} ne 'POST'); + if (!$params->{'wantfile'}) { + $CGI::DISABLE_UPLOADS =3D 1; + $CGI::POST_MAX =3D 1024 * 1024; + } else { + $CGI::POST_MAX =3D 10 * 1024 * 1024; + } + $cgi->referer() =3D~ m/^http?\:\/\/([^\/]+)/; + my $referer =3D $1; + $cgi->url() =3D~ m/^http?\:\/\/([^\/]+)/; + my $servername =3D $1; + return if ($referer ne $servername); + + ### Modified for getting multi-vars, split by | + my %temp =3D $cgi->Vars(); + foreach my $key (keys %temp) { + $hash->{$key} =3D $temp{$key}; + $hash->{$key} =3D~ s/\0/|/g; + $hash->{$key} =3D~ s/^\s*(.*?)\s*$/$1/; + } + + if (($params->{'wantfile'})&&($params->{'filevar'})) { + $hash->{$params->{'filevar'}} =3D $cgi->upload + ($params->{'filevar'}); + } + return; +} + +sub getterms() { + my @terms =3D (); + + open(my $handle, "<:utf8", "/var/ipfire/captive/terms.txt"); + while(<$handle>) { + $_ =3D HTML::Entities::decode_entities($_); + push(@terms, $_); + } + close($handle); + + my $terms =3D join("\n", @terms); + + # Format paragraphs + $terms =3D~ s/\n\n/<\/p>\n

/g; + + return $terms; +} diff --git a/html/cgi-bin/captive/logo.cgi b/html/cgi-bin/captive/logo.cgi new file mode 100644 index 0000000..8f292b1 --- /dev/null +++ b/html/cgi-bin/captive/logo.cgi @@ -0,0 +1,44 @@ +#!/usr/bin/perl +############################################################################= ### +# = # +# IPFire.org - A linux based firewall = # +# Copyright (C) 2016 Alexander Marx alexander.marx(a)ipfire.org = # +# = # +# This program is free software you can redistribute it and/or modify = # +# it under the terms of the GNU General Public License as published by = # +# the Free Software Foundation, either version 3 of the License, or = # +# (at your option) any later version. = # +# = # +# This program is distributed in the hope that it will be useful, = # +# but WITHOUT ANY WARRANTY; without even the implied warranty of = # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the = # +# GNU General Public License for more details. = # +# = # +# You should have received a copy of the GNU General Public License = # +# along with this program. If not, see . = # +# = # +############################################################################= ### + +use strict; +use CGI; +use File::Copy; + +# enable only the following on debugging purpose +#use warnings; +#use CGI::Carp 'fatalsToBrowser'; + +require '/var/ipfire/general-functions.pl'; + +my $logo =3D "${General::swroot}/captive/logo.dat"; + +# Send 404 if logo was not uploaded and exit +if (!-e $logo) { + print CGI::header(status =3D> 404); + exit(0); +} + +print "Content-Type: application/octet-stream\n\n"; + +# Send image data +File::Copy::copy $logo, \*STDOUT; +exit(0); diff --git a/html/cgi-bin/captive/redirect.cgi b/html/cgi-bin/captive/redirec= t.cgi new file mode 100755 index 0000000..7c5b5e7 --- /dev/null +++ b/html/cgi-bin/captive/redirect.cgi @@ -0,0 +1,58 @@ +#!/usr/bin/perl +############################################################################= ### +# = # +# IPFire.org - A linux based firewall = # +# Copyright (C) 2016 Alexander Marx alexander.marx(a)ipfire.org = # +# = # +# This program is free software: you can redistribute it and/or modify = # +# it under the terms of the GNU General Public License as published by = # +# the Free Software Foundation, either version 3 of the License, or = # +# (at your option) any later version. = # +# = # +# This program is distributed in the hope that it will be useful, = # +# but WITHOUT ANY WARRANTY; without even the implied warranty of = # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the = # +# GNU General Public License for more details. = # +# = # +# You should have received a copy of the GNU General Public License = # +# along with this program. If not, see . = # +# = # +############################################################################= ### + +use strict; +use URI::Escape; +use CGI::Carp qw(fatalsToBrowser); + +require '/var/ipfire/general-functions.pl'; + +my $url =3D "http://$ENV{'SERVER_NAME'}$ENV{'REQUEST_URI'}"; +my $safe_url =3D uri_escape($url); + +my %settingshash =3D (); +my %ethernethash =3D (); +my $target; + +# Read settings +&General::readhash("${General::swroot}/captive/settings", \%settingshash); +&General::readhash("${General::swroot}/ethernet/settings", \%ethernethash); + +# Get the client's IP address +my $client_address =3D $ENV{X_FORWARDED_FOR} || $ENV{REMOTE_ADDR} || ""; + +if ($settingshash{'ENABLE_GREEN'} eq "on" && $ethernethash{'GREEN_ADDRESS'} = ne '') { + if (&General::IpInSubnet($client_address, $ethernethash{'GREEN_ADDRESS'}, $= ethernethash{'GREEN_NETMASK'})) { + $target =3D $ethernethash{'GREEN_ADDRESS'}; + } + +} elsif($settingshash{'ENABLE_BLUE'} eq "on" && $ethernethash{'BLUE_ADDRESS'= } ne '') { + if (&General::IpInSubnet($client_address, $ethernethash{'BLUE_ADDRESS'}, $e= thernethash{'BLUE_NETMASK'})) { + $target =3D $ethernethash{'BLUE_ADDRESS'}; + } + +} else { + exit 0; +} + +print "Status: 302 Moved Temporarily\n"; +print "Location: http://$target:1013/cgi-bin/index.cgi?redirect=3D$safe_url\= n"; +print "Connection: close\n\n"; diff --git a/html/cgi-bin/logs.cgi/log.dat b/html/cgi-bin/logs.cgi/log.dat index 5734fed..f241365 100644 --- a/html/cgi-bin/logs.cgi/log.dat +++ b/html/cgi-bin/logs.cgi/log.dat @@ -51,6 +51,7 @@ $cgiparams{'SECTION'} =3D 'ipfire'; my %sections =3D ( 'auth' =3D> '(\w+\(pam_unix\)\[.*\]: )', 'wio' =3D> '(wio|wio\[.*\])', + 'captive' =3D> '(Captive:)', 'clamav' =3D> '(clamd\[.*\]: |freshclam\[.*\]: )', 'collectd' =3D> '(collectd\[.*\]: )', 'cron' =3D> '(fcron\[.*\]: )', @@ -77,6 +78,7 @@ my %sections =3D ( my %trsections =3D ( 'auth' =3D> "$Lang::tr{'loginlogout'}", 'wio' =3D> 'Who Is Online?', + 'captive' =3D> $Lang::tr{'captive'}, 'clamav' =3D> 'ClamAV', 'collectd' =3D> 'Collectd', 'cron' =3D> 'Cron', diff --git a/html/cgi-bin/ovpnmain.cgi b/html/cgi-bin/ovpnmain.cgi index d46a14e..ceb88c1 100644 --- a/html/cgi-bin/ovpnmain.cgi +++ b/html/cgi-bin/ovpnmain.cgi @@ -1061,8 +1061,15 @@ unless(-d "${General::swroot}/ovpn/n2nconf/$cgiparams{= 'NAME'}"){mkdir "${General } } } -=20 - print CLIENTCONF "ns-cert-type server\n"; =20 + # Check host certificate if X509 is RFC3280 compliant. + # If not, old --ns-cert-type directive will be used. + # If appropriate key usage extension exists, new --remote-cert-tls directi= ve will be used. + my $hostcert =3D `/usr/bin/openssl x509 -text -in ${General::swroot}/ovpn/= certs/servercert.pem`; + if ($hostcert !~ /TLS Web Server Authentication/) { + print CLIENTCONF "ns-cert-type server\n"; + } else { + print CLIENTCONF "remote-cert-tls server\n"; + } print CLIENTCONF "# Auth. Client\n";=20 print CLIENTCONF "tls-client\n";=20 print CLIENTCONF "# Cipher\n";=20 @@ -2173,7 +2180,15 @@ if ($confighash{$cgiparams{'KEY'}}[3] eq 'net'){ } } } - print CLIENTCONF "ns-cert-type server\n"; =20 + # Check host certificate if X509 is RFC3280 compliant. + # If not, old --ns-cert-type directive will be used. + # If appropriate key usage extension exists, new --remote-cert-tls direct= ive will be used. + my $hostcert =3D `/usr/bin/openssl x509 -text -in ${General::swroot}/ovpn= /certs/servercert.pem`; + if ($hostcert !~ /TLS Web Server Authentication/) { + print CLIENTCONF "ns-cert-type server\n"; + } else { + print CLIENTCONF "remote-cert-tls server\n"; + } print CLIENTCONF "# Auth. Client\n";=20 print CLIENTCONF "tls-client\n";=20 print CLIENTCONF "# Cipher\n"; @@ -2332,7 +2347,15 @@ else print CLIENTCONF "comp-lzo\r\n"; } print CLIENTCONF "verb 3\r\n"; - print CLIENTCONF "ns-cert-type server\r\n"; + # Check host certificate if X509 is RFC3280 compliant. + # If not, old --ns-cert-type directive will be used. + # If appropriate key usage extension exists, new --remote-cert-tls directiv= e will be used. + my $hostcert =3D `/usr/bin/openssl x509 -text -in ${General::swroot}/ovpn/c= erts/servercert.pem`; + if ($hostcert !~ /TLS Web Server Authentication/) { + print CLIENTCONF "ns-cert-type server\r\n"; + } else { + print CLIENTCONF "remote-cert-tls server\r\n"; + } print CLIENTCONF "verify-x509-name $vpnsettings{ROOTCERT_HOSTNAME} name\= r\n"; if ($vpnsettings{MSSFIX} eq 'on') { print CLIENTCONF "mssfix\r\n"; diff --git a/html/cgi-bin/proxy.cgi b/html/cgi-bin/proxy.cgi index 0b7d36c..dd83bba 100644 --- a/html/cgi-bin/proxy.cgi +++ b/html/cgi-bin/proxy.cgi @@ -1054,11 +1054,11 @@ if ( -e "/usr/bin/squidclamav" ) { } else { print ""; } -print "".$Lang::tr{'advproxy url filter'}."
"; +print "".$Lang::tr{= 'advproxy url filter'}."
"; print $Lang::tr{'advproxy enabled'}."
"; print "+ ".int(($count**(1/3)) * 6); print ""; -print "".$Lang::tr{'advproxy update accelerator'}."
"; +print "".$Lang:= :tr{'advproxy update accelerator'}."
"; print $Lang::tr{'advproxy enabled'}."
"; print "+ ".int(($count**(1/3)) * 5); print ""; diff --git a/html/cgi-bin/vpnmain.cgi b/html/cgi-bin/vpnmain.cgi index f9508b5..c17ebd6 100644 --- a/html/cgi-bin/vpnmain.cgi +++ b/html/cgi-bin/vpnmain.cgi @@ -3125,6 +3125,8 @@ sub make_algos($$$$$) { =20 if ($grp =3D~ m/^e(.*)$/) { push(@algo, "ecp$1"); + } elsif ($grp =3D~ m/curve25519/) { + push(@algo, "$grp"); } else { push(@algo, "modp$grp"); } @@ -3140,6 +3142,8 @@ sub make_algos($$$$$) { # noop } elsif ($grp =3D~ m/^e(.*)$/) { push(@algo, "ecp$1"); + } elsif ($grp =3D~ m/curve25519/) { + push(@algo, "$grp"); } else { push(@algo, "modp$grp"); } diff --git a/html/html/captive/assets/captive.css b/html/html/captive/assets/= captive.css new file mode 100644 index 0000000..6f231bc --- /dev/null +++ b/html/html/captive/assets/captive.css @@ -0,0 +1,194 @@ +(a)font-face { + font-family: "Ubuntu"; + font-weight: 300; + src: local("Ubuntu Light"), local("Ubuntu-Light"), url("Ubuntu-L.ttf") form= at("truetype"); +} + +(a)font-face { + font-family: "Ubuntu"; + font-weight: 400; + src: local("Ubuntu Regular"), local("Ubuntu-Regular"), url("Ubuntu-R.ttf") = format("truetype"); +} + +(a)font-face { + font-family: "Ubuntu"; + font-weight: 500; + src: local("Ubuntu Medium"), local("Ubuntu-Medium"), url("Ubuntu-M.ttf") fo= rmat("truetype"); +} + +body { + background-image: url("../cgi-bin/logo.cgi"); + background-size: 100%; + background-repeat: no-repeat; + + background-color: #eceff1; + color: #263238; + + display: flex; + min-height: 100vh; + flex-direction: column; +} + +body, input { + font-family: "Ubuntu", sans-serif; + font-size: 14px; +} + +.content { + flex: 1; +} + +.box { + margin: 272px 0 48px 0; + padding: 0 30px 48px 30px; + + position: relative; + display: flex; + flex-direction: column; + background-color: white; + + border: none; + border-radius: 4px; + box-shadow: + 0 19px 38px 0 rgba(0, 0, 0, 0.3), + 0 15px 12px 0 rgba(0, 0, 0, 0.22); +} + +.box-header { + display: flex; + align-items: center; + justify-content: center; + min-height: 128px; +} + +.box-header h1 { + font-size: 40px; +} + +(a)media (min-width: 1200px) { + .box-header { + min-height: none; + } + + .box-header h1 { + margin-top: 24px; + margin-bottom: 20px; + } +} + +.box-block { + padding: 24px 16px 24px 16px; + margin: 0 -8px 40px -8px; + + text-align: center; + background-color: #b71c1c; + color: white; + border-radius: 4px; +} + +(a)media (min-width: 1200px) { + .box-block { + padding: 18px 16px 18px 16px; + margin: 0 0 48px 0; + } +} + +.box-block h4 { + font-size: 20px; +} + +footer { + height: 64px; + background-color: rgba(84, 110, 122, 0.06); /* #546e7a */ +} + +.footer { + display: flex; + align-items: center; +} + +.footer .logo { + width: 64px; + height: 64px; + padding: 8px; +} + +.form-text { + display: inline-block; + height: 36px; + + color: #263238; + background-color: rgba(38, 49, 56, 0,08); + + border: 0; + border-radius: 2px; + box-shadow: inset 0 -2px 0 0 #546e7a; +} + +.form-error { + box-shadow: inset 0 -2px 0 0 #ff3d00; +} + +.form-submit { + display: inline-block; + + font-weight: 500; + text-transform: uppercase; + + height: 36px; + padding: 0 16px 0 16px; + margin: 0 8px 0 8px; + + color: #263238; + background-color: white; + + border: none; + border-radius: 2px; + box-shadow: + 0 2px 4px 0 rgba(0, 0, 0, 0.16), + 0 1px 2px 0 rgba(0, 0, 0, 0.23); +} + +.form-submit:hover { + box-shadow: + 0 3px 6px 0 rgba(0, 0, 0, 0.16), + 0 3px 6px 0 rgba(0, 0, 0, 0.23); +} + +.form-submit:active { + background-color: black; + opacity: 0.16; + box-shadow: none; +} + +.checkbox { + position: relative; + display: block; + + margin-top: 20px; +} + +.checkbox .form-checkbox { + position: absolute; + margin-top: 1px; + margin-left: -24px; + + width: 20px; + height: 20px; + + background-color: rgba(38, 49, 56, 0.08); + + border: 2px solid #546e7a; + border-radius: 2px; +} + +.text-error { + position: block; + margin-top: 6px; + min-height: 23px; + + color: white; + background-color: #ff3d00; + + border-radius: 2px; +} diff --git a/html/html/captive/assets/favicon.ico b/html/html/captive/assets/= favicon.ico new file mode 100644 index 0000000..52da262 Binary files /dev/null and b/html/html/captive/assets/favicon.ico differ diff --git a/html/html/captive/assets/ipfire.png b/html/html/captive/assets/i= pfire.png new file mode 100644 index 0000000..cd84ad5 Binary files /dev/null and b/html/html/captive/assets/ipfire.png differ diff --git a/html/html/captive/template.html b/html/html/captive/template.html new file mode 100644 index 0000000..04be2b1 --- /dev/null +++ b/html/html/captive/template.html @@ -0,0 +1,79 @@ + + + + + <TMPL_VAR NAME=3D"TITLE"> + + + + + + + + + + + + + +

+
+
+
+
+

+
+ +
+

+ +
+ + "> + + + form-error" type=3D"text" name=3D"COUPON"> + "> + +
+ +
+ + "> +
+ + +
+ +
+
+
+
+ + + + +
+
+
+
+ +
+
+
+ 3D"IPFire + Powered by IPFire +
+
+
+ + diff --git a/html/html/dial.cgi b/html/html/dial.cgi deleted file mode 100644 index 7c7b7db..0000000 --- a/html/html/dial.cgi +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/perl - -print "Status: 302 Moved\n"; -print "Location: /cgi-bin/dial/index.cgi\n\n"; diff --git a/langs/de/cgi-bin/de.pl b/langs/de/cgi-bin/de.pl index 7bc1c49..6dff5d7 100644 --- a/langs/de/cgi-bin/de.pl +++ b/langs/de/cgi-bin/de.pl @@ -7,6 +7,60 @@ 'Add Rule' =3D> 'Regel hinzuf=C3=BCgen', 'Add a route' =3D> 'Eine Route hinzuf=C3=BCgen', 'Async logging enabled' =3D> 'Aktiviere asynchrones Schreiben des Syslogs', +'Captive 1day' =3D> '1 Tag', +'Captive 1month' =3D> '1 Monat', +'Captive 1week' =3D> '1 Woche', +'Captive ACTIVATE' =3D> 'AKTIVIEREN', +'Captive GAIN ACCESS' =3D> 'ZUGANG', +'Captive WiFi coupon' =3D> 'WLAN-Gutschein', +'Captive activate' =3D> 'Aktivieren', +'Captive activated' =3D> 'Aktiviert', +'Captive active on' =3D> 'Aktiviert auf', +'Captive agree tac' =3D> 'Bedingungen akzeptieren', +'Captive auth_lic' =3D> 'Lizenz', +'Captive auth_vou' =3D> 'Gutschein', +'Captive authentication' =3D> 'Art der Anmeldung', +'Captive brand color' =3D> 'Highlight-Farbe', +'Captive branding' =3D> 'Branding', +'Captive client session expiry time' =3D> 'Ablaufzeit', +'Captive clients' =3D> 'Clients', +'Captive config' =3D> 'Konfiguration', +'Captive coupon' =3D> 'Gutschein', +'Captive err doublevoucher' =3D> 'Ein Gutschein mit diesem Code ist bereits = im Umlauf', +'Captive expire' =3D> 'Ablauf', +'Captive expiry time' =3D> 'Ablaufzeit', +'Captive export coupons' =3D> 'Gutscheine exportieren', +'Captive generate coupons' =3D> 'Gutscheine generieren', +'Captive generated coupon no' =3D> 'Anzahl der generierten Gutscheine', +'Captive genvoucher' =3D> 'Gutschein generieren', +'Captive invalid logosize' =3D> 'Die hochgeladene Datei entspricht nicht der= vorgegeben Aufl=C3=B6sung von mindestens 1280x400 und maximal 1920x800 Pixel= n', +'Captive invalid_voucher' =3D> 'Dieser Code ist ung=C3=BCltig. Bitte versuch= en Sie es erneut', +'Captive ip' =3D> 'IP-Addresse', +'Captive issued coupons' =3D> 'Ausgestellte Gutscheine', +'Captive logo uploaded' =3D> 'Logo hochgeladen', +'Captive logo_set' =3D> 'Aktuelles Logo', +'Captive logo_upload' =3D> 'Logo hochladen', +'Captive logo_upload1' =3D> '(PNG, min. 1280x400, max. 1920x800)', +'Captive mac' =3D> 'MAC-Adresse', +'Captive menu' =3D> 'Captive-Portal', +'Captive noexpiretime' =3D> 'Es wurde kein g=C3=BCltiger Verbindungszeitraum= angegeben', +'Captive nolimit' =3D> 'Unbegrenzt', +'Captive nr' =3D> 'Nummer', +'Captive please accept the terms and conditions' =3D> 'Bitte akzeptieren Sie= die Bedingungen', +'Captive portal' =3D> 'IPFire Captive-Portal', +'Captive portal coupons' =3D> 'Captive-Portal-Gutscheine', +'Captive terms' =3D> 'Bedingungen', +'Captive terms short' =3D> 'Bedingungen', +'Captive time' =3D> 'Erlaubter Nutzungszeitraum nach Aktivierung (Stunden)', +'Captive title' =3D> 'Titel der Anmeldeseite', +'Captive upload logo' =3D> 'Logo hochladen', +'Captive upload logo recommendations' =3D> '(PNG oder JPEG, 1280x720 Pixel e= mpfohlen)', +'Captive valid for' =3D> 'G=C3=BCltig f=C3=BCr', +'Captive voactive' =3D> 'Aktive Gutscheine', +'Captive voucher' =3D> 'Gutschein', +'Captive vouchervalid' =3D> 'Erlaubter Zeitraum f=C3=BCr Gutschein', +'Captive vout' =3D> 'Ausgegebene Gutscheine', +'Captive wrong ext' =3D> 'Die hochgeladene Datei hat den falschen Dateityp', 'Choose Rule' =3D> 'W=C3=A4hlen Sie eine der untenstehenden Regeln au= s.', 'Class' =3D> 'Klasse', 'Class was deleted' =3D> 'wurde mit eventuell vorhandenen Unterklassen gel= =C3=B6scht', @@ -841,6 +895,7 @@ 'edit share' =3D> 'Freigabe bearbeiten', 'editor' =3D> 'Editor', 'eg' =3D> 'z.B.:', +'eight hours' =3D> '8 Stunden', 'email config' =3D> 'Konfiguration', 'email empty field' =3D> 'Leeres Feld', 'email error' =3D> 'FEHLER: Test-E-Mail konnte nicht versendet werden', @@ -976,6 +1031,7 @@ 'forwarding rule added' =3D> 'Weiterleitungsregel hinzugef=C3=BCgt. Starte W= eiterleitung neu', 'forwarding rule removed' =3D> 'Weiterleitungsregel entfernt. Starte Weiterl= eitung neu', 'forwarding rule updated' =3D> 'Weiterleitungsregel aktualisiert; starte Wei= terleitung neu', +'four hours' =3D> '4 Stunden', 'free' =3D> 'Frei', 'free memory' =3D> 'Freier Speicher ', 'free swap' =3D> 'Freier Swap', @@ -1668,6 +1724,7 @@ 'ok' =3D> 'OK', 'older' =3D> '=C3=84lter', 'on' =3D> 'on', +'one year' =3D> 'Ein Jahr', 'online help en' =3D> 'Online-Hilfe (auf Deutsch)', 'only digits allowed in holdoff field' =3D> 'Im Holdoff-Feld sind nur Ziffer= n erlaubt', 'only digits allowed in max retries field' =3D> 'Im Feld "Maximale Wied= erholversuche" sind nur Ziffern erlaubt.', @@ -2258,6 +2315,8 @@ 'tripwirewarningkeys' =3D> 'ACHTUNG - Sie l=C3=B6schen hiermit ihre bestehen= den Schl=C3=BCssel, ihre Konfiguration und Datenbank und legen alles neu an.', 'tripwirewarningpolicy' =3D> 'ACHTUNG - Ihr Policy wird neu erzeugt, anschli= e=C3=9Fen wird die Datenbank neu initialisiert. Hierf=C3=BCr wird der Site-Ke= y und Local-Key ben=C3=B6tigt.', 'tuesday' =3D> 'Dienstag', +'twelve hours' =3D> '12 Stunden', +'two weeks' =3D> 'Zwei Wochen', 'type' =3D> 'Typ', 'umount' =3D> 'Abmelden', 'umount removable media before to unplug' =3D> 'Wechselmedien vor dem Entfer= nen unbedingt abmelden', diff --git a/langs/en/cgi-bin/en.pl b/langs/en/cgi-bin/en.pl index ab1f401..4efff6e 100644 --- a/langs/en/cgi-bin/en.pl +++ b/langs/en/cgi-bin/en.pl @@ -1,12 +1,67 @@ %tr =3D (=20 %tr, =20 +'24 hours' =3D> '24 Hours', 'Act as' =3D> 'Act as:', 'Add Level7 rule' =3D> 'Add Level7 rule', 'Add Port Rule' =3D> 'Add port rule', 'Add Rule' =3D> 'Add rule', 'Add a route' =3D> 'Add a route', 'Async logging enabled' =3D> 'Enable asynchronous writing of the syslog file= ', +'Captive 1day' =3D> '1 day', +'Captive 1month' =3D> '1 month', +'Captive 1week' =3D> '1 week', +'Captive ACTIVATE' =3D> 'ACTIVATE', +'Captive GAIN ACCESS' =3D> 'GAIN ACCESS', +'Captive WiFi coupon' =3D> 'WiFi Coupon', +'Captive activate' =3D> 'Activate', +'Captive activated' =3D> 'Activated', +'Captive active on' =3D> 'Activated on', +'Captive agree tac' =3D> 'I agree with the terms & conditions below.', +'Captive auth_lic' =3D> 'License', +'Captive auth_vou' =3D> 'Voucher', +'Captive authentication' =3D> 'Type of Access', +'Captive brand color' =3D> 'Brand Color', +'Captive branding' =3D> 'Branding', +'Captive client session expiry time' =3D> 'Session Expiry Time', +'Captive config' =3D> 'Settings', +'Captive coupon' =3D> 'Coupon', +'Captive err doublevoucher' =3D> 'A coupon with this code already exists', +'Captive expire' =3D> 'Expire', +'Captive expiry time' =3D> 'Expiry Time', +'Captive export coupons' =3D> 'Export Coupons', +'Captive generate coupons' =3D> 'Generate Coupons', +'Captive generated coupon no' =3D> 'Number of coupons', +'Captive heading terms' =3D> 'Terms & Conditions', +'Captive heading voucher' =3D> 'Coupon or Access Code', +'Captive invalid coupon' =3D> 'You entered an invalid coupon code. Please tr= y again.', +'Captive invalid logosize' =3D> 'The uploaded image file does not meet the r= equired resolution of at least 1280x400 but not larger than 1920x800 pixels', +'Captive invalid_voucher' =3D> 'Invalid code. Please try again', +'Captive ip' =3D> 'IP Address', +'Captive issued coupons' =3D> 'Issued Coupons', +'Captive logo uploaded' =3D> 'Logo uploaded', +'Captive logo_set' =3D> 'Current Logo', +'Captive mac' =3D> 'MAC Address', +'Captive menu' =3D> 'Captive Portal', +'Captive noexpiretime' =3D> 'No valid connection time range given', +'Captive nolimit' =3D> 'unlimited', +'Captive nr' =3D> 'Number', +'Captive please accept the terms and conditions' =3D> 'Please accept the ter= ms & conditions', +'Captive please enter a coupon code' =3D> 'Please enter a coupon code', +'Captive portal' =3D> 'IPFire Captive Portal', +'Captive portal coupons' =3D> 'Captive Portal Coupons', +'Captive terms' =3D> 'Terms & Conditions', +'Captive terms short' =3D> 'T&Cs', +'Captive time' =3D> 'Access time post activation (hours)', +'Captive title' =3D> 'Title of Login Page', +'Captive upload logo' =3D> 'Upload Logo', +'Captive upload logo recommendations' =3D> '(PNG or JPEG, recommended 1280x7= 20 pixels)', +'Captive valid for' =3D> 'Valid for', +'Captive voactive' =3D> 'Active Coupons', +'Captive voucher' =3D> 'Coupon', +'Captive vouchervalid' =3D> 'Allowed time for this coupon', +'Captive vout' =3D> 'Issued Vouchers', +'Captive wrong ext' =3D> 'Uploaded file has wrong filetype', 'Choose Rule' =3D> 'Choose one of the following rules.', 'Class' =3D> 'Class', 'Class was deleted' =3D> 'with potential subclasses was deleted', @@ -650,7 +705,7 @@ 'day after' =3D> 'Day after', 'day before' =3D> 'Day before', 'day-graph' =3D> 'Day', -'days' =3D> 'days.', +'days' =3D> 'Days', 'dbfile' =3D> 'Dbfile', 'ddns help dnsmadeeasy' =3D> 'In the field for hostname enter your ID (or a = list of IDs seperated by;)', 'ddns help freedns' =3D> 'In the fied username enter your connect string', @@ -867,6 +922,7 @@ 'edit share' =3D> 'Edit share', 'editor' =3D> 'Editor', 'eg' =3D> 'e.g.:', +'eight hours' =3D> '8 Hours', 'email config' =3D> 'Configuration', 'email empty field' =3D> 'Empty field', 'email error' =3D> 'ERROR: Test mail could not be sent', @@ -1003,6 +1059,7 @@ 'forwarding rule added' =3D> 'Forwarding rule added; restarting forwarder', 'forwarding rule removed' =3D> 'Forwarding rule removed; restarting forwarde= r', 'forwarding rule updated' =3D> 'Forwarding rule updated; restarting forwarde= r', +'four hours' =3D> '4 Hours', 'free' =3D> 'Free', 'free memory' =3D> 'Free Memory ', 'free swap' =3D> 'Free Swap', @@ -1282,7 +1339,7 @@ 'hosts config changed' =3D> 'Hosts config changed', 'hour' =3D> 'Hour', 'hour-graph' =3D> 'Hour', -'hours' =3D> 'hours', +'hours' =3D> 'Hours', 'hours2' =3D> 'Hours', 'ibod for dual isdn only' =3D> 'iBOD can only be used with Dual ISDN.', 'icmp selected but no type' =3D> 'ICMP selected for protocol, but no ICMP ty= pe specified.', @@ -1606,7 +1663,7 @@ 'monthly volume' =3D> 'Monthly volume', 'monthly volume start day' =3D> 'First day of monthly period', 'monthly volume start day short' =3D> 'First day', -'months' =3D> 'months', +'months' =3D> 'Months', 'more' =3D> 'more', 'most preferred' =3D> 'most preferred', 'mount' =3D> 'Mount', @@ -1701,6 +1758,10 @@ 'ok' =3D> 'OK', 'older' =3D> 'Older', 'on' =3D> 'on', +'one hour' =3D> 'One Hour', +'one month' =3D> 'One Month', +'one week' =3D> 'One Week', +'one year' =3D> 'One Year', 'online help en' =3D> 'Online help (in english)', 'only digits allowed in holdoff field' =3D> 'Only digits allowed in holdoff = field', 'only digits allowed in max retries field' =3D> 'Only digits allowed in max = retries field.', @@ -2299,6 +2360,8 @@ 'tripwirewarningkeys' =3D> 'WARNING - This will erase your current keys, con= fig, and database and generate them new.', 'tripwirewarningpolicy' =3D> 'WARNING - Your policy will be rebuild, after t= hat your database will be reinitalised. Therefor the site-key and the local-k= ey are neeeded.', 'tuesday' =3D> 'Tuesday', +'twelve hours' =3D> '12 Hours', +'two weeks' =3D> 'Two Weeks', 'type' =3D> 'Type', 'umount' =3D> 'Umount', 'umount removable media before to unplug' =3D> 'Umount removable media befor= e unplugging the device', @@ -2314,6 +2377,7 @@ 'unix password sync' =3D> 'Unix Password Sync', 'unix shell' =3D> 'UNIX Shell', 'unknown' =3D> 'UNKNOWN', +'unlimited' =3D> 'Unlimited', 'unnamed' =3D> 'Unnamed', 'update' =3D> 'Update', 'update accelerator' =3D> 'Update Accelerator', @@ -2694,7 +2758,7 @@ 'week' =3D> 'Week', 'week-graph' =3D> 'Week', 'weekly firewallhits' =3D> 'weekly firewallhits', -'weeks' =3D> 'weeks', +'weeks' =3D> 'Weeks', 'wildcards' =3D> 'Wildcards', 'wins server' =3D> 'Wins Server', 'wins support' =3D> 'Wins Support', diff --git a/lfs/Config b/lfs/Config index d7d2a24..1077f25 100644 --- a/lfs/Config +++ b/lfs/Config @@ -44,8 +44,8 @@ endif # URLs that are common sources of downloads. If you're having trouble with # a site you should change its URL to that of a suitable mirror site. # -URL_IPFIRE =3D http://source.ipfire.org/source-2.x -URL_TOOLCHAIN =3D http://source.ipfire.org/toolchains +URL_IPFIRE =3D https://source.ipfire.org/source-2.x +URL_TOOLCHAIN =3D https://source.ipfire.org/toolchains URL_SOURCE =3D git.ipfire.org:/pub/sources/source-2.x =20 # Don't change this; it will be overridden by other makefiles where necessar= y. @@ -204,7 +204,7 @@ define PAK tar xf /install/packages/package/files.tmp -C /install/packages/package/tmp= / \ -p --numeric-owner rm -f /install/packages/package/files.tmp - cd /install/packages/package/tmp/ && tar -c -p --numeric-owner -J -f /insta= ll/packages/package/files.tar.xz * =09 + cd /install/packages/package/tmp/ && XZ_OPT=3D-T0 tar -c -p --numeric-owner= -J -f /install/packages/package/files.tar.xz * rm -r /install/packages/package/tmp -cat /install/packages/package/ROOTFILES | grep -v "#" > /install/packages/= package/ROOTFILES.tmp mv /install/packages/package/ROOTFILES.tmp /install/packages/package/ROOTFI= LES diff --git a/lfs/apache2 b/lfs/apache2 index b7a7416..4276a88 100644 --- a/lfs/apache2 +++ b/lfs/apache2 @@ -1,7 +1,7 @@ ############################################################################= ### # = # # IPFire.org - A linux based firewall = # -# Copyright (C) 2007-2014 IPFire Team = # +# Copyright (C) 2007-2017 IPFire Team = # # = # # This program is free software: you can redistribute it and/or modify = # # it under the terms of the GNU General Public License as published by = # @@ -25,7 +25,7 @@ =20 include Config =20 -VER =3D 2.4.27 +VER =3D 2.4.28 =20 THISAPP =3D httpd-$(VER) DL_FILE =3D $(THISAPP).tar.bz2 @@ -45,7 +45,7 @@ objects =3D $(DL_FILE) =20 $(DL_FILE) =3D $(DL_FROM)/$(DL_FILE) =20 -$(DL_FILE)_MD5 =3D 97b6bbfa83c866dbe20ef317e3afd108 +$(DL_FILE)_MD5 =3D 49007ffe8e37a0834255b279810edf24 =20 install : $(TARGET) =20 @@ -75,8 +75,6 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && patch -Np0 -i $(DIR_SRC)/src/patches/apache-2.4.27-PR61382= -fix.patch - cd $(DIR_APP) && patch -Np0 -i $(DIR_SRC)/src/patches/apache-2.4.27-CVE-201= 7-9798-fix.patch ### Add IPFire's layout, too echo "# IPFire layout" >> $(DIR_APP)/config.layout echo "" >> $(DIR_APP)/config.layout @@ -117,5 +115,8 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) cp -rf $(DIR_CONF)/httpd/* /etc/httpd/conf ln -sf $(CONFIG_ROOT)/main/hostname.conf /etc/httpd/conf/ =20 + # Create captive logging directory + -mkdir -pv /var/log/httpd/captive + @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/lfs/bootstrap b/lfs/bootstrap new file mode 100644 index 0000000..15e882e --- /dev/null +++ b/lfs/bootstrap @@ -0,0 +1,79 @@ +############################################################################= ### +# = # +# IPFire.org - A linux based firewall = # +# Copyright (C) 2007-2016 IPFire Team = # +# = # +# This program is free software: you can redistribute it and/or modify = # +# it under the terms of the GNU General Public License as published by = # +# the Free Software Foundation, either version 3 of the License, or = # +# (at your option) any later version. = # +# = # +# This program is distributed in the hope that it will be useful, = # +# but WITHOUT ANY WARRANTY; without even the implied warranty of = # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the = # +# GNU General Public License for more details. = # +# = # +# You should have received a copy of the GNU General Public License = # +# along with this program. If not, see . = # +# = # +############################################################################= ### + +############################################################################= ### +# Definitions +############################################################################= ### + +include Config + +VER =3D 4.0.0-alpha.6 + +THISAPP =3D bootstrap-$(VER) +DL_FILE =3D $(THISAPP)-dist.zip +DL_FROM =3D $(URL_IPFIRE) +DIR_APP =3D $(DIR_SRC)/$(THISAPP)-dist +TARGET =3D $(DIR_INFO)/$(THISAPP) + +############################################################################= ### +# Top-level Rules +############################################################################= ### + +objects =3D $(DL_FILE) + +$(DL_FILE) =3D $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_MD5 =3D 7fed4691d4d7ca19820009dad86e1aef + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +md5 : $(subst %,%_MD5,$(objects)) + +############################################################################= ### +# Downloading, checking, md5sum +############################################################################= ### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_MD5,$(objects)) : + @$(MD5) + +############################################################################= ### +# Installation Details +############################################################################= ### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && unzip $(DIR_DL)/$(DL_FILE) + + -mkdir -pv /usr/share/bootstrap/{css,js} + cd $(DIR_APP) && cp -vf css/* /usr/share/bootstrap/css + cd $(DIR_APP) && cp -vf js/* /usr/share/bootstrap/js + + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/lfs/cdrom b/lfs/cdrom index 58e754f..7a7fff1 100644 --- a/lfs/cdrom +++ b/lfs/cdrom @@ -32,9 +32,12 @@ TARGET =3D $(DIR_INFO)/$(THISAPP) ifeq "$(BUILD_PLATFORM)" "arm" TAR_OPTIONS =3D else - TAR_OPTIONS =3D --lzma + TAR_OPTIONS =3D --xz endif =20 +# Enable multi-threaded compression for LZMA +export XZ_OPT =3D --threads=3D0 + ############################################################################= ### # Top-level Rules ############################################################################= ### diff --git a/lfs/configroot b/lfs/configroot index 760505e..ad02996 100644 --- a/lfs/configroot +++ b/lfs/configroot @@ -50,7 +50,7 @@ $(TARGET) : @$(PREBUILD) =20 # Create all directories - for i in addon-lang auth backup ca certs connscheduler crls ddns dhcp dhcpc= dns dnsforward \ + for i in addon-lang auth backup ca captive certs connscheduler crls ddns dh= cp dhcpc dns dnsforward \ ethernet extrahd/bin fwlogs fwhosts firewall isdn key langs logging mac m= ain \ menu.d modem nfs optionsfw \ ovpn patches pakfire portfw ppp private proxy/advanced/cre \ @@ -62,7 +62,7 @@ $(TARGET) : =20 # Touch empty files for i in auth/users backup/include.user backup/exclude.user \ - certs/index.txt ddns/config ddns/noipsettings ddns/settings ddns/ipcach= e dhcp/settings \ + captive/settings captive/agb.txt captive/clients captive/voucher_out ce= rts/index.txt ddns/config ddns/noipsettings ddns/settings ddns/ipcache dhcp/s= ettings \ dhcp/fixleases dhcp/advoptions dhcp/dhcpd.conf.local dns/settings dnsfo= rward/config ethernet/aliases ethernet/settings ethernet/known_nics ethernet/= scanned_nics \ ethernet/wireless extrahd/scan extrahd/devices extrahd/partitions extra= hd/settings firewall/settings firewall/config firewall/geoipblock firewall/in= put firewall/outgoing \ fwhosts/customnetworks fwhosts/customhosts fwhosts/customgroups fwhosts= /customservicegrp fwhosts/customgeoipgrp fwlogs/ipsettings fwlogs/portsetting= s \ diff --git a/lfs/ddns b/lfs/ddns index 3d7efa5..14890cb 100644 --- a/lfs/ddns +++ b/lfs/ddns @@ -28,7 +28,7 @@ VER =3D 010 =20 THISAPP =3D ddns-$(VER) DL_FILE =3D $(THISAPP).tar.xz -DL_FROM =3D http://source.ipfire.org/releases/ddns/ +DL_FROM =3D https://source.ipfire.org/releases/ddns/ DIR_APP =3D $(DIR_SRC)/$(THISAPP) TARGET =3D $(DIR_INFO)/$(THISAPP) =20 diff --git a/lfs/fireinfo b/lfs/fireinfo index 55a7845..67d4cba 100644 --- a/lfs/fireinfo +++ b/lfs/fireinfo @@ -28,7 +28,7 @@ VER =3D 2.1.11 =20 THISAPP =3D fireinfo-v$(VER) DL_FILE =3D $(THISAPP).tar.gz -DL_FROM =3D http://source.ipfire.org/releases/fireinfo/ +DL_FROM =3D https://source.ipfire.org/releases/fireinfo/ DIR_APP =3D $(DIR_SRC)/$(THISAPP) TARGET =3D $(DIR_INFO)/$(THISAPP) =20 diff --git a/lfs/flash-images b/lfs/flash-images index 8ed7f63..a75d711 100644 --- a/lfs/flash-images +++ b/lfs/flash-images @@ -137,7 +137,7 @@ endif =20 # Install IPFire ifneq "$(BUILD_PLATFORM)" "arm" - tar -x --lzma -C $(MNThdd)/ -f /install/cdrom/distro.img + tar -x --xz -C $(MNThdd)/ -f /install/cdrom/distro.img else tar -x -C $(MNThdd)/ -f /install/cdrom/distro.img endif diff --git a/lfs/installer b/lfs/installer index 347d90e..790ac06 100644 --- a/lfs/installer +++ b/lfs/installer @@ -59,6 +59,7 @@ $(TARGET) : --with-distro-name=3D"$(NAME)" \ --with-distro-sname=3D"$(SNAME)" \ --with-distro-slogan=3D"$(SLOGAN)" \ + --with-distro-version=3D"$(VERSION)-core$(CORE)" \ --with-config-root=3D"$(CONFIG_ROOT)" \ --with-download-url=3D"$(DOWNLOAD_URL)" =20 diff --git a/lfs/ipfire-netboot b/lfs/ipfire-netboot index 984c044..a2607cd 100644 --- a/lfs/ipfire-netboot +++ b/lfs/ipfire-netboot @@ -24,12 +24,12 @@ =20 include Config =20 -VER =3D v1.1 -PXE_VER =3D 300a371 +VER =3D v2.0 +PXE_VER =3D 1b67a05 =20 THISAPP =3D ipfire-netboot-$(VER) DL_FILE =3D $(THISAPP).tar.gz -DL_FROM =3D http://source.ipfire.org/releases/ipfire-netboot/ +DL_FROM =3D https://source.ipfire.org/releases/ipfire-netboot/ DIR_APP =3D $(DIR_SRC)/$(THISAPP) TARGET =3D $(DIR_INFO)/$(THISAPP) SUP_ARCH =3D x86_64 i586 @@ -43,8 +43,8 @@ objects =3D $(DL_FILE) ipxe-$(PXE_VER).tar.gz $(DL_FILE) =3D $(DL_FROM)/$(DL_FILE) ipxe-$(PXE_VER).tar.gz =3D $(URL_IPFIRE)/ipxe-$(PXE_VER).tar.gz =20 -$(DL_FILE)_MD5 =3D 0dccbcfbc1eafb9d510bd15935b87ef6 -ipxe-$(PXE_VER).tar.gz_MD5 =3D 8a17fb4d6866214feb28cca55630b85f +$(DL_FILE)_MD5 =3D a1f78e4b92457ecefb97d557b1b7a48e +ipxe-$(PXE_VER).tar.gz_MD5 =3D 300fe0e096e58bfb4318bc39b63f9a88 =20 install : $(TARGET) =20 diff --git a/lfs/logrotate b/lfs/logrotate index 70e9f48..3749fd7 100644 --- a/lfs/logrotate +++ b/lfs/logrotate @@ -24,7 +24,7 @@ =20 include Config =20 -VER =3D 3.12.3 +VER =3D 3.13.0 =20 THISAPP =3D logrotate-$(VER) DL_FILE =3D logrotate-$(VER).tar.gz @@ -40,7 +40,7 @@ objects =3D $(DL_FILE) =20 $(DL_FILE) =3D $(DL_FROM)/$(DL_FILE) =20 -$(DL_FILE)_MD5 =3D 3162ada6f1036c1a4a0a68262989ff73 +$(DL_FILE)_MD5 =3D 72c2c3028d060131b388a9b330215549 =20 install : $(TARGET) =20 diff --git a/lfs/openvpn b/lfs/openvpn index b7f5217..8307d01 100644 --- a/lfs/openvpn +++ b/lfs/openvpn @@ -1,7 +1,7 @@ ############################################################################= ### # = # # IPFire.org - A linux based firewall = # -# Copyright (C) 2015 IPFire Team = # +# Copyright (C) 2017 IPFire Team = # # = # # This program is free software: you can redistribute it and/or modify = # # it under the terms of the GNU General Public License as published by = # @@ -24,7 +24,7 @@ =20 include Config =20 -VER =3D 2.3.17 +VER =3D 2.3.18 =20 THISAPP =3D openvpn-$(VER) DL_FILE =3D $(THISAPP).tar.xz @@ -40,7 +40,7 @@ objects =3D $(DL_FILE) =20 $(DL_FILE) =3D $(DL_FROM)/$(DL_FILE) =20 -$(DL_FILE)_MD5 =3D df9291c5bd466fe73c2544a800f3b441 +$(DL_FILE)_MD5 =3D 844ec9c64aae62051478784b8562f881 =20 install : $(TARGET) =20 @@ -74,7 +74,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) --prefix=3D/usr \ --sysconfdir=3D/var/ipfire/ovpn \ --enable-iproute2 \ - --enable-password-save \ --enable-plugins \ --enable-plugin-auth-pam \ --enable-plugin-down-root diff --git a/lfs/pakfire3 b/lfs/pakfire3 index d71d424..e514528 100644 --- a/lfs/pakfire3 +++ b/lfs/pakfire3 @@ -28,7 +28,7 @@ VER =3D 0.9.25 =20 THISAPP =3D pakfire-$(VER) DL_FILE =3D $(THISAPP).tar.gz -DL_FROM =3D http://source.ipfire.org/releases/pakfire/ +DL_FROM =3D https://source.ipfire.org/releases/pakfire/ DIR_APP =3D $(DIR_SRC)/$(THISAPP) TARGET =3D $(DIR_INFO)/$(THISAPP) PROG =3D pakfire3 diff --git a/lfs/perl-Font-TTF b/lfs/perl-Font-TTF new file mode 100644 index 0000000..ea60a5e --- /dev/null +++ b/lfs/perl-Font-TTF @@ -0,0 +1,78 @@ +############################################################################= ### +# = # +# IPFire.org - A linux based firewall = # +# Copyright (C) 2011 IPFire Team = # +# = # +# This program is free software: you can redistribute it and/or modify = # +# it under the terms of the GNU General Public License as published by = # +# the Free Software Foundation, either version 3 of the License, or = # +# (at your option) any later version. = # +# = # +# This program is distributed in the hope that it will be useful, = # +# but WITHOUT ANY WARRANTY; without even the implied warranty of = # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the = # +# GNU General Public License for more details. = # +# = # +# You should have received a copy of the GNU General Public License = # +# along with this program. If not, see . = # +# = # +############################################################################= ### + +############################################################################= ### +# Definitions +############################################################################= ### + +include Config + +VER =3D 1.06 + +THISAPP =3D Font-TTF-$(VER) +DL_FILE =3D $(THISAPP).tar.gz +DL_FROM =3D $(URL_IPFIRE) +DIR_APP =3D $(DIR_SRC)/$(THISAPP) + +TARGET =3D $(DIR_INFO)/$(THISAPP) + +############################################################################= ### +# Top-level Rules +############################################################################= ### + +objects =3D $(DL_FILE) + +$(DL_FILE) =3D $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_MD5 =3D 241b59310ad4450e6e050d5e790f1b21 + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +md5 : $(subst %,%_MD5,$(objects)) + +############################################################################= ### +# Downloading, checking, md5sum +############################################################################= ### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_MD5,$(objects)) : + @$(MD5) + +############################################################################= ### +# Installation Details +############################################################################= ### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && perl Makefile.PL + cd $(DIR_APP) && make $(MAKETUNING) + cd $(DIR_APP) && make install + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/lfs/perl-IO-String b/lfs/perl-IO-String new file mode 100644 index 0000000..6bacfe2 --- /dev/null +++ b/lfs/perl-IO-String @@ -0,0 +1,78 @@ +############################################################################= ### +# = # +# IPFire.org - A linux based firewall = # +# Copyright (C) 2011 IPFire Team = # +# = # +# This program is free software: you can redistribute it and/or modify = # +# it under the terms of the GNU General Public License as published by = # +# the Free Software Foundation, either version 3 of the License, or = # +# (at your option) any later version. = # +# = # +# This program is distributed in the hope that it will be useful, = # +# but WITHOUT ANY WARRANTY; without even the implied warranty of = # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the = # +# GNU General Public License for more details. = # +# = # +# You should have received a copy of the GNU General Public License = # +# along with this program. If not, see . = # +# = # +############################################################################= ### + +############################################################################= ### +# Definitions +############################################################################= ### + +include Config + +VER =3D 1.08 + +THISAPP =3D IO-String-$(VER) +DL_FILE =3D $(THISAPP).tar.gz +DL_FROM =3D $(URL_IPFIRE) +DIR_APP =3D $(DIR_SRC)/$(THISAPP) + +TARGET =3D $(DIR_INFO)/$(THISAPP) + +############################################################################= ### +# Top-level Rules +############################################################################= ### + +objects =3D $(DL_FILE) + +$(DL_FILE) =3D $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_MD5 =3D 250e5424f290299fc3d6b5d1e9da3835 + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +md5 : $(subst %,%_MD5,$(objects)) + +############################################################################= ### +# Downloading, checking, md5sum +############################################################################= ### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_MD5,$(objects)) : + @$(MD5) + +############################################################################= ### +# Installation Details +############################################################################= ### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && perl Makefile.PL + cd $(DIR_APP) && make $(MAKETUNING) + cd $(DIR_APP) && make install + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/lfs/perl-PDF-API2 b/lfs/perl-PDF-API2 index 8b0af9a..a47a076 100644 --- a/lfs/perl-PDF-API2 +++ b/lfs/perl-PDF-API2 @@ -24,15 +24,14 @@ =20 include Config =20 -VER =3D 2.020 +VER =3D 2.033 =20 THISAPP =3D PDF-API2-$(VER) DL_FILE =3D $(THISAPP).tar.gz DL_FROM =3D $(URL_IPFIRE) DIR_APP =3D $(DIR_SRC)/$(THISAPP) + TARGET =3D $(DIR_INFO)/$(THISAPP) -PROG =3D perl-PDF-API2 -PAK_VER =3D 1 =20 ############################################################################= ### # Top-level Rules @@ -42,7 +41,7 @@ objects =3D $(DL_FILE) =20 $(DL_FILE) =3D $(DL_FROM)/$(DL_FILE) =20 -$(DL_FILE)_MD5 =3D c0d20bfd03883b5b2b2a7fd47455249a +$(DL_FILE)_MD5 =3D 4223a38add42741f996bd67d5f2f8e5b =20 install : $(TARGET) =20 @@ -52,9 +51,6 @@ download :$(patsubst %,$(DIR_DL)/%,$(objects)) =20 md5 : $(subst %,%_MD5,$(objects)) =20 -dist:=20 - @$(PAK) - ############################################################################= ### # Downloading, checking, md5sum ############################################################################= ### diff --git a/lfs/squid-accounting b/lfs/squid-accounting index ff78d36..9bc75f0 100644 --- a/lfs/squid-accounting +++ b/lfs/squid-accounting @@ -15,9 +15,9 @@ THISAPP =3D squid-accounting-$(VER) DIR_APP =3D $(DIR_SRC)/$(THISAPP) TARGET =3D $(DIR_INFO)/$(THISAPP) PROG =3D squid-accounting -PAK_VER =3D 9 +PAK_VER =3D 10 =20 -DEPS =3D "perl-DBI perl-DBD-SQLite perl-File-ReadBackwards perl-PDF-AP= I2" +DEPS =3D "perl-DBI perl-DBD-SQLite perl-File-ReadBackwards" =20 ############################################################################= ### # Top-level Rules diff --git a/lfs/stage2 b/lfs/stage2 index b70bde7..0a5ac65 100644 --- a/lfs/stage2 +++ b/lfs/stage2 @@ -107,6 +107,7 @@ endif # Move script to correct place. mv -vf /usr/local/bin/ovpn-ccd-convert /usr/sbin/ mv -vf /usr/local/bin/ovpn-collectd-convert /usr/sbin/ + mv -vf /usr/local/bin/captive-cleanup /usr/bin/ =09 # Install firewall scripts. mkdir -pv /usr/lib/firewall diff --git a/lfs/tor b/lfs/tor index 9e46344..867f01f 100644 --- a/lfs/tor +++ b/lfs/tor @@ -24,7 +24,7 @@ =20 include Config =20 -VER =3D 0.3.0.10 +VER =3D 0.3.1.7 =20 THISAPP =3D tor-$(VER) DL_FILE =3D $(THISAPP).tar.gz @@ -32,7 +32,7 @@ DL_FROM =3D $(URL_IPFIRE) DIR_APP =3D $(DIR_SRC)/$(THISAPP) TARGET =3D $(DIR_INFO)/$(THISAPP) PROG =3D tor -PAK_VER =3D 22 +PAK_VER =3D 23 =20 DEPS =3D "" =20 @@ -44,7 +44,7 @@ objects =3D $(DL_FILE) =20 $(DL_FILE) =3D $(DL_FROM)/$(DL_FILE) =20 -$(DL_FILE)_MD5 =3D c9920169798c28b60b03fa3f0e592509 +$(DL_FILE)_MD5 =3D ec7c9f588c9e1a42c09bcc097a1e55eb =20 install : $(TARGET) =20 diff --git a/lfs/ubuntu-font-family b/lfs/ubuntu-font-family new file mode 100644 index 0000000..f817b85 --- /dev/null +++ b/lfs/ubuntu-font-family @@ -0,0 +1,78 @@ +############################################################################= ### +# = # +# IPFire.org - A linux based firewall = # +# Copyright (C) 2007-2017 IPFire Team = # +# = # +# This program is free software: you can redistribute it and/or modify = # +# it under the terms of the GNU General Public License as published by = # +# the Free Software Foundation, either version 3 of the License, or = # +# (at your option) any later version. = # +# = # +# This program is distributed in the hope that it will be useful, = # +# but WITHOUT ANY WARRANTY; without even the implied warranty of = # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the = # +# GNU General Public License for more details. = # +# = # +# You should have received a copy of the GNU General Public License = # +# along with this program. If not, see . = # +# = # +############################################################################= ### + +############################################################################= ### +# Definitions +############################################################################= ### + +include Config + +VER =3D 0.83 + +THISAPP =3D ubuntu-font-family-$(VER) +DL_FILE =3D $(THISAPP).zip +DL_FROM =3D $(URL_IPFIRE) +DIR_APP =3D $(DIR_SRC)/$(THISAPP) +TARGET =3D $(DIR_INFO)/$(THISAPP) + +############################################################################= ### +# Top-level Rules +############################################################################= ### + +objects =3D $(DL_FILE) + +$(DL_FILE) =3D $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_MD5 =3D a24b8136b8f3bb93f166baf97d9328de + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +md5 : $(subst %,%_MD5,$(objects)) + +############################################################################= ### +# Downloading, checking, md5sum +############################################################################= ### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_MD5,$(objects)) : + @$(MD5) + +############################################################################= ### +# Installation Details +############################################################################= ### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && unzip $(DIR_DL)/$(DL_FILE) + + -mkdir -pv /usr/share/fonts + cd $(DIR_APP) && cp -vf *.ttf /usr/share/fonts/ + + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/lfs/unbound b/lfs/unbound index 39ad0de..0648fb7 100644 --- a/lfs/unbound +++ b/lfs/unbound @@ -24,7 +24,7 @@ =20 include Config =20 -VER =3D 1.6.6 +VER =3D 1.6.7 =20 THISAPP =3D unbound-$(VER) DL_FILE =3D $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects =3D $(DL_FILE) =20 $(DL_FILE) =3D $(DL_FROM)/$(DL_FILE) =20 -$(DL_FILE)_MD5 =3D f2cc56bd88c9634fe18334d2421205f1 +$(DL_FILE)_MD5 =3D 67ed382add11134d689f5e88f8efc43e =20 install : $(TARGET) =20 diff --git a/lfs/web-user-interface b/lfs/web-user-interface index 919acbe..0c56882 100644 --- a/lfs/web-user-interface +++ b/lfs/web-user-interface @@ -64,9 +64,28 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) chown -R root:root /srv/web/ipfire chmod -R 755 /srv/web/ipfire/cgi-bin chmod -R 644 /srv/web/ipfire/html - chmod 755 /srv/web/ipfire/html /srv/web/ipfire/html/{index.cgi,redirect.cgi= ,dial.cgi,images,include,themes,themes/*,themes/*/*} + chmod 755 /srv/web/ipfire/html /srv/web/ipfire/html/{index.cgi,redirect.cgi= ,images,include,themes,themes/*,themes/*/*} ln -svf ipfire /srv/web/ipfire/html/themes/ipfire-rounded =20 # Reset permissions of redirect templates and theme directories - find /srv/web/ipfire/html/{redirect-templates,themes} -type d | xargs chmod= -v 755 + find /srv/web/ipfire/html/{captive,redirect-templates,themes} -type d | xar= gs chmod -v 755 + + # Captive Portal CSS + ln -svf --relative /usr/share/bootstrap/css/bootstrap-grid.min.css \ + /srv/web/ipfire/html/captive/assets/bootstrap-grid.min.css + ln -svf --relative /usr/share/bootstrap/css/bootstrap-grid.min.css.map \ + /srv/web/ipfire/html/captive/assets/bootstrap-grid.min.css.map + ln -svf --relative /usr/share/bootstrap/css/bootstrap-reboot.min.css \ + /srv/web/ipfire/html/captive/assets/bootstrap-reboot.min.css + ln -svf --relative /usr/share/bootstrap/css/bootstrap-reboot.min.css.map \ + /srv/web/ipfire/html/captive/assets/bootstrap-reboot.min.css.map + + # Captive Portal Fonts + ln -svf --relative /usr/share/fonts/Ubuntu-L.ttf \ + /srv/web/ipfire/html/captive/assets/Ubuntu-L.ttf + ln -svf --relative /usr/share/fonts/Ubuntu-M.ttf \ + /srv/web/ipfire/html/captive/assets/Ubuntu-M.ttf + ln -svf --relative /usr/share/fonts/Ubuntu-R.ttf \ + /srv/web/ipfire/html/captive/assets/Ubuntu-R.ttf + @$(POSTBUILD) diff --git a/make.sh b/make.sh index 73b7b38..f4a651a 100755 --- a/make.sh +++ b/make.sh @@ -25,8 +25,8 @@ NAME=3D"IPFire" # Software name SNAME=3D"ipfire" # Short name VERSION=3D"2.19" # Version number -CORE=3D"114" # Core Level (Filename) -PAKFIRE_CORE=3D"114" # Core Level (PAKFIRE) +CORE=3D"115" # Core Level (Filename) +PAKFIRE_CORE=3D"115" # Core Level (PAKFIRE) GIT_BRANCH=3D`git rev-parse --abbrev-ref HEAD` # Git Branch SLOGAN=3D"www.ipfire.org" # Software slogan CONFIG_ROOT=3D/var/ipfire # Configuration rootdir @@ -548,6 +548,7 @@ buildipfire() { lfsmake2 web-user-interface lfsmake2 flag-icons lfsmake2 jquery + lfsmake2 bootstrap lfsmake2 arping lfsmake2 beep lfsmake2 dvdrtools @@ -626,6 +627,7 @@ buildipfire() { lfsmake2 openssh lfsmake2 fontconfig lfsmake2 dejavu-fonts-ttf + lfsmake2 ubuntu-font-family lfsmake2 freefont lfsmake2 pixman lfsmake2 cairo @@ -864,6 +866,8 @@ buildipfire() { lfsmake2 owncloud lfsmake2 bacula lfsmake2 batctl + lfsmake2 perl-Font-TTF + lfsmake2 perl-IO-String lfsmake2 perl-PDF-API2 lfsmake2 squid-accounting lfsmake2 pigz diff --git a/src/initscripts/system/firewall b/src/initscripts/system/firewall index 7bdb292..c4d2fef 100644 --- a/src/initscripts/system/firewall +++ b/src/initscripts/system/firewall @@ -224,6 +224,13 @@ iptables_init() { iptables -A ${i} -j LOOPBACK done =20 + # Captive portal + iptables -N CAPTIVE_PORTAL + iptables -N CAPTIVE_PORTAL_CLIENTS + for i in INPUT FORWARD; do + iptables -A ${i} -j CAPTIVE_PORTAL + done + # Accept everything connected for i in INPUT FORWARD OUTPUT; do iptables -A ${i} -j CONNTRACK @@ -337,6 +344,10 @@ iptables_init() { iptables -N UPNPFW iptables -A FORWARD -m conntrack --ctstate NEW -j UPNPFW =20 + # Captive Portal + iptables -t nat -N CAPTIVE_PORTAL + iptables -t nat -A PREROUTING -j CAPTIVE_PORTAL + # RED chain, used for the red interface iptables -N REDINPUT iptables -A INPUT -j REDINPUT diff --git a/src/installer/configure.ac b/src/installer/configure.ac index 85c5c5c..fb4858c 100644 --- a/src/installer/configure.ac +++ b/src/installer/configure.ac @@ -76,17 +76,22 @@ PKG_CHECK_MODULES(UDEV, [libudev]) =20 AC_ARG_WITH([distro-name], AS_HELP_STRING([--with-distro-name] [The name of the distribution]), - AC_DEFINE_UNQUOTED([NAME], "$withval", [The name of the distribution]), + AC_DEFINE_UNQUOTED([DISTRO_NAME], "$withval", [The name of the distribution= ]), AC_MSG_ERROR([*** you need to set the name with --with-distro-name=3D])) =20 AC_ARG_WITH([distro-sname], AS_HELP_STRING([--with-distro-sname] [The short name of the distribution]), - AC_DEFINE_UNQUOTED([SNAME], "$withval", [The sname of the distribution]), + AC_DEFINE_UNQUOTED([DISTRO_SNAME], "$withval", [The sname of the distributi= on]), AC_MSG_ERROR([*** you need to set the sname with --with-distro-sname=3D])) =20 +AC_ARG_WITH([distro-version], + AS_HELP_STRING([--with-distro-sname] [The version of the distribution]), + AC_DEFINE_UNQUOTED([DISTRO_VERSION], "$withval", [The version of the distri= bution]), + AC_MSG_ERROR([*** you need to set the version with --with-distro-version=3D= ])) + AC_ARG_WITH([distro-slogan], AS_HELP_STRING([--with-distro-slogan] [The slogan of the distribution]), - AC_DEFINE_UNQUOTED([SLOGAN], "$withval", [The slogan of the distribution]), + AC_DEFINE_UNQUOTED([DISTRO_SLOGAN], "$withval", [The slogan of the distribu= tion]), AC_MSG_ERROR([*** you need to set the slogan with --with-distro-slogan=3D])) =20 AC_ARG_WITH([config-root], @@ -111,4 +116,9 @@ AC_MSG_RESULT([ CFLAGS: ${OUR_CFLAGS} ${CFLAGS} CPPFLAGS: ${OUR_CPPFLAGS} ${CPPFLAGS} LDFLAGS: ${OUR_LDFLAGS} ${LDFLAGS} + + Distribution: ${DISTRO_NAME} (${DISTRO_SNAME}) + Version: ${DISTRO_VERSION} + Slogan: ${DISTRO_SLOGAN} + Config Root: ${CONFIG_ROOT} ]) diff --git a/src/installer/dracut-module/module-setup.sh b/src/installer/drac= ut-module/module-setup.sh index 08dcdd5..b880397 100755 --- a/src/installer/dracut-module/module-setup.sh +++ b/src/installer/dracut-module/module-setup.sh @@ -42,6 +42,9 @@ install() { inst /var/ipfire/dhcpc/dhcpcd-run-hooks inst "$moddir/70-dhcpcd.exe" "/var/ipfire/dhcpc/dhcpcd-hooks/70-dhcpcd.e= xe" =20 + # CAs + inst /etc/ssl/cert.pem + inst /etc/host.conf /etc/protocols inst /etc/nsswitch.conf /etc/resolv.conf inst_libdir_file "libnss_dns.so.*" diff --git a/src/installer/hw.c b/src/installer/hw.c index 362be47..06bf42b 100644 --- a/src/installer/hw.c +++ b/src/installer/hw.c @@ -165,7 +165,7 @@ static int hw_test_source_medium(const char* path) { // Umount the test device. hw_umount(SOURCE_MOUNT_PATH); =20 - return (ret =3D=3D 0); + return ret; } =20 char* hw_find_source_medium(struct hw* hw) { diff --git a/src/installer/hw.h b/src/installer/hw.h index f16b39c..e2d621b 100644 --- a/src/installer/hw.h +++ b/src/installer/hw.h @@ -24,8 +24,8 @@ #include =20 #define DESTINATION_MOUNT_PATH "/harddisk" -#define SOURCE_MOUNT_PATH "/cdrom" -#define SOURCE_TEST_FILE SOURCE_MOUNT_PATH "/" VERSION ".media" +#define SOURCE_MOUNT_PATH "/cdrom" +#define SOURCE_TEST_FILE SOURCE_MOUNT_PATH "/" DISTRO_SNAME "-"= DISTRO_VERSION ".media" =20 #define HW_MAX_DISKS 32 #define STRING_SIZE 1024 diff --git a/src/installer/main.c b/src/installer/main.c index c420de3..a364255 100644 --- a/src/installer/main.c +++ b/src/installer/main.c @@ -195,7 +195,7 @@ int write_lang_configs(char* lang) { =20 /* default stuff for main/settings. */ replacekeyvalue(kv, "LANGUAGE", lang); - replacekeyvalue(kv, "HOSTNAME", SNAME); + replacekeyvalue(kv, "HOSTNAME", DISTRO_SNAME); replacekeyvalue(kv, "THEME", "ipfire"); writekeyvalues(kv, "/harddisk" CONFIG_ROOT "/main/settings"); freekeyvalues(kv); @@ -369,7 +369,7 @@ int main(int argc, char *argv[]) { FILE *copying; =20 setlocale(LC_ALL, ""); - sethostname(SNAME, 10); + sethostname(DISTRO_SNAME, 10); =20 /* Log file/terminal stuff. */ FILE* flog =3D NULL; @@ -398,7 +398,7 @@ int main(int argc, char *argv[]) { if (roottext) newtDrawRootText(0, 0, roottext); =20 - snprintf(title, sizeof(title), "%s - %s", NAME, SLOGAN); + snprintf(title, sizeof(title), "%s - %s", DISTRO_NAME, DISTRO_SLOGAN); =20 // Parse parameters from the kernel command line parse_command_line(&config); @@ -448,7 +448,7 @@ int main(int argc, char *argv[]) { if (!config.unattended) { snprintf(message, sizeof(message), _("Welcome to the %s installation program.\n\n" - "Selecting Cancel on any of the following screens will reboot the compute= r."), NAME); + "Selecting Cancel on any of the following screens will reboot the compute= r."), DISTRO_NAME); newtWinMessage(title, _("Start installation"), message); } =20 @@ -778,7 +778,7 @@ int main(int argc, char *argv[]) { =20 // Extract files... snprintf(commandstring, STRING_SIZE, - "/bin/tar -C /harddisk -xvf /cdrom/distro.img --lzma 2>/dev/null"); + "/bin/tar -C /harddisk -xvf /cdrom/distro.img --xz 2>/dev/null"); =20 if (runcommandwithprogress(60, 4, title, commandstring, INST_FILECOUNT, _("Installing the system..."), logfile)) { @@ -933,7 +933,7 @@ int main(int argc, char *argv[]) { "Please remove any installation mediums from this system and hit the rebo= ot button. " "Once the system has restarted you will be asked to setup networking and = system passwords. " "After that, you should point your web browser at https://%s:444 (or what= ever you name " - "your %s) for the web configuration console."), NAME, SNAME, NAME); + "your %s) for the web configuration console."), DISTRO_NAME, DISTRO_SNAME= , DISTRO_NAME); newtWinMessage(_("Congratulations!"), _("Reboot"), message); } =20 diff --git a/src/installer/po/ar.po b/src/installer/po/ar.po index b138c96..9c1bc24 100644 --- a/src/installer/po/ar.po +++ b/src/installer/po/ar.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: +# mahmoud mohamed , 2017 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" -"Last-Translator: Michael Tremer \n" -"Language-Team: Arabic (http://www.transifex.com/projects/p/ipfire/language/= ar/)\n" +"PO-Revision-Date: 2017-09-20 08:56+0000\n" +"Last-Translator: mahmoud mohamed \n" +"Language-Team: Arabic (http://www.transifex.com/mstremer/ipfire/language/ar= /)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -24,11 +25,11 @@ msgstr "" #: main.c:79 main.c:460 main.c:487 main.c:516 main.c:620 main.c:630 main.c:6= 70 #: main.c:702 msgid "Cancel" -msgstr "" +msgstr "=D8=A7=D9=84=D8=BA=D8=A7=D8=A1" =20 #: main.c:176 msgid "I accept this license" -msgstr "" +msgstr "=D9=82=D8=A8=D9=88=D9=84 =D8=A7=D9=84=D8=A7=D8=AA=D9=81=D8=A7=D9=82= =D9=8A=D8=A9" =20 #: main.c:384 msgid "Warning: Unattended installation will start in 10 seconds..." @@ -36,7 +37,7 @@ msgstr "" =20 #: main.c:403 msgid "Language selection" -msgstr "" +msgstr "=D8=A7=D8=AE=D8=AA=D9=8A=D8=A7=D8=B1 =D8=A7=D9=84=D9=84=D8=BA=D8=A9" =20 #: main.c:403 msgid "Select the language you wish to use for the installation." diff --git a/src/installer/po/ca.po b/src/installer/po/ca.po index a7d97cf..923f1da 100644 --- a/src/installer/po/ca.po +++ b/src/installer/po/ca.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Catalan (http://www.transifex.com/projects/p/ipfire/language= /ca/)\n" +"Language-Team: Catalan (http://www.transifex.com/mstremer/ipfire/language/c= a/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/cs_CZ.po b/src/installer/po/cs_CZ.po index 4cfc7aa..f00b8fb 100644 --- a/src/installer/po/cs_CZ.po +++ b/src/installer/po/cs_CZ.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Czech (Czech Republic) (http://www.transifex.com/projects/p/= ipfire/language/cs_CZ/)\n" +"Language-Team: Czech (Czech Republic) (http://www.transifex.com/mstremer/ip= fire/language/cs_CZ/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/da.po b/src/installer/po/da.po index 459a8dc..04e8c1e 100644 --- a/src/installer/po/da.po +++ b/src/installer/po/da.po @@ -9,9 +9,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2015-01-13 21:22+0000\n" +"PO-Revision-Date: 2017-09-20 08:56+0000\n" "Last-Translator: Henrik Simonsen \n" -"Language-Team: Danish (http://www.transifex.com/projects/p/ipfire/language/= da/)\n" +"Language-Team: Danish (http://www.transifex.com/mstremer/ipfire/language/da= /)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/de.po b/src/installer/po/de.po index eab3da5..279982a 100644 --- a/src/installer/po/de.po +++ b/src/installer/po/de.po @@ -12,7 +12,7 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2015-05-07 16:56+0000\n" +"PO-Revision-Date: 2017-09-23 20:08+0000\n" "Last-Translator: Sun Tiger\n" "Language-Team: German (http://www.transifex.com/mstremer/ipfire/language/de= /)\n" "MIME-Version: 1.0\n" diff --git a/src/installer/po/el_GR.po b/src/installer/po/el_GR.po index cf5ec2b..8315230 100644 --- a/src/installer/po/el_GR.po +++ b/src/installer/po/el_GR.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Greek (Greece) (http://www.transifex.com/projects/p/ipfire/l= anguage/el_GR/)\n" +"Language-Team: Greek (Greece) (http://www.transifex.com/mstremer/ipfire/lan= guage/el_GR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/es.po b/src/installer/po/es.po index 725ebef..a3036c6 100644 --- a/src/installer/po/es.po +++ b/src/installer/po/es.po @@ -10,9 +10,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2015-02-01 09:23+0000\n" +"PO-Revision-Date: 2017-09-20 08:56+0000\n" "Last-Translator: Roberto Pe=C3=B1a \n" -"Language-Team: Spanish (http://www.transifex.com/projects/p/ipfire/language= /es/)\n" +"Language-Team: Spanish (http://www.transifex.com/mstremer/ipfire/language/e= s/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/fa.po b/src/installer/po/fa.po index 4760c50..5420f9a 100644 --- a/src/installer/po/fa.po +++ b/src/installer/po/fa.po @@ -9,9 +9,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2015-02-17 23:49+0000\n" +"PO-Revision-Date: 2017-09-23 20:08+0000\n" "Last-Translator: Khalil Delavaran \n" -"Language-Team: Persian (http://www.transifex.com/projects/p/ipfire/language= /fa/)\n" +"Language-Team: Persian (http://www.transifex.com/mstremer/ipfire/language/f= a/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/fr.po b/src/installer/po/fr.po index 68a5ad0..818bdb4 100644 --- a/src/installer/po/fr.po +++ b/src/installer/po/fr.po @@ -4,14 +4,15 @@ #=20 # Translators: # nonux , 2015 +# Philippe B , 2016 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2015-02-17 23:23+0000\n" -"Last-Translator: nonux \n" -"Language-Team: French (http://www.transifex.com/projects/p/ipfire/language/= fr/)\n" +"PO-Revision-Date: 2017-09-20 08:56+0000\n" +"Last-Translator: Philippe B \n" +"Language-Team: French (http://www.transifex.com/mstremer/ipfire/language/fr= /)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -20,7 +21,7 @@ msgstr "" =20 #: main.c:78 main.c:179 main.c:404 main.c:670 main.c:702 main.c:893 msgid "OK" -msgstr "" +msgstr "OK" =20 #: main.c:79 main.c:460 main.c:487 main.c:516 main.c:620 main.c:630 main.c:6= 70 #: main.c:702 @@ -33,7 +34,7 @@ msgstr "J'accepte la licence" =20 #: main.c:384 msgid "Warning: Unattended installation will start in 10 seconds..." -msgstr "" +msgstr "Attention: Une installation sans surveillance va d=C3=A9buter dans 1= 0 secondes..." =20 #: main.c:403 msgid "Language selection" @@ -45,11 +46,11 @@ msgstr "S=C3=A9lectionnez la langue que vous souhaitez ut= iliser pour l'installation. =20 #: main.c:418 msgid "Unattended mode" -msgstr "" +msgstr "Mode non surveill=C3=A9" =20 #: main.c:420 msgid "/ between elements | selects | next scree= n" -msgstr "" +msgstr "/ entre les =C3=A9l=C3=A9ments | s=C3=A9lecti= onne | =C3=A9cran suivant" =20 #: main.c:426 #, c-format @@ -57,7 +58,7 @@ msgid "" "Welcome to the %s installation program.\n" "\n" "Selecting Cancel on any of the following screens will reboot the computer." -msgstr "" +msgstr "Bienvenue dans le programme d'installation de %s.\n\nS=C3=A9lectionn= er Echap sur une =C3=A9cran red=C3=A9marrera l'ordinateur." =20 #: main.c:428 msgid "Start installation" @@ -74,13 +75,13 @@ msgid "" "No source drive could be found.\n" "\n" "You can try downloading the required installation image." -msgstr "" +msgstr "Aucune disque source trouv=C3=A9.\n\nVous pouvez essayer de t=C3=A9l= =C3=A9charger l'image d'installation n=C3=A9cessaire." =20 #: main.c:456 msgid "" "Please make sure to connect your machine to a network and the installer wil= l" " try connect to acquire an IP address." -msgstr "" +msgstr "Soyez certain que votre machine est connect=C3=A9e =C3=A0 un r=C3=A9= seau et l'installateur va tenter de r=C3=A9cup=C3=A9rer une adresse IP." =20 #: main.c:460 msgid "Download installation image" @@ -95,7 +96,7 @@ msgid "" "Networking could not be started but is required to go on with the installat= ion.\n" "\n" "Please connect your machine to a network with a DHCP server and retry." -msgstr "" +msgstr "Une connexion r=C3=A9seau ne peut =C3=AAtre initi=C3=A9e et est n=C3= =A9cessaire pour pour poursuivre l'installation.\n\nMerci de connecter votre = machine =C3=A0 une serveur DHCP et r=C3=A9essayer." =20 #: main.c:487 main.c:516 msgid "Retry" @@ -108,7 +109,7 @@ msgstr "T=C3=A9l=C3=A9chargement de l'image d'installatio= n ..." #: main.c:510 #, c-format msgid "MD5 checksum mismatch" -msgstr "" +msgstr "Erreur de v=C3=A9rification contr=C3=B4le MD5" =20 #: main.c:513 #, c-format @@ -117,14 +118,14 @@ msgid "" " Reason: %s\n" "\n" "%s" -msgstr "" +msgstr "L'image d'installation ne peut =C3=AAtre t=C3=A9l=C3=A9charg=C3=A9e.= \nRaison:%s\n\n%s" =20 #: main.c:528 #, c-format msgid "" "Could not mount %s to %s:\n" " %s\n" -msgstr "" +msgstr "Impossible de monter %s vers %s:\n%s\n" =20 #: main.c:543 msgid "License Agreement" @@ -147,14 +148,14 @@ msgid "" "Select the disk(s) you want to install IPFire on. First those will be parti= tioned, and then the partitions will have a filesystem put on them.\n" "\n" "ALL DATA ON THE DISK WILL BE DESTROYED." -msgstr "" +msgstr "Selectionner le disque sur lequel vous voulez installer IPFire. Il s= era d'abord partition=C3=A9 et un syst=C3=A8me de fichier y sera cr=C3=A9=C3= =A9.\n\nTOUTES LES DONN=C3=89ES DUS DISQUE SERONT PERDUES." =20 #: main.c:599 msgid "" "No disk has been selected.\n" "\n" "Please select one or more disks you want to install IPFire on." -msgstr "" +msgstr "Aucun disque selectionn=C3=A9.\n\nSelectionnez un dsique au moins su= r le(s)quel(s) sera install=C3=A9 IPFire." =20 #: main.c:617 #, c-format @@ -164,7 +165,7 @@ msgid "" " %s\n" "\n" "Do you agree to continue?" -msgstr "" +msgstr "Le programme d'installation va maintenant pr=C3=A9parer le disque ch= oisi.\n\n%s\n\nEtes vous d'accord pour continuer?" =20 #: main.c:619 msgid "Disk Setup" @@ -183,11 +184,11 @@ msgid "" " %s\n" "\n" "Do you agree to continue?" -msgstr "" +msgstr "Le programme d'installation va maintenant param=C3=A9trer la configu= ration RAID sur les disques s=C3=A9lectionn=C3=A9s.\n\n%s\n%s\n\nEtes vous d'= accord pour continuer?" =20 #: main.c:629 msgid "RAID Setup" -msgstr "" +msgstr "Param=C3=A9trage RAID" =20 #: main.c:640 msgid "Your disk configuration is currently not supported." @@ -264,30 +265,30 @@ msgstr "Impossible d'installer le syst=C3=A8me." =20 #: main.c:777 msgid "Installing the language cache..." -msgstr "" +msgstr "Installation du cache de langage..." =20 #: main.c:778 msgid "Unable to install the language cache." -msgstr "" +msgstr "Impossible d'installer le cache de langage." =20 #: main.c:783 msgid "Installing the bootloader..." -msgstr "" +msgstr "Installation du bootloader..." =20 #: main.c:790 msgid "Unable to open /etc/default/grub for writing." -msgstr "" +msgstr "Impossible d'ouvrir /etc/default/grub en =C3=A9criture." =20 #: main.c:812 msgid "Unable to install the bootloader." -msgstr "" +msgstr "Impossible d'installer le bootloader." =20 #: main.c:826 msgid "" "A backup file has been found on the installation image.\n" "\n" "Do you want to restore the backup?" -msgstr "" +msgstr "Un fichier de sauvegarde a =C3=A9t=C3=A9 trouv=C3=A9 sur l'image d'i= nstallation.\n\nVoulez vous restaurer cette sauvegarde?" =20 #: main.c:827 msgid "Yes" @@ -299,15 +300,15 @@ msgstr "Non" =20 #: main.c:834 msgid "An error occured when the backup file was restored." -msgstr "" +msgstr "Une erreur est survenue lors de la restauration du fichier de sauveg= arde." =20 #: main.c:869 msgid "Running post-install script..." -msgstr "" +msgstr "Execution du script de post installation..." =20 #: main.c:870 msgid "Post-install script failed." -msgstr "" +msgstr "Echec du script de post installation." =20 #: main.c:877 #, c-format @@ -315,11 +316,11 @@ msgid "" "%s was successfully installed!\n" "\n" "Please remove any installation mediums from this system and hit the reboot = button. Once the system has restarted you will be asked to setup networking a= nd system passwords. After that, you should point your web browser at https:/= /%s:444 (or what ever you name your %s) for the web configuration console." -msgstr "" +msgstr "%s a =C3=A9t=C3=A9 install=C3=A9 correctement.\n\nRetirer tous les m= =C3=A9dias d'installation du syst=C3=A8me et appuyer sur red=C3=A9marrer. Une= fois que le syst=C3=A8me red=C3=A9marr=C3=A9, vous devrez param=C3=A8trer le= s r=C3=A9seaux et les mots de passe syst=C3=A8me. Ensuite, vous devrez faire = pointer votre navigateur vers https://%s:444 (ou le nom que vous avez donn=C3= =A9 =C3=A0 votre %s) pour la console de configuration web." =20 #: main.c:882 msgid "Congratulations!" -msgstr "" +msgstr "F=C3=A9l=C3=A9citations!" =20 #: main.c:882 msgid "Reboot" diff --git a/src/installer/po/hr.po b/src/installer/po/hr.po index 3638f10..abfec72 100644 --- a/src/installer/po/hr.po +++ b/src/installer/po/hr.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2015-01-26 12:07+0000\n" +"PO-Revision-Date: 2017-09-21 12:48+0000\n" "Last-Translator: Blago Culjak \n" -"Language-Team: Croatian (http://www.transifex.com/projects/p/ipfire/languag= e/hr/)\n" +"Language-Team: Croatian (http://www.transifex.com/mstremer/ipfire/language/= hr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/hu.po b/src/installer/po/hu.po index 7e9e198..c69fd4b 100644 --- a/src/installer/po/hu.po +++ b/src/installer/po/hu.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: +# G=C3=A1bor S=C3=A1volyi, 2016 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" -"Last-Translator: Michael Tremer \n" -"Language-Team: Hungarian (http://www.transifex.com/projects/p/ipfire/langua= ge/hu/)\n" +"PO-Revision-Date: 2017-09-20 08:56+0000\n" +"Last-Translator: G=C3=A1bor S=C3=A1volyi\n" +"Language-Team: Hungarian (http://www.transifex.com/mstremer/ipfire/language= /hu/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -19,36 +20,36 @@ msgstr "" =20 #: main.c:78 main.c:179 main.c:404 main.c:670 main.c:702 main.c:893 msgid "OK" -msgstr "" +msgstr "Rendben" =20 #: main.c:79 main.c:460 main.c:487 main.c:516 main.c:620 main.c:630 main.c:6= 70 #: main.c:702 msgid "Cancel" -msgstr "" +msgstr "M=C3=A9gsem" =20 #: main.c:176 msgid "I accept this license" -msgstr "" +msgstr "Fentieket meg=C3=A9rtettem" =20 #: main.c:384 msgid "Warning: Unattended installation will start in 10 seconds..." -msgstr "" +msgstr "Figyelem: A fel=C3=BCgyelet n=C3=A9lk=C3=BCli telep=C3=ADt=C3=A9s 10= m=C3=A1sodperc m=C3=BAlva indul..." =20 #: main.c:403 msgid "Language selection" -msgstr "" +msgstr "Nyelv kiv=C3=A1laszt=C3=A1sa" =20 #: main.c:403 msgid "Select the language you wish to use for the installation." -msgstr "" +msgstr "V=C3=A1laszd ki a telep=C3=ADt=C3=A9s nyelv=C3=A9t." =20 #: main.c:418 msgid "Unattended mode" -msgstr "" +msgstr "Fel=C3=BCgyelet n=C3=A9lk=C3=BCli m=C3=B3d" =20 #: main.c:420 msgid "/ between elements | selects | next scree= n" -msgstr "" +msgstr "/ elemek k=C3=B6z=C3=B6tti v=C3=A1lt=C3=A1s | = kiv=C3=A1laszt=C3=A1s | k=C3=B6vetkez=C5=91 k=C3=A9perny=C5=91" =20 #: main.c:426 #, c-format @@ -56,16 +57,16 @@ msgid "" "Welcome to the %s installation program.\n" "\n" "Selecting Cancel on any of the following screens will reboot the computer." -msgstr "" +msgstr "=C3=9Cdv=C3=B6z=C3=B6l az %s telep=C3=ADt=C5=91program.\n\nB=C3=A1rm= ely k=C3=A9s=C5=91bbi k=C3=A9perny=C5=91n a M=C3=A9gsem =C3=BAjraind=C3=ADtja= a sz=C3=A1m=C3=ADt=C3=B3g=C3=A9pet." =20 #: main.c:428 msgid "Start installation" -msgstr "" +msgstr "Telep=C3=ADt=C3=A9s ind=C3=ADt=C3=A1sa" =20 #: main.c:449 #, c-format msgid "The installer will now try downloading the installation image." -msgstr "" +msgstr "A telep=C3=ADt=C5=91 most megpr=C3=B3b=C3=A1lja let=C3=B6lteni a tel= ep=C3=ADt=C3=A9si k=C3=A9pet." =20 #: main.c:452 #, c-format @@ -73,41 +74,41 @@ msgid "" "No source drive could be found.\n" "\n" "You can try downloading the required installation image." -msgstr "" +msgstr "Nem tal=C3=A1lhat=C3=B3 forr=C3=A1smeghajt=C3=B3.\n\nMegpr=C3=B3b=C3= =A1lhatod let=C3=B6lteni a sz=C3=BCks=C3=A9ges telep=C3=ADt=C3=A9si k=C3=A9pe= t." =20 #: main.c:456 msgid "" "Please make sure to connect your machine to a network and the installer wil= l" " try connect to acquire an IP address." -msgstr "" +msgstr "Ellen=C5=91rizd, hogy a g=C3=A9p csatlakozik a h=C3=A1l=C3=B3zathoz = =C3=A9s a telep=C3=ADt=C5=91 megpr=C3=B3b=C3=A1l csatlakozni." =20 #: main.c:460 msgid "Download installation image" -msgstr "" +msgstr "Telep=C3=ADt=C3=A9si k=C3=A9p let=C3=B6lt=C3=A9se" =20 #: main.c:473 msgid "Trying to start networking (DHCP)..." -msgstr "" +msgstr "K=C3=ADs=C3=A9rlet a h=C3=A1l=C3=B3zat elind=C3=ADt=C3=A1s=C3=A1ra (= DHCP)..." =20 #: main.c:484 msgid "" "Networking could not be started but is required to go on with the installat= ion.\n" "\n" "Please connect your machine to a network with a DHCP server and retry." -msgstr "" +msgstr "A h=C3=A1l=C3=B3zat nem indult el, de sz=C3=BCks=C3=A9ges a telep=C3= =ADt=C3=A9shez.\n\nCsatlakoztasd a g=C3=A9pet egy DHCP-vel rendelkez=C5=91 h= =C3=A1l=C3=B3zathoz =C3=A9s pr=C3=B3b=C3=A1ld =C3=BAjra." =20 #: main.c:487 main.c:516 msgid "Retry" -msgstr "" +msgstr "=C3=9Ajb=C3=B3l" =20 #: main.c:501 msgid "Downloading installation image..." -msgstr "" +msgstr "Telep=C3=ADt=C3=A9si k=C3=A9p let=C3=B6lt=C3=A9se..." =20 #: main.c:510 #, c-format msgid "MD5 checksum mismatch" -msgstr "" +msgstr "MD5 ellen=C5=91rz=C3=A9s sikertelen" =20 #: main.c:513 #, c-format @@ -116,44 +117,44 @@ msgid "" " Reason: %s\n" "\n" "%s" -msgstr "" +msgstr "A telep=C3=ADt=C3=A9si k=C3=A9p nem let=C3=B6lthet=C5=91.\nOk: %s\n\= n%s" =20 #: main.c:528 #, c-format msgid "" "Could not mount %s to %s:\n" " %s\n" -msgstr "" +msgstr "Nem siker=C3=BClt csatolni %s ide %s:\n %s\n" =20 #: main.c:543 msgid "License Agreement" -msgstr "" +msgstr "Liszensz elfogad=C3=A1s" =20 #: main.c:544 msgid "License not accepted!" -msgstr "" +msgstr "A liszenszt nem fogadtad el!" =20 #: main.c:566 msgid "No hard disk found." -msgstr "" +msgstr "Nem tal=C3=A1lhat=C3=B3 lemez." =20 #: main.c:587 msgid "Disk Selection" -msgstr "" +msgstr "Lemez kiv=C3=A1laszt=C3=A1sa" =20 #: main.c:588 msgid "" "Select the disk(s) you want to install IPFire on. First those will be parti= tioned, and then the partitions will have a filesystem put on them.\n" "\n" "ALL DATA ON THE DISK WILL BE DESTROYED." -msgstr "" +msgstr "V=C3=A1laszd ki a meghajt=C3=B3(ka)t, ahova az IPFire telep=C3=BClj= =C3=B6n. =C3=9Ajra lesznek part=C3=ADcion=C3=A1lva =C3=A9s form=C3=A1z=C3=A1s= ra ker=C3=BClnek.\n\nMINDEN KOR=C3=81BBI ADAT A MEGHAJT=C3=93N MEG FOG SEMMIS= =C3=9CLNI!" =20 #: main.c:599 msgid "" "No disk has been selected.\n" "\n" "Please select one or more disks you want to install IPFire on." -msgstr "" +msgstr "Nincs meghajt=C3=B3 kiv=C3=A1lasztva.\n\nV=C3=A1lassz ki legal=C3=A1= bb egy meghajt=C3=B3t, ahova az IPFire-t telep=C3=ADten=C3=A9d." =20 #: main.c:617 #, c-format @@ -163,15 +164,15 @@ msgid "" " %s\n" "\n" "Do you agree to continue?" -msgstr "" +msgstr "A telep=C3=ADt=C5=91 most be fogja =C3=A1ll=C3=ADtani a k=C3=B6vetke= z=C5=91 meghajt=C3=B3t:\n\n%s\n\nBiztos, hogy folytatod?" =20 #: main.c:619 msgid "Disk Setup" -msgstr "" +msgstr "Lemez be=C3=A1ll=C3=ADt=C3=A1sa" =20 #: main.c:620 main.c:630 msgid "Delete all data" -msgstr "" +msgstr "Minden adat t=C3=B6rtl=C3=A9se" =20 #: main.c:627 #, c-format @@ -182,131 +183,131 @@ msgid "" " %s\n" "\n" "Do you agree to continue?" -msgstr "" +msgstr "A telep=C3=ADt=C5=91 most be=C3=A1ll=C3=ADtja a RAID t=C3=B6mb=C3=B6= ket a k=C3=B6vetkez=C5=91 meghajt=C3=B3kon:\n\n%s\n%s\n\nBiztos, hogy folytat= od?" =20 #: main.c:629 msgid "RAID Setup" -msgstr "" +msgstr "RAID Be=C3=A1ll=C3=ADt=C3=A1s" =20 #: main.c:640 msgid "Your disk configuration is currently not supported." -msgstr "" +msgstr "A meghajt=C3=B3be=C3=A1ll=C3=ADt=C3=A1sod nem t=C3=A1mogatott." =20 #: main.c:655 msgid "Your harddisk is too small." -msgstr "" +msgstr "A meghajt=C3=B3d t=C3=BAl kicsi." =20 #: main.c:671 msgid "" "Your harddisk is very small, but you can continue without a swap partition." -msgstr "" +msgstr "A meghajt=C3=B3d t=C3=BAl kicsi, de folytathatod swap part=C3=ADci= =C3=B3 n=C3=A9lk=C3=BCl." =20 #: main.c:684 msgid "ext4 Filesystem" -msgstr "" +msgstr "ext4 f=C3=A1jlrendszer" =20 #: main.c:685 msgid "ext4 Filesystem without journal" -msgstr "" +msgstr "ext4 f=C3=A1jlrendszer napl=C3=B3k n=C3=A9lk=C3=BCl" =20 #: main.c:686 msgid "XFS Filesystem" -msgstr "" +msgstr "XFS f=C3=A1jlrendszer" =20 #: main.c:687 msgid "ReiserFS Filesystem" -msgstr "" +msgstr "ReiserFS f=C3=A1jlrendszer" =20 #: main.c:701 msgid "Filesystem Selection" -msgstr "" +msgstr "F=C3=A1jlrendszer Kiv=C3=A1laszt=C3=A1sa" =20 #: main.c:701 msgid "Please choose your filesystem:" -msgstr "" +msgstr "V=C3=A1laszd ki a f=C3=A1jlrendszert:" =20 #: main.c:712 msgid "Building RAID..." -msgstr "" +msgstr "RAID fel=C3=A9p=C3=ADt=C3=A9se..." =20 #: main.c:716 msgid "Unable to build the RAID." -msgstr "" +msgstr "A RAID fel=C3=A9p=C3=ADt=C3=A9se sikertelen." =20 #: main.c:728 msgid "Partitioning disk..." -msgstr "" +msgstr "Lemez part=C3=ADcion=C3=A1l=C3=A1sa..." =20 #: main.c:732 msgid "Unable to partition the disk." -msgstr "" +msgstr "A lemez part=C3=ADcion=C3=A1l=C3=A1sa sikertelen." =20 #: main.c:739 msgid "Creating filesystems..." -msgstr "" +msgstr "F=C3=A1jlrendszerek l=C3=A9rtehoz=C3=A1sa..." =20 #: main.c:743 msgid "Unable to create filesystems." -msgstr "" +msgstr "A f=C3=A1jlrendszerek l=C3=A9trehoz=C3=A1sa sikertelen." =20 #: main.c:749 msgid "Unable to mount filesystems." -msgstr "" +msgstr "A f=C3=A1jlrendszerek csatol=C3=A1sa sikertelen." =20 #: main.c:760 msgid "Installing the system..." -msgstr "" +msgstr "A rendszer telep=C3=ADt=C3=A9se..." =20 #: main.c:761 msgid "Unable to install the system." -msgstr "" +msgstr "A rendszer telep=C3=ADt=C3=A9se sikertelen." =20 #: main.c:777 msgid "Installing the language cache..." -msgstr "" +msgstr "A nyelv telep=C3=ADt=C3=A9se..." =20 #: main.c:778 msgid "Unable to install the language cache." -msgstr "" +msgstr "A nyelv telep=C3=ADt=C3=A9se sikertelen." =20 #: main.c:783 msgid "Installing the bootloader..." -msgstr "" +msgstr "A rendszert=C3=B6lt=C5=91 telep=C3=ADt=C3=A9se..." =20 #: main.c:790 msgid "Unable to open /etc/default/grub for writing." -msgstr "" +msgstr "Nem siker=C3=BClt megnyitni =C3=ADr=C3=A1sra: /etc/default/grub" =20 #: main.c:812 msgid "Unable to install the bootloader." -msgstr "" +msgstr "A rendszert=C3=B6lt=C5=91 telep=C3=ADt=C3=A9se sikertelen." =20 #: main.c:826 msgid "" "A backup file has been found on the installation image.\n" "\n" "Do you want to restore the backup?" -msgstr "" +msgstr "A telep=C3=ADt=C5=91 tartalmaz biztons=C3=A1gi ment=C3=A9st.\n\nViss= za=C3=A1ll=C3=ADtod?" =20 #: main.c:827 msgid "Yes" -msgstr "" +msgstr "Igen" =20 #: main.c:827 msgid "No" -msgstr "" +msgstr "Nem" =20 #: main.c:834 msgid "An error occured when the backup file was restored." -msgstr "" +msgstr "Hiba a biztosn=C3=A1gi ment=C3=A9s vissza=C3=A1ll=C3=ADt=C3=A1sa sor= =C3=A1n." =20 #: main.c:869 msgid "Running post-install script..." -msgstr "" +msgstr "Telep=C3=ADt=C3=A9s ut=C3=A1ni szkript futtat=C3=A1sa..." =20 #: main.c:870 msgid "Post-install script failed." -msgstr "" +msgstr "A telep=C3=ADt=C3=A9s ut=C3=A1ni szkript futtat=C3=A1sa sikertelen." =20 #: main.c:877 #, c-format @@ -314,16 +315,16 @@ msgid "" "%s was successfully installed!\n" "\n" "Please remove any installation mediums from this system and hit the reboot = button. Once the system has restarted you will be asked to setup networking a= nd system passwords. After that, you should point your web browser at https:/= /%s:444 (or what ever you name your %s) for the web configuration console." -msgstr "" +msgstr "%s sikeresen feltelep=C3=BClt!\n\nT=C3=A1vol=C3=ADtsd el a telep=C3= =ADt=C5=91 m=C3=A9di=C3=A1t a g=C3=A9pb=C5=91l =C3=A9s nyomj =C3=9Ajraind=C3= =ADt=C3=A1s-t. Els=C5=91 ind=C3=ADt=C3=A1skor meg kell adnod a h=C3=A1l=C3=B3= zati be=C3=A1ll=C3=ADt=C3=A1sokat =C3=A9s a rendszerjelszavakat. Ezek ut=C3= =A1n m=C3=A1r b=C3=B6ng=C3=A9sz=C5=91b=C5=91l is be tudsz jelentkezni a https= ://%s:444 c=C3=ADmen (vagy ahogy elnevezted a g=C3=A9pet: %s) =C3=A9s konfigu= r=C3=A1lni a rendszert." =20 #: main.c:882 msgid "Congratulations!" -msgstr "" +msgstr "Gratul=C3=A1lok!" =20 #: main.c:882 msgid "Reboot" -msgstr "" +msgstr "=C3=9Ajraind=C3=ADt=C3=A1s" =20 #: main.c:893 msgid "Setup has failed. Press Ok to reboot." -msgstr "" +msgstr "A be=C3=A1ll=C3=ADt=C3=A1s sikertelen. Nyomj Rendben-t az =C3=BAjrai= nd=C3=ADt=C3=A1shoz." diff --git a/src/installer/po/id.po b/src/installer/po/id.po index e4cc4c1..96f3d4d 100644 --- a/src/installer/po/id.po +++ b/src/installer/po/id.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Indonesian (http://www.transifex.com/projects/p/ipfire/langu= age/id/)\n" +"Language-Team: Indonesian (http://www.transifex.com/mstremer/ipfire/languag= e/id/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/it.po b/src/installer/po/it.po index d938f37..730ab70 100644 --- a/src/installer/po/it.po +++ b/src/installer/po/it.po @@ -10,9 +10,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-12-06 18:41+0000\n" +"PO-Revision-Date: 2017-09-20 08:56+0000\n" "Last-Translator: Gabriele\n" -"Language-Team: Italian (http://www.transifex.com/projects/p/ipfire/language= /it/)\n" +"Language-Team: Italian (http://www.transifex.com/mstremer/ipfire/language/i= t/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/ja.po b/src/installer/po/ja.po index 5a14029..f45b101 100644 --- a/src/installer/po/ja.po +++ b/src/installer/po/ja.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: +# Ronny Heinrich , 2016 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" -"Last-Translator: Michael Tremer \n" -"Language-Team: Japanese (http://www.transifex.com/projects/p/ipfire/languag= e/ja/)\n" +"PO-Revision-Date: 2017-09-20 08:56+0000\n" +"Last-Translator: Ronny Heinrich \n" +"Language-Team: Japanese (http://www.transifex.com/mstremer/ipfire/language/= ja/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -19,36 +20,36 @@ msgstr "" =20 #: main.c:78 main.c:179 main.c:404 main.c:670 main.c:702 main.c:893 msgid "OK" -msgstr "" +msgstr "OK" =20 #: main.c:79 main.c:460 main.c:487 main.c:516 main.c:620 main.c:630 main.c:6= 70 #: main.c:702 msgid "Cancel" -msgstr "" +msgstr "=E3=82=AD=E3=83=A3=E3=83=B3=E3=82=BB=E3=83=AB" =20 #: main.c:176 msgid "I accept this license" -msgstr "" +msgstr "=E3=81=93=E3=81=AE=E3=83=A9=E3=82=A4=E3=82=BB=E3=83=B3=E3=82=B9=E3= =82=92=E5=BF=9C=E8=AB=BE=E3=81=99=E3=82=8B=E3=80=82" =20 #: main.c:384 msgid "Warning: Unattended installation will start in 10 seconds..." -msgstr "" +msgstr "=E6=B3=A8=E6=84=8F=EF=BC=9A=EF=BC=91=EF=BC=90=E7=A7=92=E5=BE=8C=E3= =80=81=E8=87=AA=E5=8B=95=E3=81=A7=E3=81=AE=E3=82=A4=E3=83=B3=E3=82=B9=E3=83= =88=E3=83=BC=E3=83=AB=E3=81=8C=E9=96=8B=E5=A7=8B=E3=81=99=E3=82=8B=E3=83=BB= =E3=83=BB=E3=83=BB" =20 #: main.c:403 msgid "Language selection" -msgstr "" +msgstr "=E8=A8=80=E8=AA=9E=E9=81=B8=E6=8A=9E" =20 #: main.c:403 msgid "Select the language you wish to use for the installation." -msgstr "" +msgstr "=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB=E8=A8=80=E8= =AA=9E=E3=82=92=E9=81=B8=E3=82=93=E3=81=A7=E4=B8=8B=E3=81=95=E3=81=84=E3=80= =82" =20 #: main.c:418 msgid "Unattended mode" -msgstr "" +msgstr "=E8=87=AA=E5=8B=95=E3=81=A7=E3=81=AE=E3=82=A4=E3=83=B3=E3=82=B9=E3= =83=88=E3=83=BC=E3=83=AB=E3=83=BB=E3=83=A2=E3=83=BC=E3=83=89" =20 #: main.c:420 msgid "/ between elements | selects | next scree= n" -msgstr "" +msgstr "/ =E3=82=A8=E3=83=AC=E3=83=A1=E3=83=B3=E3=83=88=E3=81= =AE=E9=96=93 | =E9=81=B8=E6=8A=9E | =E6=AC=A1=E3=81=AE=E7=94=BB= =E9=9D=A2" =20 #: main.c:426 #, c-format @@ -56,16 +57,16 @@ msgid "" "Welcome to the %s installation program.\n" "\n" "Selecting Cancel on any of the following screens will reboot the computer." -msgstr "" +msgstr "%s =E3=81=AE=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB= =E3=83=BB=E3=83=97=E3=83=AD=E3=82=B0=E3=83=A9=E3=83=A0=E3=81=B8=E3=82=88=E3= =81=86=E3=81=93=E3=81=9D=E3=80=82\n\n=E6=AC=A1=E3=81=AE=E7=94=BB=E9=9D=A2=E3= =81=AE=EF=BC=91=E3=81=A4=E3=81=A7=E3=80=81=E3=82=AD=E3=83=A3=E3=83=B3=E3=82= =BB=E3=83=AB=E3=82=92=E9=81=B8=E3=81=B6=E3=81=A8=E3=80=81=E3=83=91=E3=82=BD= =E3=82=B3=E3=83=B3=E3=81=AE=E5=86=8D=E8=B5=B7=E5=8B=95=E3=81=AB=E3=81=AA=E3= =82=8A=E3=81=BE=E3=81=99=E3=80=82" =20 #: main.c:428 msgid "Start installation" -msgstr "" +msgstr "=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB=E3=82=92=E5= =AE=9F=E8=A1=8C=E3=81=99=E3=82=8B" =20 #: main.c:449 #, c-format msgid "The installer will now try downloading the installation image." -msgstr "" +msgstr "=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=A9=E3=83=BC=E3= =81=AF=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB=E3=83=BB=E3=82= =A4=E3=83=A1=E3=83=BC=E3=82=B8=E3=82=92=E3=83=80=E3=82=A6=E3=83=B3=E3=83=AD= =E3=83=BC=E3=83=89=E3=81=97=E3=81=A6=E3=81=BF=E3=81=BE=E3=81=99=E3=80=82" =20 #: main.c:452 #, c-format @@ -73,41 +74,41 @@ msgid "" "No source drive could be found.\n" "\n" "You can try downloading the required installation image." -msgstr "" +msgstr "=E3=82=BD=E3=83=BC=E3=82=B9=E3=83=BB=E3=83=89=E3=83=A9=E3=82=A4=E3= =83=96=E3=81=8C=E8=A6=8B=E3=81=A4=E3=81=8B=E3=82=8A=E3=81=BE=E3=81=9B=E3=82= =93=E3=81=A7=E3=81=97=E3=81=9F=E3=80=82\n\n=E5=BF=85=E8=A6=81=E3=81=AA=E3=82= =A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB=E3=83=BB=E3=82=A4=E3=83=A1= =E3=83=BC=E3=82=B8=E3=82=92=E3=83=80=E3=82=A6=E3=83=B3=E3=83=AD=E3=83=BC=E3= =83=89=E3=81=97=E3=81=A6=E3=81=BF=E3=81=A6=E3=81=8F=E3=81=A0=E3=81=95=E3=81= =84=E3=80=82" =20 #: main.c:456 msgid "" "Please make sure to connect your machine to a network and the installer wil= l" " try connect to acquire an IP address." -msgstr "" +msgstr "=E3=83=91=E3=82=BD=E3=82=B3=E3=83=B3=E3=81=AF=E3=83=8D=E3=83=83=E3= =83=88=E3=83=AF=E3=83=BC=E3=82=AF=E3=81=A8=E6=8E=A5=E7=B6=9A=E3=81=97=E3=81= =9F=E3=81=8B=E3=82=92=E7=A2=BA=E8=AA=8D=E3=81=97=E3=81=A6=E3=81=8F=E3=81=A0= =E3=81=95=E3=81=84=E3=80=82=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3= =83=A9=E3=83=BC=E3=81=AF=E6=8E=A5=E7=B6=9A=E3=81=97=E3=81=A6=E3=80=81IP=E3=82= =A2=E3=83=89=E3=83=AC=E3=82=B9=E3=82=92=E5=BE=97=E3=81=A3=E3=81=A6=E3=81=BF= =E3=81=BE=E3=81=99=E3=80=82" =20 #: main.c:460 msgid "Download installation image" -msgstr "" +msgstr "=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB=E3=83=BB=E3= =82=A4=E3=83=A1=E3=83=BC=E3=82=B8=E3=82=92=E3=83=80=E3=82=A6=E3=83=B3=E3=83= =AD=E3=83=BC=E3=83=89=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=E3=80=82" =20 #: main.c:473 msgid "Trying to start networking (DHCP)..." -msgstr "" +msgstr "=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AF=E3=81=A8=E6= =8E=A5=E7=B6=9A=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=EF=BC=88DHCP=EF= =BC=89=E3=83=BB=E3=83=BB=E3=83=BB" =20 #: main.c:484 msgid "" "Networking could not be started but is required to go on with the installat= ion.\n" "\n" "Please connect your machine to a network with a DHCP server and retry." -msgstr "" +msgstr "=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AF=E3=81=A8=E6= =8E=A5=E7=B6=9A=E3=81=8C=E5=87=BA=E6=9D=A5=E3=81=BE=E3=81=9B=E3=82=93=E3=81= =A7=E3=81=97=E3=81=9F=E3=81=8C=E3=80=81=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88= =E3=83=BC=E3=83=AB=E3=82=92=E7=B6=B4=E3=82=8C=E3=82=8B=E3=81=9F=E3=82=81=E3= =81=AB=E5=BF=85=E8=A6=81=E3=81=A7=E3=81=99=E3=80=82\n\n=E3=83=91=E3=82=BD=E3= =82=B3=E3=83=B3=E3=82=92DHCP=E3=82=B5=E3=83=BC=E3=83=90=E3=83=BC=E3=81=8C=E3= =81=82=E3=82=8B=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AF=E3=81= =A8=E6=8E=A5=E7=B6=9A=E3=81=97=E3=81=A6=E3=80=81=E5=AE=9F=E8=A1=8C=E7=9B=B4= =E3=81=97=E3=81=A6=E4=B8=8B=E3=81=95=E3=81=84=E3=80=82" =20 #: main.c:487 main.c:516 msgid "Retry" -msgstr "" +msgstr "=E5=AE=9F=E8=A1=8C=E7=9B=B4=E3=81=97" =20 #: main.c:501 msgid "Downloading installation image..." -msgstr "" +msgstr "=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB=E3=83=BB=E3= =82=A4=E3=83=A1=E3=83=BC=E3=82=B8=E3=82=92=E3=83=80=E3=82=A6=E3=83=B3=E3=83= =AD=E3=83=BC=E3=83=89=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=E3=83=BB= =E3=83=BB=E3=83=BB" =20 #: main.c:510 #, c-format msgid "MD5 checksum mismatch" -msgstr "" +msgstr "MD5=E6=A4=9C=E6=9F=BB=E5=90=88=E8=A8=88=E3=81=8C=E4=B8=8D=E6=AD=A3= =E3=81=A7=E3=81=99=E3=80=82" =20 #: main.c:513 #, c-format @@ -116,44 +117,44 @@ msgid "" " Reason: %s\n" "\n" "%s" -msgstr "" +msgstr "=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB=E3=83=BB=E3= =82=A4=E3=83=A1=E3=83=BC=E3=82=B8=E3=81=8C=E6=AD=A3=E8=A6=8F=E3=81=AB=E3=83= =80=E3=82=A6=E3=83=B3=E3=83=AD=E3=83=BC=E3=83=89=E3=81=8C=E5=87=BA=E6=9D=A5= =E3=81=BE=E3=81=9B=E3=82=93=E3=81=A7=E3=81=97=E3=81=9F=E3=80=82\n=E5=8E=9F=E5= =9B=A0=EF=BC=9A%s\n\n%s" =20 #: main.c:528 #, c-format msgid "" "Could not mount %s to %s:\n" " %s\n" -msgstr "" +msgstr "%s =E3=81=AF %s =E3=81=AB=E3=83=9E=E3=82=A6=E3=83=B3=E3=83=88=E3=81= =8C=E5=87=BA=E6=9D=A5=E3=81=BE=E3=81=9B=E3=82=93=E3=81=A7=E3=81=97=E3=81=9F:\= n%s\n" =20 #: main.c:543 msgid "License Agreement" -msgstr "" +msgstr "=E3=83=A9=E3=82=A4=E3=82=BB=E3=83=B3=E3=82=B9=E3=83=BB=E3=82=A2=E3= =82=B0=E3=83=AA=E3=83=BC=E3=83=A1=E3=83=B3=E3=83=88" =20 #: main.c:544 msgid "License not accepted!" -msgstr "" +msgstr "=E3=83=A9=E3=82=A4=E3=82=BB=E3=83=B3=E3=82=B9=E3=82=92=E5=90=A6=E5= =AE=9A=E3=81=97=E3=81=BE=E3=81=97=E3=81=9F=EF=BC=81" =20 #: main.c:566 msgid "No hard disk found." -msgstr "" +msgstr "=E3=83=8F=E3=83=BC=E3=83=89=E3=83=BB=E3=83=87=E3=82=A3=E3=82=B9=E3= =82=AF=E3=82=92=E8=A6=8B=E3=81=A4=E3=81=8B=E3=82=8A=E3=81=BE=E3=81=9B=E3=82= =93=E3=81=A7=E3=81=97=E3=81=9F=E3=80=82" =20 #: main.c:587 msgid "Disk Selection" -msgstr "" +msgstr "=E3=83=8F=E3=83=BC=E3=83=89=E3=83=BB=E3=83=87=E3=82=A3=E3=82=B9=E3= =82=AF=E3=81=AE=E9=81=B8=E6=8A=9E" =20 #: main.c:588 msgid "" "Select the disk(s) you want to install IPFire on. First those will be parti= tioned, and then the partitions will have a filesystem put on them.\n" "\n" "ALL DATA ON THE DISK WILL BE DESTROYED." -msgstr "" +msgstr "IPFire=E3=82=92=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83= =AB=E3=83=8F=E3=83=BC=E3=83=89=E3=83=87=E3=82=B9=E3=82=AF=E3=82=92=E9=81=B8= =E3=82=93=E3=81=A7=E4=B8=8B=E3=81=95=E3=81=84=E3=80=82=E3=81=9D=E3=81=AE=E9= =81=B8=E3=82=93=E3=81=A0=E3=83=8F=E3=83=BC=E3=83=89=E3=83=87=E3=82=B9=E3=82= =AF=E3=81=A7=E3=81=AF=E3=83=91=E3=83=BC=E3=83=86=E3=82=A3=E3=82=B7=E3=83=A7= =E3=83=B3=E3=82=92=E3=81=97=E3=81=A6=E3=81=8B=E3=82=89=E3=80=81=E3=83=95=E3= =82=A1=E3=82=A4=E3=83=AB=E3=82=B7=E3=82=B9=E3=83=86=E3=83=A0=E3=82=92=E4=BD= =9C=E6=88=90=E3=81=97=E3=81=BE=E3=81=99=E3=80=82\n\n=E6=B3=A8=E6=84=8F=EF=BC= =9A=E3=81=93=E3=81=AE=E3=83=91=E3=82=B9=E3=83=AF=E3=83=BC=E3=83=89=E3=81=AE= =E5=85=A8=E3=81=A6=E3=81=AE=E3=81=AE=E3=83=87=E3=83=BC=E3=82=BF=E3=81=AF=E8= =A7=A3=E9=99=A4=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=EF=BC=81=EF=BC= =81" =20 #: main.c:599 msgid "" "No disk has been selected.\n" "\n" "Please select one or more disks you want to install IPFire on." -msgstr "" +msgstr "=E3=83=8F=E3=83=BC=E3=83=89=E3=83=87=E3=82=B9=E3=82=AF=E3=81=8C=E9= =81=B8=E6=8A=9E=E3=81=97=E3=81=BE=E3=81=9B=E3=82=93=E3=81=A7=E3=81=97=E3=81= =9F=E3=80=82\n\nIPFire=E3=82=92=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC= =E3=83=AB=E3=83=8F=E3=83=BC=E3=83=89=E3=83=87=E3=82=B9=E3=82=AF=E3=82=92=E9= =81=B8=E3=82=93=E3=81=A7=E3=81=8F=E3=81=A0=E3=81=95=E3=81=84=E3=80=82" =20 #: main.c:617 #, c-format @@ -163,15 +164,15 @@ msgid "" " %s\n" "\n" "Do you agree to continue?" -msgstr "" +msgstr "=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=A9=E3=83=BC=E3= =81=AF=E4=B8=8B=E8=A8=98=E3=81=AE=E9=81=B8=E3=82=93=E3=81=A0=E3=83=8F=E3=83= =BC=E3=83=89=E3=83=87=E3=82=B9=E3=82=AF=E3=82=92=E6=BA=96=E5=82=99=E3=81=97= =E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=EF=BC=9A\n\n %s\n\n=E7=B6=9A=E3=81=91= =E3=82=92=E5=BF=9C=E8=AB=BE=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=E3= =81=8B=E3=80=82" =20 #: main.c:619 msgid "Disk Setup" -msgstr "" +msgstr "=E3=83=87=E3=82=A3=E3=82=B9=E3=82=AF=E8=A8=AD=E5=AE=9A" =20 #: main.c:620 main.c:630 msgid "Delete all data" -msgstr "" +msgstr "=E5=85=A8=E3=81=A6=E3=81=AE=E3=83=87=E3=83=BC=E3=82=BF=E3=82=92=E8= =A7=A3=E9=99=A4=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=E3=80=82" =20 #: main.c:627 #, c-format @@ -182,131 +183,131 @@ msgid "" " %s\n" "\n" "Do you agree to continue?" -msgstr "" +msgstr "=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=A9=E3=83=BC=E3= =81=AF=E4=B8=8B=E8=A8=98=E3=81=AE=E9=81=B8=E3=82=93=E3=81=A0=E3=83=8F=E3=83= =BC=E3=83=89=E3=83=87=E3=82=B9=E3=82=AF=E3=81=A7RAID=E3=82=B3=E3=83=B3=E3=83= =95=E3=82=A3=E3=82=B0=E3=83=AC=E3=83=BC=E3=82=B7=E3=83=A7=E3=83=B3=E3=82=92= =E5=AE=9F=E8=A1=8C=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=EF=BC=9A\n\n = %s\n %s\n\n=E7=B6=9A=E3=81=91=E3=82=92=E5=BF=9C=E8=AB=BE=E3=81=97=E3=81=A6= =E3=81=84=E3=81=BE=E3=81=99=E3=81=8B=E3=80=82" =20 #: main.c:629 msgid "RAID Setup" -msgstr "" +msgstr "RAID=E8=A8=AD=E5=AE=9A" =20 #: main.c:640 msgid "Your disk configuration is currently not supported." -msgstr "" +msgstr "=E7=8F=BE=E5=9C=A8=E3=80=81=E8=B2=B4=E6=96=B9=E3=81=AE=E3=83=87=E3= =82=A3=E3=82=B9=E3=82=AF=E3=82=B3=E3=83=B3=E3=83=95=E3=82=A3=E3=82=B0=E3=83= =AC=E3=83=BC=E3=82=B7=E3=83=A7=E3=83=B3=E3=81=8C=E4=BD=BF=E7=94=A8=E5=87=BA= =E6=9D=A5=E3=81=BE=E3=81=9B=E3=82=93=E3=80=82" =20 #: main.c:655 msgid "Your harddisk is too small." -msgstr "" +msgstr "=E3=83=8F=E3=83=BC=E3=83=89=E3=83=87=E3=82=B9=E3=82=AF=E3=81=AE=E7= =A9=BA=E3=82=B9=E3=83=9A=E3=83=BC=E3=82=B9=E3=81=8C=E4=B8=8D=E8=B6=B3=E3=81= =A7=E3=81=99=E3=80=82" =20 #: main.c:671 msgid "" "Your harddisk is very small, but you can continue without a swap partition." -msgstr "" +msgstr "=E3=83=8F=E3=83=BC=E3=83=89=E3=83=87=E3=82=B9=E3=82=AF=E3=81=AE=E3= =82=B9=E3=83=9A=E3=83=BC=E3=82=B9=E3=81=8C=E5=B0=91=E3=81=AA=E3=81=84=E3=81= =A7=E3=81=99=E3=81=8C=E3=80=81=E3=82=B9=E3=83=AF=E3=83=83=E3=83=97=E7=84=A1= =E3=81=84=E7=8A=B6=E6=85=8B=E3=81=A7=E7=B6=9A=E3=81=91=E3=82=8B=E3=81=93=E3= =81=A8=E3=81=8C=E5=87=BA=E6=9D=A5=E3=81=BE=E3=81=99=E3=80=82" =20 #: main.c:684 msgid "ext4 Filesystem" -msgstr "" +msgstr "ext4=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E3=82=B7=E3=82=B9=E3=83=86= =E3=83=A0" =20 #: main.c:685 msgid "ext4 Filesystem without journal" -msgstr "" +msgstr "ext4=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E3=82=B7=E3=82=B9=E3=83=86= =E3=83=A0=E3=80=80=E3=82=B8=E3=83=A3=E3=83=BC=E3=83=8A=E3=83=AB=E7=84=A1=E3= =81=84" =20 #: main.c:686 msgid "XFS Filesystem" -msgstr "" +msgstr "XFS=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E3=82=B7=E3=82=B9=E3=83=86= =E3=83=A0" =20 #: main.c:687 msgid "ReiserFS Filesystem" -msgstr "" +msgstr "ReiserFS=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E3=82=B7=E3=82=B9=E3=83= =86=E3=83=A0" =20 #: main.c:701 msgid "Filesystem Selection" -msgstr "" +msgstr "=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E3=82=B7=E3=82=B9=E3=83=86=E3= =83=A0=E9=81=B8=E6=8A=9E" =20 #: main.c:701 msgid "Please choose your filesystem:" -msgstr "" +msgstr "=E4=BD=BF=E7=94=A8=E3=81=97=E3=81=9F=E3=81=84=E3=83=95=E3=82=A1=E3= =82=A4=E3=83=AB=E3=82=B7=E3=82=B9=E3=83=86=E3=83=A0=E3=82=92=E9=81=B8=E3=82= =93=E3=81=A7=E4=B8=8B=E3=81=95=E3=81=84=EF=BC=9A" =20 #: main.c:712 msgid "Building RAID..." -msgstr "" +msgstr "RAID=E3=82=92=E4=BD=9C=E6=88=90=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE= =E3=81=99=E3=83=BB=E3=83=BB=E3=83=BB" =20 #: main.c:716 msgid "Unable to build the RAID." -msgstr "" +msgstr "RAID=E3=81=8C=E4=BD=9C=E6=88=90=E5=87=BA=E6=9D=A5=E3=81=BE=E3=81=9B= =E3=82=93=E3=81=A7=E3=81=97=E3=81=9F=E3=80=82" =20 #: main.c:728 msgid "Partitioning disk..." -msgstr "" +msgstr "=E3=83=87=E3=82=A3=E3=82=B9=E3=82=AF=E3=82=92=E3=83=91=E3=83=BC=E3= =83=86=E3=82=A3=E3=82=B7=E3=83=A7=E3=83=B3=E3=81=97=E3=81=A6=E3=81=84=E3=81= =BE=E3=81=99=E3=83=BB=E3=83=BB=E3=83=BB" =20 #: main.c:732 msgid "Unable to partition the disk." -msgstr "" +msgstr "=E3=83=87=E3=82=A3=E3=82=B9=E3=82=AF=E3=81=8C=E3=83=91=E3=83=BC=E3= =83=86=E3=82=A3=E3=82=B7=E3=83=A7=E3=83=B3=E5=87=BA=E6=9D=A5=E3=81=BE=E3=81= =9B=E3=82=93=E3=81=A7=E3=81=97=E3=81=9F=E3=80=82" =20 #: main.c:739 msgid "Creating filesystems..." -msgstr "" +msgstr "=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E3=82=B7=E3=82=B9=E3=83=86=E3= =83=A0=E3=82=92=E4=BD=9C=E6=88=90=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81= =99=E3=83=BB=E3=83=BB=E3=83=BB" =20 #: main.c:743 msgid "Unable to create filesystems." -msgstr "" +msgstr "=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E3=82=B7=E3=82=B9=E3=83=86=E3= =83=A0=E3=81=8C=E4=BD=9C=E6=88=90=E5=87=BA=E6=9D=A5=E3=81=BE=E3=81=9B=E3=82= =93=E3=81=A7=E3=81=97=E3=81=9F=E3=80=82" =20 #: main.c:749 msgid "Unable to mount filesystems." -msgstr "" +msgstr "=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E3=82=B7=E3=82=B9=E3=83=86=E3= =83=A0=E3=81=8C=E3=83=9E=E3=82=A6=E3=83=B3=E3=83=88=E5=87=BA=E6=9D=A5=E3=81= =BE=E3=81=9B=E3=82=93=E3=81=A7=E3=81=97=E3=81=9F=E3=80=82" =20 #: main.c:760 msgid "Installing the system..." -msgstr "" +msgstr "=E3=82=B7=E3=82=B9=E3=83=86=E3=83=A0=E3=82=92=E3=82=A4=E3=83=B3=E3= =82=B9=E3=83=88=E3=83=BC=E3=83=AB=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81= =99=E3=83=BB=E3=83=BB=E3=83=BB" =20 #: main.c:761 msgid "Unable to install the system." -msgstr "" +msgstr "=E3=82=B7=E3=82=B9=E3=83=86=E3=83=A0=E3=81=8C=E3=82=A4=E3=83=B3=E3= =82=B9=E3=83=88=E3=83=BC=E3=83=AB=E5=87=BA=E6=9D=A5=E3=81=BE=E3=81=9B=E3=82= =93=E3=81=A7=E3=81=97=E3=81=9F=E3=80=82" =20 #: main.c:777 msgid "Installing the language cache..." -msgstr "" +msgstr "=E8=A8=80=E8=AA=9E=E3=82=AD=E3=83=A3=E3=83=83=E3=82=B7=E3=83=A5=E3= =82=92=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB=E3=81=97=E3=81= =A6=E3=81=84=E3=81=BE=E3=81=99=E3=83=BB=E3=83=BB=E3=83=BB" =20 #: main.c:778 msgid "Unable to install the language cache." -msgstr "" +msgstr "=E8=A8=80=E8=AA=9E=E3=82=AD=E3=83=A3=E3=83=83=E3=82=B7=E3=83=A5=E3= =81=8C=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB=E5=87=BA=E6=9D= =A5=E3=81=BE=E3=81=9B=E3=82=93=E3=81=A7=E3=81=97=E3=81=9F=E3=80=82" =20 #: main.c:783 msgid "Installing the bootloader..." -msgstr "" +msgstr "=E3=83=96=E3=83=BC=E3=83=88=E3=83=AD=E3=83=BC=E3=83=80=E3=82=92=E3= =82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB=E3=81=97=E3=81=A6=E3=81= =84=E3=81=BE=E3=81=99=E3=83=BB=E3=83=BB=E3=83=BB" =20 #: main.c:790 msgid "Unable to open /etc/default/grub for writing." -msgstr "" +msgstr "=E6=9B=B8=E3=81=8D=E8=BE=BC=E3=82=80=E7=82=BA=E3=80=81/etc/default/g= rub=E3=81=8C=E9=96=8B=E3=81=91=E3=81=BE=E3=81=9B=E3=82=93=E3=81=A7=E3=81=97= =E3=81=9F=E3=80=82" =20 #: main.c:812 msgid "Unable to install the bootloader." -msgstr "" +msgstr "=E3=83=96=E3=83=BC=E3=83=88=E3=83=AD=E3=83=BC=E3=83=80=E3=81=8C=E3= =82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB=E5=87=BA=E6=9D=A5=E3=81= =BE=E3=81=9B=E3=82=93=E3=81=A7=E3=81=97=E3=81=9F=E3=80=82" =20 #: main.c:826 msgid "" "A backup file has been found on the installation image.\n" "\n" "Do you want to restore the backup?" -msgstr "" +msgstr "=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB=E3=83=BB=E3= =82=A4=E3=83=A1=E3=83=BC=E3=82=B8=E3=81=A7=E3=83=90=E3=83=83=E3=82=AF=E3=83= =BB=E3=82=A2=E3=83=83=E3=83=97=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E3=81=8C= =E7=99=BA=E8=A6=8B=E3=81=97=E3=81=BE=E3=81=97=E3=81=9F=E3=80=82\n\n=E3=83=90= =E3=83=83=E3=82=AF=E3=83=BB=E3=82=A2=E3=83=83=E3=83=97=E3=82=92=E3=83=AA=E3= =82=B9=E3=83=88=E3=82=A2=E3=81=97=E3=81=A6=E3=81=BB=E3=81=97=E3=81=84=E3=81= =A7=E3=81=99=E3=81=8B=E3=80=82" =20 #: main.c:827 msgid "Yes" -msgstr "" +msgstr "=E3=81=AF=E3=81=84" =20 #: main.c:827 msgid "No" -msgstr "" +msgstr "=E3=81=84=E3=81=84=E3=81=88" =20 #: main.c:834 msgid "An error occured when the backup file was restored." -msgstr "" +msgstr "=E3=83=90=E3=83=83=E3=82=AF=E3=83=BB=E3=82=A2=E3=83=83=E3=83=97=E3= =82=92=E3=83=AA=E3=82=B9=E3=83=88=E3=82=A2=E4=B8=AD=E3=80=81=E3=82=A8=E3=83= =A9=E3=83=BC=E3=81=8C=E7=99=BA=E7=94=9F=E3=81=97=E3=81=BE=E3=81=97=E3=81=9F= =E3=80=82" =20 #: main.c:869 msgid "Running post-install script..." -msgstr "" +msgstr "=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB=E5=BE=8C=E3= =81=AE=E3=82=B9=E3=82=AF=E3=83=AA=E3=83=97=E3=83=88=E3=82=92=E5=AE=9F=E8=A1= =8C=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=E3=83=BB=E3=83=BB=E3=83=BB" =20 #: main.c:870 msgid "Post-install script failed." -msgstr "" +msgstr "=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB=E5=BE=8C=E3= =81=AE=E3=82=B9=E3=82=AF=E3=83=AA=E3=83=97=E3=83=88=E3=81=8C=E5=AE=9F=E8=A1= =8C=E5=87=BA=E6=9D=A5=E3=81=BE=E3=81=9B=E3=82=93=E3=81=A7=E3=81=97=E3=81=9F= =E3=80=82" =20 #: main.c:877 #, c-format @@ -314,16 +315,16 @@ msgid "" "%s was successfully installed!\n" "\n" "Please remove any installation mediums from this system and hit the reboot = button. Once the system has restarted you will be asked to setup networking a= nd system passwords. After that, you should point your web browser at https:/= /%s:444 (or what ever you name your %s) for the web configuration console." -msgstr "" +msgstr "%s =E3=81=AF=E6=AD=A3=E8=A6=8F=E3=81=AB=E3=82=A4=E3=83=B3=E3=82=B9= =E3=83=88=E3=83=BC=E3=83=AB=E3=81=97=E3=81=BE=E3=81=97=E3=81=9F=EF=BC=81\n\n= =E3=81=93=E3=81=AE=E3=82=B7=E3=82=B9=E3=83=86=E3=83=A0=E3=81=8B=E3=82=89=E5= =85=A8=E3=81=A6=E3=81=AE=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83= =AB=E3=83=BB=E3=83=A1=E3=83=87=E3=82=A3=E3=82=A2=E3=82=92=E5=A4=96=E3=81=97= =E3=81=A6=E3=80=81=E5=86=8D=E8=B5=B7=E5=8B=95=E3=83=9C=E3=82=BF=E3=83=B3=E3= =82=92=E6=8A=BC=E3=81=97=E3=81=A6=E3=81=8F=E3=81=A0=E3=81=95=E3=81=84=E3=80= =82=E5=86=8D=E8=B5=B7=E5=8B=95=E3=81=97=E3=81=9F=E3=82=89=E3=80=81=E3=83=8D= =E3=83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AF=E5=8F=8A=E3=81=B3=E3=82=B7=E3= =82=B9=E3=83=86=E3=83=A0=E3=83=BB=E3=83=91=E3=82=B9=E3=83=AF=E3=83=BC=E3=83= =89=E3=81=AE=E8=A8=AD=E5=AE=9A=E3=81=A7=E7=B6=9A=E3=81=91=E3=81=A7=E3=81=99= =E3=80=82=E7=B5=82=E4=BA=86=E3=81=97=E3=81=9F=E3=82=89=E3=80=81=E3=82=A6=E3= =82=A7=E3=83=83=E3=83=96=E3=83=BB=E3=82=B3=E3=83=B3=E3=83=95=E3=82=A3=E3=82= =B0=E3=83=AC=E3=83=BC=E3=82=B7=E3=83=A7=E3=83=B3=E3=83=BB=E3=82=B3=E3=83=B3= =E3=82=BD=E3=83=BC=E3=83=AB=E3=81=AE=E7=82=BA=E3=80=81=E3=82=A6=E3=82=A7=E3= =83=83=E3=83=96=E3=83=BB=E3=83=96=E3=83=A9=E3=82=A6=E3=82=B6=E3=83=BC=E3=81= =ABhttps://%s:444 (=E3=81=A8=E3=81=8B=E8=87=AA=E5=88=86=E3=81=A7 %s=E3=81=AB= =E4=B8=8A=E3=81=92=E3=81=9F=E5=90=8D=E5=89=8D) =E3=82=92=E8=A8=98=E5=85=A5=E3= =81=97=E3=81=A6=E4=B8=8B=E3=81=95=E3=81=84=E3=80=82" =20 #: main.c:882 msgid "Congratulations!" -msgstr "" +msgstr "=E3=81=8A=E7=96=B2=E3=82=8C=E6=A7=98=E3=81=A7=E3=81=97=E3=81=9F=EF= =BC=81" =20 #: main.c:882 msgid "Reboot" -msgstr "" +msgstr "=E5=86=8D=E8=B5=B7=E5=8B=95" =20 #: main.c:893 msgid "Setup has failed. Press Ok to reboot." -msgstr "" +msgstr "=E8=A8=AD=E5=AE=9A=E3=81=AE=E3=82=A8=E3=83=A9=E3=83=BC=E3=81=8C=E7= =99=BA=E7=94=9F=E3=81=97=E3=81=BE=E3=81=97=E3=81=9F=E3=80=82=E5=86=8D=E8=B5= =B7=E5=8B=95=E3=81=AE=E7=82=BA=E3=80=81OK=E3=83=9C=E3=82=BF=E3=83=B3=E3=82=92= =E6=8A=BC=E3=81=97=E3=81=A6=E4=B8=8B=E3=81=95=E3=81=84=E3=80=82" diff --git a/src/installer/po/jv.po b/src/installer/po/jv.po index 333dea3..0cee8b5 100644 --- a/src/installer/po/jv.po +++ b/src/installer/po/jv.po @@ -10,7 +10,7 @@ msgstr "" "POT-Creation-Date: 2014-11-05 01:29+0000\n" "PO-Revision-Date: 2014-07-31 09:39+0000\n" "Last-Translator: FULL NAME \n" -"Language-Team: Javanese (http://www.transifex.com/projects/p/ipfire/languag= e/jv/)\n" +"Language-Team: Javanese (http://www.transifex.com/mstremer/ipfire/language/= jv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/km_KH.po b/src/installer/po/km_KH.po index b4e5f89..a7e10a5 100644 --- a/src/installer/po/km_KH.po +++ b/src/installer/po/km_KH.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Khmer (Cambodia) (http://www.transifex.com/projects/p/ipfire= /language/km_KH/)\n" +"Language-Team: Khmer (Cambodia) (http://www.transifex.com/mstremer/ipfire/l= anguage/km_KH/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/nl.po b/src/installer/po/nl.po index 009e9c4..eab31aa 100644 --- a/src/installer/po/nl.po +++ b/src/installer/po/nl.po @@ -9,9 +9,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2015-01-26 07:37+0000\n" +"PO-Revision-Date: 2017-09-20 08:56+0000\n" "Last-Translator: Jacques Hylkema \n" -"Language-Team: Dutch (http://www.transifex.com/projects/p/ipfire/language/n= l/)\n" +"Language-Team: Dutch (http://www.transifex.com/mstremer/ipfire/language/nl/= )\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/pl.po b/src/installer/po/pl.po index 056eea1..6a5fc1f 100644 --- a/src/installer/po/pl.po +++ b/src/installer/po/pl.po @@ -4,21 +4,21 @@ #=20 # Translators: # btelega , 2014 -# Przemys=C5=82aw Karpeta , 2014 +# Przemyslaw Ka. , 2014 # Przemyslaw Zdroik , 2015 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2015-01-26 10:41+0000\n" +"PO-Revision-Date: 2017-09-20 08:56+0000\n" "Last-Translator: Przemyslaw Zdroik \n" -"Language-Team: Polish (http://www.transifex.com/projects/p/ipfire/language/= pl/)\n" +"Language-Team: Polish (http://www.transifex.com/mstremer/ipfire/language/pl= /)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: pl\n" -"Plural-Forms: nplurals=3D3; plural=3D(n=3D=3D1 ? 0 : n%10>=3D2 && n%10<=3D4= && (n%100<10 || n%100>=3D20) ? 1 : 2);\n" +"Plural-Forms: nplurals=3D4; plural=3D(n=3D=3D1 ? 0 : (n%10>=3D2 && n%10<=3D= 4) && (n%100<12 || n%100>14) ? 1 : n!=3D1 && (n%10>=3D0 && n%10<=3D1) || (n%1= 0>=3D5 && n%10<=3D9) || (n%100>=3D12 && n%100<=3D14) ? 2 : 3);\n" =20 #: main.c:78 main.c:179 main.c:404 main.c:670 main.c:702 main.c:893 msgid "OK" diff --git a/src/installer/po/pt_BR.po b/src/installer/po/pt_BR.po index e78c1b4..f9140e5 100644 --- a/src/installer/po/pt_BR.po +++ b/src/installer/po/pt_BR.po @@ -12,9 +12,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2015-03-24 21:30+0000\n" +"PO-Revision-Date: 2017-09-23 20:08+0000\n" "Last-Translator: Mois=C3=A9s Bites Borges de Castro \n" -"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/ipf= ire/language/pt_BR/)\n" +"Language-Team: Portuguese (Brazil) (http://www.transifex.com/mstremer/ipfir= e/language/pt_BR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/pt_PT.po b/src/installer/po/pt_PT.po index 5b70188..6251157 100644 --- a/src/installer/po/pt_PT.po +++ b/src/installer/po/pt_PT.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: +# Andr=C3=A9 Pinto , 2015 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" -"Last-Translator: Michael Tremer \n" -"Language-Team: Portuguese (Portugal) (http://www.transifex.com/projects/p/i= pfire/language/pt_PT/)\n" +"PO-Revision-Date: 2017-09-20 08:56+0000\n" +"Last-Translator: Andr=C3=A9 Pinto \n" +"Language-Team: Portuguese (Portugal) (http://www.transifex.com/mstremer/ipf= ire/language/pt_PT/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -24,11 +25,11 @@ msgstr "" #: main.c:79 main.c:460 main.c:487 main.c:516 main.c:620 main.c:630 main.c:6= 70 #: main.c:702 msgid "Cancel" -msgstr "" +msgstr "Cancelar" =20 #: main.c:176 msgid "I accept this license" -msgstr "" +msgstr "Aceito esta licen=C3=A7a" =20 #: main.c:384 msgid "Warning: Unattended installation will start in 10 seconds..." diff --git a/src/installer/po/ro_RO.po b/src/installer/po/ro_RO.po index 6601c0b..57294a3 100644 --- a/src/installer/po/ro_RO.po +++ b/src/installer/po/ro_RO.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: +# robert lasic , 2016 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" -"Last-Translator: Michael Tremer \n" -"Language-Team: Romanian (Romania) (http://www.transifex.com/projects/p/ipfi= re/language/ro_RO/)\n" +"PO-Revision-Date: 2017-09-20 08:56+0000\n" +"Last-Translator: robert lasic \n" +"Language-Team: Romanian (Romania) (http://www.transifex.com/mstremer/ipfire= /language/ro_RO/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -19,36 +20,36 @@ msgstr "" =20 #: main.c:78 main.c:179 main.c:404 main.c:670 main.c:702 main.c:893 msgid "OK" -msgstr "" +msgstr "OK" =20 #: main.c:79 main.c:460 main.c:487 main.c:516 main.c:620 main.c:630 main.c:6= 70 #: main.c:702 msgid "Cancel" -msgstr "" +msgstr "Anulare" =20 #: main.c:176 msgid "I accept this license" -msgstr "" +msgstr "Accept aceasta licenta" =20 #: main.c:384 msgid "Warning: Unattended installation will start in 10 seconds..." -msgstr "" +msgstr "Avertisment: Instalare neasistata va porni in 10 secunde..." =20 #: main.c:403 msgid "Language selection" -msgstr "" +msgstr "Selectare limba" =20 #: main.c:403 msgid "Select the language you wish to use for the installation." -msgstr "" +msgstr "Alege limba care vrei sa o folosesti pentru aceasta instalare" =20 #: main.c:418 msgid "Unattended mode" -msgstr "" +msgstr "Mode neasistat" =20 #: main.c:420 msgid "/ between elements | selects | next scree= n" -msgstr "" +msgstr "/ navigare intre elemente | selectare | = urmatorul ecran" =20 #: main.c:426 #, c-format @@ -56,16 +57,16 @@ msgid "" "Welcome to the %s installation program.\n" "\n" "Selecting Cancel on any of the following screens will reboot the computer." -msgstr "" +msgstr "Bine a-ti venit la %s instalare program.\n\nSelectare Cancel in oric= are din urmatoarele ecrane duce la repornire calculator." =20 #: main.c:428 msgid "Start installation" -msgstr "" +msgstr "Pornire instalare" =20 #: main.c:449 #, c-format msgid "The installer will now try downloading the installation image." -msgstr "" +msgstr "Instalatorul va incerca acum sa descarce imaginea pentru instalare" =20 #: main.c:452 #, c-format @@ -73,41 +74,41 @@ msgid "" "No source drive could be found.\n" "\n" "You can try downloading the required installation image." -msgstr "" +msgstr "Nu a fost gasit nici un disk sursa.\n\nPoti sa incerci sa descarci i= maginea pentru instalare necesara." =20 #: main.c:456 msgid "" "Please make sure to connect your machine to a network and the installer wil= l" " try connect to acquire an IP address." -msgstr "" +msgstr "Asigura conexiune in retea si instalatorul va incerca sa se conectez= e si sa ia adresa de IP." =20 #: main.c:460 msgid "Download installation image" -msgstr "" +msgstr "Descarca imaginea de instalare" =20 #: main.c:473 msgid "Trying to start networking (DHCP)..." -msgstr "" +msgstr "Se incearca sa se porneasca reteaua (DHCP)..." =20 #: main.c:484 msgid "" "Networking could not be started but is required to go on with the installat= ion.\n" "\n" "Please connect your machine to a network with a DHCP server and retry." -msgstr "" +msgstr "Reteaua nu s-a putut porni dar este necesar sa continui cu instalare= a.\n\nConecteaza calculatorulbin retea la server de DHCP si reincearca." =20 #: main.c:487 main.c:516 msgid "Retry" -msgstr "" +msgstr "Reincearca" =20 #: main.c:501 msgid "Downloading installation image..." -msgstr "" +msgstr "Se descarca imaginea de instalare" =20 #: main.c:510 #, c-format msgid "MD5 checksum mismatch" -msgstr "" +msgstr "Nepotrivire verificare MD5" =20 #: main.c:513 #, c-format @@ -116,44 +117,44 @@ msgid "" " Reason: %s\n" "\n" "%s" -msgstr "" +msgstr "Imaginea de instalat nu a putut fi descarcata.\nMotiv: %s\n\n%s" =20 #: main.c:528 #, c-format msgid "" "Could not mount %s to %s:\n" " %s\n" -msgstr "" +msgstr "Nu s-a putut monta %s pe %s:\n%s\n" =20 #: main.c:543 msgid "License Agreement" -msgstr "" +msgstr "Acceptare Licenta" =20 #: main.c:544 msgid "License not accepted!" -msgstr "" +msgstr "Licenta neacceptata!" =20 #: main.c:566 msgid "No hard disk found." -msgstr "" +msgstr "Nu s-a gasit nici un hard disk." =20 #: main.c:587 msgid "Disk Selection" -msgstr "" +msgstr "Selectie disk" =20 #: main.c:588 msgid "" "Select the disk(s) you want to install IPFire on. First those will be parti= tioned, and then the partitions will have a filesystem put on them.\n" "\n" "ALL DATA ON THE DISK WILL BE DESTROYED." -msgstr "" +msgstr "Selecteaza disk(uri) pe care vrei sa instalezi IPFire. Pentru incepu= t vor fi partitionate, apoi partitiile vor avea pe ele fisiere system.\n\nTOA= TE DATELE DE PE DISK VOR FI DISTRUSE." =20 #: main.c:599 msgid "" "No disk has been selected.\n" "\n" "Please select one or more disks you want to install IPFire on." -msgstr "" +msgstr "Nu s-a selectat nici un disk.\n\nAlege unul sau mai multe disk-uri p= e care vrei sa instalezi IPFire." =20 #: main.c:617 #, c-format @@ -163,15 +164,15 @@ msgid "" " %s\n" "\n" "Do you agree to continue?" -msgstr "" +msgstr "Programul de instalare v-a pregati acum harddisk-ul ales:\n\n%s\n\nE= sti de acord sa continuui?" =20 #: main.c:619 msgid "Disk Setup" -msgstr "" +msgstr "Configurare disk" =20 #: main.c:620 main.c:630 msgid "Delete all data" -msgstr "" +msgstr "Sterge toate datele" =20 #: main.c:627 #, c-format @@ -182,131 +183,131 @@ msgid "" " %s\n" "\n" "Do you agree to continue?" -msgstr "" +msgstr "Programul de instalare va configura acum configuratia RAID pe hardd= isk-urile selectate:\n\n%s\n%s\n\nEsti de acord sa continui?" =20 #: main.c:629 msgid "RAID Setup" -msgstr "" +msgstr "Configurare RAID" =20 #: main.c:640 msgid "Your disk configuration is currently not supported." -msgstr "" +msgstr "Configuratia curenta a disk-urilor nu e suportata." =20 #: main.c:655 msgid "Your harddisk is too small." -msgstr "" +msgstr "Harddisk-ul tau e prea mic." =20 #: main.c:671 msgid "" "Your harddisk is very small, but you can continue without a swap partition." -msgstr "" +msgstr "Harddisk-ul tau e foarte mic, dar poti sa continui fara partitie swa= p." =20 #: main.c:684 msgid "ext4 Filesystem" -msgstr "" +msgstr "Sistem de fisiere ext4" =20 #: main.c:685 msgid "ext4 Filesystem without journal" -msgstr "" +msgstr "Sistem de fisiere ext4 fara jurnal" =20 #: main.c:686 msgid "XFS Filesystem" -msgstr "" +msgstr "Sistem de fisier XFS" =20 #: main.c:687 msgid "ReiserFS Filesystem" -msgstr "" +msgstr "Sistem de fisier ReiserFS" =20 #: main.c:701 msgid "Filesystem Selection" -msgstr "" +msgstr "Selectare Sistem de fisier" =20 #: main.c:701 msgid "Please choose your filesystem:" -msgstr "" +msgstr "Alege Sistemul de fisiere:" =20 #: main.c:712 msgid "Building RAID..." -msgstr "" +msgstr "Creare RAID..." =20 #: main.c:716 msgid "Unable to build the RAID." -msgstr "" +msgstr "Nu s-a putut creea RAID." =20 #: main.c:728 msgid "Partitioning disk..." -msgstr "" +msgstr "Partitionare disk..." =20 #: main.c:732 msgid "Unable to partition the disk." -msgstr "" +msgstr "Nu s-a putut partitiona disk-ul." =20 #: main.c:739 msgid "Creating filesystems..." -msgstr "" +msgstr "Creeare fisiere sistem..." =20 #: main.c:743 msgid "Unable to create filesystems." -msgstr "" +msgstr "Nu s-au putut creea fisierele sistem." =20 #: main.c:749 msgid "Unable to mount filesystems." -msgstr "" +msgstr "Nu s-au putut monta fisierele sistem." =20 #: main.c:760 msgid "Installing the system..." -msgstr "" +msgstr "Instalare sistem..." =20 #: main.c:761 msgid "Unable to install the system." -msgstr "" +msgstr "Nu s-a putut instala sistemul." =20 #: main.c:777 msgid "Installing the language cache..." -msgstr "" +msgstr "Instalare limba..." =20 #: main.c:778 msgid "Unable to install the language cache." -msgstr "" +msgstr "Nu s-a putut instala limba." =20 #: main.c:783 msgid "Installing the bootloader..." -msgstr "" +msgstr "Instalare bootloader..." =20 #: main.c:790 msgid "Unable to open /etc/default/grub for writing." -msgstr "" +msgstr "Nu se poate deschide /etc/default/grub pentru scriere." =20 #: main.c:812 msgid "Unable to install the bootloader." -msgstr "" +msgstr "Nu s-a putut instala bootloader." =20 #: main.c:826 msgid "" "A backup file has been found on the installation image.\n" "\n" "Do you want to restore the backup?" -msgstr "" +msgstr "O copie de siguranta s-a gasit in imaginea de instalare.\n\nVrei sa = restaurezi copia de siguranta?" =20 #: main.c:827 msgid "Yes" -msgstr "" +msgstr "Da" =20 #: main.c:827 msgid "No" -msgstr "" +msgstr "Nu" =20 #: main.c:834 msgid "An error occured when the backup file was restored." -msgstr "" +msgstr "A aparut o eroare la restaurarea copiei de siguranta." =20 #: main.c:869 msgid "Running post-install script..." -msgstr "" +msgstr "Se ruleaza codul post instalare..." =20 #: main.c:870 msgid "Post-install script failed." -msgstr "" +msgstr "Codul post instalare a esuat." =20 #: main.c:877 #, c-format @@ -314,16 +315,16 @@ msgid "" "%s was successfully installed!\n" "\n" "Please remove any installation mediums from this system and hit the reboot = button. Once the system has restarted you will be asked to setup networking a= nd system passwords. After that, you should point your web browser at https:/= /%s:444 (or what ever you name your %s) for the web configuration console." -msgstr "" +msgstr "%s a fost instalat cu succes!\n\nElimina mediu de instalare din aces= t sistem si apasa butonul repornire. Dupa ce sistemul a reornit va trebui sa = configurezi reteaua si parola sistemului. Dupa aceea, ar trebui sa verifici p= agina web https://%s:444 (sau numele dat %s) pentru consola web de configurar= e." =20 #: main.c:882 msgid "Congratulations!" -msgstr "" +msgstr "Felicitari!" =20 #: main.c:882 msgid "Reboot" -msgstr "" +msgstr "Repornire" =20 #: main.c:893 msgid "Setup has failed. Press Ok to reboot." -msgstr "" +msgstr "Instalare esuata. Apasa OK pentru repornire." diff --git a/src/installer/po/ru.po b/src/installer/po/ru.po index 1a6408c..b11e2e9 100644 --- a/src/installer/po/ru.po +++ b/src/installer/po/ru.po @@ -3,20 +3,20 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: -# ellviss , 2015 +# ellviss , 2015-2016 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2015-02-24 12:56+0000\n" +"PO-Revision-Date: 2017-09-20 08:56+0000\n" "Last-Translator: ellviss \n" -"Language-Team: Russian (http://www.transifex.com/projects/p/ipfire/language= /ru/)\n" +"Language-Team: Russian (http://www.transifex.com/mstremer/ipfire/language/r= u/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: ru\n" -"Plural-Forms: nplurals=3D3; plural=3D(n%10=3D=3D1 && n%100!=3D11 ? 0 : n%10= >=3D2 && n%10<=3D4 && (n%100<10 || n%100>=3D20) ? 1 : 2);\n" +"Plural-Forms: nplurals=3D4; plural=3D(n%10=3D=3D1 && n%100!=3D11 ? 0 : n%10= >=3D2 && n%10<=3D4 && (n%100<12 || n%100>14) ? 1 : n%10=3D=3D0 || (n%10>=3D5 = && n%10<=3D9) || (n%100>=3D11 && n%100<=3D14)? 2 : 3);\n" =20 #: main.c:78 main.c:179 main.c:404 main.c:670 main.c:702 main.c:893 msgid "OK" @@ -95,7 +95,7 @@ msgid "" "Networking could not be started but is required to go on with the installat= ion.\n" "\n" "Please connect your machine to a network with a DHCP server and retry." -msgstr "" +msgstr "=D0=A1=D0=B5=D1=82=D1=8C =D0=BD=D0=B5 =D0=B1=D1=8B=D0=BB=D0=B0 =D0= =B2=D0=BA=D0=BB=D1=8E=D1=87=D0=B5=D0=BD=D0=B0, =D0=BD=D0=BE =D0=BE=D0=BD=D0= =B0 =D0=BD=D0=B5=D0=BE=D0=B1=D1=85=D0=BE=D0=B4=D0=B8=D0=BC=D0=B0 =D0=B4=D0=BB= =D1=8F =D1=83=D1=81=D1=82=D0=B0=D0=BD=D0=BE=D0=B2=D0=BA=D0=B8\n\n=D0=9F=D0=BE= =D0=B6=D0=B0=D0=BB=D1=83=D0=B9=D1=81=D1=82=D0=B0, =D0=BF=D0=BE=D0=B4=D0=BA=D0= =BB=D1=8E=D1=87=D0=B8=D1=82=D0=B5 =D0=BA=D0=BE=D0=BC=D0=BF=D1=8C=D1=8E=D1=82= =D0=B5=D1=80 =D0=BA =D1=81=D0=B5=D1=82=D0=B8 =D1=81 DHCP =D1=81=D0=B5=D1=80= =D0=B2=D0=B5=D1=80=D0=BE=D0=BC =D0=B8 =D0=BF=D0=BE=D0=B2=D1=82=D0=BE=D1=80=D0= =B8=D1=82=D0=B5 =D0=BF=D0=BE=D0=BF=D1=8B=D1=82=D0=BA=D1=83." =20 #: main.c:487 main.c:516 msgid "Retry" @@ -117,7 +117,7 @@ msgid "" " Reason: %s\n" "\n" "%s" -msgstr "" +msgstr "=D0=9D=D0=B5 =D1=83=D0=B4=D0=B0=D1=91=D1=82=D1=81=D1=8F =D1=81=D0=BA= =D0=B0=D1=87=D0=B0=D1=82=D1=8C =D1=83=D1=81=D1=82=D0=B0=D0=BD=D0=BE=D0=B2=D0= =BE=D1=87=D0=BD=D1=8B=D0=B9 =D0=BE=D0=B1=D1=80=D0=B0=D0=B7.\n=D0=9F=D1=80=D0= =B8=D1=87=D0=B8=D0=BD=D0=B0 : %s\n\n%s" =20 #: main.c:528 #, c-format @@ -147,14 +147,14 @@ msgid "" "Select the disk(s) you want to install IPFire on. First those will be parti= tioned, and then the partitions will have a filesystem put on them.\n" "\n" "ALL DATA ON THE DISK WILL BE DESTROYED." -msgstr "" +msgstr "=D0=92=D1=8B=D0=B1=D0=B5=D1=80=D0=B5=D1=82=D0=B5 =D0=B4=D0=B8=D1=81= =D0=BA(=D0=B8) , =D0=BD=D0=B0 =D0=BA=D0=BE=D1=82=D0=BE=D1=80=D1=8B=D0=B9(=D0= =B5) =D0=B2=D1=8B =D1=85=D0=BE=D1=82=D0=B8=D1=82=D0=B5 =D1=83=D1=81=D1=82=D0= =B0=D0=BD=D0=BE=D0=B2=D0=B8=D1=82=D1=8C IPFIRE. =D0=A1=D0=BD=D0=B0=D1=87=D0= =B0=D0=BB=D0=B0 =D0=B1=D1=83=D0=B4=D0=B5=D1=82 =D0=BF=D1=80=D0=BE=D0=B2=D0=B5= =D0=B4=D0=B5=D0=BD=D0=B0 =D1=80=D0=B0=D0=B7=D0=BC=D0=B5=D1=82=D0=BA=D0=B0 =D1= =80=D0=B0=D0=B7=D0=B4=D0=B5=D0=BB=D0=BE=D0=B2, =D0=B0 =D0=BF=D0=BE=D1=82=D0= =BE=D0=BC =D0=B1=D1=83=D0=B4=D0=B5=D1=82 =D1=83=D1=81=D1=82=D0=B0=D0=BD=D0=BE= =D0=B2=D0=BB=D0=B5=D0=BD=D0=B0 =D1=84=D0=B0=D0=B9=D0=BB=D0=BE=D0=B2=D0=B0=D1= =8F =D1=81=D0=B8=D1=81=D1=82=D0=B5=D0=BC=D0=B0.\n\n=D0=92=D1=81=D0=B5 =D0=B4= =D0=B0=D0=BD=D0=BD=D1=8B=D0=B5 =D0=BD=D0=B0 =D0=B4=D0=B8=D1=81=D0=BA=D0=B5 = =D0=B1=D1=83=D0=B4=D1=83=D1=82 =D1=83=D0=BD=D0=B8=D1=87=D1=82=D0=BE=D0=B6=D0= =B5=D0=BD=D1=8B." =20 #: main.c:599 msgid "" "No disk has been selected.\n" "\n" "Please select one or more disks you want to install IPFire on." -msgstr "" +msgstr "=D0=9D=D0=B5 =D0=B2=D1=8B=D0=B1=D1=80=D0=B0=D0=BD =D0=B4=D0=B8=D1=81= =D0=BA.\n\n=D0=9F=D0=BE=D0=B6=D0=B0=D0=BB=D1=83=D0=B9=D1=81=D1=82=D0=B0, =D0= =B2=D1=8B=D0=B1=D0=B5=D1=80=D0=B5=D1=82=D0=B5 =D0=B4=D0=B8=D1=81=D0=BA =D0=BD= =D0=B0 =D0=BA=D0=BE=D1=82=D0=BE=D1=80=D1=8B=D0=B9 =D0=B2=D1=8B =D1=85=D0=BE= =D1=82=D0=B8=D1=82=D0=B5 =D0=BF=D0=BE=D1=81=D1=82=D0=B0=D0=B2=D0=B8=D1=82=D1= =8C IPFIRE" =20 #: main.c:617 #, c-format @@ -183,7 +183,7 @@ msgid "" " %s\n" "\n" "Do you agree to continue?" -msgstr "" +msgstr "=D0=9F=D1=80=D0=BE=D0=B3=D1=80=D0=B0=D0=BC=D0=BC=D0=B0 =D1=83=D1=81= =D1=82=D0=B0=D0=BD=D0=BE=D0=B2=D0=BA=D0=B8 =D1=81=D0=B5=D0=B9=D1=87=D0=B0=D1= =81 =D0=BD=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B8=D1=82 RAID =D0=BD=D0=B0 =D0=B2= =D1=8B=D0=B1=D1=80=D0=B0=D0=BD=D0=BD=D1=8B=D1=85 =D0=B4=D0=B8=D1=81=D0=BA=D0= =B0=D1=85:\n\n%s\n%s\n\n=D0=92=D1=8B =D1=81=D0=BE=D0=B3=D0=BB=D0=B0=D1=81=D0= =BD=D1=8B =D0=BF=D1=80=D0=BE=D0=B4=D0=BE=D0=BB=D0=B6=D0=B8=D1=82=D1=8C ?" =20 #: main.c:629 msgid "RAID Setup" diff --git a/src/installer/po/rw.po b/src/installer/po/rw.po index e099182..5eae4b5 100644 --- a/src/installer/po/rw.po +++ b/src/installer/po/rw.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Kinyarwanda (http://www.transifex.com/projects/p/ipfire/lang= uage/rw/)\n" +"Language-Team: Kinyarwanda (http://www.transifex.com/mstremer/ipfire/langua= ge/rw/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/sk.po b/src/installer/po/sk.po index 3766bae..b285cae 100644 --- a/src/installer/po/sk.po +++ b/src/installer/po/sk.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Slovak (http://www.transifex.com/projects/p/ipfire/language/= sk/)\n" +"Language-Team: Slovak (http://www.transifex.com/mstremer/ipfire/language/sk= /)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/sq.po b/src/installer/po/sq.po index af653fd..ef3f20d 100644 --- a/src/installer/po/sq.po +++ b/src/installer/po/sq.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: +# Ardit Dani , 2016 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" -"Last-Translator: Michael Tremer \n" -"Language-Team: Albanian (http://www.transifex.com/projects/p/ipfire/languag= e/sq/)\n" +"PO-Revision-Date: 2017-09-20 08:56+0000\n" +"Last-Translator: Ardit Dani \n" +"Language-Team: Albanian (http://www.transifex.com/mstremer/ipfire/language/= sq/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -24,11 +25,11 @@ msgstr "" #: main.c:79 main.c:460 main.c:487 main.c:516 main.c:620 main.c:630 main.c:6= 70 #: main.c:702 msgid "Cancel" -msgstr "" +msgstr "Anulo" =20 #: main.c:176 msgid "I accept this license" -msgstr "" +msgstr "Un=C3=AB pranoj k=C3=ABt=C3=AB li=C3=A7enc=C3=AB " =20 #: main.c:384 msgid "Warning: Unattended installation will start in 10 seconds..." @@ -60,7 +61,7 @@ msgstr "" =20 #: main.c:428 msgid "Start installation" -msgstr "" +msgstr "Fillo instalimin" =20 #: main.c:449 #, c-format diff --git a/src/installer/po/sr.po b/src/installer/po/sr.po index 97fad59..86dd1ef 100644 --- a/src/installer/po/sr.po +++ b/src/installer/po/sr.po @@ -10,7 +10,7 @@ msgstr "" "POT-Creation-Date: 2014-11-05 01:29+0000\n" "PO-Revision-Date: 2014-07-31 09:39+0000\n" "Last-Translator: FULL NAME \n" -"Language-Team: Serbian (http://www.transifex.com/projects/p/ipfire/language= /sr/)\n" +"Language-Team: Serbian (http://www.transifex.com/mstremer/ipfire/language/s= r/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/su.po b/src/installer/po/su.po index 758c337..fd66e4e 100644 --- a/src/installer/po/su.po +++ b/src/installer/po/su.po @@ -10,7 +10,7 @@ msgstr "" "POT-Creation-Date: 2014-11-05 01:29+0000\n" "PO-Revision-Date: 2014-07-31 09:39+0000\n" "Last-Translator: FULL NAME \n" -"Language-Team: Sundanese (http://www.transifex.com/projects/p/ipfire/langua= ge/su/)\n" +"Language-Team: Sundanese (http://www.transifex.com/mstremer/ipfire/language= /su/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/sv.po b/src/installer/po/sv.po index b0e5ae7..9cdc32b 100644 --- a/src/installer/po/sv.po +++ b/src/installer/po/sv.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: +# Urban Berggren , 2016 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" -"Last-Translator: Michael Tremer \n" -"Language-Team: Swedish (http://www.transifex.com/projects/p/ipfire/language= /sv/)\n" +"PO-Revision-Date: 2017-09-20 08:56+0000\n" +"Last-Translator: Urban Berggren \n" +"Language-Team: Swedish (http://www.transifex.com/mstremer/ipfire/language/s= v/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -19,36 +20,36 @@ msgstr "" =20 #: main.c:78 main.c:179 main.c:404 main.c:670 main.c:702 main.c:893 msgid "OK" -msgstr "" +msgstr "OK" =20 #: main.c:79 main.c:460 main.c:487 main.c:516 main.c:620 main.c:630 main.c:6= 70 #: main.c:702 msgid "Cancel" -msgstr "" +msgstr "Avbryt" =20 #: main.c:176 msgid "I accept this license" -msgstr "" +msgstr "Jag accepterar licensavtalet" =20 #: main.c:384 msgid "Warning: Unattended installation will start in 10 seconds..." -msgstr "" +msgstr "OBS! Installationen kommer att starta om 10 sekunder..." =20 #: main.c:403 msgid "Language selection" -msgstr "" +msgstr "Val av spr=C3=A5k" =20 #: main.c:403 msgid "Select the language you wish to use for the installation." -msgstr "" +msgstr "V=C3=A4lj =C3=B6nskat spr=C3=A5k du vill anv=C3=A4nda under installa= tionen." =20 #: main.c:418 msgid "Unattended mode" -msgstr "" +msgstr "O=C3=B6vervakat l=C3=A4ge" =20 #: main.c:420 msgid "/ between elements | selects | next scree= n" -msgstr "" +msgstr "/ mellan menyval | v=C3=A4ljer | n= =C3=A4sta ruta" =20 #: main.c:426 #, c-format @@ -56,16 +57,16 @@ msgid "" "Welcome to the %s installation program.\n" "\n" "Selecting Cancel on any of the following screens will reboot the computer." -msgstr "" +msgstr "V=C3=A4lkommen till %s installationsprogram.\n\nV=C3=A4ljer du Avbry= t p=C3=A5 n=C3=A5gon av de f=C3=B6ljade rutorna s=C3=A5 kommer datorn att sta= rta om." =20 #: main.c:428 msgid "Start installation" -msgstr "" +msgstr "Starta installationen" =20 #: main.c:449 #, c-format msgid "The installer will now try downloading the installation image." -msgstr "" +msgstr "Installationsprogrammet kommer nu att f=C3=B6rs=C3=B6ka ladda ned in= stallationsavbilden." =20 #: main.c:452 #, c-format @@ -73,41 +74,41 @@ msgid "" "No source drive could be found.\n" "\n" "You can try downloading the required installation image." -msgstr "" +msgstr "Ingen k=C3=A4llenhet hittades.\n\nDu kan prova att ladda ner install= ationsavbilden." =20 #: main.c:456 msgid "" "Please make sure to connect your machine to a network and the installer wil= l" " try connect to acquire an IP address." -msgstr "" +msgstr "Se till att din dator =C3=A4r uppkopplat mot internet s=C3=A5 att in= stallationsprogrammet kan ladda ned installationsavbilden." =20 #: main.c:460 msgid "Download installation image" -msgstr "" +msgstr "Laddar ned installationsavbild" =20 #: main.c:473 msgid "Trying to start networking (DHCP)..." -msgstr "" +msgstr "F=C3=B6rs=C3=B6ker att starta n=C3=A4tverkstj=C3=A4nst (DHCP)..." =20 #: main.c:484 msgid "" "Networking could not be started but is required to go on with the installat= ion.\n" "\n" "Please connect your machine to a network with a DHCP server and retry." -msgstr "" +msgstr "N=C3=A4tverket kunde inte startas, men kr=C3=A4vs f=C3=B6r att insta= llationen ska kunna forts=C3=A4tta.\n\nVar god koppla din dator till ett n=C3= =A4tverk med en DHCP server och f=C3=B6rs=C3=B6k igen." =20 #: main.c:487 main.c:516 msgid "Retry" -msgstr "" +msgstr "F=C3=B6rs=C3=B6k igen" =20 #: main.c:501 msgid "Downloading installation image..." -msgstr "" +msgstr "Laddar ned installationsavbild..." =20 #: main.c:510 #, c-format msgid "MD5 checksum mismatch" -msgstr "" +msgstr "MD5 kontrollsumma st=C3=A4mmer ej" =20 #: main.c:513 #, c-format @@ -116,44 +117,44 @@ msgid "" " Reason: %s\n" "\n" "%s" -msgstr "" +msgstr "Installationsavbilden kunde inte laddas ned.\n\nOrsak: %s\n\n%s" =20 #: main.c:528 #, c-format msgid "" "Could not mount %s to %s:\n" " %s\n" -msgstr "" +msgstr "Kunde inte montera %s till %s:\n%s\n" =20 #: main.c:543 msgid "License Agreement" -msgstr "" +msgstr "Licensavtal" =20 #: main.c:544 msgid "License not accepted!" -msgstr "" +msgstr "Licensavtalet ej accepterat!" =20 #: main.c:566 msgid "No hard disk found." -msgstr "" +msgstr "Ingen h=C3=A5rddisk hittades." =20 #: main.c:587 msgid "Disk Selection" -msgstr "" +msgstr "Val av h=C3=A5rddisk" =20 #: main.c:588 msgid "" "Select the disk(s) you want to install IPFire on. First those will be parti= tioned, and then the partitions will have a filesystem put on them.\n" "\n" "ALL DATA ON THE DISK WILL BE DESTROYED." -msgstr "" +msgstr "V=C3=A4lj den h=C3=A5rddisk som du vill installera IPFire p=C3=A5. H= =C3=A5rddisken kommer att partioneras och formateras.\n\nALL DATA P=C3=85 H= =C3=85RDDISKEN KOMMER ATT RENSAS." =20 #: main.c:599 msgid "" "No disk has been selected.\n" "\n" "Please select one or more disks you want to install IPFire on." -msgstr "" +msgstr "Ingen h=C3=A5rddisk har blivit vald.\n\nVad god v=C3=A4lj en eller f= ler h=C3=A5rddiskar som du vill installera IPFire p=C3=A5." =20 #: main.c:617 #, c-format @@ -163,15 +164,15 @@ msgid "" " %s\n" "\n" "Do you agree to continue?" -msgstr "" +msgstr "Installationsprogrammet kommer du att f=C3=B6rbereda den valda h=C3= =A5rddisken:\n\n%s\n\nVill du forts=C3=A4tta?" =20 #: main.c:619 msgid "Disk Setup" -msgstr "" +msgstr "H=C3=A5rddiskinst=C3=A4llning" =20 #: main.c:620 main.c:630 msgid "Delete all data" -msgstr "" +msgstr "Radera alla data" =20 #: main.c:627 #, c-format @@ -182,131 +183,131 @@ msgid "" " %s\n" "\n" "Do you agree to continue?" -msgstr "" +msgstr "Installationsprogrammet kommer nu att st=C3=A4lla in RAID p=C3=A5 de= valda h=C3=A5rddiskarna\n\n%s\n%s\n\nVill du forts=C3=A4tta?" =20 #: main.c:629 msgid "RAID Setup" -msgstr "" +msgstr "RAID-inst=C3=A4llning" =20 #: main.c:640 msgid "Your disk configuration is currently not supported." -msgstr "" +msgstr "Din h=C3=A5rddiskkonfiguration st=C3=B6ds f=C3=B6r nuvarande inte." =20 #: main.c:655 msgid "Your harddisk is too small." -msgstr "" +msgstr "Det =C3=A4r f=C3=B6r lite utrymme p=C3=A5 din h=C3=A5rddisk." =20 #: main.c:671 msgid "" "Your harddisk is very small, but you can continue without a swap partition." -msgstr "" +msgstr "Din h=C3=A5rddisk har v=C3=A4ldigt lite utrymme, men du kan v=C3=A4l= ja att forts=C3=A4tta utan en v=C3=A4xlingspartition." =20 #: main.c:684 msgid "ext4 Filesystem" -msgstr "" +msgstr "ext4 Filsystem" =20 #: main.c:685 msgid "ext4 Filesystem without journal" -msgstr "" +msgstr "ext4 Filesystem utan journal" =20 #: main.c:686 msgid "XFS Filesystem" -msgstr "" +msgstr "XFS Filsystem" =20 #: main.c:687 msgid "ReiserFS Filesystem" -msgstr "" +msgstr "ReiserFS Filsystem" =20 #: main.c:701 msgid "Filesystem Selection" -msgstr "" +msgstr "Val av Filsystem" =20 #: main.c:701 msgid "Please choose your filesystem:" -msgstr "" +msgstr "Var god v=C3=A4lj vilket filsystem du vill anv=C3=A4nda:" =20 #: main.c:712 msgid "Building RAID..." -msgstr "" +msgstr "Bygger RAID" =20 #: main.c:716 msgid "Unable to build the RAID." -msgstr "" +msgstr "Kan inte bygga RAID" =20 #: main.c:728 msgid "Partitioning disk..." -msgstr "" +msgstr "Partionerar h=C3=A5rddisken..." =20 #: main.c:732 msgid "Unable to partition the disk." -msgstr "" +msgstr "Kan inte partionera h=C3=A5rddisken." =20 #: main.c:739 msgid "Creating filesystems..." -msgstr "" +msgstr "Skapar filsystem..." =20 #: main.c:743 msgid "Unable to create filesystems." -msgstr "" +msgstr "Kan inte skapa filsystem." =20 #: main.c:749 msgid "Unable to mount filesystems." -msgstr "" +msgstr "Kan inte montera filsystem." =20 #: main.c:760 msgid "Installing the system..." -msgstr "" +msgstr "Installerar systemet..." =20 #: main.c:761 msgid "Unable to install the system." -msgstr "" +msgstr "Kan inte installera systemet." =20 #: main.c:777 msgid "Installing the language cache..." -msgstr "" +msgstr "Installerar spr=C3=A5kcachen..." =20 #: main.c:778 msgid "Unable to install the language cache." -msgstr "" +msgstr "Kan inte installera spr=C3=A5kcachen." =20 #: main.c:783 msgid "Installing the bootloader..." -msgstr "" +msgstr "Installerar starthanteraren..." =20 #: main.c:790 msgid "Unable to open /etc/default/grub for writing." -msgstr "" +msgstr "Kan inte skriva till /etc/default/grub " =20 #: main.c:812 msgid "Unable to install the bootloader." -msgstr "" +msgstr "Kan inte installera starthanteraren." =20 #: main.c:826 msgid "" "A backup file has been found on the installation image.\n" "\n" "Do you want to restore the backup?" -msgstr "" +msgstr "En s=C3=A4kerhetskopia har hittats p=C3=A5 installationsavbilden.\n\= nVill du =C3=A5terst=C3=A4lla s=C3=A4kerhetskopian?" =20 #: main.c:827 msgid "Yes" -msgstr "" +msgstr "Ja" =20 #: main.c:827 msgid "No" -msgstr "" +msgstr "Nej" =20 #: main.c:834 msgid "An error occured when the backup file was restored." -msgstr "" +msgstr "Ett fel uppt=C3=A4cktes n=C3=A4r s=C3=A4kerhetskopian skulle =C3=A5t= erst=C3=A4llas." =20 #: main.c:869 msgid "Running post-install script..." -msgstr "" +msgstr "K=C3=B6r efterinstallations-skript" =20 #: main.c:870 msgid "Post-install script failed." -msgstr "" +msgstr "Efterinstallations-skript misslyckades." =20 #: main.c:877 #, c-format @@ -314,16 +315,16 @@ msgid "" "%s was successfully installed!\n" "\n" "Please remove any installation mediums from this system and hit the reboot = button. Once the system has restarted you will be asked to setup networking a= nd system passwords. After that, you should point your web browser at https:/= /%s:444 (or what ever you name your %s) for the web configuration console." -msgstr "" +msgstr "%s har installerats!\n\nVar god ta ur installationsmediet fr=C3=A5n = datorn och tryck p=C3=A5 starta om. N=C3=A4r systemet v=C3=A4l har startat om= s=C3=A5 kommer du att bli tillfr=C3=A5gad att st=C3=A4lla in n=C3=A4tverk oc= h l=C3=B6senord. Efter det, b=C3=B6r du i din webbl=C3=A4sares adressf=C3=A4l= t skriva in adressen https://%s:444 (eller vad du nu har gett ditt %s f=C3=B6= r namn) f=C3=B6r att komma =C3=A5t webbgr=C3=A4nssnittet." =20 #: main.c:882 msgid "Congratulations!" -msgstr "" +msgstr "Grattis!" =20 #: main.c:882 msgid "Reboot" -msgstr "" +msgstr "Starta om" =20 #: main.c:893 msgid "Setup has failed. Press Ok to reboot." -msgstr "" +msgstr "Installationen har misslyckats. Tryck Ok f=C3=B6r att starta om." diff --git a/src/installer/po/th.po b/src/installer/po/th.po index 97842e8..2d6b332 100644 --- a/src/installer/po/th.po +++ b/src/installer/po/th.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Thai (http://www.transifex.com/projects/p/ipfire/language/th= /)\n" +"Language-Team: Thai (http://www.transifex.com/mstremer/ipfire/language/th/)= \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/tk.po b/src/installer/po/tk.po index c753b72..0bc6e80 100644 --- a/src/installer/po/tk.po +++ b/src/installer/po/tk.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Turkmen (http://www.transifex.com/projects/p/ipfire/language= /tk/)\n" +"Language-Team: Turkmen (http://www.transifex.com/mstremer/ipfire/language/t= k/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/tr.po b/src/installer/po/tr.po index ad65543..d66d840 100644 --- a/src/installer/po/tr.po +++ b/src/installer/po/tr.po @@ -4,14 +4,14 @@ #=20 # Translators: # Ersan YILDIRIM , 2015 -# Kudret Emre , 2014 -# Kudret Emre , 2014 +# Kudret , 2014 +# Kudret , 2014 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2015-04-23 16:07+0000\n" +"PO-Revision-Date: 2017-09-20 08:56+0000\n" "Last-Translator: Ersan YILDIRIM \n" "Language-Team: Turkish (http://www.transifex.com/mstremer/ipfire/language/t= r/)\n" "MIME-Version: 1.0\n" diff --git a/src/installer/po/uk.po b/src/installer/po/uk.po index 4a2ab67..cd8deb1 100644 --- a/src/installer/po/uk.po +++ b/src/installer/po/uk.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Ukrainian (http://www.transifex.com/projects/p/ipfire/langua= ge/uk/)\n" +"Language-Team: Ukrainian (http://www.transifex.com/mstremer/ipfire/language= /uk/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/uz(a)Latn.po b/src/installer/po/uz(a)Latn.po index 8c68800..345fb09 100644 --- a/src/installer/po/uz(a)Latn.po +++ b/src/installer/po/uz(a)Latn.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Uzbek (Latin) (http://www.transifex.com/projects/p/ipfire/la= nguage/uz(a)Latn/)\n" +"Language-Team: Uzbek (Latin) (http://www.transifex.com/mstremer/ipfire/lang= uage/uz(a)Latn/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/vi.po b/src/installer/po/vi.po index 4f5b455..7fbce46 100644 --- a/src/installer/po/vi.po +++ b/src/installer/po/vi.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Vietnamese (http://www.transifex.com/projects/p/ipfire/langu= age/vi/)\n" +"Language-Team: Vietnamese (http://www.transifex.com/mstremer/ipfire/languag= e/vi/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/installer/po/zh.po b/src/installer/po/zh.po index 3dbca13..67ed5c8 100644 --- a/src/installer/po/zh.po +++ b/src/installer/po/zh.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-05 01:29+0000\n" -"PO-Revision-Date: 2014-11-05 01:33+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Chinese (http://www.transifex.com/projects/p/ipfire/language= /zh/)\n" +"Language-Team: Chinese (http://www.transifex.com/mstremer/ipfire/language/z= h/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/misc-progs/Makefile b/src/misc-progs/Makefile index 7cc70b4..c3329b1 100644 --- a/src/misc-progs/Makefile +++ b/src/misc-progs/Makefile @@ -31,7 +31,8 @@ SUID_PROGS =3D squidctrl sshctrl ipfirereboot \ redctrl syslogdctrl extrahdctrl sambactrl upnpctrl \ smartctrl clamavctrl addonctrl pakfire mpfirectrl wlanapctrl \ setaliases urlfilterctrl updxlratorctrl fireinfoctrl rebuildroutes \ - getconntracktable wirelessclient torctrl ddnsctrl unboundctrl + getconntracktable wirelessclient torctrl ddnsctrl unboundctrl \ + captivectrl SUID_UPDX =3D updxsetperms =20 OBJS =3D $(patsubst %,%.o,$(PROGS) $(SUID_PROGS)) diff --git a/src/misc-progs/captivectrl.c b/src/misc-progs/captivectrl.c new file mode 100644 index 0000000..56dd78d --- /dev/null +++ b/src/misc-progs/captivectrl.c @@ -0,0 +1,361 @@ +/* This file is part of the IPFire Firewall. +* +* This program is distributed under the terms of the GNU General Public +* Licence. See the file COPYING for details. */ + +#define _BSD_SOURCE +#define _XOPEN_SOURCE + +#include +#include +#include +#include + +#include "libsmooth.h" +#include "setuid.h" + +#define CAPTIVE_PORTAL_SETTINGS CONFIG_ROOT "/captive/settings" +#define ETHERNET_SETTINGS CONFIG_ROOT "/ethernet/settings" + +#define CLIENTS CONFIG_ROOT "/captive/clients" +#define IPTABLES "/sbin/iptables --wait" +#define HTTP_PORT 80 +#define REDIRECT_PORT 1013 + +typedef struct client { + char etheraddr[STRING_SIZE]; + char ipaddr[STRING_SIZE]; + time_t time_start; + int expires; + + struct client* next; +} client_t; + +static time_t parse_time(const char* s) { + int t =3D 0; + + if (sscanf(s, "%d", &t) =3D=3D 1) { + return (time_t)t; + } + + return -1; +} + +static char* format_time(const time_t* t) { + char buffer[STRING_SIZE]; + + struct tm* tm =3D gmtime(t); + if (tm =3D=3D NULL) + return NULL; + + strftime(buffer, sizeof(buffer), "%Y-%m-%dT%H:%M", tm); + + return strdup(buffer); +} + +static client_t* read_clients(char* filename) { + FILE* f =3D NULL; + + if (!(f =3D fopen(filename, "r"))) { + fprintf(stderr, "Could not open configuration file: %s\n", filename); + return NULL;; + } + + char line[STRING_SIZE]; + + client_t* client_first =3D NULL; + client_t* client_last =3D NULL; + client_t* client_curr; + + while ((fgets(line, STRING_SIZE, f) !=3D NULL)) { + if (line[strlen(line) - 1] =3D=3D '\n') + line[strlen(line) - 1] =3D '\0'; + + // Skip all commented lines + if (*line =3D=3D '#') + continue; + + client_curr =3D (client_t*)malloc(sizeof(client_t)); + memset(client_curr, 0, sizeof(client_t)); + + if (client_first =3D=3D NULL) + client_first =3D client_curr; + else + client_last->next =3D client_curr; + client_last =3D client_curr; + + unsigned int count =3D 0; + char* lineptr =3D line; + while (1) { + if (!*lineptr) + break; + + char* word =3D lineptr; + while (*lineptr !=3D '\0') { + if (*lineptr =3D=3D ',') { + *lineptr =3D '\0'; + lineptr++; + break; + } + lineptr++; + } + + switch (count++) { + // Ethernet address + case 1: + strcpy(client_curr->etheraddr, word); + break; + + // IP address + case 2: + strcpy(client_curr->ipaddr, word); + break; + + // Start time + case 3: + client_curr->time_start =3D parse_time(word); + break; + + // Expire duration + case 4: + client_curr->expires =3D atoi(word); + break; + + default: + break; + } + } + } + + if (f) + fclose(f); + + return client_first; +} + +static void flush_chains() { + // filter + safe_system(IPTABLES " -F CAPTIVE_PORTAL"); + safe_system(IPTABLES " -F CAPTIVE_PORTAL_CLIENTS"); + + // nat + safe_system(IPTABLES " -t nat -F CAPTIVE_PORTAL"); +} + +static int setup_dns_filters() { + const char* protos[] =3D { "udp", "tcp", NULL }; + + // Limits the number of DNS requests to 3 kByte/s + // A burst of 1MB is permitted at the start + const char* limiter =3D "-m hashlimit --hashlimit-name dns-filter" + " --hashlimit-mode srcip --hashlimit-upto 3kb/sec --hashlimit-burst 1024kb= "; + + char command[STRING_SIZE]; + + const char** proto =3D protos; + while (*proto) { + snprintf(command, sizeof(command), IPTABLES " -A CAPTIVE_PORTAL_CLIENTS -p= %s" + " --dport 53 %s -j RETURN", *proto, limiter); + + int r =3D safe_system(command); + if (r) + return r; + + proto++; + } + + return 0; +} + +static int add_client_rules(const client_t* clients) { + char command[STRING_SIZE]; + char match[STRING_SIZE]; + + while (clients) { + size_t len =3D 0; + + if (*clients->ipaddr && clients->expires > 0) { + len +=3D snprintf(match + len, sizeof(match) - len, + "-s %s", clients->ipaddr); + } + + len +=3D snprintf(match + len, sizeof(match) - len, + " -m mac --mac-source %s", clients->etheraddr); + + if (clients->expires > 0) { + time_t expires =3D clients->time_start + clients->expires; + + char* time_start =3D format_time(&clients->time_start); + char* time_end =3D format_time(&expires); + + len +=3D snprintf(match + len, sizeof(match) - len, + " -m time --datestart %s --datestop %s", + time_start, time_end); + + free(time_start); + free(time_end); + } + + // filter + snprintf(command, sizeof(command), IPTABLES " -A CAPTIVE_PORTAL_CLIENTS" + " %s -j RETURN", match); + safe_system(command); + + // nat + snprintf(command, sizeof(command), IPTABLES " -t nat -A CAPTIVE_PORTAL" + " %s -j RETURN", match); + safe_system(command); + + // Move on to the next client + clients =3D clients->next; + } + + return 0; +} + +static char* get_key(struct keyvalue* settings, char* key) { + char value[STRING_SIZE]; + + if (!findkey(settings, key, value)) + return NULL; + + return strdup(value); +} + +static int add_interface_rule(const char* intf, int allow_webif_access) { + int r; + char command[STRING_SIZE]; + + if ((intf =3D=3D NULL) || (strlen(intf) =3D=3D 0)) { + fprintf(stderr, "Empty interface given\n"); + return -1; + } + + snprintf(command, sizeof(command), IPTABLES " -A CAPTIVE_PORTAL -i %s" + " -j CAPTIVE_PORTAL_CLIENTS", intf); + r =3D safe_system(command); + if (r) + return r; + + if (allow_webif_access) { + snprintf(command, sizeof(command), IPTABLES " -A CAPTIVE_PORTAL_CLIENTS" + " -i %s -p tcp --dport 444 -j RETURN", intf); + r =3D safe_system(command); + if (r) + return r; + } + + // Redirect all unauthenticated clients + snprintf(command, sizeof(command), IPTABLES " -t nat -A CAPTIVE_PORTAL -i %= s" + " -p tcp --dport %d -j REDIRECT --to-ports %d", intf, HTTP_PORT, REDIRECT_= PORT); + r =3D safe_system(command); + if (r) + return r; + + // Allow access to captive portal site + snprintf(command, sizeof(command), IPTABLES " -A CAPTIVE_PORTAL_CLIENTS" + " -i %s -p tcp --dport %d -j RETURN", intf, REDIRECT_PORT); + r =3D safe_system(command); + if (r) + return r; + + return 0; +} + +static int add_interface_rules(struct keyvalue* captive_portal_settings, str= uct keyvalue* ethernet_settings) { + const char* intf; + char* setting; + int r =3D 0; + + setting =3D get_key(captive_portal_settings, "ENABLE_GREEN"); + if (setting && (strcmp(setting, "on") =3D=3D 0)) { + free(setting); + + intf =3D get_key(ethernet_settings, "GREEN_DEV"); + r =3D add_interface_rule(intf, /* allow webif access from green */ 1); + if (r) + return r; + } + + setting =3D get_key(captive_portal_settings, "ENABLE_BLUE"); + if (setting && (strcmp(setting, "on") =3D=3D 0)) { + free(setting); + + intf =3D get_key(ethernet_settings, "BLUE_DEV"); + r =3D add_interface_rule(intf, /* do not allow webif access */ 0); + if (r) + return r; + } + + // Always pass DNS packets through all firewall rules + r =3D setup_dns_filters(); + if (r) + return r; + + // Add the last rule + r =3D safe_system(IPTABLES " -A CAPTIVE_PORTAL_CLIENTS -j DROP"); + if (r) + return r; + + return r; +} + +int main(int argc, char** argv) { + int r =3D 0; + char* intf =3D NULL; + client_t* clients =3D NULL; + + struct keyvalue* captive_portal_settings =3D NULL; + struct keyvalue* ethernet_settings =3D NULL; + + if (!(initsetuid())) + exit(2); + + ethernet_settings =3D initkeyvalues(); + if (!readkeyvalues(ethernet_settings, ETHERNET_SETTINGS)) { + fprintf(stderr, "Could not read %s\n", ETHERNET_SETTINGS); + r =3D 1; + goto END; + } + + captive_portal_settings =3D initkeyvalues(); + if (!readkeyvalues(captive_portal_settings, CAPTIVE_PORTAL_SETTINGS)) { + fprintf(stderr, "Could not read %s\n", CAPTIVE_PORTAL_SETTINGS); + r =3D 1; + goto END; + } + + clients =3D read_clients(CLIENTS); + + // Clean up all old rules + flush_chains(); + + // Add all client rules + r =3D add_client_rules(clients); + if (r) + goto END; + + // Add all interface rules + r =3D add_interface_rules(captive_portal_settings, ethernet_settings); + if (r) + goto END; + +END: + while (clients) { + client_t* head =3D clients; + clients =3D clients->next; + + free(head); + } + + if (ethernet_settings) + freekeyvalues(ethernet_settings); + + if (captive_portal_settings) + freekeyvalues(captive_portal_settings); + + if (intf) + free(intf); + + return r; +} diff --git a/src/misc-progs/wirelessctrl.c b/src/misc-progs/wirelessctrl.c index 1e166eb..7cffc89 100644 --- a/src/misc-progs/wirelessctrl.c +++ b/src/misc-progs/wirelessctrl.c @@ -42,6 +42,7 @@ int main(void) { char buffer[STRING_SIZE]; char *index, *ipaddress, *macaddress, *enabled; struct keyvalue *kv =3D NULL; + struct keyvalue* captive_settings =3D NULL; =20 if (!(initsetuid())) exit(1); @@ -67,6 +68,13 @@ int main(void) { exit(1); } =20 + // Read captive portal settings + captive_settings =3D initkeyvalues(); + if (!readkeyvalues(captive_settings, CONFIG_ROOT "/captive/settings")) { + fprintf(stderr, "Could not read captive portal settings\n"); + exit(1); + } + /* Get the BLUE interface details */ if (findkey(kv, "BLUE_DEV", blue_dev) > 0) { if ((strlen(blue_dev) > 0) && !VALID_DEVICE(blue_dev)) { @@ -79,6 +87,15 @@ int main(void) { exit(0); } =20 + // Check if the captive portal is enabled on blue. If so, we will + // just keep the chains flushed and do not add any rules. + char captive_enabled[STRING_SIZE]; + if (findkey(captive_settings, "ENABLE_BLUE", captive_enabled) > 0) { + if (strcmp(captive_enabled, "on") =3D=3D 0) { + return 0; + } + } + if ((fd =3D fopen(CONFIG_ROOT "/wireless/nodrop", "r"))) return 0; =20 diff --git a/src/patches/apache-2.4.27-CVE-2017-9798-fix.patch b/src/patches/= apache-2.4.27-CVE-2017-9798-fix.patch deleted file mode 100644 index eb82c8b..0000000 --- a/src/patches/apache-2.4.27-CVE-2017-9798-fix.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- server/core.c 2017/08/16 16:50:29 1805223 -+++ server/core.c 2017/09/08 13:13:11 1807754 -@@ -2262,6 +2262,12 @@ - /* method has not been registered yet, but resource restriction - * is always checked before method handling, so register it. - */ -+ if (cmd->pool =3D=3D cmd->temp_pool) { -+ /* In .htaccess, we can't globally register new methods. */ -+ return apr_psprintf(cmd->pool, "Could not register method '= %s' " -+ "for %s from .htaccess configuration", -+ method, cmd->cmd->name); -+ } - methnum =3D ap_method_register(cmd->pool, - apr_pstrdup(cmd->pool, method)); - } diff --git a/src/patches/apache-2.4.27-PR61382-fix.patch b/src/patches/apache= -2.4.27-PR61382-fix.patch deleted file mode 100644 index 128621a..0000000 --- a/src/patches/apache-2.4.27-PR61382-fix.patch +++ /dev/null @@ -1,783 +0,0 @@ -Index: modules/http2/h2_bucket_beam.c -=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D ---- modules/http2/h2_bucket_beam.c (revision 1804645) -+++ modules/http2/h2_bucket_beam.c (working copy) -@@ -287,7 +287,7 @@ - /* do not count */ - } - else if (APR_BUCKET_IS_FILE(b)) { -- /* if unread, has no real mem footprint. how to test? */ -+ /* if unread, has no real mem footprint. */ - } - else { - len +=3D b->length; -@@ -316,32 +316,80 @@ - return APR_SIZE_MAX; - } -=20 --static apr_status_t wait_cond(h2_bucket_beam *beam, apr_thread_mutex_t *loc= k) -+static int buffer_is_empty(h2_bucket_beam *beam) - { -- if (beam->timeout > 0) { -- return apr_thread_cond_timedwait(beam->cond, lock, beam->timeout); -+ return ((!beam->recv_buffer || APR_BRIGADE_EMPTY(beam->recv_buffer)) -+ && H2_BLIST_EMPTY(&beam->send_list)); -+} -+ -+static apr_status_t wait_empty(h2_bucket_beam *beam, apr_read_type_e block,= =20 -+ apr_thread_mutex_t *lock) -+{ -+ apr_status_t rv =3D APR_SUCCESS; -+ =20 -+ while (!buffer_is_empty(beam) && APR_SUCCESS =3D=3D rv) { -+ if (APR_BLOCK_READ !=3D block || !lock) { -+ rv =3D APR_EAGAIN; -+ } -+ else if (beam->timeout > 0) { -+ rv =3D apr_thread_cond_timedwait(beam->change, lock, beam->time= out); -+ } -+ else { -+ rv =3D apr_thread_cond_wait(beam->change, lock); -+ } - } -- else { -- return apr_thread_cond_wait(beam->cond, lock); -+ return rv; -+} -+ -+static apr_status_t wait_not_empty(h2_bucket_beam *beam, apr_read_type_e bl= ock, =20 -+ apr_thread_mutex_t *lock) -+{ -+ apr_status_t rv =3D APR_SUCCESS; -+ =20 -+ while (buffer_is_empty(beam) && APR_SUCCESS =3D=3D rv) { -+ if (beam->aborted) { -+ rv =3D APR_ECONNABORTED; -+ } -+ else if (beam->closed) { -+ rv =3D APR_EOF; -+ } -+ else if (APR_BLOCK_READ !=3D block || !lock) { -+ rv =3D APR_EAGAIN; -+ } -+ else if (beam->timeout > 0) { -+ rv =3D apr_thread_cond_timedwait(beam->change, lock, beam->time= out); -+ } -+ else { -+ rv =3D apr_thread_cond_wait(beam->change, lock); -+ } - } -+ return rv; - } -=20 --static apr_status_t r_wait_space(h2_bucket_beam *beam, apr_read_type_e bloc= k, -- h2_beam_lock *pbl, apr_size_t *premain)=20 -+static apr_status_t wait_not_full(h2_bucket_beam *beam, apr_read_type_e blo= ck,=20 -+ apr_size_t *pspace_left, h2_beam_lock *bl) - { -- *premain =3D calc_space_left(beam); -- while (!beam->aborted && *premain <=3D 0=20 -- && (block =3D=3D APR_BLOCK_READ) && pbl->mutex) { -- apr_status_t status; -- report_prod_io(beam, 1, pbl); -- status =3D wait_cond(beam, pbl->mutex); -- if (APR_STATUS_IS_TIMEUP(status)) { -- return status; -+ apr_status_t rv =3D APR_SUCCESS; -+ apr_size_t left; -+ =20 -+ while (0 =3D=3D (left =3D calc_space_left(beam)) && APR_SUCCESS =3D=3D = rv) { -+ if (beam->aborted) { -+ rv =3D APR_ECONNABORTED; - } -- r_purge_sent(beam); -- *premain =3D calc_space_left(beam); -+ else if (block !=3D APR_BLOCK_READ || !bl->mutex) { -+ rv =3D APR_EAGAIN; -+ } -+ else { -+ if (beam->timeout > 0) { -+ rv =3D apr_thread_cond_timedwait(beam->change, bl->mutex, b= eam->timeout); -+ } -+ else { -+ rv =3D apr_thread_cond_wait(beam->change, bl->mutex); -+ } -+ } - } -- return beam->aborted? APR_ECONNABORTED : APR_SUCCESS; -+ *pspace_left =3D left; -+ return rv; - } -=20 - static void h2_beam_emitted(h2_bucket_beam *beam, h2_beam_proxy *proxy) -@@ -404,8 +452,8 @@ - if (!bl.mutex) { - r_purge_sent(beam); - } -- else if (beam->cond) { -- apr_thread_cond_broadcast(beam->cond); -+ else { -+ apr_thread_cond_broadcast(beam->change); - } - leave_yellow(beam, &bl); - } -@@ -425,9 +473,7 @@ - { - if (!beam->closed) { - beam->closed =3D 1; -- if (beam->cond) { -- apr_thread_cond_broadcast(beam->cond); -- } -+ apr_thread_cond_broadcast(beam->change); - } - return APR_SUCCESS; - } -@@ -582,7 +628,7 @@ - apr_interval_time_t timeout) - { - h2_bucket_beam *beam; -- apr_status_t status =3D APR_SUCCESS; -+ apr_status_t rv =3D APR_SUCCESS; - =20 - beam =3D apr_pcalloc(pool, sizeof(*beam)); - if (!beam) { -@@ -601,16 +647,15 @@ - beam->max_buf_size =3D max_buf_size; - beam->timeout =3D timeout; -=20 -- status =3D apr_thread_mutex_create(&beam->lock, APR_THREAD_MUTEX_DEFAUL= T,=20 -- pool); -- if (status =3D=3D APR_SUCCESS) { -- status =3D apr_thread_cond_create(&beam->cond, pool); -- if (status =3D=3D APR_SUCCESS) { -+ rv =3D apr_thread_mutex_create(&beam->lock, APR_THREAD_MUTEX_DEFAULT, p= ool); -+ if (APR_SUCCESS =3D=3D rv) { -+ rv =3D apr_thread_cond_create(&beam->change, pool); -+ if (APR_SUCCESS =3D=3D rv) { - apr_pool_pre_cleanup_register(pool, beam, beam_cleanup); - *pbeam =3D beam; - } - } -- return status; -+ return rv; - } -=20 - void h2_beam_buffer_size_set(h2_bucket_beam *beam, apr_size_t buffer_size) -@@ -691,9 +736,7 @@ - h2_blist_cleanup(&beam->send_list); - report_consumption(beam, &bl); - } -- if (beam->cond) { -- apr_thread_cond_broadcast(beam->cond); -- } -+ apr_thread_cond_broadcast(beam->change); - leave_yellow(beam, &bl); - } - } -@@ -730,18 +773,7 @@ - h2_beam_lock bl; - =20 - if ((status =3D enter_yellow(beam, &bl)) =3D=3D APR_SUCCESS) { -- while (status =3D=3D APR_SUCCESS -- && !H2_BLIST_EMPTY(&beam->send_list) -- && !H2_BPROXY_LIST_EMPTY(&beam->proxies)) { -- if (block =3D=3D APR_NONBLOCK_READ || !bl.mutex) { -- status =3D APR_EAGAIN; -- break; -- } -- if (beam->cond) { -- apr_thread_cond_broadcast(beam->cond); -- } -- status =3D wait_cond(beam, bl.mutex); -- } -+ status =3D wait_empty(beam, block, bl.mutex); - leave_yellow(beam, &bl); - } - return status; -@@ -761,13 +793,18 @@ - static apr_status_t append_bucket(h2_bucket_beam *beam,=20 - apr_bucket *b, - apr_read_type_e block, -+ apr_size_t *pspace_left, - h2_beam_lock *pbl) - { - const char *data; - apr_size_t len; -- apr_size_t space_left =3D 0; - apr_status_t status; -+ int can_beam, check_len; - =20 -+ if (beam->aborted) { -+ return APR_ECONNABORTED; -+ } -+ =20 - if (APR_BUCKET_IS_METADATA(b)) { - if (APR_BUCKET_IS_EOS(b)) { - beam->closed =3D 1; -@@ -777,11 +814,31 @@ - return APR_SUCCESS; - } - else if (APR_BUCKET_IS_FILE(b)) { -- /* file bucket lengths do not really count */ -+ /* For file buckets the problem is their internal readpool that -+ * is used on the first read to allocate buffer/mmap. -+ * Since setting aside a file bucket will de-register the -+ * file cleanup function from the previous pool, we need to -+ * call that only from the sender thread. -+ * -+ * Currently, we do not handle file bucket with refcount > 1 as -+ * the beam is then not in complete control of the file's lifetime. -+ * Which results in the bug that a file get closed by the receiver -+ * while the sender or the beam still have buckets using it.=20 -+ *=20 -+ * Additionally, we allow callbacks to prevent beaming file -+ * handles across. The use case for this is to limit the number=20 -+ * of open file handles and rather use a less efficient beam -+ * transport. */ -+ apr_bucket_file *bf =3D b->data; -+ apr_file_t *fd =3D bf->fd; -+ can_beam =3D (bf->refcount.refcount =3D=3D 1); -+ if (can_beam && beam->can_beam_fn) { -+ can_beam =3D beam->can_beam_fn(beam->can_beam_ctx, beam, fd); -+ } -+ check_len =3D !can_beam; - } - else { -- space_left =3D calc_space_left(beam); -- if (space_left > 0 && b->length =3D=3D ((apr_size_t)-1)) { -+ if (b->length =3D=3D ((apr_size_t)-1)) { - const char *data; - status =3D apr_bucket_read(b, &data, &len, APR_BLOCK_READ); - if (status !=3D APR_SUCCESS) { -@@ -788,19 +845,15 @@ - return status; - } - } -- =20 -- if (space_left <=3D 0) { -- status =3D r_wait_space(beam, block, pbl, &space_left); -- if (status !=3D APR_SUCCESS) { -- return status; -- } -- if (space_left <=3D 0) { -- return APR_EAGAIN; -- } -+ check_len =3D 1; -+ } -+ =20 -+ if (check_len) { -+ if (b->length > *pspace_left) { -+ apr_bucket_split(b, *pspace_left); - } -- /* space available, maybe need bucket split */ -+ *pspace_left -=3D b->length; - } -- =20 -=20 - /* The fundamental problem is that reading a sender bucket from - * a receiver thread is a total NO GO, because the bucket might use -@@ -830,32 +883,8 @@ - apr_bucket_heap_make(b, data, len, NULL); - } - } -- else if (APR_BUCKET_IS_FILE(b)) { -- /* For file buckets the problem is their internal readpool that -- * is used on the first read to allocate buffer/mmap. -- * Since setting aside a file bucket will de-register the -- * file cleanup function from the previous pool, we need to -- * call that only from the sender thread. -- * -- * Currently, we do not handle file bucket with refcount > 1 as -- * the beam is then not in complete control of the file's lifetime. -- * Which results in the bug that a file get closed by the receiver -- * while the sender or the beam still have buckets using it.=20 -- *=20 -- * Additionally, we allow callbacks to prevent beaming file -- * handles across. The use case for this is to limit the number=20 -- * of open file handles and rather use a less efficient beam -- * transport. */ -- apr_bucket_file *bf =3D b->data; -- apr_file_t *fd =3D bf->fd; -- int can_beam =3D (bf->refcount.refcount =3D=3D 1); -- if (can_beam && beam->can_beam_fn) { -- can_beam =3D beam->can_beam_fn(beam->can_beam_ctx, beam, fd); -- } -- if (can_beam) { -- status =3D apr_bucket_setaside(b, beam->send_pool); -- } -- /* else: enter ENOTIMPL case below */ -+ else if (APR_BUCKET_IS_FILE(b) && can_beam) { -+ status =3D apr_bucket_setaside(b, beam->send_pool); - } - =20 - if (status =3D=3D APR_ENOTIMPL) { -@@ -865,12 +894,6 @@ - * a counter example). - * We do the read while in the sender thread, so that the bucket may - * use pools/allocators safely. */ -- if (space_left < APR_BUCKET_BUFF_SIZE) { -- space_left =3D APR_BUCKET_BUFF_SIZE; -- } -- if (space_left < b->length) { -- apr_bucket_split(b, space_left); -- } - status =3D apr_bucket_read(b, &data, &len, APR_BLOCK_READ); - if (status =3D=3D APR_SUCCESS) { - status =3D apr_bucket_setaside(b, beam->send_pool); -@@ -884,7 +907,7 @@ - APR_BUCKET_REMOVE(b); - H2_BLIST_INSERT_TAIL(&beam->send_list, b); - beam->sent_bytes +=3D b->length; -- =20 -+ - return APR_SUCCESS; - } -=20 -@@ -904,7 +927,8 @@ - apr_read_type_e block) - { - apr_bucket *b; -- apr_status_t status =3D APR_SUCCESS; -+ apr_status_t rv =3D APR_SUCCESS; -+ apr_size_t space_left =3D 0; - h2_beam_lock bl; -=20 - /* Called from the sender thread to add buckets to the beam */ -@@ -914,23 +938,31 @@ - =20 - if (beam->aborted) { - move_to_hold(beam, sender_bb); -- status =3D APR_ECONNABORTED; -+ rv =3D APR_ECONNABORTED; - } - else if (sender_bb) { -- int force_report =3D !APR_BRIGADE_EMPTY(sender_bb);=20 -- while (!APR_BRIGADE_EMPTY(sender_bb) && status =3D=3D APR_SUCCE= SS) { -+ int force_report =3D !APR_BRIGADE_EMPTY(sender_bb); -+ =20 -+ space_left =3D calc_space_left(beam); -+ while (!APR_BRIGADE_EMPTY(sender_bb) && APR_SUCCESS =3D=3D rv) { -+ if (space_left <=3D 0) { -+ report_prod_io(beam, force_report, &bl); -+ rv =3D wait_not_full(beam, block, &space_left, &bl); -+ if (APR_SUCCESS !=3D rv) { -+ break; -+ } -+ } - b =3D APR_BRIGADE_FIRST(sender_bb); -- status =3D append_bucket(beam, b, block, &bl); -+ rv =3D append_bucket(beam, b, block, &space_left, &bl); - } -+ =20 - report_prod_io(beam, force_report, &bl); -- if (beam->cond) { -- apr_thread_cond_broadcast(beam->cond); -- } -+ apr_thread_cond_broadcast(beam->change); - } - report_consumption(beam, &bl); - leave_yellow(beam, &bl); - } -- return status; -+ return rv; - } -=20 - apr_status_t h2_beam_receive(h2_bucket_beam *beam,=20 -@@ -942,11 +974,16 @@ - apr_bucket *bsender, *brecv, *ng; - int transferred =3D 0; - apr_status_t status =3D APR_SUCCESS; -- apr_off_t remain =3D readbytes; -+ apr_off_t remain; - int transferred_buckets =3D 0; - =20 - /* Called from the receiver thread to take buckets from the beam */ - if (enter_yellow(beam, &bl) =3D=3D APR_SUCCESS) { -+ if (readbytes <=3D 0) { -+ readbytes =3D APR_SIZE_MAX; -+ } -+ remain =3D readbytes; -+ =20 - transfer: - if (beam->aborted) { - recv_buffer_cleanup(beam, &bl); -@@ -955,11 +992,12 @@ - } -=20 - /* transfer enough buckets from our receiver brigade, if we have on= e */ -- while (beam->recv_buffer -- && !APR_BRIGADE_EMPTY(beam->recv_buffer) -- && (readbytes <=3D 0 || remain >=3D 0)) { -+ while (remain >=3D 0=20 -+ && beam->recv_buffer=20 -+ && !APR_BRIGADE_EMPTY(beam->recv_buffer)) { -+ =20 - brecv =3D APR_BRIGADE_FIRST(beam->recv_buffer); -- if (readbytes > 0 && brecv->length > 0 && remain <=3D 0) { -+ if (brecv->length > 0 && remain <=3D 0) { - break; - } =20 - APR_BUCKET_REMOVE(brecv); -@@ -970,11 +1008,11 @@ -=20 - /* transfer from our sender brigade, transforming sender buckets to - * receiver ones until we have enough */ -- while (!H2_BLIST_EMPTY(&beam->send_list) && (readbytes <=3D 0 || re= main >=3D 0)) { -- bsender =3D H2_BLIST_FIRST(&beam->send_list); -+ while (remain >=3D 0 && !H2_BLIST_EMPTY(&beam->send_list)) { -+ =20 - brecv =3D NULL; -- =20 -- if (readbytes > 0 && bsender->length > 0 && remain <=3D 0) { -+ bsender =3D H2_BLIST_FIRST(&beam->send_list); =20 -+ if (bsender->length > 0 && remain <=3D 0) { - break; - } - =20 -@@ -1020,11 +1058,12 @@ - * been handed out. See also PR 59348 */ - apr_bucket_file_enable_mmap(ng, 0); - #endif -- remain -=3D bsender->length; -- ++transferred; - APR_BUCKET_REMOVE(bsender); - H2_BLIST_INSERT_TAIL(&beam->hold_list, bsender); -+ -+ remain -=3D bsender->length; - ++transferred; -+ ++transferred_buckets; - continue; - } - else { -@@ -1041,6 +1080,7 @@ - * receiver bucket references it any more. */ - APR_BUCKET_REMOVE(bsender); - H2_BLIST_INSERT_TAIL(&beam->hold_list, bsender); -+ =20 - beam->received_bytes +=3D bsender->length; - ++transferred_buckets; - =20 -@@ -1063,8 +1103,8 @@ - } - } -=20 -- if (readbytes > 0 && remain < 0) { -- /* too much, put some back */ -+ if (remain < 0) { -+ /* too much, put some back into out recv_buffer */ - remain =3D readbytes; - for (brecv =3D APR_BRIGADE_FIRST(bb); - brecv !=3D APR_BRIGADE_SENTINEL(bb); -@@ -1081,15 +1121,7 @@ - } - } -=20 -- if (transferred_buckets > 0) { -- if (beam->cons_ev_cb) {=20 -- beam->cons_ev_cb(beam->cons_ctx, beam); -- } -- } -- =20 -- if (beam->closed=20 -- && (!beam->recv_buffer || APR_BRIGADE_EMPTY(beam->recv_buffer)) -- && H2_BLIST_EMPTY(&beam->send_list)) { -+ if (beam->closed && buffer_is_empty(beam)) { - /* beam is closed and we have nothing more to receive */=20 - if (!beam->close_sent) { - apr_bucket *b =3D apr_bucket_eos_create(bb->bucket_alloc); -@@ -1100,28 +1132,23 @@ - } - } - =20 -+ if (transferred_buckets > 0) { -+ if (beam->cons_ev_cb) {=20 -+ beam->cons_ev_cb(beam->cons_ctx, beam); -+ } -+ } -+ =20 - if (transferred) { -- if (beam->cond) { -- apr_thread_cond_broadcast(beam->cond); -- } -+ apr_thread_cond_broadcast(beam->change); - status =3D APR_SUCCESS; - } -- else if (beam->closed) { -- status =3D APR_EOF; -- } -- else if (block =3D=3D APR_BLOCK_READ && bl.mutex && beam->cond) { -- status =3D wait_cond(beam, bl.mutex); -+ else { -+ status =3D wait_not_empty(beam, block, bl.mutex); - if (status !=3D APR_SUCCESS) { - goto leave; - } - goto transfer; - } -- else { -- if (beam->cond) { -- apr_thread_cond_broadcast(beam->cond); -- } -- status =3D APR_EAGAIN; -- } - leave: =20 - leave_yellow(beam, &bl); - } -Index: modules/http2/h2_bucket_beam.h -=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D ---- modules/http2/h2_bucket_beam.h (revision 1804645) -+++ modules/http2/h2_bucket_beam.h (working copy) -@@ -190,7 +190,7 @@ - unsigned int tx_mem_limits : 1; /* only memory size counts on transfers= */ -=20 - struct apr_thread_mutex_t *lock; -- struct apr_thread_cond_t *cond; -+ struct apr_thread_cond_t *change; - void *m_ctx; - h2_beam_mutex_enter *m_enter; - =20 -Index: modules/http2/h2_stream.c -=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D ---- modules/http2/h2_stream.c (revision 1804645) -+++ modules/http2/h2_stream.c (working copy) -@@ -774,20 +774,20 @@ - return NULL; - } -=20 --static apr_status_t add_data(h2_stream *stream, apr_off_t requested, -- apr_off_t *plen, int *peos, int *complete,=20 -- h2_headers **pheaders) -+static apr_status_t add_buffered_data(h2_stream *stream, apr_off_t requeste= d, -+ apr_off_t *plen, int *peos, int *is_a= ll,=20 -+ h2_headers **pheaders) - { - apr_bucket *b, *e; - =20 - *peos =3D 0; - *plen =3D 0; -- *complete =3D 0; -+ *is_all =3D 0; - if (pheaders) { - *pheaders =3D NULL; - } -=20 -- H2_STREAM_OUT_LOG(APLOG_TRACE2, stream, "add_data"); -+ H2_STREAM_OUT_LOG(APLOG_TRACE2, stream, "add_buffered_data"); - b =3D APR_BRIGADE_FIRST(stream->out_buffer); - while (b !=3D APR_BRIGADE_SENTINEL(stream->out_buffer)) { - e =3D APR_BUCKET_NEXT(b); -@@ -833,7 +833,7 @@ - } - b =3D e; - } -- *complete =3D 1; -+ *is_all =3D 1; - return APR_SUCCESS; - } -=20 -@@ -865,7 +865,7 @@ - requested =3D (*plen > 0)? H2MIN(*plen, max_chunk) : max_chunk; - =20 - /* count the buffered data until eos or a headers bucket */ -- status =3D add_data(stream, requested, plen, peos, &complete, pheaders); -+ status =3D add_buffered_data(stream, requested, plen, peos, &complete, = pheaders); - =20 - if (status =3D=3D APR_EAGAIN) { - /* TODO: ugly, someone needs to retrieve the response first */ -@@ -882,29 +882,39 @@ - return APR_SUCCESS; - } - =20 -+ /* If there we do not have enough buffered data to satisfy the requested -+ * length *and* we counted the _complete_ buffer (and did not stop in t= he middle -+ * because of meta data there), lets see if we can read more from the -+ * output beam */ - missing =3D H2MIN(requested, stream->max_mem) - *plen; - if (complete && !*peos && missing > 0) { -+ apr_status_t rv =3D APR_EOF; -+ =20 - if (stream->output) { - H2_STREAM_OUT_LOG(APLOG_TRACE2, stream, "pre"); -- status =3D h2_beam_receive(stream->output, stream->out_buffer, = -- APR_NONBLOCK_READ,=20 -- stream->max_mem - *plen); -+ rv =3D h2_beam_receive(stream->output, stream->out_buffer,=20 -+ APR_NONBLOCK_READ, stream->max_mem - *plen= ); - H2_STREAM_OUT_LOG(APLOG_TRACE2, stream, "post"); - } -- else { -- status =3D APR_EOF; -+ =20 -+ if (rv =3D=3D APR_SUCCESS) { -+ /* count the buffer again, now that we have read output */ -+ status =3D add_buffered_data(stream, requested, plen, peos, &co= mplete, pheaders); - } -- =20 -- if (APR_STATUS_IS_EOF(status)) { -+ else if (APR_STATUS_IS_EOF(rv)) { - apr_bucket *eos =3D apr_bucket_eos_create(c->bucket_alloc); - APR_BRIGADE_INSERT_TAIL(stream->out_buffer, eos); - *peos =3D 1; -- status =3D APR_SUCCESS; - } -- else if (status =3D=3D APR_SUCCESS) { -- /* do it again, now that we have gotten more */ -- status =3D add_data(stream, requested, plen, peos, &complete, p= headers); -+ else if (APR_STATUS_IS_EAGAIN(rv)) { -+ /* we set this is the status of this call only if there -+ * is no buffered data, see check below */ - } -+ else { -+ /* real error reading. Give this back directly, even though -+ * we may have something buffered. */ -+ status =3D rv; -+ } - } - =20 - if (status =3D=3D APR_SUCCESS) { -Index: modules/http2/h2_task.c -=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D ---- modules/http2/h2_task.c (revision 1804645) -+++ modules/http2/h2_task.c (working copy) -@@ -129,7 +129,7 @@ - apr_bucket_brigade* bb) - { - apr_bucket *b; -- apr_status_t status =3D APR_SUCCESS; -+ apr_status_t rv =3D APR_SUCCESS; - int flush =3D 0, blocking; - =20 - if (task->frozen) { -@@ -148,17 +148,16 @@ - return APR_SUCCESS; - } -=20 -+send: - /* we send block once we opened the output, so someone is there - * reading it *and* the task is not assigned to a h2_req_engine */ - blocking =3D (!task->assigned && task->output.opened); -- if (!task->output.opened) { -- for (b =3D APR_BRIGADE_FIRST(bb); -- b !=3D APR_BRIGADE_SENTINEL(bb); -- b =3D APR_BUCKET_NEXT(b)) { -- if (APR_BUCKET_IS_FLUSH(b)) { -- flush =3D 1; -- break; -- } -+ for (b =3D APR_BRIGADE_FIRST(bb); -+ b !=3D APR_BRIGADE_SENTINEL(bb); -+ b =3D APR_BUCKET_NEXT(b)) { -+ if (APR_BUCKET_IS_FLUSH(b) || APR_BUCKET_IS_EOS(b) || AP_BUCKET_IS_= EOR(b)) { -+ flush =3D 1; -+ break; - } - } - =20 -@@ -166,32 +165,48 @@ - /* still have data buffered from previous attempt. - * setaside and append new data and try to pass the complete data */ - if (!APR_BRIGADE_EMPTY(bb)) { -- status =3D ap_save_brigade(f, &task->output.bb, &bb, task->pool= ); -+ if (APR_SUCCESS !=3D (rv =3D ap_save_brigade(f, &task->output.b= b, &bb, task->pool))) { -+ goto out; -+ } - } -- if (status =3D=3D APR_SUCCESS) { -- status =3D send_out(task, task->output.bb, blocking); -- }=20 -+ rv =3D send_out(task, task->output.bb, blocking); - } - else { -- /* no data buffered here, try to pass the brigade directly */ -- status =3D send_out(task, bb, blocking);=20 -- if (status =3D=3D APR_SUCCESS && !APR_BRIGADE_EMPTY(bb)) { -- /* could not write all, buffer the rest */ -- ap_log_cerror(APLOG_MARK, APLOG_DEBUG, status, task->c, APLOGNO= (03405) -- "h2_slave_out(%s): saving brigade",=20 -- task->id); -- status =3D ap_save_brigade(f, &task->output.bb, &bb, task->pool= ); -- flush =3D 1; -+ /* no data buffered previously, pass brigade directly */ -+ rv =3D send_out(task, bb, blocking); -+ -+ if (APR_SUCCESS =3D=3D rv && !APR_BRIGADE_EMPTY(bb)) { -+ /* output refused to buffer it all, time to open? */ -+ if (!task->output.opened && APR_SUCCESS =3D=3D (rv =3D open_out= put(task))) { -+ /* Make another attempt to send the data. With the output o= pen, -+ * the call might be blocking and send all data, so we do n= ot need -+ * to save the brigade */ -+ goto send; -+ } -+ else if (blocking && flush) { -+ /* Need to keep on doing this. */ -+ goto send; -+ } -+ =20 -+ if (APR_SUCCESS =3D=3D rv) { -+ /* could not write all, buffer the rest */ -+ ap_log_cerror(APLOG_MARK, APLOG_DEBUG, rv, task->c, APLOGNO= (03405) -+ "h2_slave_out(%s): saving brigade", task->id); -+ ap_assert(NULL); -+ rv =3D ap_save_brigade(f, &task->output.bb, &bb, task->pool= ); -+ flush =3D 1; -+ } - } - } - =20 -- if (status =3D=3D APR_SUCCESS && !task->output.opened && flush) { -+ if (APR_SUCCESS =3D=3D rv && !task->output.opened && flush) { - /* got a flush or could not write all, time to tell someone to read= */ -- status =3D open_output(task); -+ rv =3D open_output(task); - } -- ap_log_cerror(APLOG_MARK, APLOG_TRACE2, status, task->c,=20 -+out: -+ ap_log_cerror(APLOG_MARK, APLOG_TRACE2, rv, task->c,=20 - "h2_slave_out(%s): slave_out leave", task->id); =20 -- return status; -+ return rv; - } -=20 - static apr_status_t output_finish(h2_task *task) -Index: modules/http2/h2_version.h -=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D ---- modules/http2/h2_version.h (revision 1804645) -+++ modules/http2/h2_version.h (working copy) -@@ -26,7 +26,7 @@ - * @macro - * Version number of the http2 module as c string - */ --#define MOD_HTTP2_VERSION "1.10.7" -+#define MOD_HTTP2_VERSION "1.10.10" -=20 - /** - * @macro -@@ -34,7 +34,7 @@ - * release. This is a 24 bit number with 8 bits for major number, 8 bits - * for minor and 8 bits for patch. Version 1.2.3 becomes 0x010203. - */ --#define MOD_HTTP2_VERSION_NUM 0x010a06 -+#define MOD_HTTP2_VERSION_NUM 0x010a0a -=20 -=20 - #endif /* mod_h2_h2_version_h */ -Index: modules/http2 -=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D ---- modules/http2 (revision 1804645) -+++ modules/http2 (working copy) - -Property changes on: modules/http2 -___________________________________________________________________ -Modified: svn:mergeinfo -## -0,0 +0,1 ## - Merged /httpd/httpd/trunk/modules/http2:r1803420,1803454,1804090 -Index: . -=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D ---- . (revision 1804645) -+++ . (working copy) - -Property changes on: . -___________________________________________________________________ -Modified: svn:mergeinfo -## -0,0 +0,1 ## - Merged /httpd/httpd/trunk:r1803420,1803454,1804090 diff --git a/src/scripts/backupiso b/src/scripts/backupiso index 1799bc1..caafe92 100644 --- a/src/scripts/backupiso +++ b/src/scripts/backupiso @@ -18,7 +18,7 @@ esac =20 COREVER=3D$(cat /opt/pakfire/db/core/mine) # FIXME: edit this lines before release -URL=3D"http://download.ipfire.org/releases/ipfire-2.x/2.19-core$COREVER/" +URL=3D"https://downloads.ipfire.org/releases/ipfire-2.x/2.19-core$COREVER/" ISO=3D"ipfire-2.19.$arch-full-core$COREVER.iso" =20 if [ -z $1 ]; then diff --git a/src/scripts/captive-cleanup b/src/scripts/captive-cleanup new file mode 100755 index 0000000..b576df4 --- /dev/null +++ b/src/scripts/captive-cleanup @@ -0,0 +1,52 @@ +#!/usr/bin/perl +############################################################################= ### +# = # +# IPFire.org - A linux based firewall = # +# Copyright (C) 2016 IPFire Team = # +# = # +# This program is free software: you can redistribute it and/or modify = # +# it under the terms of the GNU General Public License as published by = # +# the Free Software Foundation, either version 3 of the License, or = # +# (at your option) any later version. = # +# = # +# This program is distributed in the hope that it will be useful, = # +# but WITHOUT ANY WARRANTY; without even the implied warranty of = # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the = # +# GNU General Public License for more details. = # +# = # +# You should have received a copy of the GNU General Public License = # +# along with this program. If not, see . = # +# = # +############################################################################= ### + +use strict; + +require '/var/ipfire/general-functions.pl'; + +my %settings=3D(); +my %clientshash=3D(); +my $settingsfile=3D"${General::swroot}/captive/settings"; +my $clients=3D"${General::swroot}/captive/clients"; +my $time; +my $expiretime; + +if (-f $settingsfile && -f $clients && ! -z $clients){ + &General::readhash("$settingsfile", \%settings) if(-f $settingsfile); + &General::readhasharray("$clients", \%clientshash); + $time =3D time(); + foreach my $key (keys %clientshash) { + # Skip unlimited access lines + next if ($clientshash{$key}[3] =3D=3D 0); + + $expiretime=3D($clientshash{$key}[2])+$clientshash{$key}[3]; + if ($expiretime < $time){ + delete $clientshash{$key}; + my $exp =3D gmtime($expiretime); + &General::log("Captive", "Delete expired voucher $clientshash{$key}[4] ex= pired on $exp. Remark: $clientshash{$key}[5]"); + } + } + &General::writehasharray("$clients", \%clientshash); + + # Reload firewall rules + system("/usr/local/bin/captivectrl"); +} diff --git a/src/scripts/httpscert b/src/scripts/httpscert index e20f789..cae39fb 100644 --- a/src/scripts/httpscert +++ b/src/scripts/httpscert @@ -7,17 +7,36 @@ case "$1" in new) if [ ! -f /etc/httpd/server.key ]; then - echo "Generating https server key." + echo "Generating HTTPS RSA server key." /usr/bin/openssl genrsa -out /etc/httpd/server.key 4096 fi - echo "Generating CSR" - /bin/cat /etc/certparams | sed "s/HOSTNAME/`hostname -f`/" | /usr/bin/opens= sl \ - req -new -key /etc/httpd/server.key -out /etc/httpd/server.csr - echo "Signing certificate" - /usr/bin/openssl x509 -req -days 999999 -sha256 -in \ - /etc/httpd/server.csr -signkey /etc/httpd/server.key -out \ - /etc/httpd/server.crt - ;; + if [ ! -f /etc/httpd/server-ecdsa.key ]; then + echo "Generating HTTPS ECDSA server key." + /usr/bin/openssl ecparam -genkey -name secp384r1 | openssl ec -out /etc/ht= tpd/server-ecdsa.key + fi + + echo "Generating CSRs" + if [ ! -f /etc/httpd/server.csr ]; then + /bin/cat /etc/certparams | sed "s/HOSTNAME/`hostname -f`/" | /usr/bin/open= ssl \ + req -new -key /etc/httpd/server.key -out /etc/httpd/server.csr + fi + if [ ! -f /etc/httpd/server-ecdsa.csr ]; then + /bin/cat /etc/certparams | sed "s/HOSTNAME/`hostname -f`/" | /usr/bin/open= ssl \ + req -new -key /etc/httpd/server-ecdsa.key -out /etc/httpd/server-ecdsa.csr + fi + + echo "Signing certificates" + if [ ! -f /etc/httpd/server.crt ]; then + /usr/bin/openssl x509 -req -days 999999 -sha256 -in \ + /etc/httpd/server.csr -signkey /etc/httpd/server.key -out \ + /etc/httpd/server.crt + fi + if [ ! -f /etc/httpd/server-ecdsa.crt ]; then + /usr/bin/openssl x509 -req -days 999999 -sha256 -in \ + /etc/httpd/server-ecdsa.csr -signkey /etc/httpd/server-ecdsa.key -out \ + /etc/httpd/server-ecdsa.crt + fi + ;; read) if [ -f /etc/httpd/server.key -a -f /etc/httpd/server.crt -a -f /etc/httpd/= server.csr ]; then ISSUER=3D`openssl x509 -in /etc/httpd/server.crt -text -noout | grep Issue= r | /usr/bin/cut -f2 -d '=3D'` diff --git a/src/setup/po/ar.po b/src/setup/po/ar.po index a3b9a80..0538825 100644 --- a/src/setup/po/ar.po +++ b/src/setup/po/ar.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: +# Omar Sherif El Watidy , 2016 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-08-21 15:13+0000\n" -"Last-Translator: Michael Tremer \n" -"Language-Team: Arabic (http://www.transifex.com/projects/p/ipfire/language/= ar/)\n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" +"Last-Translator: Omar Sherif El Watidy \n" +"Language-Team: Arabic (http://www.transifex.com/mstremer/ipfire/language/ar= /)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -71,14 +72,14 @@ msgstr "" #: networking.c:642 networking.c:653 networking.c:746 passwords.c:89 #: timezone.c:78 msgid "OK" -msgstr "" +msgstr "=D8=AA=D9=85" =20 #: dhcp.c:143 domainname.c:43 hostname.c:47 keymap.c:86 netstuff.c:158 #: netstuff.c:673 netstuff.c:733 netstuff.c:756 networking.c:305 #: networking.c:410 networking.c:560 networking.c:653 networking.c:746 #: passwords.c:89 timezone.c:78 msgid "Cancel" -msgstr "" +msgstr "=D8=A5=D9=84=D8=BA=D8=A7=D8=A1" =20 #: dhcp.c:156 msgid "" @@ -192,15 +193,15 @@ msgstr "" =20 #: main.c:99 msgid "Quit" -msgstr "" +msgstr "=D8=AE=D8=B1=D9=88=D8=AC" =20 #: main.c:172 msgid "Setup is complete." -msgstr "" +msgstr "=D8=AA=D9=85 =D8=A7=D9=84=D8=AA=D8=AB=D8=A8=D9=8A=D8=AA =D8=A8=D9=86= =D8=AC=D8=A7=D8=AD " =20 #: main.c:174 netstuff.c:733 networking.c:560 networking.c:653 msgid "Warning" -msgstr "" +msgstr "=D8=AA=D8=AD=D8=B0=D9=8A=D8=B1 " =20 #: main.c:175 msgid "" @@ -211,7 +212,7 @@ msgstr "" #: misc.c:62 #, c-format msgid "Unable to write %s/main/hostname.conf" -msgstr "" +msgstr " %s/main/hostname.conf =D9=84=D9=85 =D9=8A=D9=85=D9=83=D9=86 =D8= =AA=D9=86=D8=B2=D9=8A=D9=84 =D8=A7=D9=84=D9=85=D9=84=D9=81=D8=A7=D8=AA =D8=A7= =D9=84=D9=89 " =20 #: misc.c:71 msgid "Unable to open main hosts file." diff --git a/src/setup/po/ca.po b/src/setup/po/ca.po index 20dd073..a7a1bad 100644 --- a/src/setup/po/ca.po +++ b/src/setup/po/ca.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-08-21 15:13+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Catalan (http://www.transifex.com/projects/p/ipfire/language= /ca/)\n" +"Language-Team: Catalan (http://www.transifex.com/mstremer/ipfire/language/c= a/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/cs_CZ.po b/src/setup/po/cs_CZ.po index 1a3a7d6..ed3311f 100644 --- a/src/setup/po/cs_CZ.po +++ b/src/setup/po/cs_CZ.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-08-21 15:13+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Czech (Czech Republic) (http://www.transifex.com/projects/p/= ipfire/language/cs_CZ/)\n" +"Language-Team: Czech (Czech Republic) (http://www.transifex.com/mstremer/ip= fire/language/cs_CZ/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/da.po b/src/setup/po/da.po index bf05c10..2e21ad8 100644 --- a/src/setup/po/da.po +++ b/src/setup/po/da.po @@ -3,15 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: -# Henrik Simonsen , 2014 +# Henrik Simonsen , 2014,2016 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-08-24 14:21+0000\n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" "Last-Translator: Henrik Simonsen \n" -"Language-Team: Danish (http://www.transifex.com/projects/p/ipfire/language/= da/)\n" +"Language-Team: Danish (http://www.transifex.com/mstremer/ipfire/language/da= /)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -570,7 +570,7 @@ msgstr "Igen:" =20 #: passwords.c:95 msgid "Password cannot be blank." -msgstr "Adgangskode kan ikke v=C3=A6re tom." +msgstr "Adgangskoden m=C3=A5 ikke v=C3=A6re tom." =20 #: passwords.c:102 msgid "Passwords do not match." @@ -578,7 +578,7 @@ msgstr "Adgangskoderne er ikke ens." =20 #: passwords.c:109 msgid "Password cannot contain spaces." -msgstr "Adgangskoder kan ikke indeholde mellemrum." +msgstr "Adgangskoden m=C3=A5 ikke indeholde mellemrum." =20 #: timezone.c:77 msgid "Choose the timezone you are in from the list below." diff --git a/src/setup/po/de.po b/src/setup/po/de.po index 021aecb..122e8f7 100644 --- a/src/setup/po/de.po +++ b/src/setup/po/de.po @@ -11,7 +11,7 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2015-05-07 16:52+0000\n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" "Last-Translator: Sun Tiger\n" "Language-Team: German (http://www.transifex.com/mstremer/ipfire/language/de= /)\n" "MIME-Version: 1.0\n" diff --git a/src/setup/po/el_GR.po b/src/setup/po/el_GR.po index 3d4d211..d5f38ba 100644 --- a/src/setup/po/el_GR.po +++ b/src/setup/po/el_GR.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-08-21 15:13+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Greek (Greece) (http://www.transifex.com/projects/p/ipfire/l= anguage/el_GR/)\n" +"Language-Team: Greek (Greece) (http://www.transifex.com/mstremer/ipfire/lan= guage/el_GR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/es.po b/src/setup/po/es.po index 060dd2d..91235d7 100644 --- a/src/setup/po/es.po +++ b/src/setup/po/es.po @@ -10,9 +10,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2015-02-01 09:37+0000\n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" "Last-Translator: Roberto Pe=C3=B1a \n" -"Language-Team: Spanish (http://www.transifex.com/projects/p/ipfire/language= /es/)\n" +"Language-Team: Spanish (http://www.transifex.com/mstremer/ipfire/language/e= s/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/fa.po b/src/setup/po/fa.po index a825ca8..9f6dbd8 100644 --- a/src/setup/po/fa.po +++ b/src/setup/po/fa.po @@ -10,9 +10,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2015-01-26 06:42+0000\n" +"PO-Revision-Date: 2017-09-23 20:09+0000\n" "Last-Translator: Khalil Delavaran \n" -"Language-Team: Persian (http://www.transifex.com/projects/p/ipfire/language= /fa/)\n" +"Language-Team: Persian (http://www.transifex.com/mstremer/ipfire/language/f= a/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/fr.po b/src/setup/po/fr.po index c649710..46a74b5 100644 --- a/src/setup/po/fr.po +++ b/src/setup/po/fr.po @@ -3,17 +3,20 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: +# Cedric RIVERA, 2016 # irenee Munyaneza , 2014 +# Nicolas Cuffia , 2016 # nonux , 2015 +# Philippe B , 2016 # Sebastien Labrie , 2015 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2015-02-17 23:25+0000\n" -"Last-Translator: nonux \n" -"Language-Team: French (http://www.transifex.com/projects/p/ipfire/language/= fr/)\n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" +"Last-Translator: Cedric RIVERA\n" +"Language-Team: French (http://www.transifex.com/mstremer/ipfire/language/fr= /)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -22,19 +25,19 @@ msgstr "" =20 #: dhcp.c:50 msgid "Start address:" -msgstr "Adresse du d=C3=A9but :" +msgstr "Adresse de d=C3=A9but :" =20 #: dhcp.c:51 msgid "End address:" -msgstr "Adresse de fin : " +msgstr "Adresse de fin :" =20 #: dhcp.c:52 networking.c:717 msgid "Primary DNS:" -msgstr "DNS primaire:" +msgstr "DNS primaire :" =20 #: dhcp.c:53 networking.c:723 msgid "Secondary DNS:" -msgstr "DNS secondaire:" +msgstr "DNS secondaire :" =20 #: dhcp.c:54 msgid "Default lease (mins):" @@ -62,7 +65,7 @@ msgstr "Configuration du serveur DHCP" =20 #: dhcp.c:116 msgid "Configure the DHCP server by entering the settings information." -msgstr "" +msgstr "Configurer le serveur DHCP en entrant les informations de param=C3= =A8trage." =20 #: dhcp.c:125 msgid "Enabled" @@ -74,7 +77,7 @@ msgstr "Activ=C3=A9" #: networking.c:642 networking.c:653 networking.c:746 passwords.c:89 #: timezone.c:78 msgid "OK" -msgstr "" +msgstr "OK" =20 #: dhcp.c:143 domainname.c:43 hostname.c:47 keymap.c:86 netstuff.c:158 #: netstuff.c:673 netstuff.c:733 netstuff.c:756 networking.c:305 @@ -151,15 +154,15 @@ msgstr "Le nom de domaine ne doit pas contenir d'espace= s." =20 #: hostname.c:58 msgid "Hostname may only contain letters, numbers and hyphens." -msgstr "" +msgstr "Le hostname doit seulement contenir des lettres, chiffres et trais d= 'union." =20 #: keymap.c:84 main.c:67 msgid "Keyboard mapping" -msgstr "" +msgstr "Mappage du clavier" =20 #: keymap.c:85 msgid "Choose the type of keyboard you are using from the list below." -msgstr "" +msgstr "Choisir le type de clavier utilis=C3=A9 depuis la liste ci-dessous." =20 #: main.c:68 timezone.c:77 msgid "Timezone" @@ -171,7 +174,7 @@ msgstr "R=C3=A9seau" =20 #: main.c:72 misc.c:147 msgid "ISDN" -msgstr "" +msgstr "ISDN" =20 #: main.c:73 msgid "'root' password" @@ -183,7 +186,7 @@ msgstr "Most de passe \"admin\"" =20 #: main.c:90 msgid " / between elements | selects" -msgstr "" +msgstr "/ entre les =C3=A9l=C3=A9ments | selection" =20 #: main.c:97 msgid "Section menu" @@ -191,7 +194,7 @@ msgstr "Menu de s=C3=A9lection" =20 #: main.c:98 msgid "Select the item you wish to configure." -msgstr "" +msgstr "S=C3=A9lectionner l'artivle =C3=A0 confurer." =20 #: main.c:99 msgid "Quit" @@ -199,7 +202,7 @@ msgstr "Quitter" =20 #: main.c:172 msgid "Setup is complete." -msgstr "" +msgstr "Le param=C3=A9trage est termin=C3=A9." =20 #: main.c:174 netstuff.c:733 networking.c:560 networking.c:653 msgid "Warning" @@ -209,16 +212,16 @@ msgstr "Avertissement" msgid "" "Initial setup was not entirely complete. You must ensure that Setup is " "properly finished by running setup again at the shell." -msgstr "" +msgstr "Le param=C3=A9trage initial n'est pas termin=C3=A9. Assurez vous que= le param=C3=A9trage s'est correctement termin=C3=A9 en ex=C3=A9cutant de nou= veau setup depuis le shell." =20 #: misc.c:62 #, c-format msgid "Unable to write %s/main/hostname.conf" -msgstr "" +msgstr "Impossible d'=C3=A9criere %s/main/hostname.conf" =20 #: misc.c:71 msgid "Unable to open main hosts file." -msgstr "" +msgstr "Impossible d'=C3=A9crire le fichier principal hosts." =20 #: misc.c:76 msgid "Unable to write /etc/hosts." @@ -238,11 +241,11 @@ msgstr "Impossible de d=C3=A9finir le nom d'h=C3=B4te" =20 #: misc.c:147 msgid "Scanning and configuring ISDN devices." -msgstr "" +msgstr "D=C3=A9tection et configuration des interfaces ISDN." =20 #: misc.c:148 msgid "Unable to scan for ISDN devices." -msgstr "" +msgstr "D=C3=A9tection des p=C3=A9riph=C3=A9riques ISDN impossible." =20 #: netstuff.c:86 #, c-format @@ -252,7 +255,7 @@ msgstr "Interface - %s" #: netstuff.c:91 #, c-format msgid "Enter the IP address information for the %s interface." -msgstr "" +msgstr "Param=C3=A9trage IP pour l'interface %s" =20 #: netstuff.c:103 msgid "Static" @@ -264,7 +267,7 @@ msgstr "DHCP" =20 #: netstuff.c:105 msgid "PPP DIALUP (PPPoE, modem, ATM ...)" -msgstr "" +msgstr "Connexion PPP (PPPoE, modem, ATM ...)" =20 #: netstuff.c:113 msgid "DHCP Hostname:" @@ -272,7 +275,7 @@ msgstr "Nom d'h=C3=B4te DHCP:" =20 #: netstuff.c:115 msgid "Force DHCP MTU:" -msgstr "" +msgstr "Forcer taille MTU pour DHCP:" =20 #: netstuff.c:134 msgid "IP address:" @@ -300,16 +303,16 @@ msgstr "Nom d'h=C3=B4te DHCP" =20 #: netstuff.c:396 netstuff.c:709 msgid "Unset" -msgstr "" +msgstr "Non-d=C3=A9fini" =20 #: netstuff.c:669 #, c-format msgid "Please choose a networkcard for the following interface - %s." -msgstr "" +msgstr "Choisissez un adaptateur r=C3=A9seau pour l'interface - %s." =20 #: netstuff.c:672 msgid "Extended Network Menu" -msgstr "" +msgstr "=C3=89tendre le Menu R=C3=A9seau" =20 #: netstuff.c:673 networking.c:520 msgid "Select" @@ -317,7 +320,7 @@ msgstr "S=C3=A9lectionner" =20 #: netstuff.c:673 msgid "Identify" -msgstr "" +msgstr "Identifier" =20 #: netstuff.c:678 msgid "Device Identification" @@ -325,28 +328,28 @@ msgstr "Identification du p=C3=A9riph=C3=A9rique" =20 #: netstuff.c:678 msgid "The lights on the selected port should flash now for 10 seconds..." -msgstr "" +msgstr "Le t=C3=A9moin lumineux du port s=C3=A9lectionn=C3=A9 doit clignoter= maintenant pendant 10 secondes ..." =20 #: netstuff.c:679 msgid "Identification is not supported by this interface." -msgstr "" +msgstr "L'identification n'est pas support=C3=A9 par cet interface." =20 #: netstuff.c:691 msgid "There are no unassigned interfaces on your system." -msgstr "" +msgstr "Aucune interface assign=C3=A9e sur votre syst=C3=A8me." =20 #: netstuff.c:732 #, c-format msgid "Do you really want to remove the assigned %s interface?" -msgstr "" +msgstr "Confirmez-vous la suppression de l'interface assign=C3=A9e %s ?" =20 #: netstuff.c:755 msgid "Select network driver" -msgstr "" +msgstr "Selectionnez le pilote r=C3=A9seau" =20 #: netstuff.c:755 msgid "Set additional module parameters" -msgstr "" +msgstr "R=C3=A9gler des param=C3=A8tres suppl=C3=A9mentaires du moduie" =20 #: netstuff.c:762 msgid "Loading module..." @@ -354,7 +357,7 @@ msgstr "Chargement du module..." =20 #: netstuff.c:777 msgid "Unable to load driver module." -msgstr "" +msgstr "Incapable de charger le module du pilote" =20 #: netstuff.c:780 msgid "Module name cannot be blank." @@ -374,7 +377,7 @@ msgstr "Pas d'interface VERTE assign=C3=A9e." =20 #: networking.c:152 msgid "Missing an IP address on GREEN." -msgstr "" +msgstr "Adresse IP manquante pour VERT." =20 #: networking.c:163 msgid "Error" @@ -382,7 +385,7 @@ msgstr "Erreur" =20 #: networking.c:163 msgid "Ignore" -msgstr "" +msgstr "Ignorer" =20 #: networking.c:164 msgid "No RED interface assigned." @@ -390,7 +393,7 @@ msgstr "Pas d'interface ROUGE assign=C3=A9e." =20 #: networking.c:173 msgid "Missing an IP address on RED." -msgstr "" +msgstr "Adresse IP manquante pour ROUGE." =20 #: networking.c:183 msgid "No ORANGE interface assigned." @@ -398,7 +401,7 @@ msgstr "Pas d'interface ORANGE assign=C3=A9e." =20 #: networking.c:189 msgid "Missing an IP address on ORANGE." -msgstr "" +msgstr "Adresse IP manquante pour ORANGE." =20 #: networking.c:199 msgid "No BLUE interface assigned." @@ -406,23 +409,23 @@ msgstr "Pas d'interface BLEUE assign=C3=A9e." =20 #: networking.c:205 msgid "Missing an IP address on BLUE." -msgstr "" +msgstr "Adresse IP manquante pour BLEU" =20 #: networking.c:217 msgid "Misssing DNS." -msgstr "" +msgstr "DNS non sp=C3=A9cifi=C3=A9." =20 #: networking.c:224 msgid "Missing Default Gateway." -msgstr "" +msgstr "Passerelle par d=C3=A9faut non sp=C3=A9cifi=C3=A9e." =20 #: networking.c:237 networking.c:304 msgid "Network configuration type" -msgstr "" +msgstr "Type de configuration r=C3=A9seau" =20 #: networking.c:238 networking.c:409 msgid "Drivers and card assignments" -msgstr "" +msgstr "Affectation des Pilotes et des Cartes" =20 #: networking.c:239 networking.c:640 msgid "Address settings" @@ -430,11 +433,11 @@ msgstr "Configuration d'adresse" =20 #: networking.c:240 networking.c:743 msgid "DNS and Gateway settings" -msgstr "" +msgstr "R=C3=A9glages DNS et Passerelle" =20 #: networking.c:260 msgid "When configuration is complete, a network restart will be required." -msgstr "" +msgstr "A l'issue de la configuration un red=C3=A9marrage de la couche r=C3= =A9seau est n=C3=A9cessaire." =20 #: networking.c:267 #, c-format @@ -442,7 +445,7 @@ msgid "" "Current config: %s\n" "\n" "%s" -msgstr "" +msgstr "Configuration actuelle: %s\n\n%s" =20 #: networking.c:268 msgid "Network configuration menu" @@ -459,7 +462,7 @@ msgid "" "list those interfaces which have ethernet attached. If you change this " "setting, a network restart will be required, and you will have to " "reconfigure the network driver assignments." -msgstr "" +msgstr "Choisir la configuration r=C3=A9seau pour %s. Les types de configur= ation suivants =C3=A9num=C3=A8rent les interfaces ethernet connect=C3=A9es. T= ous changements dans le param=C3=A9trage n=C3=A9cessitent une reconfiguration= de la couche r=C3=A9seau et des pilotes associ=C3=A9s." =20 #: networking.c:307 #, c-format @@ -467,27 +470,27 @@ msgid "" "Not enough netcards for your choice.\n" "\n" "Needed: %d - Available: %d\n" -msgstr "" +msgstr "Pas assez d'adaptateurs r=C3=A9seaux pour votre choix.\n\nAttendu: %= d - Disponible: %d\n\n" =20 #: networking.c:359 msgid "" "Configure network drivers, and which interface each card is assigned to. Th= e current configuration is as follows:\n" "\n" -msgstr "" +msgstr "Configuration des pilotes r=C3=A9seaux et des interfaces associ=C3= =A9es aux adaptateurs r=C3=A9seaux. La configuration est la suivante:\n" =20 #: networking.c:408 msgid "Do you wish to change these settings?" -msgstr "" +msgstr "Voulez-vous changer ces param=C3=A8tres?" =20 #: networking.c:447 msgid "Restarting non-local network..." -msgstr "" +msgstr "Red=C3=A9marrage du r=C3=A9seau distant ..." =20 #: networking.c:464 msgid "" "Please choose the interface you wish to change.\n" "\n" -msgstr "" +msgstr "S'il vous pla=C3=AEt, choisissez l'interface que vous voulez changer= .\n\n" =20 #: networking.c:519 msgid "Assigned Cards" @@ -495,7 +498,7 @@ msgstr "Cartes attribu=C3=A9es" =20 #: networking.c:520 msgid "Remove" -msgstr "" +msgstr "Enlever" =20 #: networking.c:556 networking.c:649 #, c-format @@ -504,11 +507,11 @@ msgid "" "connection to the %s machine will be broken, and you will have to reconnect= " "on the new IP. This is a risky operation, and should only be attempted if " "you have physical access to the machine, should something go wrong." -msgstr "" +msgstr "Si vous changez cette adresse IP et si vous =C3=AAtes connect=C3=A9 = =C3=A0 distance alors votre acc=C3=A8s =C3=A0 la machine %s sera rompu et il = vous sera n=C3=A9cessaire de vous reconnecter =C3=A0 la nouvelle adresse IP. = C'est une situation dangereuse qui ne doit =C3=AAtre tent=C3=A9e que si vous = avez acc=C3=A8s physiquement =C3=A0 l'ordinateur afin d'=C3=A9viter une compl= ication inattendue." =20 #: networking.c:641 msgid "Select the interface you wish to reconfigure." -msgstr "" +msgstr "Selectionnez l'interface que vous souhaitez reconfigurer." =20 #: networking.c:729 msgid "Default gateway:" @@ -518,7 +521,7 @@ msgstr "Passerelle par defaut" msgid "" "Enter the DNS and gateway information. These settings are used only with " "Static IP (and DHCP if DNS set) on the RED interface." -msgstr "" +msgstr "Saisir les informations relatives au DNS et =C3=A0 la passerelle. Ce= s param=C3=A8tres sont utilis=C3=A9s dans la cas d'une configuration statique= de la couche IP (et DHCP pour le DNS) sur l'interface ROUGE." =20 #: networking.c:773 msgid "Default gateway" @@ -526,12 +529,12 @@ msgstr "Passerelle par d=C3=A9faut" =20 #: networking.c:780 msgid "Secondary DNS specified without a Primary DNS" -msgstr "" +msgstr "DNS secondaire sp=C3=A9cifi=C3=A9 sans DNS primaire" =20 #: passwords.c:33 msgid "" "Enter the 'root' user password. Login as this user for commandline access." -msgstr "" +msgstr "Entrez le mot de passe pour le super-utilisateur 'root'. Se connecte= r avec celui-ci pour les acc=C3=A8s en ligne de commande." =20 #: passwords.c:38 passwords.c:61 msgid "Setting password" @@ -539,28 +542,28 @@ msgstr "Configuration du mot de passe" =20 #: passwords.c:38 msgid "Setting 'root' password...." -msgstr "" +msgstr "Param=C3=A9trage du mot de passe pour le super-utilisateur 'root' ..= ." =20 #: passwords.c:39 msgid "Problem setting 'root' password." -msgstr "" +msgstr "Probl=C3=A8me lors du param=C3=A9trage du mot de passe pour le super= -utilisateur 'root' ..." =20 #: passwords.c:53 #, c-format msgid "" "Enter %s 'admin' user password. This is the user to use for logging into th= e" " %s web administration pages." -msgstr "" +msgstr "Saisir le mot de passe %s pour l'utilisateur 'admin'. Cet utilisateu= r est n=C3=A9cessaire pour se connecter aux pages web %s d'administration." =20 #: passwords.c:60 #, c-format msgid "Setting %s 'admin' user password..." -msgstr "" +msgstr "Param=C3=A9trage du mot de passe %s pour le compte utilisateur 'admi= n'..." =20 #: passwords.c:62 #, c-format msgid "Problem setting %s 'admin' user password." -msgstr "" +msgstr "Probl=C3=A8me rencontr=C3=A9 lors de mise en place du mot de passe %= s pour l'utilisateur 'admin'." =20 #: passwords.c:76 msgid "Password:" @@ -576,7 +579,7 @@ msgstr "Le mot de passe ne doit pas =C3=AAtre vide" =20 #: passwords.c:102 msgid "Passwords do not match." -msgstr "" +msgstr "Les mots de passe de correspondent pas." =20 #: passwords.c:109 msgid "Password cannot contain spaces." @@ -584,4 +587,4 @@ msgstr "Le mot de passe ne doit pas contenir des espaces" =20 #: timezone.c:77 msgid "Choose the timezone you are in from the list below." -msgstr "" +msgstr "Choisir le fuseau horaire ad=C3=A9quate dans la liste suivante. " diff --git a/src/setup/po/hr.po b/src/setup/po/hr.po index 3ecc4d3..54261ed 100644 --- a/src/setup/po/hr.po +++ b/src/setup/po/hr.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-10-31 14:31+0000\n" +"PO-Revision-Date: 2017-09-21 12:48+0000\n" "Last-Translator: Blago Culjak \n" -"Language-Team: Croatian (http://www.transifex.com/projects/p/ipfire/languag= e/hr/)\n" +"Language-Team: Croatian (http://www.transifex.com/mstremer/ipfire/language/= hr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/hu.po b/src/setup/po/hu.po index 3d71983..565704e 100644 --- a/src/setup/po/hu.po +++ b/src/setup/po/hu.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: +# G=C3=A1bor S=C3=A1volyi, 2016 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-08-21 15:13+0000\n" -"Last-Translator: Michael Tremer \n" -"Language-Team: Hungarian (http://www.transifex.com/projects/p/ipfire/langua= ge/hu/)\n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" +"Last-Translator: G=C3=A1bor S=C3=A1volyi\n" +"Language-Team: Hungarian (http://www.transifex.com/mstremer/ipfire/language= /hu/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -19,31 +20,31 @@ msgstr "" =20 #: dhcp.c:50 msgid "Start address:" -msgstr "" +msgstr "Kezd=C5=91 c=C3=ADm:" =20 #: dhcp.c:51 msgid "End address:" -msgstr "" +msgstr "V=C3=A9gs=C5=91 c=C3=ADm:" =20 #: dhcp.c:52 networking.c:717 msgid "Primary DNS:" -msgstr "" +msgstr "Els=C5=91dleges DNS:" =20 #: dhcp.c:53 networking.c:723 msgid "Secondary DNS:" -msgstr "" +msgstr "M=C3=A1sodlagos DNS:" =20 #: dhcp.c:54 msgid "Default lease (mins):" -msgstr "" +msgstr "Alap=C3=A9rtelmezett b=C3=A9rleti id=C5=91 (perc):" =20 #: dhcp.c:55 msgid "Max lease (mins):" -msgstr "" +msgstr "Maxim=C3=A1lis b=C3=A9rleti id=C5=91 (perc):" =20 #: dhcp.c:56 msgid "Domain name suffix:" -msgstr "" +msgstr "Domain n=C3=A9v ut=C3=B3tag:" =20 #: dhcp.c:86 dhcp.c:93 dhcp.c:101 domainname.c:34 hostname.c:37 keymap.c:70 #: misc.c:40 misc.c:52 netstuff.c:377 netstuff.c:566 netstuff.c:704 @@ -51,19 +52,19 @@ msgstr "" #: networking.c:442 networking.c:552 networking.c:603 networking.c:610 #: networking.c:713 timezone.c:63 msgid "Unable to open settings file" -msgstr "" +msgstr "Nem siker=C3=BClt megnyitni a konfigur=C3=A1ci=C3=B3s f=C3=A1jlt" =20 #: dhcp.c:111 msgid "DHCP server configuration" -msgstr "" +msgstr "DHCP kiszolg=C3=A1l=C3=B3 be=C3=A1ll=C3=ADt=C3=A1sa" =20 #: dhcp.c:116 msgid "Configure the DHCP server by entering the settings information." -msgstr "" +msgstr "DHCP kiszolg=C3=A1l=C3=B3 be=C3=A1ll=C3=ADt=C3=A1sainak megad=C3=A1s= a." =20 #: dhcp.c:125 msgid "Enabled" -msgstr "" +msgstr "Enged=C3=A9lyezve" =20 #: dhcp.c:142 domainname.c:43 hostname.c:47 keymap.c:86 main.c:99 main.c:172 #: main.c:174 netstuff.c:157 netstuff.c:733 netstuff.c:756 networking.c:163 @@ -71,367 +72,367 @@ msgstr "" #: networking.c:642 networking.c:653 networking.c:746 passwords.c:89 #: timezone.c:78 msgid "OK" -msgstr "" +msgstr "Rendben" =20 #: dhcp.c:143 domainname.c:43 hostname.c:47 keymap.c:86 netstuff.c:158 #: netstuff.c:673 netstuff.c:733 netstuff.c:756 networking.c:305 #: networking.c:410 networking.c:560 networking.c:653 networking.c:746 #: passwords.c:89 timezone.c:78 msgid "Cancel" -msgstr "" +msgstr "M=C3=A9gsem" =20 #: dhcp.c:156 msgid "" "The following fields are invalid:\n" "\n" -msgstr "" +msgstr "A k=C3=B6vetkez=C5=91 mez=C5=91k =C3=A9rv=C3=A9nytelenek:\n\n" =20 #: dhcp.c:159 msgid "Start address" -msgstr "" +msgstr "Kezd=C5=91 c=C3=ADm" =20 #: dhcp.c:165 msgid "End address" -msgstr "" +msgstr "V=C3=A9gs=C5=91 c=C3=ADm" =20 #: dhcp.c:173 networking.c:755 msgid "Primary DNS" -msgstr "" +msgstr "Els=C5=91dleges DNS" =20 #: dhcp.c:182 networking.c:764 msgid "Secondary DNS" -msgstr "" +msgstr "M=C3=A1sodlagos DNS" =20 #: dhcp.c:189 msgid "Default lease time" -msgstr "" +msgstr "Alap=C3=A9rtelmezett b=C3=A9rleti id=C5=91" =20 #: dhcp.c:195 msgid "Max. lease time" -msgstr "" +msgstr "Max. b=C3=A9rleti id=C5=91" =20 #: domainname.c:42 main.c:70 msgid "Domain name" -msgstr "" +msgstr "Domain n=C3=A9v" =20 #: domainname.c:42 msgid "Enter Domain name" -msgstr "" +msgstr "Domain n=C3=A9v megad=C3=A1sa" =20 #: domainname.c:48 msgid "Domain name cannot be empty." -msgstr "" +msgstr "A domain n=C3=A9v nem lehet =C3=BCres." =20 #: domainname.c:50 msgid "Domain name cannot contain spaces." -msgstr "" +msgstr "A domain n=C3=A9v nem tartalmazhat sz=C3=B3k=C3=B6zt." =20 #: domainname.c:53 msgid "Domain name may only contain letters, numbers, hyphens and periods." -msgstr "" +msgstr "A domain n=C3=A9v csak bet=C5=B1ket, sz=C3=A1mokat, k=C3=B6t=C5=91je= let =C3=A9s pontot tartalmazhat." =20 #: hostname.c:46 main.c:69 msgid "Hostname" -msgstr "" +msgstr "Kiszolg=C3=A1l=C3=B3n=C3=A9v" =20 #: hostname.c:46 msgid "Enter the machine's hostname." -msgstr "" +msgstr "Add meg a g=C3=A9p kiszolg=C3=A1l=C3=B3nev=C3=A9t." =20 #: hostname.c:53 msgid "Hostname cannot be empty." -msgstr "" +msgstr "A kiszolg=C3=A1l=C3=B3n=C3=A9v nem lehet =C3=BCres." =20 #: hostname.c:55 msgid "Hostname cannot contain spaces." -msgstr "" +msgstr "A kiszolg=C3=A1l=C3=B3n=C3=A9v nem tartalmazhat sz=C3=B3k=C3=B6zt." =20 #: hostname.c:58 msgid "Hostname may only contain letters, numbers and hyphens." -msgstr "" +msgstr "A kiszolg=C3=A1l=C3=B3n=C3=A9v csak bet=C5=B1ket, sz=C3=A1mokat =C3= =A9s k=C3=B6t=C5=91jelet tartalmazhat." =20 #: keymap.c:84 main.c:67 msgid "Keyboard mapping" -msgstr "" +msgstr "Billenty=C5=B1zet kioszt=C3=A1s" =20 #: keymap.c:85 msgid "Choose the type of keyboard you are using from the list below." -msgstr "" +msgstr "V=C3=A1laszd ki a billenty=C5=B1zet t=C3=ADpus=C3=A1t a list=C3=A1b= =C3=B3l." =20 #: main.c:68 timezone.c:77 msgid "Timezone" -msgstr "" +msgstr "Id=C5=91z=C3=B3na" =20 #: main.c:71 networking.c:110 networking.c:115 networking.c:447 msgid "Networking" -msgstr "" +msgstr "H=C3=A1l=C3=B3zati be=C3=A1ll=C3=ADt=C3=A1sok" =20 #: main.c:72 misc.c:147 msgid "ISDN" -msgstr "" +msgstr "ISDN" =20 #: main.c:73 msgid "'root' password" -msgstr "" +msgstr "'root' jelsz=C3=B3" =20 #: main.c:74 msgid "'admin' password" -msgstr "" +msgstr "'admin' jelsz=C3=B3" =20 #: main.c:90 msgid " / between elements | selects" -msgstr "" +msgstr "/ elemek k=C3=B6z=C3=B6tti v=C3=A1lt=C3=A1s | = kiv=C3=A1laszt=C3=A1s" =20 #: main.c:97 msgid "Section menu" -msgstr "" +msgstr "R=C3=A9szlegek Men=C3=BC" =20 #: main.c:98 msgid "Select the item you wish to configure." -msgstr "" +msgstr "V=C3=A1laszd ki a be=C3=A1ll=C3=ADtand=C3=B3 elemet." =20 #: main.c:99 msgid "Quit" -msgstr "" +msgstr "Kil=C3=A9p=C3=A9s" =20 #: main.c:172 msgid "Setup is complete." -msgstr "" +msgstr "Be=C3=A1ll=C3=ADt=C3=A1sok befejezve." =20 #: main.c:174 netstuff.c:733 networking.c:560 networking.c:653 msgid "Warning" -msgstr "" +msgstr "Figyelmeztet=C3=A9s" =20 #: main.c:175 msgid "" "Initial setup was not entirely complete. You must ensure that Setup is " "properly finished by running setup again at the shell." -msgstr "" +msgstr "A kezd=C5=91 be=C3=A1ll=C3=ADt=C3=A1sok nem teljesek. Ind=C3=ADtsd e= l =C3=BAjra a 'setup'-ot a befejez=C3=A9shez." =20 #: misc.c:62 #, c-format msgid "Unable to write %s/main/hostname.conf" -msgstr "" +msgstr "Nem siker=C3=BClt =C3=ADrni: %s/main/hostname.conf" =20 #: misc.c:71 msgid "Unable to open main hosts file." -msgstr "" +msgstr "Nem siekr=C3=BClt megnyitni a f=C5=91 'hosts' f=C3=A1jlt." =20 #: misc.c:76 msgid "Unable to write /etc/hosts." -msgstr "" +msgstr "Nem siker=C3=BClt =C3=ADrni: /etc/hosts." =20 #: misc.c:117 msgid "Unable to write /etc/hosts.deny." -msgstr "" +msgstr "Nem siker=C3=BClt =C3=ADrni: /etc/hosts.deny." =20 #: misc.c:125 msgid "Unable to write /etc/hosts.allow." -msgstr "" +msgstr "Nem siker=C3=BClt =C3=ADrni: /etc/hosts.allow." =20 #: misc.c:136 msgid "Unable to set hostname." -msgstr "" +msgstr "A kiszolg=C3=A1l=C3=B3n=C3=A9v be=C3=A1ll=C3=ADt=C3=A1sa sikertelen." =20 #: misc.c:147 msgid "Scanning and configuring ISDN devices." -msgstr "" +msgstr "ISDN eszk=C3=B6z=C3=B6k keres=C3=A9se =C3=A9s be=C3=A1ll=C3=ADt=C3= =A1sa." =20 #: misc.c:148 msgid "Unable to scan for ISDN devices." -msgstr "" +msgstr "Az ISDN eszk=C3=B6z=C3=B6k felkutat=C3=A1sa sikertelen." =20 #: netstuff.c:86 #, c-format msgid "Interface - %s" -msgstr "" +msgstr "Adapter - %s" =20 #: netstuff.c:91 #, c-format msgid "Enter the IP address information for the %s interface." -msgstr "" +msgstr "Add meg az IP c=C3=ADm be=C3=A1ll=C3=ADt=C3=A1sait a k=C3=B6vetkez= =C5=91 eszk=C3=B6zh=C3=B6z: %s" =20 #: netstuff.c:103 msgid "Static" -msgstr "" +msgstr "Statikus" =20 #: netstuff.c:104 msgid "DHCP" -msgstr "" +msgstr "DHCP" =20 #: netstuff.c:105 msgid "PPP DIALUP (PPPoE, modem, ATM ...)" -msgstr "" +msgstr "PPP bet=C3=A1rcs=C3=A1z=C3=A1s (PPPoE, modem, ATM ...)" =20 #: netstuff.c:113 msgid "DHCP Hostname:" -msgstr "" +msgstr "DHCP kiszolg=C3=A1l=C3=B3n=C3=A9v:" =20 #: netstuff.c:115 msgid "Force DHCP MTU:" -msgstr "" +msgstr "K=C3=A9nyszer=C3=ADtett DHCP MTU:" =20 #: netstuff.c:134 msgid "IP address:" -msgstr "" +msgstr "IP c=C3=ADm:" =20 #: netstuff.c:146 msgid "Network mask:" -msgstr "" +msgstr "H=C3=A1l=C3=B3zati maszk:" =20 #: netstuff.c:173 networking.c:749 msgid "The following fields are invalid:" -msgstr "" +msgstr "A k=C3=B6vetkez=C5=91 mez=C5=91k =C3=A9rv=C3=A9nytelenek:" =20 #: netstuff.c:183 msgid "IP address" -msgstr "" +msgstr "IP c=C3=ADm" =20 #: netstuff.c:189 msgid "Network mask" -msgstr "" +msgstr "H=C3=A1l=C3=B3zati maszk" =20 #: netstuff.c:198 msgid "DHCP hostname" -msgstr "" +msgstr "DHCP kiszolg=C3=A1l=C3=B3n=C3=A9v" =20 #: netstuff.c:396 netstuff.c:709 msgid "Unset" -msgstr "" +msgstr "Kijel=C3=B6l=C3=A9s t=C3=B6rl=C3=A9se" =20 #: netstuff.c:669 #, c-format msgid "Please choose a networkcard for the following interface - %s." -msgstr "" +msgstr "V=C3=A1lassz egy eszk=C3=B6zt ehhez: %s." =20 #: netstuff.c:672 msgid "Extended Network Menu" -msgstr "" +msgstr "Kib=C5=91v=C3=ADtett H=C3=A1l=C3=B3zati Men=C3=BC" =20 #: netstuff.c:673 networking.c:520 msgid "Select" -msgstr "" +msgstr "Kiv=C3=A1laszt" =20 #: netstuff.c:673 msgid "Identify" -msgstr "" +msgstr "Azonos=C3=ADt" =20 #: netstuff.c:678 msgid "Device Identification" -msgstr "" +msgstr "Eszk=C3=B6z azonos=C3=ADt=C3=B3" =20 #: netstuff.c:678 msgid "The lights on the selected port should flash now for 10 seconds..." -msgstr "" +msgstr "A kiv=C3=A1lasztott porton a visszajelz=C5=91 f=C3=A9ny 10 m=C3=A1so= dpercig villog..." =20 #: netstuff.c:679 msgid "Identification is not supported by this interface." -msgstr "" +msgstr "Az azonos=C3=ADt=C3=A1st nem t=C3=A1mogatja ez az eszk=C3=B6z." =20 #: netstuff.c:691 msgid "There are no unassigned interfaces on your system." -msgstr "" +msgstr "Nincsenek ki nem v=C3=A1lasztott eszk=C3=B6zeid." =20 #: netstuff.c:732 #, c-format msgid "Do you really want to remove the assigned %s interface?" -msgstr "" +msgstr "Biztos, hogy elt=C3=A1vol=C3=ADtod a %s eszk=C3=B6z hozz=C3=A1rendel= =C3=A9s=C3=A9t?" =20 #: netstuff.c:755 msgid "Select network driver" -msgstr "" +msgstr "H=C3=A1l=C3=B3zati vez=C3=A9rl=C5=91 kiv=C3=A1laszt=C3=A1sa" =20 #: netstuff.c:755 msgid "Set additional module parameters" -msgstr "" +msgstr "Tov=C3=A1bbi param=C3=A9terek megad=C3=A1sa a modulhoz" =20 #: netstuff.c:762 msgid "Loading module..." -msgstr "" +msgstr "Modul bet=C3=B6lt=C3=A9se..." =20 #: netstuff.c:777 msgid "Unable to load driver module." -msgstr "" +msgstr "A vez=C3=A9rl=C5=91 bet=C3=B6lt=C3=A9se sikertelen." =20 #: netstuff.c:780 msgid "Module name cannot be blank." -msgstr "" +msgstr "A moduln=C3=A9v nem lehet =C3=BCres." =20 #: networking.c:110 msgid "Stopping network..." -msgstr "" +msgstr "H=C3=A1l=C3=B3zat le=C3=A1ll=C3=ADt=C3=A1sa..." =20 #: networking.c:115 msgid "Restarting network..." -msgstr "" +msgstr "H=C3=A1l=C3=B3zat =C3=BAjraind=C3=ADt=C3=A1sa..." =20 #: networking.c:146 msgid "No GREEN interface assigned." -msgstr "" +msgstr "Nincs Z=C3=96LD eszk=C3=B6z kiv=C3=A1lasztva." =20 #: networking.c:152 msgid "Missing an IP address on GREEN." -msgstr "" +msgstr "IP c=C3=ADm nincs hozz=C3=A1rendelve a Z=C3=96LD eszk=C3=B6zh=C3=B6z= ." =20 #: networking.c:163 msgid "Error" -msgstr "" +msgstr "Hiba" =20 #: networking.c:163 msgid "Ignore" -msgstr "" +msgstr "Kihagy=C3=A1s" =20 #: networking.c:164 msgid "No RED interface assigned." -msgstr "" +msgstr "Nincs V=C3=96R=C3=96S eszk=C3=B6z hozz=C3=A1rendelve." =20 #: networking.c:173 msgid "Missing an IP address on RED." -msgstr "" +msgstr "IP c=C3=ADm nincs hozz=C3=A1rendelve a V=C3=96R=C3=96S eszk=C3=B6zh= =C3=B6z." =20 #: networking.c:183 msgid "No ORANGE interface assigned." -msgstr "" +msgstr "Nincs NARACS eszk=C3=B6z kiv=C3=A1lasztva." =20 #: networking.c:189 msgid "Missing an IP address on ORANGE." -msgstr "" +msgstr "IP c=C3=ADm nincs hozz=C3=A1rendelve a NARANCS eszk=C3=B6zh=C3=B6z." =20 #: networking.c:199 msgid "No BLUE interface assigned." -msgstr "" +msgstr "Nincs K=C3=89K eszk=C3=B6z kiv=C3=A1lasztva." =20 #: networking.c:205 msgid "Missing an IP address on BLUE." -msgstr "" +msgstr "IP c=C3=ADm nincs hozz=C3=A1rendelve a K=C3=89K eszk=C3=B6zh=C3=B6z." =20 #: networking.c:217 msgid "Misssing DNS." -msgstr "" +msgstr "Nincs be=C3=A1ll=C3=ADtott DNS." =20 #: networking.c:224 msgid "Missing Default Gateway." -msgstr "" +msgstr "Nincs megadva alap=C3=A9rtelmezett =C3=A1tj=C3=A1r=C3=B3." =20 #: networking.c:237 networking.c:304 msgid "Network configuration type" -msgstr "" +msgstr "H=C3=A1l=C3=B3zati csatlakoz=C3=A1s t=C3=ADpusa" =20 #: networking.c:238 networking.c:409 msgid "Drivers and card assignments" -msgstr "" +msgstr "Vez=C3=A9rl=C5=91k =C3=A9s eszk=C3=B6z=C3=B6k hozz=C3=A1rendel=C3=A9= se" =20 #: networking.c:239 networking.c:640 msgid "Address settings" -msgstr "" +msgstr "C=C3=ADmbe=C3=A1ll=C3=ADt=C3=A1sok" =20 #: networking.c:240 networking.c:743 msgid "DNS and Gateway settings" -msgstr "" +msgstr "DNS =C3=A9s =C3=A1tj=C3=A1r=C3=B3 be=C3=A1ll=C3=ADt=C3=A1sok" =20 #: networking.c:260 msgid "When configuration is complete, a network restart will be required." -msgstr "" +msgstr "A be=C3=A1ll=C3=ADt=C3=A1sok v=C3=A9gezt=C3=A9vel a h=C3=A1l=C3=B3za= t =C3=BAjraind=C3=ADt=C3=A1sa sz=C3=BCks=C3=A9ges." =20 #: networking.c:267 #, c-format @@ -439,15 +440,15 @@ msgid "" "Current config: %s\n" "\n" "%s" -msgstr "" +msgstr "Aktu=C3=A1lis be=C3=A1ll=C3=ADt=C3=A1s: %s\n\n%s" =20 #: networking.c:268 msgid "Network configuration menu" -msgstr "" +msgstr "H=C3=A1l=C3=B3zatbe=C3=A1ll=C3=ADt=C3=A1s men=C3=BC" =20 #: networking.c:269 networking.c:520 networking.c:642 msgid "Done" -msgstr "" +msgstr "K=C3=A9sz" =20 #: networking.c:300 #, c-format @@ -456,7 +457,7 @@ msgid "" "list those interfaces which have ethernet attached. If you change this " "setting, a network restart will be required, and you will have to " "reconfigure the network driver assignments." -msgstr "" +msgstr "V=C3=A1laszd ki a h=C3=A1l=C3=B3zati be=C3=A1ll=C3=ADt=C3=A1sokat a = k=C3=B6vetkez=C5=91h=C3=B6z: %s. A k=C3=B6vetkez=C5=91 konfigur=C3=A1ci=C3=B3= s be=C3=A1ll=C3=ADt=C3=A1sokn=C3=A1l megadhatod a h=C3=A1l=C3=B3zatt=C3=ADpus= okat. Amennyiben megv=C3=A1ltoztatod ezeket a be=C3=A1ll=C3=ADt=C3=A1sokat, a= h=C3=A1l=C3=B3zatot =C3=BAjra kell ind=C3=ADtani =C3=A9s esetleg megv=C3=A1l= toztatni a hozz=C3=A1rendel=C3=A9seket." =20 #: networking.c:307 #, c-format @@ -464,35 +465,35 @@ msgid "" "Not enough netcards for your choice.\n" "\n" "Needed: %d - Available: %d\n" -msgstr "" +msgstr "Nincs elegend=C5=91 eszk=C3=B6z a k=C3=A9rt be=C3=A1ll=C3=ADt=C3=A1s= hoz.\n\nSz=C3=BCks=C3=A9ges: %d - El=C3=A9rhet=C5=91: %d\n" =20 #: networking.c:359 msgid "" "Configure network drivers, and which interface each card is assigned to. Th= e current configuration is as follows:\n" "\n" -msgstr "" +msgstr "H=C3=A1l=C3=B3zati vez=C3=A9rl=C5=91k be=C3=A1ll=C3=ADt=C3=A1sa, hog= y mi mihez legyen rendelve. Az aktu=C3=A1lis be=C3=A1ll=C3=ADt=C3=A1s a k=C3= =B6vetkez=C5=91:\n\n" =20 #: networking.c:408 msgid "Do you wish to change these settings?" -msgstr "" +msgstr "Biztosan megv=C3=A1ltoztatod ezeket a be=C3=A1ll=C3=ADt=C3=A1sokat?" =20 #: networking.c:447 msgid "Restarting non-local network..." -msgstr "" +msgstr "A nem helyi h=C3=A1l=C3=B3zat =C3=BAjraind=C3=ADt=C3=A1sa..." =20 #: networking.c:464 msgid "" "Please choose the interface you wish to change.\n" "\n" -msgstr "" +msgstr "V=C3=A1laszd ki a m=C3=B3dos=C3=ADtand=C3=B3 eszk=C3=B6zt.\n\n" =20 #: networking.c:519 msgid "Assigned Cards" -msgstr "" +msgstr "Hozz=C3=A1rendelt eszk=C3=B6z=C3=B6k" =20 #: networking.c:520 msgid "Remove" -msgstr "" +msgstr "Elt=C3=A1vol=C3=ADt" =20 #: networking.c:556 networking.c:649 #, c-format @@ -501,84 +502,84 @@ msgid "" "connection to the %s machine will be broken, and you will have to reconnect= " "on the new IP. This is a risky operation, and should only be attempted if " "you have physical access to the machine, should something go wrong." -msgstr "" +msgstr "Amennyiben megv=C3=A1ltoztatod ezt az IP-t =C3=A9s t=C3=A1volr=C3=B3= l vagy bejelentkezve, a kapcsolatod a %s g=C3=A9phez meg fog szakadni =C3=A9s= =C3=BAjra kell kapcsol=C3=B3dnod az =C3=BAj IP-vel. Ez egy kock=C3=A1zatos b= e=C3=A1ll=C3=ADt=C3=A1s, ez=C3=A9rt aj=C3=A1nlott, hogy fizik=C3=A1lisan hozz= =C3=A1f=C3=A9rj a g=C3=A9phez, ha valami probl=C3=A9ma mer=C3=BClne fel." =20 #: networking.c:641 msgid "Select the interface you wish to reconfigure." -msgstr "" +msgstr "V=C3=A1laszd ki a be=C3=A1ll=C3=ADtand=C3=B3 eszk=C3=B6zt az =C3=BAj= rakonfigur=C3=A1l=C3=A1shoz." =20 #: networking.c:729 msgid "Default gateway:" -msgstr "" +msgstr "Alap=C3=A9rtelmezett =C3=A1tj=C3=A1r=C3=B3:" =20 #: networking.c:744 msgid "" "Enter the DNS and gateway information. These settings are used only with " "Static IP (and DHCP if DNS set) on the RED interface." -msgstr "" +msgstr "DNS =C3=A9s =C3=A1tj=C3=A1r=C3=B3 be=C3=A1ll=C3=ADt=C3=A1sok megad= =C3=A1sa. Ezek a be=C3=A1ll=C3=ADt=C3=A1sok a V=C3=96R=C3=96S csatlakoz=C3=B3= statikus IP (=C3=A9s DHCP, ha DNS van megadva) be=C3=A1ll=C3=ADt=C3=A1sain= =C3=A1l =C3=A9rv=C3=A9nyesek." =20 #: networking.c:773 msgid "Default gateway" -msgstr "" +msgstr "Alap=C3=A9rtelmezett =C3=A1tj=C3=A1r=C3=B3" =20 #: networking.c:780 msgid "Secondary DNS specified without a Primary DNS" -msgstr "" +msgstr "M=C3=A1sodlagos DNS be=C3=A1ll=C3=ADtva els=C5=91dleges DNS n=C3=A9l= k=C3=BCl" =20 #: passwords.c:33 msgid "" "Enter the 'root' user password. Login as this user for commandline access." -msgstr "" +msgstr "Add meg a 'root' jelsz=C3=B3t. A konzolon kereszt=C3=BCl tudsz bejel= entkezni vele." =20 #: passwords.c:38 passwords.c:61 msgid "Setting password" -msgstr "" +msgstr "Jelsz=C3=B3 be=C3=A1ll=C3=ADt=C3=A1sa" =20 #: passwords.c:38 msgid "Setting 'root' password...." -msgstr "" +msgstr "A 'root' jelsz=C3=B3 be=C3=A1ll=C3=ADt=C3=A1sa..." =20 #: passwords.c:39 msgid "Problem setting 'root' password." -msgstr "" +msgstr "A 'root' jelsz=C3=B3 be=C3=A1ll=C3=ADt=C3=A1sa sikertelen." =20 #: passwords.c:53 #, c-format msgid "" "Enter %s 'admin' user password. This is the user to use for logging into th= e" " %s web administration pages." -msgstr "" +msgstr "Add meg az %s 'admin' jelsz=C3=B3t. A %s webes fel=C3=BCleten keresz= t=C3=BCl tudsz bejelentkezni vele." =20 #: passwords.c:60 #, c-format msgid "Setting %s 'admin' user password..." -msgstr "" +msgstr "A %s 'root' jelsz=C3=B3 be=C3=A1ll=C3=ADt=C3=A1sa..." =20 #: passwords.c:62 #, c-format msgid "Problem setting %s 'admin' user password." -msgstr "" +msgstr "Probl=C3=A9ma a %s 'root' jelsz=C3=B3 be=C3=A1ll=C3=ADt=C3=A1s=C3=A1= n=C3=A1l..." =20 #: passwords.c:76 msgid "Password:" -msgstr "" +msgstr "Jelsz=C3=B3:" =20 #: passwords.c:77 msgid "Again:" -msgstr "" +msgstr "Ism=C3=A9t:" =20 #: passwords.c:95 msgid "Password cannot be blank." -msgstr "" +msgstr "A jelsz=C3=B3 nem lehet =C3=BCres." =20 #: passwords.c:102 msgid "Passwords do not match." -msgstr "" +msgstr "A jelszavak nem egyeznek meg." =20 #: passwords.c:109 msgid "Password cannot contain spaces." -msgstr "" +msgstr "A jelsz=C3=B3 nem tartalmazhat sz=C3=B3k=C3=B6zt." =20 #: timezone.c:77 msgid "Choose the timezone you are in from the list below." -msgstr "" +msgstr "V=C3=A1laszd ki az id=C5=91z=C3=B3n=C3=A1d a list=C3=A1b=C3=B3l." diff --git a/src/setup/po/id.po b/src/setup/po/id.po index 89c6c58..58032c4 100644 --- a/src/setup/po/id.po +++ b/src/setup/po/id.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-08-21 15:13+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Indonesian (http://www.transifex.com/projects/p/ipfire/langu= age/id/)\n" +"Language-Team: Indonesian (http://www.transifex.com/mstremer/ipfire/languag= e/id/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/it.po b/src/setup/po/it.po index 778a65e..3ebbe0b 100644 --- a/src/setup/po/it.po +++ b/src/setup/po/it.po @@ -10,9 +10,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-09-30 13:22+0000\n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" "Last-Translator: Mario \n" -"Language-Team: Italian (http://www.transifex.com/projects/p/ipfire/language= /it/)\n" +"Language-Team: Italian (http://www.transifex.com/mstremer/ipfire/language/i= t/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/ja.po b/src/setup/po/ja.po index 69c24c1..52bc7cf 100644 --- a/src/setup/po/ja.po +++ b/src/setup/po/ja.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: +# Ronny Heinrich , 2016 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-08-21 15:13+0000\n" -"Last-Translator: Michael Tremer \n" -"Language-Team: Japanese (http://www.transifex.com/projects/p/ipfire/languag= e/ja/)\n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" +"Last-Translator: Ronny Heinrich \n" +"Language-Team: Japanese (http://www.transifex.com/mstremer/ipfire/language/= ja/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -19,31 +20,31 @@ msgstr "" =20 #: dhcp.c:50 msgid "Start address:" -msgstr "" +msgstr "=E3=82=B9=E3=82=BF=E3=83=BC=E3=83=88=E3=83=BB=E3=82=A2=E3=83=89=E3= =83=AC=E3=82=B9=EF=BC=9A" =20 #: dhcp.c:51 msgid "End address:" -msgstr "" +msgstr "=E6=9C=80=E5=BE=8C=E3=81=AE=E3=82=A2=E3=83=89=E3=83=AC=E3=82=B9=EF= =BC=9A" =20 #: dhcp.c:52 networking.c:717 msgid "Primary DNS:" -msgstr "" +msgstr "=E4=B8=80=E6=AC=A1=E3=81=AEDNS:" =20 #: dhcp.c:53 networking.c:723 msgid "Secondary DNS:" -msgstr "" +msgstr "=E4=BA=8C=E6=AC=A1=E3=81=AEDNS=EF=BC=9A" =20 #: dhcp.c:54 msgid "Default lease (mins):" -msgstr "" +msgstr "=E3=83=87=E3=83=95=E3=82=A9=E3=83=AB=E3=83=88=E3=83=BB=E3=83=AA=E3= =83=BC=E3=82=B9=EF=BC=88mins)=EF=BC=9A" =20 #: dhcp.c:55 msgid "Max lease (mins):" -msgstr "" +msgstr "=E6=9C=80=E9=AB=98=E3=81=AE=E3=83=AA=E3=83=BC=E3=82=B9(mins)=EF=BC= =9A" =20 #: dhcp.c:56 msgid "Domain name suffix:" -msgstr "" +msgstr "=E3=83=89=E3=83=A1=E3=82=A4=E3=83=B3=E5=90=8D=E3=82=B5=E3=83=95=E3= =82=A3=E3=83=83=E3=82=AF=E3=82=B9=EF=BC=9A" =20 #: dhcp.c:86 dhcp.c:93 dhcp.c:101 domainname.c:34 hostname.c:37 keymap.c:70 #: misc.c:40 misc.c:52 netstuff.c:377 netstuff.c:566 netstuff.c:704 @@ -51,19 +52,19 @@ msgstr "" #: networking.c:442 networking.c:552 networking.c:603 networking.c:610 #: networking.c:713 timezone.c:63 msgid "Unable to open settings file" -msgstr "" +msgstr "=E8=A8=AD=E5=AE=9A=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E3=81=8C=E9= =96=8B=E3=81=91=E3=81=BE=E3=81=9B=E3=82=93=E3=81=A7=E3=81=97=E3=81=9F=E3=80= =82" =20 #: dhcp.c:111 msgid "DHCP server configuration" -msgstr "" +msgstr "DHCP=E3=82=B5=E3=83=BC=E3=83=90=E3=83=BC=E8=A8=AD=E5=AE=9A" =20 #: dhcp.c:116 msgid "Configure the DHCP server by entering the settings information." -msgstr "" +msgstr "=E8=A8=AD=E5=AE=9A=E6=83=85=E5=A0=B1=E3=81=AE=E8=A8=98=E5=85=A5=E3= =81=99=E3=82=8B=E6=96=B9=E6=B3=95=E3=81=A7=E3=80=81DHCP=E3=82=B5=E3=83=BC=E3= =83=90=E3=83=BC=E3=82=92=E8=A8=AD=E5=AE=9A=E3=81=97=E3=81=A6=E4=B8=8B=E3=81= =95=E3=81=84=E3=80=82" =20 #: dhcp.c:125 msgid "Enabled" -msgstr "" +msgstr "=E6=9C=89=E5=8A=B9" =20 #: dhcp.c:142 domainname.c:43 hostname.c:47 keymap.c:86 main.c:99 main.c:172 #: main.c:174 netstuff.c:157 netstuff.c:733 netstuff.c:756 networking.c:163 @@ -71,367 +72,367 @@ msgstr "" #: networking.c:642 networking.c:653 networking.c:746 passwords.c:89 #: timezone.c:78 msgid "OK" -msgstr "" +msgstr "OK" =20 #: dhcp.c:143 domainname.c:43 hostname.c:47 keymap.c:86 netstuff.c:158 #: netstuff.c:673 netstuff.c:733 netstuff.c:756 networking.c:305 #: networking.c:410 networking.c:560 networking.c:653 networking.c:746 #: passwords.c:89 timezone.c:78 msgid "Cancel" -msgstr "" +msgstr "=E3=82=AD=E3=83=A3=E3=83=B3=E3=82=BB=E3=83=AB" =20 #: dhcp.c:156 msgid "" "The following fields are invalid:\n" "\n" -msgstr "" +msgstr "=E4=B8=8B=E8=A8=98=E3=81=AE=E3=83=95=E3=82=A3=E3=83=BC=E3=83=AB=E3= =83=89=E3=81=8C=E7=84=A1=E5=8A=B9=E3=81=A7=E3=81=99=EF=BC=9A\n\n" =20 #: dhcp.c:159 msgid "Start address" -msgstr "" +msgstr "=E3=82=B9=E3=82=BF=E3=83=BC=E3=83=88=E3=83=BB=E3=82=A2=E3=83=89=E3= =83=AC=E3=82=B9" =20 #: dhcp.c:165 msgid "End address" -msgstr "" +msgstr "=E6=9C=80=E5=BE=8C=E3=81=AE=E3=82=A2=E3=83=89=E3=83=AC=E3=82=B9" =20 #: dhcp.c:173 networking.c:755 msgid "Primary DNS" -msgstr "" +msgstr "=E4=B8=80=E6=AC=A1=E3=81=AEDNS" =20 #: dhcp.c:182 networking.c:764 msgid "Secondary DNS" -msgstr "" +msgstr "=E4=BA=8C=E6=AC=A1=E3=81=AEDNS" =20 #: dhcp.c:189 msgid "Default lease time" -msgstr "" +msgstr "=E3=83=87=E3=83=95=E3=82=A9=E3=83=AB=E3=83=88=E3=83=BB=E3=83=AA=E3= =83=BC=E3=82=B9=E3=83=BB=E3=82=BF=E3=82=A4=E3=83=A0" =20 #: dhcp.c:195 msgid "Max. lease time" -msgstr "" +msgstr "=E6=9C=80=E9=AB=98=E3=81=AE=E3=83=AA=E3=83=BC=E3=82=B9=E3=83=BB=E3= =82=BF=E3=82=A4=E3=83=A0" =20 #: domainname.c:42 main.c:70 msgid "Domain name" -msgstr "" +msgstr "=E3=83=89=E3=83=A1=E3=82=A4=E3=83=B3=E5=90=8D" =20 #: domainname.c:42 msgid "Enter Domain name" -msgstr "" +msgstr "=E3=83=89=E3=83=A1=E3=82=A4=E3=83=B3=E5=90=8D=E3=82=92=E8=A8=98=E5= =85=A5=E3=81=97=E3=81=A6=E4=B8=8B=E3=81=95=E3=81=84" =20 #: domainname.c:48 msgid "Domain name cannot be empty." -msgstr "" +msgstr "=E7=A9=BA=E3=83=89=E3=83=A1=E3=82=A4=E3=83=B3=E5=90=8D=E3=81=8C=E7= =A6=81=E6=AD=A2=E3=81=A7=E3=81=99=E3=80=82" =20 #: domainname.c:50 msgid "Domain name cannot contain spaces." -msgstr "" +msgstr "=E3=82=B9=E3=83=9A=E3=83=BC=E3=82=B9=E3=81=8C=E5=90=AB=E3=82=93=E3= =81=A7=E3=81=84=E3=82=8B=E3=83=89=E3=83=A1=E3=82=A4=E3=83=B3=E5=90=8D=E3=81= =8C=E7=A6=81=E6=AD=A2=E3=81=A7=E3=81=99=E3=80=82" =20 #: domainname.c:53 msgid "Domain name may only contain letters, numbers, hyphens and periods." -msgstr "" +msgstr "=E3=83=89=E3=83=A1=E3=82=A4=E3=83=B3=E5=90=8D=E3=81=AF=E6=96=87=E5= =AD=97=E3=80=81=E6=95=B0=E5=AD=97=E3=80=81=E3=83=8F=E3=82=A4=E3=83=95=E3=82= =A9=E3=83=B3=E5=8F=8A=E3=81=B3=E3=83=9A=E3=83=AA=E3=82=AA=E3=83=89=E3=81=8C= =E8=A8=B1=E5=8F=AF=E3=81=95=E3=82=8C=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=E3= =80=82" =20 #: hostname.c:46 main.c:69 msgid "Hostname" -msgstr "" +msgstr "=E3=83=9B=E3=82=B9=E3=83=88=E5=90=8D" =20 #: hostname.c:46 msgid "Enter the machine's hostname." -msgstr "" +msgstr "=E6=A9=9F=E5=99=A8=E3=81=AE=E3=83=9B=E3=82=B9=E3=83=88=E5=90=8D=E3= =82=92=E8=A8=98=E5=85=A5=E3=81=97=E3=81=A6=E4=B8=8B=E3=81=95=E3=81=84=E3=80= =82" =20 #: hostname.c:53 msgid "Hostname cannot be empty." -msgstr "" +msgstr "=E7=A9=BA=E3=83=9B=E3=82=B9=E3=83=88=E5=90=8D=E3=81=8C=E7=A6=81=E6= =AD=A2=E3=81=A7=E3=81=99=E3=80=82" =20 #: hostname.c:55 msgid "Hostname cannot contain spaces." -msgstr "" +msgstr "=E3=82=B9=E3=83=9A=E3=83=BC=E3=82=B9=E3=81=8C=E5=90=AB=E3=82=93=E3= =81=A7=E3=81=84=E3=82=8B=E3=83=9B=E3=82=B9=E3=83=88=E5=90=8D=E3=81=8C=E7=A6= =81=E6=AD=A2=E3=81=A7=E3=81=99=E3=80=82" =20 #: hostname.c:58 msgid "Hostname may only contain letters, numbers and hyphens." -msgstr "" +msgstr "=E3=83=9B=E3=82=B9=E3=83=88=E5=90=8D=E3=81=AF=E6=96=87=E5=AD=97=E3= =80=81=E6=95=B0=E5=AD=97=E3=80=81=E3=83=8F=E3=82=A4=E3=83=95=E3=82=A9=E3=83= =B3=E5=8F=8A=E3=81=B3=E3=83=9A=E3=83=AA=E3=82=AA=E3=83=89=E3=81=8C=E8=A8=B1= =E5=8F=AF=E3=81=95=E3=82=8C=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=E3=80=82" =20 #: keymap.c:84 main.c:67 msgid "Keyboard mapping" -msgstr "" +msgstr "=E3=82=AD=E3=83=BC=E3=83=9C=E3=83=BC=E3=83=89=E3=83=BB=E3=83=9E=E3= =83=83=E3=83=94=E3=83=B3=E3=82=B0" =20 #: keymap.c:85 msgid "Choose the type of keyboard you are using from the list below." -msgstr "" +msgstr "=E4=B8=8B=E8=A8=98=E3=81=AE=E3=83=AA=E3=82=B9=E3=81=A6=E3=81=8B=E3= =82=89=E4=BD=BF=E7=94=A8=E3=81=97=E3=81=9F=E3=81=84=E3=82=AD=E3=83=BC=E3=83= =9C=E3=83=BC=E3=83=89=E3=82=92=E9=81=B8=E3=82=93=E3=81=A7=E4=B8=8B=E3=81=95= =E3=81=84=E3=80=82" =20 #: main.c:68 timezone.c:77 msgid "Timezone" -msgstr "" +msgstr "=E6=99=82=E9=96=93=E5=B8=AF" =20 #: main.c:71 networking.c:110 networking.c:115 networking.c:447 msgid "Networking" -msgstr "" +msgstr "=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AD=E3=83=B3=E3= =82=B0" =20 #: main.c:72 misc.c:147 msgid "ISDN" -msgstr "" +msgstr "ISDN" =20 #: main.c:73 msgid "'root' password" -msgstr "" +msgstr "'root'=E3=81=AE=E3=83=91=E3=82=B9=E3=83=AF=E3=83=BC=E3=83=89" =20 #: main.c:74 msgid "'admin' password" -msgstr "" +msgstr "'=E7=AE=A1=E7=90=86=E8=80=85'=E3=81=AE=E3=83=91=E3=82=B9=E3=83=AF=E3= =83=BC=E3=83=89" =20 #: main.c:90 msgid " / between elements | selects" -msgstr "" +msgstr " / =E3=82=A8=E3=83=AC=E3=83=A1=E3=83=B3= =E3=83=88=E3=81=AE=E9=96=93 | =E9=81=B8=E6=8A=9E" =20 #: main.c:97 msgid "Section menu" -msgstr "" +msgstr "=E3=83=A1=E3=83=8B=E3=83=A5=E3=83=BC=E3=81=AE=E3=82=BB=E3=82=AF=E3= =82=B7=E3=83=A7=E3=83=B3" =20 #: main.c:98 msgid "Select the item you wish to configure." -msgstr "" +msgstr "=E8=A8=AD=E5=AE=9A=E3=81=97=E3=81=9F=E3=81=84=E3=82=A2=E3=82=A4=E3= =83=86=E3=83=A0=E3=82=92=E9=81=B8=E3=82=93=E3=81=A7=E4=B8=8B=E3=81=95=E3=81= =84=E3=80=82" =20 #: main.c:99 msgid "Quit" -msgstr "" +msgstr "=E7=B5=82=E4=BA=86" =20 #: main.c:172 msgid "Setup is complete." -msgstr "" +msgstr "=E8=A8=AD=E5=AE=9A=E3=81=8C=E7=B5=82=E4=BA=86=E3=81=97=E3=81=BE=E3= =81=97=E3=81=9F=E3=80=82" =20 #: main.c:174 netstuff.c:733 networking.c:560 networking.c:653 msgid "Warning" -msgstr "" +msgstr "=E8=AD=A6=E5=A0=B1" =20 #: main.c:175 msgid "" "Initial setup was not entirely complete. You must ensure that Setup is " "properly finished by running setup again at the shell." -msgstr "" +msgstr "=E5=88=9D=E6=9C=9F=E8=A8=AD=E5=AE=9A=E3=81=AF=E6=AD=A3=E8=A6=8F=E3= =81=AB=E7=B5=82=E4=BA=86=E3=81=97=E3=81=BE=E3=81=9B=E3=82=93=E3=81=A7=E3=81= =97=E3=81=9F=E3=80=82=E3=82=82=E3=81=86=E4=B8=80=E5=BA=A6=E3=82=B3=E3=83=B3= =E3=82=BD=E3=83=BC=E3=83=AB=E3=81=A7=E5=88=9D=E6=9C=9F=E8=A8=AD=E5=AE=9A=E3= =82=92=E5=AE=9F=E8=A1=8C=E3=81=97=E3=81=A6=E3=80=81=E6=AD=A3=E8=A6=8F=E3=81= =AB=E7=B5=82=E4=BA=86=E3=81=AB=E3=81=AA=E3=82=8B=E3=81=8B=E7=A2=BA=E8=AA=8D= =E3=81=99=E3=82=8B=E3=81=93=E3=81=A8=E3=81=8C=E5=BF=85=E8=A6=81=E3=81=A7=E3= =81=99=E3=80=82" =20 #: misc.c:62 #, c-format msgid "Unable to write %s/main/hostname.conf" -msgstr "" +msgstr "%s/main/hostname.conf=E3=82=92=E6=9B=B8=E3=81=8D=E8=BE=BC=E3=82=80= =E3=81=93=E3=81=A8=E3=81=8C=E5=87=BA=E6=9D=A5=E3=81=BE=E3=81=9B=E3=82=93=E3= =81=A7=E3=81=97=E3=81=9F=E3=80=82" =20 #: misc.c:71 msgid "Unable to open main hosts file." -msgstr "" +msgstr "=E3=83=9B=E3=82=B9=E3=83=88=E3=81=AE=E3=83=95=E3=82=A1=E3=82=A4=E3= =83=AB=E3=81=8C=E9=96=8B=E3=81=91=E3=81=BE=E3=81=9B=E3=82=93=E3=81=A7=E3=81= =97=E3=81=9F=E3=80=82" =20 #: misc.c:76 msgid "Unable to write /etc/hosts." -msgstr "" +msgstr "/etc/hosts=E3=82=92=E6=9B=B8=E3=81=8D=E8=BE=BC=E3=82=80=E3=81=93=E3= =81=A8=E3=81=8C=E5=87=BA=E6=9D=A5=E3=81=BE=E3=81=9B=E3=82=93=E3=81=A7=E3=81= =97=E3=81=9F=E3=80=82" =20 #: misc.c:117 msgid "Unable to write /etc/hosts.deny." -msgstr "" +msgstr "/etc/hosts.deny=E3=82=92=E6=9B=B8=E3=81=8D=E8=BE=BC=E3=82=80=E3=81= =93=E3=81=A8=E3=81=8C=E5=87=BA=E6=9D=A5=E3=81=BE=E3=81=9B=E3=82=93=E3=81=A7= =E3=81=97=E3=81=9F=E3=80=82" =20 #: misc.c:125 msgid "Unable to write /etc/hosts.allow." -msgstr "" +msgstr "/etc/hosts.allow=E3=82=92=E6=9B=B8=E3=81=8D=E8=BE=BC=E3=82=80=E3=81= =93=E3=81=A8=E3=81=8C=E5=87=BA=E6=9D=A5=E3=81=BE=E3=81=9B=E3=82=93=E3=81=A7= =E3=81=97=E3=81=9F=E3=80=82" =20 #: misc.c:136 msgid "Unable to set hostname." -msgstr "" +msgstr "=E3=83=9B=E3=82=B9=E3=83=88=E5=90=8D=E3=81=8C=E8=A8=AD=E5=AE=9A=E5= =87=BA=E6=9D=A5=E3=81=BE=E3=81=9B=E3=82=93=E3=81=A7=E3=81=97=E3=81=9F=E3=80= =82" =20 #: misc.c:147 msgid "Scanning and configuring ISDN devices." -msgstr "" +msgstr "ISDN=E6=A9=9F=E5=99=A8=E3=82=92=E3=82=B9=E3=82=AD=E3=83=A3=E3=83=B3= =E5=8F=8A=E3=81=B3=E8=A8=AD=E5=AE=9A=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3= =81=99=E3=80=82" =20 #: misc.c:148 msgid "Unable to scan for ISDN devices." -msgstr "" +msgstr "ISDN=E6=A9=9F=E5=99=A8=E3=81=8C=E3=82=B9=E3=82=AD=E3=83=A3=E3=83=B3= =E5=87=BA=E6=9D=A5=E3=81=BE=E3=81=9B=E3=82=93=E3=80=82" =20 #: netstuff.c:86 #, c-format msgid "Interface - %s" -msgstr "" +msgstr "=E3=82=A4=E3=83=B3=E3=82=BF=E3=83=95=E3=82=A7=E3=83=BC=E3=82=B9=E3= =80=80=E3=83=BC=E3=80=80%s" =20 #: netstuff.c:91 #, c-format msgid "Enter the IP address information for the %s interface." -msgstr "" +msgstr "%s=E3=81=AF=E3=82=A4=E3=83=B3=E3=82=BF=E3=83=95=E3=82=A7=E3=83=BC=E3= =82=B9=E3=81=AEIP=E3=82=A2=E3=83=89=E3=83=AC=E3=82=B9=E6=83=85=E5=A0=B1=E3=82= =92=E8=A8=98=E5=85=A5=E3=81=97=E3=81=A6=E4=B8=8B=E3=81=95=E3=81=84=E3=80=82" =20 #: netstuff.c:103 msgid "Static" -msgstr "" +msgstr "=E5=9B=BA=E5=AE=9A" =20 #: netstuff.c:104 msgid "DHCP" -msgstr "" +msgstr "DHCP" =20 #: netstuff.c:105 msgid "PPP DIALUP (PPPoE, modem, ATM ...)" -msgstr "" +msgstr "PPP =E3=83=80=E3=82=A4=E3=83=A4=E3=83=AB=E3=83=BB=E3=82=A2=E3=83=83= =E3=83=97=EF=BC=88PPPoE, =E3=83=A2=E3=83=BC=E3=83=87=E3=83=A0, ATM=E3=81=AA= =E3=81=A9=EF=BC=89" =20 #: netstuff.c:113 msgid "DHCP Hostname:" -msgstr "" +msgstr "DHCP=E3=83=9B=E3=82=B9=E3=83=88=E5=90=8D=EF=BC=9A" =20 #: netstuff.c:115 msgid "Force DHCP MTU:" -msgstr "" +msgstr "DHCP MTU=E3=81=AE=E5=88=B6=E5=BE=A1=EF=BC=9A" =20 #: netstuff.c:134 msgid "IP address:" -msgstr "" +msgstr "IP=E3=82=A2=E3=83=89=E3=83=AC=E3=82=B9=EF=BC=9A" =20 #: netstuff.c:146 msgid "Network mask:" -msgstr "" +msgstr "=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AF=E3=83=BB=E3= =83=9E=E3=82=B9=E3=82=AF=EF=BC=9A" =20 #: netstuff.c:173 networking.c:749 msgid "The following fields are invalid:" -msgstr "" +msgstr "=E4=B8=8B=E8=A8=98=E3=81=AE=E3=83=95=E3=82=A3=E3=83=BC=E3=83=AB=E3= =83=89=E3=81=8C=E7=84=A1=E5=8A=B9=E3=81=A7=E3=81=99=EF=BC=9A" =20 #: netstuff.c:183 msgid "IP address" -msgstr "" +msgstr "IP=E3=82=A2=E3=83=89=E3=83=AC=E3=82=B9" =20 #: netstuff.c:189 msgid "Network mask" -msgstr "" +msgstr "=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AF=E3=83=BB=E3= =83=9E=E3=82=B9=E3=82=AF" =20 #: netstuff.c:198 msgid "DHCP hostname" -msgstr "" +msgstr "DHCP=E3=83=9B=E3=82=B9=E3=83=88=E5=90=8D" =20 #: netstuff.c:396 netstuff.c:709 msgid "Unset" -msgstr "" +msgstr "=E3=81=AF=E3=82=81=E8=BE=BC=E3=82=93=E3=81=A7=E3=81=AA=E3=81=84" =20 #: netstuff.c:669 #, c-format msgid "Please choose a networkcard for the following interface - %s." -msgstr "" +msgstr "=E4=B8=8B=E8=A8=98=E3=81=AE=E3=82=A4=E3=83=B3=E3=82=BF=E3=83=95=E3= =82=A7=E3=83=BC=E3=82=B9=E3=81=AB=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83= =BC=E3=82=AF=E3=83=BB=E3=82=AB=E3=83=BC=E3=83=89=E3=82=92=E9=81=B8=E3=82=93= =E3=81=A7=E4=B8=8B=E3=81=95=E3=81=84=E3=80=80=E3=83=BC=E3=80=80%s=E3=80=82" =20 #: netstuff.c:672 msgid "Extended Network Menu" -msgstr "" +msgstr "=E6=8B=A1=E5=BC=B5=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83=BC=E3= =82=AF=E3=83=BB=E3=83=A1=E3=83=8B=E3=83=A5=E3=83=BC" =20 #: netstuff.c:673 networking.c:520 msgid "Select" -msgstr "" +msgstr "=E9=81=B8=E6=8A=9E" =20 #: netstuff.c:673 msgid "Identify" -msgstr "" +msgstr "=E3=82=A2=E3=82=A4=E3=83=87=E3=83=B3=E3=83=86=E3=82=A3=E3=83=86=E3= =82=A3" =20 #: netstuff.c:678 msgid "Device Identification" -msgstr "" +msgstr "=E6=A9=9F=E5=99=A8=E7=A2=BA=E8=AA=8D" =20 #: netstuff.c:678 msgid "The lights on the selected port should flash now for 10 seconds..." -msgstr "" +msgstr "=E9=81=B8=E6=8A=9E=E3=81=97=E3=81=9F=E3=83=9D=E3=83=BC=E3=83=88=E3= =81=A7=E3=81=AELED=E3=81=AF10=E7=A7=92=E9=96=93=E3=81=AB=E7=82=B9=E6=BB=85=E3= =81=97=E3=81=A6=E3=81=84=E3=82=8B=E3=81=AF=E3=81=9A=E3=81=A7=E3=81=99=E3=83= =BB=E3=83=BB=E3=83=BB" =20 #: netstuff.c:679 msgid "Identification is not supported by this interface." -msgstr "" +msgstr "=E3=81=93=E3=81=AE=E3=82=A4=E3=83=B3=E3=82=BF=E3=83=95=E3=82=A7=E3= =83=BC=E3=82=B9=E3=81=AF=E7=A2=BA=E8=AA=8D=E3=81=8C=E3=82=B5=E3=83=9D=E3=83= =BC=E3=83=88=E3=81=97=E3=81=BE=E3=81=9B=E3=82=93=E3=80=82" =20 #: netstuff.c:691 msgid "There are no unassigned interfaces on your system." -msgstr "" +msgstr "=E3=82=B7=E3=82=B9=E3=83=86=E3=83=A0=E5=86=85=E3=80=81=E3=82=A2=E3= =82=B5=E3=82=A4=E3=83=B3=E3=81=97=E3=81=A6=E3=81=84=E3=81=AA=E3=81=84=E3=82= =A4=E3=83=B3=E3=82=BF=E3=83=95=E3=82=A7=E3=83=BC=E3=82=B9=E3=81=8C=E3=81=82= =E3=82=8A=E3=81=BE=E3=81=9B=E3=82=93=E3=80=82" =20 #: netstuff.c:732 #, c-format msgid "Do you really want to remove the assigned %s interface?" -msgstr "" +msgstr "=E6=9C=AC=E5=BD=93=E3=81=AB=E3=82=A2=E3=82=B5=E3=82=A4=E3=83=B3=E6= =B8=88=E3=81=AE %s =E3=82=A4=E3=83=B3=E3=82=BF=E3=83=95=E3=82=A7=E3=83=BC=E3= =82=B9=E3=82=92=E8=A7=A3=E9=99=A4=E3=81=97=E3=81=A6=E3=81=BB=E3=81=97=E3=81= =84=E3=81=A7=E3=81=99=E3=81=8B=E3=80=82" =20 #: netstuff.c:755 msgid "Select network driver" -msgstr "" +msgstr "=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AF=E3=83=BB=E3= =83=89=E3=83=A9=E3=82=A4=E3=83=90=E3=83=BC=E3=82=92=E9=81=B8=E3=82=93=E3=81= =A7=E4=B8=8B=E3=81=95=E3=81=84=E3=80=82" =20 #: netstuff.c:755 msgid "Set additional module parameters" -msgstr "" +msgstr "=E3=83=A2=E3=82=B8=E3=83=A5=E3=83=BC=E3=83=AB=E3=81=AE=E8=BF=BD=E5= =8A=A0=E3=83=91=E3=83=A9=E3=83=A1=E3=83=BC=E3=82=BF=E3=83=BC=E3=82=92=E8=A8= =AD=E5=AE=9A=E3=81=97=E3=81=A6=E3=81=8F=E3=81=A0=E3=81=95=E3=81=84=E3=80=82" =20 #: netstuff.c:762 msgid "Loading module..." -msgstr "" +msgstr "=E3=83=A2=E3=82=B8=E3=83=A5=E3=83=BC=E3=83=AB=E3=82=92=E3=83=AD=E3= =83=BC=E3=83=89=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=E3=83=BB=E3=83= =BB=E3=83=BB" =20 #: netstuff.c:777 msgid "Unable to load driver module." -msgstr "" +msgstr "=E3=83=89=E3=83=A9=E3=82=A4=E3=83=90=E3=83=BC=E3=83=BB=E3=83=A2=E3= =82=B8=E3=83=A5=E3=83=BC=E3=83=AB=E3=81=8C=E3=83=AD=E3=83=BC=E3=83=89=E5=87= =BA=E6=9D=A5=E3=81=BE=E3=81=9B=E3=82=93=E3=81=A7=E3=81=97=E3=81=9F=E3=80=82" =20 #: netstuff.c:780 msgid "Module name cannot be blank." -msgstr "" +msgstr "=E7=A9=BA=E3=83=A2=E3=82=B8=E3=83=A5=E3=83=BC=E3=83=AB=E5=90=8D=E3= =81=8C=E7=A6=81=E6=AD=A2=E3=81=A7=E3=81=99=E3=80=82" =20 #: networking.c:110 msgid "Stopping network..." -msgstr "" +msgstr "=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AF=E3=82=92=E5= =81=9C=E6=AD=A2=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=E3=80=82=E3=80= =82=E3=80=82" =20 #: networking.c:115 msgid "Restarting network..." -msgstr "" +msgstr "=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AF=E3=82=92=E5= =86=8D=E8=B5=B7=E5=8B=95=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=E3=83= =BB=E3=83=BB=E3=83=BB" =20 #: networking.c:146 msgid "No GREEN interface assigned." -msgstr "" +msgstr "GREEN=E3=82=A4=E3=83=B3=E3=82=BF=E3=83=95=E3=82=A7=E3=83=BC=E3=82=B9= =E3=81=8C=E3=82=A2=E3=82=B5=E3=82=A4=E3=83=B3=E3=81=97=E3=81=A6=E3=81=84=E3= =81=BE=E3=81=9B=E3=82=93=E3=80=82" =20 #: networking.c:152 msgid "Missing an IP address on GREEN." -msgstr "" +msgstr "GREEN=E3=81=AEIP=E3=81=8C=E7=99=BB=E9=8C=B2=E3=81=97=E3=81=A6=E3=81= =84=E3=81=BE=E3=81=9B=E3=82=93=E3=80=82" =20 #: networking.c:163 msgid "Error" -msgstr "" +msgstr "=E3=82=A8=E3=83=A9=E3=83=BC" =20 #: networking.c:163 msgid "Ignore" -msgstr "" +msgstr "=E9=A1=A7=E3=81=BF=E3=81=AA=E3=81=84" =20 #: networking.c:164 msgid "No RED interface assigned." -msgstr "" +msgstr "RED=E3=82=A4=E3=83=B3=E3=82=BF=E3=83=95=E3=82=A7=E3=83=BC=E3=82=B9= =E3=81=8C=E3=82=A2=E3=82=B5=E3=82=A4=E3=83=B3=E3=81=97=E3=81=A6=E3=81=84=E3= =81=BE=E3=81=9B=E3=82=93=E3=80=82" =20 #: networking.c:173 msgid "Missing an IP address on RED." -msgstr "" +msgstr "RED=E3=81=AEIP=E3=81=8C=E7=99=BB=E9=8C=B2=E3=81=97=E3=81=A6=E3=81=84= =E3=81=BE=E3=81=9B=E3=82=93=E3=80=82" =20 #: networking.c:183 msgid "No ORANGE interface assigned." -msgstr "" +msgstr "ORANGE=E3=82=A4=E3=83=B3=E3=82=BF=E3=83=95=E3=82=A7=E3=83=BC=E3=82= =B9=E3=81=8C=E3=82=A2=E3=82=B5=E3=82=A4=E3=83=B3=E3=81=97=E3=81=A6=E3=81=84= =E3=81=BE=E3=81=9B=E3=82=93=E3=80=82" =20 #: networking.c:189 msgid "Missing an IP address on ORANGE." -msgstr "" +msgstr "ORANGE=E3=81=AEIP=E3=81=8C=E7=99=BB=E9=8C=B2=E3=81=97=E3=81=A6=E3=81= =84=E3=81=BE=E3=81=9B=E3=82=93=E3=80=82" =20 #: networking.c:199 msgid "No BLUE interface assigned." -msgstr "" +msgstr "BLUE=E3=82=A4=E3=83=B3=E3=82=BF=E3=83=95=E3=82=A7=E3=83=BC=E3=82=B9= =E3=81=8C=E3=82=A2=E3=82=B5=E3=82=A4=E3=83=B3=E3=81=97=E3=81=A6=E3=81=84=E3= =81=BE=E3=81=9B=E3=82=93=E3=80=82" =20 #: networking.c:205 msgid "Missing an IP address on BLUE." -msgstr "" +msgstr "BLUE=E3=81=AEIP=E3=81=8C=E7=99=BB=E9=8C=B2=E3=81=97=E3=81=A6=E3=81= =84=E3=81=BE=E3=81=9B=E3=82=93=E3=80=82" =20 #: networking.c:217 msgid "Misssing DNS." -msgstr "" +msgstr "DNS=E3=81=8C=E7=99=BB=E9=8C=B2=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE= =E3=81=9B=E3=82=93=E3=80=82" =20 #: networking.c:224 msgid "Missing Default Gateway." -msgstr "" +msgstr "=E3=83=87=E3=83=95=E3=82=A9=E3=83=AB=E3=83=88=E3=83=BB=E3=82=B2=E3= =83=BC=E3=83=88=E3=82=A6=E3=82=A7=E3=82=A4=E3=81=8C=E7=99=BB=E9=8C=B2=E3=81= =97=E3=81=A6=E3=81=84=E3=81=BE=E3=81=9B=E3=82=93=E3=80=82" =20 #: networking.c:237 networking.c:304 msgid "Network configuration type" -msgstr "" +msgstr "=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AF=E8=A8=AD=E5= =AE=9A=E3=82=BF=E3=82=A4=E3=83=97" =20 #: networking.c:238 networking.c:409 msgid "Drivers and card assignments" -msgstr "" +msgstr "=E3=83=89=E3=83=A9=E3=82=A4=E3=83=90=E3=83=BC=E5=8F=8A=E3=81=B3=E3= =82=AB=E3=83=BC=E3=83=89=E3=81=AE=E3=82=A2=E3=82=B5=E3=82=A4=E3=83=B3" =20 #: networking.c:239 networking.c:640 msgid "Address settings" -msgstr "" +msgstr "=E3=82=A2=E3=83=89=E3=83=AC=E3=82=B9=E8=A8=AD=E5=AE=9A" =20 #: networking.c:240 networking.c:743 msgid "DNS and Gateway settings" -msgstr "" +msgstr "DNS=E5=8F=8A=E3=81=B3=E3=82=B2=E3=83=BC=E3=83=88=E3=82=A6=E3=82=A7= =E3=82=A4=E8=A8=AD=E5=AE=9A" =20 #: networking.c:260 msgid "When configuration is complete, a network restart will be required." -msgstr "" +msgstr "=E8=A8=AD=E5=AE=9A=E3=81=8C=E7=B5=82=E4=BA=86=E3=81=97=E3=81=BE=E3= =81=97=E3=81=9F=E3=82=89=E3=80=81=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83= =BC=E3=82=AF=E3=81=AE=E5=86=8D=E8=B5=B7=E5=8B=95=E3=81=8C=E5=BF=85=E8=A6=81= =E3=81=A8=E3=81=AA=E3=82=8A=E3=81=BE=E3=81=99=E3=80=82" =20 #: networking.c:267 #, c-format @@ -439,15 +440,15 @@ msgid "" "Current config: %s\n" "\n" "%s" -msgstr "" +msgstr "=E7=8F=BE=E5=9C=A8=E3=81=AE=E8=A8=AD=E5=AE=9A=EF=BC=9A %s\n\n%s" =20 #: networking.c:268 msgid "Network configuration menu" -msgstr "" +msgstr "=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AF=E8=A8=AD=E5= =AE=9A=E3=81=AE=E3=83=A1=E3=83=8B=E3=83=A5=E3=83=BC" =20 #: networking.c:269 networking.c:520 networking.c:642 msgid "Done" -msgstr "" +msgstr "=E7=B5=82=E4=BA=86" =20 #: networking.c:300 #, c-format @@ -456,7 +457,7 @@ msgid "" "list those interfaces which have ethernet attached. If you change this " "setting, a network restart will be required, and you will have to " "reconfigure the network driver assignments." -msgstr "" +msgstr "%s=E3=81=AE=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AF=E8= =A8=AD=E5=AE=9A=E3=82=92=E9=81=B8=E3=82=93=E3=81=A7=E4=B8=8B=E3=81=95=E3=81= =84=E3=80=82=E4=B8=8B=E8=A8=98=E3=81=AE=E8=A8=AD=E5=AE=9A=E3=82=BF=E3=82=A4= =E3=83=97=E3=81=AF=E3=82=A4=E3=83=BC=E3=82=B5=E3=83=8D=E3=83=83=E3=83=88=E3= =81=8C=E4=BB=98=E3=81=91=E3=81=9F=E3=82=A4=E3=83=B3=E3=82=BF=E3=83=95=E3=82= =A7=E3=83=BC=E3=82=B9=E3=82=92=E8=A1=A8=E7=A4=BA=E3=81=97=E3=81=A6=E3=81=84= =E3=81=BE=E3=81=99=E3=80=82=E3=81=93=E3=81=AE=E8=A8=AD=E5=AE=9A=E3=82=92=E5= =A4=89=E6=9B=B4=E3=81=99=E3=82=8B=E3=81=A8=E3=80=81=E3=83=8D=E3=83=83=E3=83= =88=E3=83=AF=E3=83=BC=E3=82=AF=E3=81=AE=E5=86=8D=E8=B5=B7=E5=8B=95=E3=81=8C= =E5=BF=85=E8=A6=81=E3=81=A8=E3=81=AA=E3=82=8A=E3=80=81=E6=97=A2=E3=81=AB=E3= =82=A2=E3=82=B5=E3=82=A4=E3=83=B3=E3=81=97=E3=81=9F=E3=83=8D=E3=83=83=E3=83= =88=E3=83=AF=E3=83=BC=E3=82=AF=E3=83=BB=E3=83=89=E3=83=A9=E3=82=A4=E3=83=90= =E3=83=BC=E3=81=AE=E5=86=8D=E8=A8=AD=E5=AE=9A=E3=82=82=E5=BF=85=E8=A6=81=E3= =81=A8=E3=81=AA=E3=82=8A=E3=81=BE=E3=81=99=E3=80=82" =20 #: networking.c:307 #, c-format @@ -464,35 +465,35 @@ msgid "" "Not enough netcards for your choice.\n" "\n" "Needed: %d - Available: %d\n" -msgstr "" +msgstr "=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AF=E3=83=BB=E3= =82=AB=E3=83=BC=E3=83=89=E3=81=8C=E4=B8=8D=E8=B6=B3=E3=81=A7=E3=81=99=E3=80= =82\n\n=E5=BF=85=E8=A6=81=EF=BC=9A%d =E3=83=BC =E8=A8=AD=E7=BD=AE=E3=81=97=E3= =81=9F=EF=BC=9A%d\n" =20 #: networking.c:359 msgid "" "Configure network drivers, and which interface each card is assigned to. Th= e current configuration is as follows:\n" "\n" -msgstr "" +msgstr "=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AF=E3=83=BB=E3= =82=AB=E3=83=BC=E3=83=89=E3=81=AB=E3=82=A2=E3=82=B5=E3=82=A4=E3=83=B3=E3=81= =97=E3=81=9F=E3=82=A4=E3=83=B3=E3=82=BF=E3=83=95=E3=82=A7=E3=83=BC=E3=82=B9= =E5=8F=8A=E3=81=B3=E3=83=8D=E3=83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AF=E3= =83=BB=E3=83=89=E3=83=A9=E3=82=A4=E3=83=90=E3=83=BC=E3=82=92=E8=A8=AD=E5=AE= =9A=E3=81=97=E3=81=BE=E3=81=99=E3=80=82=E7=8F=BE=E5=9C=A8=E3=81=AE=E8=A8=AD= =E5=AE=9A=E3=81=AF=EF=BC=9A\n\n" =20 #: networking.c:408 msgid "Do you wish to change these settings?" -msgstr "" +msgstr "=E3=81=93=E3=81=AE=E8=A8=AD=E5=AE=9A=E3=82=92=E5=A4=89=E6=9B=B4=E3= =81=97=E3=81=9F=E3=81=84=E3=81=A7=E3=81=99=E3=81=8B=E3=80=82" =20 #: networking.c:447 msgid "Restarting non-local network..." -msgstr "" +msgstr "=E9=9D=9E=E3=83=AD=E3=83=BC=E3=82=AB=E3=83=AB=E3=83=BB=E3=83=8D=E3= =83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AF=E3=82=92=E5=86=8D=E8=B5=B7=E5=8B= =95=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=E3=83=BB=E3=83=BB=E3=83=BB" =20 #: networking.c:464 msgid "" "Please choose the interface you wish to change.\n" "\n" -msgstr "" +msgstr "=E5=A4=89=E6=9B=B4=E3=81=97=E3=81=9F=E3=81=84=E3=82=A4=E3=83=B3=E3= =82=BF=E3=83=95=E3=82=A7=E3=83=BC=E3=82=B9=E3=82=92=E9=81=B8=E3=82=93=E3=81= =A7=E4=B8=8B=E3=81=95=E3=81=84=E3=80=82\n\n" =20 #: networking.c:519 msgid "Assigned Cards" -msgstr "" +msgstr "=E3=82=A2=E3=82=B5=E3=82=A4=E3=83=B3=E3=81=97=E3=81=9F=E3=83=8D=E3= =83=83=E3=83=88=E3=83=AF=E3=83=BC=E3=82=AF=E3=83=BB=E3=82=AB=E3=83=BC=E3=83= =89" =20 #: networking.c:520 msgid "Remove" -msgstr "" +msgstr "=E8=A7=A3=E9=99=A4" =20 #: networking.c:556 networking.c:649 #, c-format @@ -501,84 +502,84 @@ msgid "" "connection to the %s machine will be broken, and you will have to reconnect= " "on the new IP. This is a risky operation, and should only be attempted if " "you have physical access to the machine, should something go wrong." -msgstr "" +msgstr "=E3=81=93=E3=81=AEIP=E3=82=A2=E3=83=89=E3=83=AC=E3=82=B9=E3=82=92=E5= =A4=89=E6=9B=B4=E3=81=99=E3=82=8B=E3=81=A8=E3=80=81=E3=83=AA=E3=83=A2=E3=83= =BC=E3=83=88=E3=81=A7=E3=83=AD=E3=82=B0=E3=82=A4=E3=83=B3=E3=81=97=E3=81=A6= =E3=81=84=E3=82=8B=E5=A0=B4=E5=90=88=E3=80=81%s=E3=81=AE=E6=A9=9F=E5=99=A8=E3= =81=A8=E3=81=AE=E6=8E=A5=E7=B6=9A=E3=81=8C=E5=A4=96=E3=82=8C=E3=81=BE=E3=81= =99=E3=81=AE=E3=81=A7=E3=80=81=E6=96=B0IP=E3=82=A2=E3=83=89=E3=83=AC=E3=82=B9= =E3=81=A7=E3=81=AE=E5=86=8D=E6=8E=A5=E7=B6=9A=E3=81=8C=E5=BF=85=E8=A6=81=E3= =81=A8=E3=81=AA=E3=82=8A=E3=81=BE=E3=81=99=E3=80=82=E3=81=9D=E3=82=8C=E3=81= =8C=E5=8D=B1=E9=99=BA=E3=81=A7=E3=81=99=E3=81=AE=E3=81=A7=E3=80=81=E5=A4=89= =E3=81=AA=E3=81=93=E3=81=A8=E3=81=AB=E3=81=AA=E3=81=A3=E3=81=9F=E3=82=89=E6= =A9=9F=E5=99=A8=E3=81=A8=E7=89=A9=E7=90=86=E7=9A=84=E3=81=AA=E3=82=A2=E3=82= =AF=E3=82=BB=E3=82=B9=E3=81=8C=E3=81=A7=E3=81=8D=E3=82=8B=E5=A0=B4=E5=90=88= =E3=81=AE=E3=81=BF=E8=A1=8C=E3=81=A3=E3=81=9F=E3=81=BB=E3=81=86=E3=81=8C=E3= =82=88=E3=81=84=E3=81=A7=E3=81=99=E3=80=82" =20 #: networking.c:641 msgid "Select the interface you wish to reconfigure." -msgstr "" +msgstr "=E5=86=8D=E8=A8=AD=E5=AE=9A=E3=81=97=E3=81=9F=E3=81=84=E3=82=A4=E3= =83=B3=E3=82=BF=E3=83=95=E3=82=A7=E3=83=BC=E3=82=B9=E3=82=92=E9=81=B8=E3=82= =93=E3=81=A7=E4=B8=8B=E3=81=95=E3=81=84=E3=80=82" =20 #: networking.c:729 msgid "Default gateway:" -msgstr "" +msgstr "=E3=83=87=E3=83=95=E3=82=A9=E3=83=AB=E3=83=88=E3=83=BB=E3=82=B2=E3= =83=BC=E3=83=88=E3=82=A6=E3=82=A7=E3=82=A4=EF=BC=9A" =20 #: networking.c:744 msgid "" "Enter the DNS and gateway information. These settings are used only with " "Static IP (and DHCP if DNS set) on the RED interface." -msgstr "" +msgstr "DNS=E5=8F=8A=E3=81=B3=E3=82=B2=E3=83=BC=E3=83=88=E3=82=A6=E3=82=A7= =E3=82=A4=E3=81=AE=E6=83=85=E5=A0=B1=E3=82=92=E8=A8=98=E5=85=A5=E3=81=97=E3= =81=A6=E4=B8=8B=E3=81=95=E3=81=84=E3=80=82=E3=81=93=E3=81=AE=E8=A8=AD=E5=AE= =9A=E3=81=AFRED=E3=82=A4=E3=83=B3=E3=82=BF=E3=83=95=E3=82=A7=E3=83=BC=E3=82= =B9=E3=81=AE=E5=9B=BA=E5=AE=9AIP=EF=BC=88DNS=E3=81=8C=E8=A8=AD=E5=AE=9A=E3=81= =97=E3=81=9F=E5=A0=B4=E5=90=88DHCP=E3=82=82=EF=BC=89=E3=81=AE=E3=81=BF=E4=BD= =BF=E7=94=A8=E3=81=A8=E3=81=AA=E3=82=8A=E3=81=BE=E3=81=99=E3=80=82" =20 #: networking.c:773 msgid "Default gateway" -msgstr "" +msgstr "=E3=83=87=E3=83=95=E3=82=A9=E3=83=AB=E3=83=88=E3=83=BB=E3=82=B2=E3= =83=BC=E3=83=88=E3=82=A6=E3=82=A7=E3=82=A4" =20 #: networking.c:780 msgid "Secondary DNS specified without a Primary DNS" -msgstr "" +msgstr "=E4=BA=8C=E6=AC=A1=E3=81=AEDNS=E3=81=8C=E7=99=BB=E9=8C=B2=E3=81=97= =E3=81=9F=E3=81=8C=E3=80=81=E4=B8=80=E6=AC=A1=E3=81=AEDNS=E3=81=8C=E7=99=BB= =E9=8C=B2=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81=9B=E3=82=93=E3=80=82" =20 #: passwords.c:33 msgid "" "Enter the 'root' user password. Login as this user for commandline access." -msgstr "" +msgstr "'root'=E3=81=AE=E3=83=A6=E3=83=BC=E3=82=B6=E3=83=BC=E3=83=BB=E3=83= =91=E3=82=B9=E3=83=AF=E3=83=BC=E3=83=89=E3=82=92=E8=A8=98=E5=85=A5=E3=81=97= =E3=81=A6=E4=B8=8B=E3=81=95=E3=81=84=E3=80=82=E3=82=B3=E3=83=9E=E3=83=B3=E3= =83=89=E8=A1=8C=E3=83=BB=E3=82=A2=E3=82=AF=E3=82=BB=E3=82=B9=E3=81=AE=E7=82= =BA=E3=80=81=E3=81=93=E3=81=AE=E3=83=A6=E3=83=BC=E3=82=B6=E3=83=BC=E3=81=A8= =E3=81=97=E3=81=A6=E3=83=AD=E3=82=B0=E3=82=A4=E3=83=B3=E3=81=97=E3=81=A6=E4= =B8=8B=E3=81=95=E3=81=84=E3=80=82" =20 #: passwords.c:38 passwords.c:61 msgid "Setting password" -msgstr "" +msgstr "=E3=83=91=E3=82=B9=E3=83=AF=E3=83=BC=E3=83=89=E3=81=AE=E8=A8=AD=E5= =AE=9A" =20 #: passwords.c:38 msgid "Setting 'root' password...." -msgstr "" +msgstr "'root'=E3=81=AE=E3=83=91=E3=82=B9=E3=83=AF=E3=83=BC=E3=83=89=E3=82= =92=E8=A8=AD=E5=AE=9A=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=E3=83=BB= =E3=83=BB=E3=83=BB" =20 #: passwords.c:39 msgid "Problem setting 'root' password." -msgstr "" +msgstr "'root'=E3=81=AE=E3=83=91=E3=82=B9=E3=83=AF=E3=83=BC=E3=83=89=E3=81= =8C=E8=A8=AD=E5=AE=9A=E5=87=BA=E6=9D=A5=E3=81=BE=E3=81=9B=E3=82=93=E3=81=A7= =E3=81=97=E3=81=9F=E3=80=82" =20 #: passwords.c:53 #, c-format msgid "" "Enter %s 'admin' user password. This is the user to use for logging into th= e" " %s web administration pages." -msgstr "" +msgstr "%s=E3=81=AE'=E7=AE=A1=E7=90=86=E8=80=85'=E3=81=AE=E3=83=A6=E3=83=BC= =E3=82=B6=E3=83=BC=E3=83=BB=E3=83=91=E3=82=B9=E3=83=AF=E3=83=BC=E3=83=89=E3= =82=92=E8=A8=98=E5=85=A5=E3=81=97=E3=81=A6=E4=B8=8B=E3=81=95=E3=81=84=E3=80= =82%s=E3=81=AE=E3=82=A6=E3=82=A7=E3=83=83=E3=83=96=E7=AE=A1=E7=90=86=E3=83=9A= =E3=83=BC=E3=82=B8=E3=81=AB=E3=83=AD=E3=82=B0=E3=82=A4=E3=83=B3=E3=81=99=E3= =82=8B=E7=82=BA=E3=81=AE=E3=83=A6=E3=83=BC=E3=82=B6=E3=83=BC=E3=81=A7=E3=81= =99=E3=80=82" =20 #: passwords.c:60 #, c-format msgid "Setting %s 'admin' user password..." -msgstr "" +msgstr "%s=E3=81=AE'=E7=AE=A1=E7=90=86=E8=80=85' =E3=83=A6=E3=83=BC=E3=82=B6= =E3=83=BC=E3=83=BB=E3=83=91=E3=82=B9=E3=83=AF=E3=83=BC=E3=83=89=E3=82=92=E8= =A8=AD=E5=AE=9A=E3=81=97=E3=81=A6=E3=81=84=E3=81=BE=E3=81=99=E3=83=BB=E3=83= =BB=E3=83=BB" =20 #: passwords.c:62 #, c-format msgid "Problem setting %s 'admin' user password." -msgstr "" +msgstr "%s=E3=81=AE'=E7=AE=A1=E7=90=86=E8=80=85' =E3=83=A6=E3=83=BC=E3=82=B6= =E3=83=BC=E3=83=BB=E3=83=91=E3=82=B9=E3=83=AF=E3=83=BC=E3=83=89=E3=81=8C=E8= =A8=AD=E5=AE=9A=E5=87=BA=E6=9D=A5=E3=81=BE=E3=81=9B=E3=82=93=E3=81=A7=E3=81= =97=E3=81=9F=E3=80=82" =20 #: passwords.c:76 msgid "Password:" -msgstr "" +msgstr "=E3=83=91=E3=82=B9=E3=83=AF=E3=83=BC=E3=83=89=EF=BC=9A" =20 #: passwords.c:77 msgid "Again:" -msgstr "" +msgstr "=E3=82=82=E3=81=86=E4=B8=80=E5=BA=A6=EF=BC=9A" =20 #: passwords.c:95 msgid "Password cannot be blank." -msgstr "" +msgstr "=E7=A9=BA=E3=83=91=E3=82=B9=E3=83=AF=E3=83=BC=E3=83=89=E3=81=8C=E7= =A6=81=E6=AD=A2=E3=81=A7=E3=81=99=E3=80=82" =20 #: passwords.c:102 msgid "Passwords do not match." -msgstr "" +msgstr "=E3=83=91=E3=82=B9=E3=83=AF=E3=83=BC=E3=83=89=E3=81=8C=E9=81=95=E3= =81=84=E3=81=BE=E3=81=97=E3=81=9F=E3=80=82" =20 #: passwords.c:109 msgid "Password cannot contain spaces." -msgstr "" +msgstr "=E3=82=B9=E3=83=9A=E3=83=BC=E3=82=B9=E3=81=8C=E5=90=AB=E3=82=93=E3= =81=A7=E3=81=84=E3=82=8B=E3=83=91=E3=82=B9=E3=83=AF=E3=83=BC=E3=83=89=E3=81= =8C=E7=A6=81=E6=AD=A2=E3=81=A7=E3=81=99=E3=80=82" =20 #: timezone.c:77 msgid "Choose the timezone you are in from the list below." -msgstr "" +msgstr "=E4=B8=8B=E8=A8=98=E3=81=AE=E3=83=AA=E3=82=B9=E3=83=88=E3=81=8B=E3= =82=89=E3=80=81=E4=BD=8F=E3=82=93=E3=81=A7=E3=81=84=E3=82=8B=E6=99=82=E9=96= =93=E5=B8=AF=E3=82=92=E9=81=B8=E3=82=93=E3=81=A7=E4=B8=8B=E3=81=95=E3=81=84= =E3=80=82" diff --git a/src/setup/po/jv.po b/src/setup/po/jv.po index e8a7e89..592130f 100644 --- a/src/setup/po/jv.po +++ b/src/setup/po/jv.po @@ -10,7 +10,7 @@ msgstr "" "POT-Creation-Date: 2014-08-21 15:12+0000\n" "PO-Revision-Date: 2014-08-12 10:08+0000\n" "Last-Translator: FULL NAME \n" -"Language-Team: Javanese (http://www.transifex.com/projects/p/ipfire/languag= e/jv/)\n" +"Language-Team: Javanese (http://www.transifex.com/mstremer/ipfire/language/= jv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/km_KH.po b/src/setup/po/km_KH.po index 4d5c100..3c6424f 100644 --- a/src/setup/po/km_KH.po +++ b/src/setup/po/km_KH.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-08-21 15:13+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Khmer (Cambodia) (http://www.transifex.com/projects/p/ipfire= /language/km_KH/)\n" +"Language-Team: Khmer (Cambodia) (http://www.transifex.com/mstremer/ipfire/l= anguage/km_KH/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/nl.po b/src/setup/po/nl.po index 439f50c..ebb04ea 100644 --- a/src/setup/po/nl.po +++ b/src/setup/po/nl.po @@ -9,9 +9,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2015-02-03 07:00+0000\n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" "Last-Translator: Jacques Hylkema \n" -"Language-Team: Dutch (http://www.transifex.com/projects/p/ipfire/language/n= l/)\n" +"Language-Team: Dutch (http://www.transifex.com/mstremer/ipfire/language/nl/= )\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/pl.po b/src/setup/po/pl.po index ee6183f..47e280a 100644 --- a/src/setup/po/pl.po +++ b/src/setup/po/pl.po @@ -4,20 +4,20 @@ #=20 # Translators: # btelega , 2014 -# Przemys=C5=82aw Karpeta , 2014 +# Przemyslaw Ka. , 2014 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-11-03 15:36+0000\n" -"Last-Translator: Przemys=C5=82aw Karpeta \n" -"Language-Team: Polish (http://www.transifex.com/projects/p/ipfire/language/= pl/)\n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" +"Last-Translator: Przemyslaw Ka. \n" +"Language-Team: Polish (http://www.transifex.com/mstremer/ipfire/language/pl= /)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: pl\n" -"Plural-Forms: nplurals=3D3; plural=3D(n=3D=3D1 ? 0 : n%10>=3D2 && n%10<=3D4= && (n%100<10 || n%100>=3D20) ? 1 : 2);\n" +"Plural-Forms: nplurals=3D4; plural=3D(n=3D=3D1 ? 0 : (n%10>=3D2 && n%10<=3D= 4) && (n%100<12 || n%100>14) ? 1 : n!=3D1 && (n%10>=3D0 && n%10<=3D1) || (n%1= 0>=3D5 && n%10<=3D9) || (n%100>=3D12 && n%100<=3D14) ? 2 : 3);\n" =20 #: dhcp.c:50 msgid "Start address:" diff --git a/src/setup/po/pt_BR.po b/src/setup/po/pt_BR.po index eb408ed..54e7c1a 100644 --- a/src/setup/po/pt_BR.po +++ b/src/setup/po/pt_BR.po @@ -3,7 +3,7 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: -# douglasdiasn , 2015 +# Douglas Noronha , 2015 # Evertton de Lima , 2015 # Mois=C3=A9s Bites Borges de Castro , 2015 # Rafael Tavares , 2015 @@ -12,9 +12,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2015-03-24 21:31+0000\n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" "Last-Translator: Mois=C3=A9s Bites Borges de Castro \n" -"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/ipf= ire/language/pt_BR/)\n" +"Language-Team: Portuguese (Brazil) (http://www.transifex.com/mstremer/ipfir= e/language/pt_BR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/pt_PT.po b/src/setup/po/pt_PT.po index f75c591..31f103a 100644 --- a/src/setup/po/pt_PT.po +++ b/src/setup/po/pt_PT.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: +# Andr=C3=A9 Pinto , 2015 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-08-21 15:13+0000\n" -"Last-Translator: Michael Tremer \n" -"Language-Team: Portuguese (Portugal) (http://www.transifex.com/projects/p/i= pfire/language/pt_PT/)\n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" +"Last-Translator: Andr=C3=A9 Pinto \n" +"Language-Team: Portuguese (Portugal) (http://www.transifex.com/mstremer/ipf= ire/language/pt_PT/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -19,19 +20,19 @@ msgstr "" =20 #: dhcp.c:50 msgid "Start address:" -msgstr "" +msgstr "Endere=C3=A7o Inicial:" =20 #: dhcp.c:51 msgid "End address:" -msgstr "" +msgstr "Endere=C3=A7o Final:" =20 #: dhcp.c:52 networking.c:717 msgid "Primary DNS:" -msgstr "" +msgstr "DNS Prim=C3=A1rio:" =20 #: dhcp.c:53 networking.c:723 msgid "Secondary DNS:" -msgstr "" +msgstr "DNS Secund=C3=A1rio:" =20 #: dhcp.c:54 msgid "Default lease (mins):" @@ -78,7 +79,7 @@ msgstr "" #: networking.c:410 networking.c:560 networking.c:653 networking.c:746 #: passwords.c:89 timezone.c:78 msgid "Cancel" -msgstr "" +msgstr "Cancelar" =20 #: dhcp.c:156 msgid "" diff --git a/src/setup/po/ro_RO.po b/src/setup/po/ro_RO.po index 9bf182c..9662732 100644 --- a/src/setup/po/ro_RO.po +++ b/src/setup/po/ro_RO.po @@ -3,15 +3,17 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: -# Andrei Burdea , 2015 +# Andrei Bogdan Burdea , 2015 +# Constantin Razvan , 2016 +# Liviu Vasies , 2016 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2015-01-20 09:08+0000\n" -"Last-Translator: Andrei Burdea \n" -"Language-Team: Romanian (Romania) (http://www.transifex.com/projects/p/ipfi= re/language/ro_RO/)\n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" +"Last-Translator: Liviu Vasies \n" +"Language-Team: Romanian (Romania) (http://www.transifex.com/mstremer/ipfire= /language/ro_RO/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -20,31 +22,31 @@ msgstr "" =20 #: dhcp.c:50 msgid "Start address:" -msgstr "Adresa de Inceput" +msgstr "Adres=C4=83 de =C3=AEnceput:" =20 #: dhcp.c:51 msgid "End address:" -msgstr "Adresa de Final" +msgstr "Adres=C4=83 de final:" =20 #: dhcp.c:52 networking.c:717 msgid "Primary DNS:" -msgstr "Primul Server de Nume - NS1" +msgstr "DNS primar:" =20 #: dhcp.c:53 networking.c:723 msgid "Secondary DNS:" -msgstr "Al Doilea Server de Nume - NS2" +msgstr "DNS secundar:" =20 #: dhcp.c:54 msgid "Default lease (mins):" -msgstr "Alocarea de baza (minute)" +msgstr "Alocarea implicit=C4=83 (minute):" =20 #: dhcp.c:55 msgid "Max lease (mins):" -msgstr "Alocare Maxima (minute)" +msgstr "Alocare Maxim=C4=83 (minute):" =20 #: dhcp.c:56 msgid "Domain name suffix:" -msgstr "Sufix Nume Domeniu" +msgstr "Sufix Nume Domeniu:" =20 #: dhcp.c:86 dhcp.c:93 dhcp.c:101 domainname.c:34 hostname.c:37 keymap.c:70 #: misc.c:40 misc.c:52 netstuff.c:377 netstuff.c:566 netstuff.c:704 @@ -52,15 +54,15 @@ msgstr "Sufix Nume Domeniu" #: networking.c:442 networking.c:552 networking.c:603 networking.c:610 #: networking.c:713 timezone.c:63 msgid "Unable to open settings file" -msgstr "Fisier de setari imposibil de deschis" +msgstr "Nu se poate deschide fi=C8=99ierul de set=C4=83ri" =20 #: dhcp.c:111 msgid "DHCP server configuration" -msgstr "Conficurearea serverului DHCP" +msgstr "Configurare server DHCP" =20 #: dhcp.c:116 msgid "Configure the DHCP server by entering the settings information." -msgstr "Configureaza serverul DHCP introducand informatiile de setare" +msgstr "Configureaz=C4=83 serverul DHCP introduc=C3=A2nd informa=C8=9Biile s= et=C4=83ri" =20 #: dhcp.c:125 msgid "Enabled" @@ -79,33 +81,33 @@ msgstr "OK" #: networking.c:410 networking.c:560 networking.c:653 networking.c:746 #: passwords.c:89 timezone.c:78 msgid "Cancel" -msgstr "Renunta" +msgstr "Renun=C8=9B=C4=83" =20 #: dhcp.c:156 msgid "" "The following fields are invalid:\n" "\n" -msgstr "Urmatoarele campuri sunt incorecte\n\n" +msgstr "Urm=C4=83toarele c=C3=A2mpuri sunt incorecte\n\n" =20 #: dhcp.c:159 msgid "Start address" -msgstr "Adresa de Inceput" +msgstr "Adres=C4=83 =C3=AEnceput" =20 #: dhcp.c:165 msgid "End address" -msgstr "Adresa de Final" +msgstr "Adres=C4=83 final" =20 #: dhcp.c:173 networking.c:755 msgid "Primary DNS" -msgstr "Primul Server de Nume - NS1" +msgstr "DNS primar" =20 #: dhcp.c:182 networking.c:764 msgid "Secondary DNS" -msgstr "Al Doilea Server de Nume - NS2" +msgstr "DNS secundar" =20 #: dhcp.c:189 msgid "Default lease time" -msgstr "Timpul pentru alocarea de baza" +msgstr "Timpul pentru alocarea implicit=C4=83" =20 #: dhcp.c:195 msgid "Max. lease time" @@ -117,47 +119,47 @@ msgstr "Nume Domeniu" =20 #: domainname.c:42 msgid "Enter Domain name" -msgstr "Introduceti Nume Domeniu" +msgstr "Introduce=C8=9Bi Nume Domeniu" =20 #: domainname.c:48 msgid "Domain name cannot be empty." -msgstr "Nume Domeniu nu poate fi gol" +msgstr "Nume Domeniu nu poate fi gol." =20 #: domainname.c:50 msgid "Domain name cannot contain spaces." -msgstr "Nume Domeniu nu poate contine spatii" +msgstr "Nume Domeniu nu poate con=C8=9Bine spa=C8=9Bii." =20 #: domainname.c:53 msgid "Domain name may only contain letters, numbers, hyphens and periods." -msgstr "Nume Domeniu poate contine doar litere, numere, cratime sau parantez= e" +msgstr "Nume Domeniu poate con=C8=9Bine doar litere, numere, cratime sau par= anteze." =20 #: hostname.c:46 main.c:69 msgid "Hostname" -msgstr "Nume Gazda - HOST" +msgstr "Nume Gazd=C4=83 - HOST" =20 #: hostname.c:46 msgid "Enter the machine's hostname." -msgstr "Introduceti Nume Gazda - HOST" +msgstr "Introduce=C8=9Bi Nume Gazd=C4=83 - HOST." =20 #: hostname.c:53 msgid "Hostname cannot be empty." -msgstr "Nume Gazda - HOST - nu poate fi gol" +msgstr "Nume Gazd=C4=83 - HOST - nu poate fi gol." =20 #: hostname.c:55 msgid "Hostname cannot contain spaces." -msgstr "Nume Gazda - HOST - nu poate contine spatii" +msgstr "Nume Gazd=C4=83 - HOST - nu poate con=C8=9Bine spa=C8=9Bii." =20 #: hostname.c:58 msgid "Hostname may only contain letters, numbers and hyphens." -msgstr "Nume Gazda - HOST - poate contine doar litere, numere si cratime" +msgstr "Nume Gazd=C4=83 - HOST - poate con=C8=9Bine doar litere, numere =C8= =99i cratime" =20 #: keymap.c:84 main.c:67 msgid "Keyboard mapping" -msgstr "Cartografiere Tastatura - tipul de tastatura" +msgstr "Cartografiere Tastatur=C4=83 - tipul de tastatur=C4=83" =20 #: keymap.c:85 msgid "Choose the type of keyboard you are using from the list below." -msgstr "Alegeti tipul de tastatura pe care o folositi din lista urmatoare" +msgstr "Alege=C8=9Bi tipul de tastatur=C4=83 pe care o folosi=C8=9Bi din lis= ta urm=C4=83toare" =20 #: main.c:68 timezone.c:77 msgid "Timezone" @@ -165,7 +167,7 @@ msgstr "Fus Orar" =20 #: main.c:71 networking.c:110 networking.c:115 networking.c:447 msgid "Networking" -msgstr "Retea" +msgstr "Re=C8=9Bea" =20 #: main.c:72 misc.c:147 msgid "ISDN" @@ -181,33 +183,33 @@ msgstr "Parola pentru utilizator 'admin'" =20 #: main.c:90 msgid " / between elements | selects" -msgstr "/ pentru comutare intre elemente | selecteaza" +msgstr "/ pentru comutare =C3=AEntre elemente | select= eaz=C4=83" =20 #: main.c:97 msgid "Section menu" -msgstr "Meniu Sectiuni" +msgstr "Meniu Sec=C8=9Biuni" =20 #: main.c:98 msgid "Select the item you wish to configure." -msgstr "Selectati articolul pe care doriti sa-l configurati" +msgstr "Selecta=C8=9Bi articolul pe care dori=C8=9Bi s=C4=83-l configura=C8= =9Bi" =20 #: main.c:99 msgid "Quit" -msgstr "Iesire" +msgstr "Ie=C8=99ire" =20 #: main.c:172 msgid "Setup is complete." -msgstr "Setup-ul s-a incheiat" +msgstr "Instalarea s-a =C3=AEncheiat." =20 #: main.c:174 netstuff.c:733 networking.c:560 networking.c:653 msgid "Warning" -msgstr "Atentie" +msgstr "Aten=C8=9Bie" =20 #: main.c:175 msgid "" "Initial setup was not entirely complete. You must ensure that Setup is " "properly finished by running setup again at the shell." -msgstr "Setup-ul initial nu s-a finalizat. Trebuie sa va asigurati ca Setup-= ul s-a incheiat corect ruland din nou operatiunea din shell." +msgstr "Instalarea ini=C8=9Bial=C4=83 nu este complet finalizat=C4=83. Trebu= ie s=C4=83 te asiguri c=C4=83 s-a incheiat corect rul=C3=A2nd din nou opera= =C8=9Biunea din linia de comand=C4=83." =20 #: misc.c:62 #, c-format @@ -216,223 +218,223 @@ msgstr "%s/main/hostname.conf nu a putut fi scris" =20 #: misc.c:71 msgid "Unable to open main hosts file." -msgstr "fisierul principal de hosts nu a putut fi deschis" +msgstr "Nu se poate deschide fi=C8=99ierul gazde (hosts)." =20 #: misc.c:76 msgid "Unable to write /etc/hosts." -msgstr "" +msgstr "Nu s-a putut scrie fisierul /etc/hosts." =20 #: misc.c:117 msgid "Unable to write /etc/hosts.deny." -msgstr "" +msgstr "Nu s-a putut scrie fisierul /etc/hosts.deny." =20 #: misc.c:125 msgid "Unable to write /etc/hosts.allow." -msgstr "" +msgstr "Nu s-a putut scrie fisierul /etc/host.allow." =20 #: misc.c:136 msgid "Unable to set hostname." -msgstr "" +msgstr "Nu s-a putut seta numele de host." =20 #: misc.c:147 msgid "Scanning and configuring ISDN devices." -msgstr "" +msgstr "Se scaneaz=C4=83 =C8=99i se configureaz=C4=83 echipamentele ISDN." =20 #: misc.c:148 msgid "Unable to scan for ISDN devices." -msgstr "" +msgstr "Nu s-au putut scana echipametele ISDN." =20 #: netstuff.c:86 #, c-format msgid "Interface - %s" -msgstr "" +msgstr "Interfa=C8=9B=C4=83 - %s" =20 #: netstuff.c:91 #, c-format msgid "Enter the IP address information for the %s interface." -msgstr "" +msgstr "Introdu adresa IP pentru interfa=C8=9Ba %s" =20 #: netstuff.c:103 msgid "Static" -msgstr "" +msgstr "Static" =20 #: netstuff.c:104 msgid "DHCP" -msgstr "" +msgstr "DHCP" =20 #: netstuff.c:105 msgid "PPP DIALUP (PPPoE, modem, ATM ...)" -msgstr "" +msgstr "PPP DIALUP (PPPoE, modem, ATM ...)" =20 #: netstuff.c:113 msgid "DHCP Hostname:" -msgstr "" +msgstr "Nume gazd=C4=83 DHCP" =20 #: netstuff.c:115 msgid "Force DHCP MTU:" -msgstr "" +msgstr "Forteaza DHCP MTU" =20 #: netstuff.c:134 msgid "IP address:" -msgstr "" +msgstr "Adres=C4=83 IP:" =20 #: netstuff.c:146 msgid "Network mask:" -msgstr "" +msgstr "Masc=C4=83 de re=C8=9Bea:" =20 #: netstuff.c:173 networking.c:749 msgid "The following fields are invalid:" -msgstr "" +msgstr "C=C3=A2mpurile urm=C4=83toare sunt incorecte:" =20 #: netstuff.c:183 msgid "IP address" -msgstr "" +msgstr "Adres=C4=83 IP:" =20 #: netstuff.c:189 msgid "Network mask" -msgstr "" +msgstr "Masc=C4=83 de re=C8=9Bea" =20 #: netstuff.c:198 msgid "DHCP hostname" -msgstr "" +msgstr "Nume gazd=C4=83 DHCP" =20 #: netstuff.c:396 netstuff.c:709 msgid "Unset" -msgstr "" +msgstr "Eliminare" =20 #: netstuff.c:669 #, c-format msgid "Please choose a networkcard for the following interface - %s." -msgstr "" +msgstr "Alege o placa de retea pentru interfata - %s." =20 #: netstuff.c:672 msgid "Extended Network Menu" -msgstr "" +msgstr "Meniu Retea Avansat" =20 #: netstuff.c:673 networking.c:520 msgid "Select" -msgstr "" +msgstr "Selectare" =20 #: netstuff.c:673 msgid "Identify" -msgstr "" +msgstr "Indentificare" =20 #: netstuff.c:678 msgid "Device Identification" -msgstr "" +msgstr "Identificare echipament" =20 #: netstuff.c:678 msgid "The lights on the selected port should flash now for 10 seconds..." -msgstr "" +msgstr "Luminile portului selectat ar trebui sa se aprinda intermitent pentr= u 10 secunde..." =20 #: netstuff.c:679 msgid "Identification is not supported by this interface." -msgstr "" +msgstr "Identificarea nu este suportata de catre aceasta interfata." =20 #: netstuff.c:691 msgid "There are no unassigned interfaces on your system." -msgstr "" +msgstr "Nu exista interfete disponibile in acest sistem." =20 #: netstuff.c:732 #, c-format msgid "Do you really want to remove the assigned %s interface?" -msgstr "" +msgstr "Esti sigur ca vrei sa elimini interfata %s alocata?" =20 #: netstuff.c:755 msgid "Select network driver" -msgstr "" +msgstr "Selectare driver retea" =20 #: netstuff.c:755 msgid "Set additional module parameters" -msgstr "" +msgstr "Setare parametrii aditionali modul" =20 #: netstuff.c:762 msgid "Loading module..." -msgstr "" +msgstr "Incarcare modul..." =20 #: netstuff.c:777 msgid "Unable to load driver module." -msgstr "" +msgstr "Nu se poate incarca modulul." =20 #: netstuff.c:780 msgid "Module name cannot be blank." -msgstr "" +msgstr "Numele modulului nu poate fi gol." =20 #: networking.c:110 msgid "Stopping network..." -msgstr "" +msgstr "Oprire retea..." =20 #: networking.c:115 msgid "Restarting network..." -msgstr "" +msgstr "Repornire retea...." =20 #: networking.c:146 msgid "No GREEN interface assigned." -msgstr "" +msgstr "Nu s-a alocat o interfata GREEN." =20 #: networking.c:152 msgid "Missing an IP address on GREEN." -msgstr "" +msgstr "Lipseste o adresa IP pentru GREEN." =20 #: networking.c:163 msgid "Error" -msgstr "" +msgstr "Eroare" =20 #: networking.c:163 msgid "Ignore" -msgstr "" +msgstr "Ignora" =20 #: networking.c:164 msgid "No RED interface assigned." -msgstr "" +msgstr "Nu s-a alocat o interfata RED." =20 #: networking.c:173 msgid "Missing an IP address on RED." -msgstr "" +msgstr "Lipseste o adresa IP pentru RED." =20 #: networking.c:183 msgid "No ORANGE interface assigned." -msgstr "" +msgstr "Nu s-a alocat o interfata ORANGE." =20 #: networking.c:189 msgid "Missing an IP address on ORANGE." -msgstr "" +msgstr "Lipseste o adresa IP pentru ORANGE." =20 #: networking.c:199 msgid "No BLUE interface assigned." -msgstr "" +msgstr "Nu s-a alocat o interfata BLUE." =20 #: networking.c:205 msgid "Missing an IP address on BLUE." -msgstr "" +msgstr "Lipseste o adresa IP pentru BLUE." =20 #: networking.c:217 msgid "Misssing DNS." -msgstr "" +msgstr "Lipseste DNS" =20 #: networking.c:224 msgid "Missing Default Gateway." -msgstr "" +msgstr "Lipseste gateway implicit." =20 #: networking.c:237 networking.c:304 msgid "Network configuration type" -msgstr "" +msgstr "Tip retea" =20 #: networking.c:238 networking.c:409 msgid "Drivers and card assignments" -msgstr "" +msgstr "Alocare drivere si placi de retea" =20 #: networking.c:239 networking.c:640 msgid "Address settings" -msgstr "" +msgstr "Setari adresa" =20 #: networking.c:240 networking.c:743 msgid "DNS and Gateway settings" -msgstr "" +msgstr "Setari DNS si gateway" =20 #: networking.c:260 msgid "When configuration is complete, a network restart will be required." -msgstr "" +msgstr "Cand configurarea va fi finalizata, o restartare a retelei va fi nec= esara." =20 #: networking.c:267 #, c-format @@ -440,15 +442,15 @@ msgid "" "Current config: %s\n" "\n" "%s" -msgstr "" +msgstr "Configurare curenta: %s\n\n%s" =20 #: networking.c:268 msgid "Network configuration menu" -msgstr "" +msgstr "Meniu configurare retea" =20 #: networking.c:269 networking.c:520 networking.c:642 msgid "Done" -msgstr "" +msgstr "Terminat" =20 #: networking.c:300 #, c-format @@ -457,7 +459,7 @@ msgid "" "list those interfaces which have ethernet attached. If you change this " "setting, a network restart will be required, and you will have to " "reconfigure the network driver assignments." -msgstr "" +msgstr "Selectati configuratia de retea pentru %s. Urmatoarele tipuri de con= figuratie enumera interfetele care au atasate Ethernet. Daca modificati aceas= ta setare, o repornire de retea va fi necesara si va trebui sa reconfigurati = alocarile driverului de retea ." =20 #: networking.c:307 #, c-format @@ -465,35 +467,35 @@ msgid "" "Not enough netcards for your choice.\n" "\n" "Needed: %d - Available: %d\n" -msgstr "" +msgstr "Nu exista destule placi de retea pentru optiunea aleasa.\n\nNecesare= : %d - Disponibile: %d\n" =20 #: networking.c:359 msgid "" "Configure network drivers, and which interface each card is assigned to. Th= e current configuration is as follows:\n" "\n" -msgstr "" +msgstr "Configureaza driverele de retea si care interfata este alocata fieca= rei placi de retea. Configuratia actuala este:\n\n" =20 #: networking.c:408 msgid "Do you wish to change these settings?" -msgstr "" +msgstr "Vrei sa schimbi aceste setari?" =20 #: networking.c:447 msgid "Restarting non-local network..." -msgstr "" +msgstr "Restare retea la distanta..." =20 #: networking.c:464 msgid "" "Please choose the interface you wish to change.\n" "\n" -msgstr "" +msgstr "Selecteaza ce interfata doresti sa modifici.\n\n" =20 #: networking.c:519 msgid "Assigned Cards" -msgstr "" +msgstr "Placi de retea alocate" =20 #: networking.c:520 msgid "Remove" -msgstr "" +msgstr "Elimina" =20 #: networking.c:556 networking.c:649 #, c-format @@ -502,84 +504,84 @@ msgid "" "connection to the %s machine will be broken, and you will have to reconnect= " "on the new IP. This is a risky operation, and should only be attempted if " "you have physical access to the machine, should something go wrong." -msgstr "" +msgstr "Daca modifici aceasta adresa IP si esti conectat la distanta, conexi= unea la %s va fi intrerupta si va trebui sa te reconectezi la noul IP. Aceast= a este o operatie riscanta si ar trebui sa fie efectuata doar daca ai acces f= izic la echipament, pentru situatia in care ceva merge prost ." =20 #: networking.c:641 msgid "Select the interface you wish to reconfigure." -msgstr "" +msgstr "Selecteaza interfata pe care doresti sa o reconfigurezi." =20 #: networking.c:729 msgid "Default gateway:" -msgstr "" +msgstr "Gateway implicit:" =20 #: networking.c:744 msgid "" "Enter the DNS and gateway information. These settings are used only with " "Static IP (and DHCP if DNS set) on the RED interface." -msgstr "" +msgstr "Introdu informatiile necesare pentru DNS si gateway. Aceste setari s= unt folosite doar pentru IP Static (si DHCP daca DNS este setat) pe interfata= RED." =20 #: networking.c:773 msgid "Default gateway" -msgstr "" +msgstr "Gateway implicit" =20 #: networking.c:780 msgid "Secondary DNS specified without a Primary DNS" -msgstr "" +msgstr "DNS secundar specificat fara un DNS primar" =20 #: passwords.c:33 msgid "" "Enter the 'root' user password. Login as this user for commandline access." -msgstr "" +msgstr "Introdu parola pentru utilizatorul 'root'. Autentifica-te cu acest u= tilizator pentru access la linia de comanda." =20 #: passwords.c:38 passwords.c:61 msgid "Setting password" -msgstr "" +msgstr "Se seteaza parola" =20 #: passwords.c:38 msgid "Setting 'root' password...." -msgstr "" +msgstr "Se seteaza parola pentru 'root'." =20 #: passwords.c:39 msgid "Problem setting 'root' password." -msgstr "" +msgstr "Nu s-a putut seta parola pentru 'root'." =20 #: passwords.c:53 #, c-format msgid "" "Enter %s 'admin' user password. This is the user to use for logging into th= e" " %s web administration pages." -msgstr "" +msgstr "Introdu parola pentru utilizatorul %s 'admin'. Foloseste acest utlli= zator pentru autentificarea la %s prin web." =20 #: passwords.c:60 #, c-format msgid "Setting %s 'admin' user password..." -msgstr "" +msgstr "Se seteaza parola pentru %s 'admin'..." =20 #: passwords.c:62 #, c-format msgid "Problem setting %s 'admin' user password." -msgstr "" +msgstr "Nu s-a putut seta parola pentru %s 'admin'." =20 #: passwords.c:76 msgid "Password:" -msgstr "" +msgstr "Parola:" =20 #: passwords.c:77 msgid "Again:" -msgstr "" +msgstr "Verificare parola:" =20 #: passwords.c:95 msgid "Password cannot be blank." -msgstr "" +msgstr "Parola nu poate fi goala." =20 #: passwords.c:102 msgid "Passwords do not match." -msgstr "" +msgstr "Parolele nu corespund" =20 #: passwords.c:109 msgid "Password cannot contain spaces." -msgstr "" +msgstr "Parola nu poate contine spatii." =20 #: timezone.c:77 msgid "Choose the timezone you are in from the list below." -msgstr "" +msgstr "Alege fusul orar din lista de mai jos." diff --git a/src/setup/po/ru.po b/src/setup/po/ru.po index fc20907..5409a31 100644 --- a/src/setup/po/ru.po +++ b/src/setup/po/ru.po @@ -3,8 +3,9 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: +# Alexander Savchenko, 2016 # Andrei Skipin , 2014 -# ellviss , 2015 +# ellviss , 2015-2016 # bubnov_pi , 2014 # Tim , 2015 msgid "" @@ -12,8 +13,8 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2015-04-25 04:53+0000\n" -"Last-Translator: Tim \n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" +"Last-Translator: ellviss \n" "Language-Team: Russian (http://www.transifex.com/mstremer/ipfire/language/r= u/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" @@ -23,11 +24,11 @@ msgstr "" =20 #: dhcp.c:50 msgid "Start address:" -msgstr "=D0=9F=D0=B5=D1=80=D0=B2=D1=8B=D0=B9 =D0=B0=D0=B4=D1=80=D0=B5=D1=81:" +msgstr "=D0=9D=D0=B0=D1=87=D0=B0=D0=BB=D1=8C=D0=BD=D1=8B=D0=B9 =D0=B0=D0=B4= =D1=80=D0=B5=D1=81:" =20 #: dhcp.c:51 msgid "End address:" -msgstr "=D0=9F=D0=BE=D1=81=D0=BB=D0=B5=D0=B4=D0=BD=D0=B8=D0=B9 =D0=B0=D0=B4= =D1=80=D0=B5=D1=81:" +msgstr "=D0=9A=D0=BE=D0=BD=D0=B5=D1=87=D0=BD=D1=8B=D0=B9 =D0=B0=D0=B4=D1=80= =D0=B5=D1=81:" =20 #: dhcp.c:52 networking.c:717 msgid "Primary DNS:" @@ -188,7 +189,7 @@ msgstr "/ =D0=BF=D0=B5=D1=80=D0=B5=D1=85=D0= =BE=D0=B4 =D0=BC=D0=B5=D0=B6=D0=B4=D1=83 =D1=8D=D0=BB=D0=B5=D0=BC=D0=B5=D0=BD= =D1=82=D0=B0=D0=BC=D0=B8 | <=D0=9F =20 #: main.c:97 msgid "Section menu" -msgstr "" +msgstr "=D0=9C=D0=B5=D0=BD=D1=8E =D0=B2=D1=8B=D0=B1=D0=BE=D1=80=D0=B0" =20 #: main.c:98 msgid "Select the item you wish to configure." @@ -210,7 +211,7 @@ msgstr "=D0=9F=D1=80=D0=B5=D0=B4=D1=83=D0=BF=D1=80=D0=B5= =D0=B6=D0=B4=D0=B5=D0=BD=D0=B8=D0=B5" msgid "" "Initial setup was not entirely complete. You must ensure that Setup is " "properly finished by running setup again at the shell." -msgstr "" +msgstr "=D0=9D=D0=B0=D1=87=D0=B0=D0=BB=D1=8C=D0=BD=D0=B0=D1=8F =D1=83=D1=81= =D1=82=D1=80=D0=B0=D0=BD=D0=BE=D0=B2=D0=BA=D0=B0 =D0=BD=D0=B5 =D0=B7=D0=B0=D0= =B2=D0=B5=D1=80=D1=88=D0=B5=D0=BD=D0=B0. =D0=92=D1=8B =D0=B4=D0=BE=D0=B6=D0= =BD=D1=8B =D1=83=D0=B1=D0=B5=D0=B4=D0=B8=D1=82=D1=8C=D1=81=D1=8F =D1=87=D1=82= =D0=BE =D1=83=D1=81=D1=82=D0=B0=D0=BD=D0=BE=D0=B2=D0=BA=D0=B0 =D0=B7=D0=B0=D0= =BA=D0=BE=D0=BD=D1=87=D0=B8=D0=BB=D0=B0=D1=81=D1=8C =D0=BF=D1=80=D0=B5=D0=B6= =D0=B4=D0=B5 =D1=87=D0=B5=D0=BC =D0=B7=D0=B0=D0=BF=D1=83=D1=81=D0=BA=D0=B0=D1= =82=D1=8C =D0=B5=D1=91 =D1=81=D0=BD=D0=BE=D0=B2=D0=B0 =D0=B8=D0=B7 =D0=BA=D0= =BE=D0=BD=D1=81=D0=BE=D0=BB=D0=B8." =20 #: misc.c:62 #, c-format @@ -306,7 +307,7 @@ msgstr "=D0=9D=D0=B5 =D1=83=D1=81=D1=82=D0=B0=D0=BD=D0=BE= =D0=B2=D0=BB=D0=B5=D0=BD=D0=BE" #: netstuff.c:669 #, c-format msgid "Please choose a networkcard for the following interface - %s." -msgstr "" +msgstr "=D0=9F=D0=BE=D0=B6=D0=B0=D0=BB=D1=83=D0=B9=D1=81=D1=82=D0=B0, =D0=B2= =D1=8B=D0=B1=D0=B5=D1=80=D0=B5=D1=82=D0=B5 =D1=81=D0=B5=D1=82=D0=B5=D0=B2=D1= =83=D1=8E =D0=BA=D0=B0=D1=80=D1=82=D1=83 =D0=B4=D0=BB=D1=8F =D1=81=D0=BB=D0= =B5=D0=B4=D1=83=D1=8E=D1=89=D0=B5=D0=B3=D0=BE =D0=B8=D0=BD=D1=82=D0=B5=D1=80= =D1=84=D0=B5=D0=B9=D1=81=D0=B0 - %s." =20 #: netstuff.c:672 msgid "Extended Network Menu" @@ -326,15 +327,15 @@ msgstr "=D0=9E=D0=BF=D1=80=D0=B5=D0=B4=D0=B5=D0=BB=D0= =B5=D0=BD=D0=B8=D0=B5 =D1=83=D1=81=D1=82=D1=80=D0=BE=D0=B9=D1=81=D1=82=D0=B2= =D0=B0" =20 #: netstuff.c:678 msgid "The lights on the selected port should flash now for 10 seconds..." -msgstr "" +msgstr "=D0=9B=D0=B0=D0=BC=D0=BF=D0=BE=D1=87=D0=BA=D0=B0 =D0=BD=D0=B0 =D0=B2= =D1=8B=D0=B1=D1=80=D0=B0=D0=BD=D0=BD=D0=BE=D0=BC =D0=BF=D0=BE=D1=80=D1=82=D1= =83 =D0=B1=D1=83=D0=B4=D0=B5=D1=82 =D1=81=D0=B2=D0=B5=D1=82=D0=B8=D1=82=D1=8C= =D0=BD=D0=B0 =D0=BF=D1=80=D0=BE=D1=82=D1=8F=D0=B6=D0=B5=D0=BD=D0=B8=D0=B8 10= =D1=81=D0=B5=D0=BA=D0=BA=D1=83=D0=BD=D0=B4..." =20 #: netstuff.c:679 msgid "Identification is not supported by this interface." -msgstr "" +msgstr "=D0=98=D0=B4=D0=B5=D0=BD=D1=82=D0=B8=D1=84=D0=B8=D0=BA=D0=B0=D1=86= =D0=B8=D1=8F =D0=BD=D0=B5 =D0=B4=D0=BE=D1=81=D1=82=D1=83=D0=BF=D0=BD=D0=B0 = =D0=BD=D0=B0 =D0=B4=D0=B0=D0=BD=D0=BD=D0=BE=D0=BC =D0=B8=D0=BD=D1=82=D0=B5=D1= =80=D1=84=D0=B5=D0=B9=D1=81=D0=B5" =20 #: netstuff.c:691 msgid "There are no unassigned interfaces on your system." -msgstr "" +msgstr "=D0=9D=D0=B5 =D0=BE=D1=81=D1=82=D0=B0=D0=BB=D0=BE=D1=81=D1=8C =D0=BD= =D0=B5=D0=BD=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B5=D0=BD=D0=BD=D1=8B=D1=85 =D0= =B8=D0=BD=D1=82=D0=B5=D1=80=D1=84=D0=B5=D0=B9=D1=81=D0=BE=D0=B2 =D0=B2 =D0=B2= =D0=B0=D1=88=D0=B5=D0=B9 =D1=81=D0=B8=D1=81=D1=82=D0=B5=D0=BC=D0=B5." =20 #: netstuff.c:732 #, c-format @@ -375,7 +376,7 @@ msgstr "=D0=9D=D0=B5 =D0=BD=D0=B0=D0=B7=D0=BD=D0=B0=D1=87= =D0=B5=D0=BD =D0=97=D0=95=D0=9B=D0=81=D0=9D=D0=AB=D0=99 =D0=B8=D0=BD=D1=82=D0= =B5=D1=80=D1=84=D0=B5=D0=B9=D1=81." =20 #: networking.c:152 msgid "Missing an IP address on GREEN." -msgstr "" +msgstr "=D0=9D=D0=B5 =D0=BD=D0=B0=D0=B7=D0=BD=D0=B0=D1=87=D0=B5=D0=BD =D0=B0= =D0=B4=D1=80=D0=B5=D1=81 =D0=BD=D0=B0 GREEN =D0=B8=D0=BD=D1=82=D0=B5=D1=80=D1= =84=D0=B5=D0=B9=D1=81=D0=B5" =20 #: networking.c:163 msgid "Error" @@ -391,7 +392,7 @@ msgstr "=D0=9D=D0=B5 =D1=83=D0=BA=D0=B0=D0=B7=D0=B0=D0=BD= =D0=9A=D0=A0=D0=90=D0=A1=D0=9D=D0=AB=D0=99 =D0=B8=D0=BD=D1=82=D0=B5=D1=80=D1= =84=D0=B5=D0=B9=D1=81." =20 #: networking.c:173 msgid "Missing an IP address on RED." -msgstr "" +msgstr "=D0=9D=D0=B5 =D0=BD=D0=B0=D0=B7=D0=BD=D0=B0=D1=87=D0=B5=D0=BD =D0=B0= =D0=B4=D1=80=D0=B5=D1=81 =D0=BD=D0=B0 RED =D0=B8=D0=BD=D1=82=D0=B5=D1=80=D1= =84=D0=B5=D0=B9=D1=81=D0=B5" =20 #: networking.c:183 msgid "No ORANGE interface assigned." @@ -399,7 +400,7 @@ msgstr "=D0=9D=D0=B5 =D1=83=D0=BA=D0=B0=D0=B7=D0=B0=D0=BD= =D0=9E=D0=A0=D0=90=D0=9D=D0=96=D0=95=D0=92=D0=AB=D0=99 =D0=B8=D0=BD=D1=82=D0= =B5=D1=80=D1=84=D0=B5=D0=B9=D1=81." =20 #: networking.c:189 msgid "Missing an IP address on ORANGE." -msgstr "" +msgstr "=D0=9D=D0=B5 =D0=BD=D0=B0=D0=B7=D0=BD=D0=B0=D1=87=D0=B5=D0=BD =D0=B0= =D0=B4=D1=80=D0=B5=D1=81 =D0=BD=D0=B0 ORANGE =D0=B8=D0=BD=D1=82=D0=B5=D1=80= =D1=84=D0=B5=D0=B9=D1=81=D0=B5" =20 #: networking.c:199 msgid "No BLUE interface assigned." @@ -407,7 +408,7 @@ msgstr "=D0=9D=D0=B5 =D1=83=D0=BA=D0=B0=D0=B7=D0=B0=D0=BD= =D0=A1=D0=98=D0=9D=D0=98=D0=99 =D0=B8=D0=BD=D1=82=D0=B5=D1=80=D1=84=D0=B5=D0= =B9=D1=81." =20 #: networking.c:205 msgid "Missing an IP address on BLUE." -msgstr "" +msgstr "=D0=9D=D0=B5 =D0=BD=D0=B0=D0=B7=D0=BD=D0=B0=D1=87=D0=B5=D0=BD =D0=B0= =D0=B4=D1=80=D0=B5=D1=81 =D0=BD=D0=B0 BLUE =D0=B8=D0=BD=D1=82=D0=B5=D1=80=D1= =84=D0=B5=D0=B9=D1=81=D0=B5" =20 #: networking.c:217 msgid "Misssing DNS." @@ -443,7 +444,7 @@ msgid "" "Current config: %s\n" "\n" "%s" -msgstr "" +msgstr "=D0=A2=D0=B5=D0=BA=D1=83=D1=89=D0=B0=D1=8F =D0=9A=D0=BE=D0=BD=D1=84= =D0=B8=D0=B3=D1=83=D1=80=D0=B0=D1=86=D0=B8=D1=8F: %s\n\n%s" =20 #: networking.c:268 msgid "Network configuration menu" @@ -460,7 +461,7 @@ msgid "" "list those interfaces which have ethernet attached. If you change this " "setting, a network restart will be required, and you will have to " "reconfigure the network driver assignments." -msgstr "" +msgstr "=D0=92=D1=8B=D0=B1=D0=B5=D1=80=D0=B5=D1=82=D0=B5 =D1=81=D0=B5=D1=82= =D1=8C =D0=B4=D0=BB=D1=8F =D0=BA=D0=BE=D0=BD=D1=84=D0=B8=D1=80=D1=83=D0=B3=D0= =B0=D1=86=D0=B8=D0=B8 =D0=B4=D0=BB=D1=8F %s. =D0=94=D0=B0=D0=BD=D0=BD=D1=8B= =D0=B9 =D1=81=D0=BF=D0=B8=D1=81=D0=BE=D0=BA =D1=82=D0=B8=D0=BF=D0=BE=D0=B2 = =D0=BF=D0=BE=D0=B4=D0=BA=D0=BB=D1=8E=D1=87=D0=B5=D0=BD=D0=B8=D1=8F =D0=BF=D1= =80=D0=B5=D0=B4=D0=BD=D0=B0=D0=B7=D0=BD=D0=B0=D1=87=D0=B5=D0=BD =D0=B4=D0=BB= =D1=8F ethernet. =D0=95=D1=81=D0=BB=D0=B8 =D0=B2=D1=8B =D0=B8=D0=B7=D0=BC=D0= =B5=D0=BD=D0=B8=D1=82=D0=B5 =D0=BD=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B9=D0=BA= =D0=B8 , =D1=82=D0=BE =D1=81=D0=B5=D1=82=D1=8C =D0=B1=D1=83=D0=B4=D0=B5=D1=82= =D1=82=D1=80=D0=B5=D0=B1=D0=BE=D0=B2=D0=B0=D1=82=D1=8C =D0=BF=D0=B5=D1=80=D0= =B5=D0=B7=D0=B0=D0=B3=D1=80=D1=83=D0=B7=D0=BA=D0=B8, =D0=B8 =D0=B2=D0=B0=D0= =BC =D0=BD=D0=B0=D0=B4=D0=BE =D0=B1=D1=83=D0=B4=D0=B5=D1=82 =D0=BF=D0=B5=D1= =80=D0=B5=D0=BA=D0=BE=D0=BD=D1=84=D0=B8=D0=B3=D1=83=D1=80=D0=B8=D1=80=D0=BE= =D0=B2=D0=B0=D1=82=D1=8C =D0=B2 =D1=81=D0=BE=D0=BE=D1=82=D0=B2=D0=B5=D1=82=D1= =81=D0=B2=D0=B8=D0=B8 =D1=81 =D1=81=D0=B5=D1=82=D0=B5=D0=B2=D1=8B=D0=BC=D0=B8= =D0=BD=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B9=D0=BA=D0=B0=D0=BC=D0=B8." =20 #: networking.c:307 #, c-format @@ -468,13 +469,13 @@ msgid "" "Not enough netcards for your choice.\n" "\n" "Needed: %d - Available: %d\n" -msgstr "" +msgstr "=D0=9D=D0=B5=D1=82 =D0=B1=D0=BE=D0=BB=D0=B5=D0=B5 =D0=B4=D0=BE=D1=81= =D1=82=D1=83=D0=BF=D0=BD=D1=8B=D1=85 =D1=81=D0=B5=D1=82=D0=B5=D0=B2=D1=8B=D1= =85 =D0=BA=D0=B0=D1=80=D1=82.\n\n=D0=9D=D0=B5=D0=BE=D0=B1=D1=85=D0=BE=D0=B4= =D0=B8=D0=BC=D0=BE: %d - =D0=94=D0=BE=D1=81=D1=82=D1=83=D0=BF=D0=BD=D0=BE: %d= \n" =20 #: networking.c:359 msgid "" "Configure network drivers, and which interface each card is assigned to. Th= e current configuration is as follows:\n" "\n" -msgstr "" +msgstr "=D0=A1=D0=BA=D0=BE=D0=BD=D1=84=D0=B8=D0=B3=D1=83=D1=80=D0=B8=D1=80= =D1=83=D0=B9=D1=82=D0=B5 =D1=81=D0=B5=D1=82=D0=B5=D0=B2=D1=8B=D0=B5 =D0=BF=D0= =BB=D0=B0=D1=82=D1=8B, =D0=B8 =D0=BA=D0=B0=D0=BA=D0=BE=D0=B9 =D0=B8=D0=BD=D1= =82=D0=B5=D1=80=D1=84=D0=B5=D1=81 =D1=81=D0=BE=D0=BF=D0=BE=D1=81=D1=82=D0=B0= =D0=B2=D0=BB=D0=B5=D0=BD =D0=BA =D0=BA=D0=BE=D0=BD=D0=BA=D1=80=D1=83=D1=82=D0= =BD=D0=BE=D0=BC=D1=83 =D0=B0=D0=B4=D0=B0=D0=BF=D1=82=D0=B5=D1=80=D1=83. =D0= =A2=D0=B5=D0=BA=D1=83=D1=89=D0=B0=D1=8F =D0=BA=D0=BE=D0=BD=D1=84=D0=B8=D0=B3= =D1=83=D1=80=D0=B0=D1=86=D0=B8=D1=8F =D1=81=D0=BB=D0=B5=D0=B4=D1=83=D1=8E=D1= =89=D0=B0=D1=8F:\n\n" =20 #: networking.c:408 msgid "Do you wish to change these settings?" @@ -482,13 +483,13 @@ msgstr "=D0=92=D1=8B =D1=83=D0=B2=D0=B5=D1=80=D0=B5=D0= =BD=D1=8B =D1=87=D1=82=D0=BE =D1=85=D0=BE=D1=82=D0=B8=D1=82=D0=B5 =D0=B8=D0= =B7=D0=BC=D0=B5=D0=BD=D0=B8=D1=82=D1=8C =D1=8D=D1=82=D0=B8 =D0=BD=D0=B0=D1=81= =D1=82 =20 #: networking.c:447 msgid "Restarting non-local network..." -msgstr "" +msgstr "=D0=9F=D0=B5=D1=80=D0=B5=D0=B7=D0=B0=D0=BF=D1=83=D1=81=D0=BA =D0=B2= =D0=BD=D0=B5=D1=88=D0=BD=D0=B5=D0=B9 =D1=81=D0=B5=D1=82=D0=B8" =20 #: networking.c:464 msgid "" "Please choose the interface you wish to change.\n" "\n" -msgstr "" +msgstr "=D0=92=D1=8B=D0=B1=D0=B5=D1=80=D0=B5=D1=82=D0=B5 =D0=B8=D0=BD=D1=82= =D0=B5=D1=80=D1=84=D0=B5=D0=B9=D1=81 =D0=B4=D0=BB=D1=8F =D1=80=D0=B5=D0=BA=D0= =BE=D0=BD=D1=84=D0=B8=D0=B3=D1=83=D1=80=D0=B0=D1=86=D0=B8=D0=B8.\n" =20 #: networking.c:519 msgid "Assigned Cards" @@ -505,7 +506,7 @@ msgid "" "connection to the %s machine will be broken, and you will have to reconnect= " "on the new IP. This is a risky operation, and should only be attempted if " "you have physical access to the machine, should something go wrong." -msgstr "" +msgstr "=D0=95=D1=81=D0=BB=D0=B8 =D0=B2=D1=8B =D0=B8=D0=B7=D0=BC=D0=B5=D0=BD= =D0=B8=D1=82=D0=B5 =D0=B4=D0=B0=D0=BD=D0=BD=D1=8B=D0=B9 IP =D0=B0=D0=B4=D1=80= =D0=B5=D1=81=D1=81, =D0=B8 =D0=B2=D1=8B =D0=BF=D0=BE=D0=B4=D0=BA=D0=BB=D1=8E= =D1=87=D0=B5=D0=BD=D1=8B =D1=83=D0=B4=D0=B0=D0=BB=D1=91=D0=BD=D0=BD=D0=BE, = =D0=B2=D0=B0=D1=88=D0=B5 =D1=81=D0=BE=D0=B5=D0=B4=D0=B8=D0=BD=D0=B5=D0=BD=D0= =B8=D0=B5 =D1=81 %s =D0=BA=D0=BE=D0=BC=D0=BF=D1=8C=D1=8E=D1=82=D0=B5=D1=80= =D0=BE=D0=BC =D0=B1=D1=83=D0=B4=D0=B5=D1=82 =D1=80=D0=B0=D0=B7=D0=BE=D1=80=D0= =B2=D0=B0=D0=BD=D0=BE , =D0=B8 =D0=B2=D1=8B =D0=B4=D0=BE=D0=BB=D0=B6=D0=BD=D1= =8B =D0=BF=D0=BE=D0=B4=D0=BA=D0=BB=D1=8E=D1=87=D0=B8=D1=82=D1=81=D1=8C=D1=8F = =D0=BF=D0=BE =D0=BD=D0=BE=D0=B2=D0=BE=D0=BC=D1=83 =D0=B0=D0=B4=D1=80=D0=B5=D1= =81=D1=83 IP. =D0=AD=D1=82=D0=BE =D0=BD=D0=B5 =D0=B1=D0=B5=D0=B7=D0=BE=D0=BF= =D0=B0=D1=81=D0=BD=D0=B0=D1=8F =D0=BE=D0=BF=D0=B5=D1=80=D0=B0=D1=86=D0=B8=D1= =8F =D0=B8 =D0=B2=D1=8B=D0=B4=D0=BE=D0=BB=D0=B6=D0=BD=D1=8B =D0=B8=D0=BC=D0= =B5=D1=82=D1=8C =D0=B2=D0=BE=D0=B7=D0=BC=D0=BE=D0=BD=D0=B6=D0=BE=D1=81=D1=82= =D1=8C =D0=BF=D0=BE=D0=B4=D0=BA=D0=BB=D1=8E=D1=87=D0=B8=D1=82=D1=81=D1=8C=D1= =8F =D0=BA =D0=BC=D0=B0=D1=88=D0=B8=D0=BD=D0=B5 =D0=B2=D0=B8=D0=B7=D0=B8=D1= =87=D0=B5=D1=81=D0=BA=D0=B8 =D0=B5=D1=81=D0=BB=D0=B8 =D1=87=D1=82=D0=BE-=D1= =82=D0=BE =D0=BF=D0=BE=D0=B9=D0=B4=D0=B5=D1=82 =D0=BD=D0=B5 =D1=82=D0=B0=D0= =BA." =20 #: networking.c:641 msgid "Select the interface you wish to reconfigure." @@ -519,7 +520,7 @@ msgstr "=D0=A8=D0=BB=D1=8E=D0=B7 =D0=BF=D0=BE =D1=83=D0= =BC=D0=BE=D0=BB=D1=87=D0=B0=D0=BD=D0=B8=D1=8E:" msgid "" "Enter the DNS and gateway information. These settings are used only with " "Static IP (and DHCP if DNS set) on the RED interface." -msgstr "" +msgstr "=D0=92=D0=B2=D0=B5=D0=B4=D0=B8=D1=82=D0=B5 =D0=B0=D0=B4=D1=80=D0=B5= =D1=81=D0=B0 DNS =D0=B8 =D1=88=D0=BB=D1=8E=D0=B7=D0=B0. =D0=AD=D1=82=D0=B8 = =D0=BD=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B9=D0=BA=D0=B8 =D0=B1=D1=83=D0=B4=D1= =83=D1=82 =D0=BF=D1=80=D0=B8=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD=D1=8B =D1=82=D0=BE= =D0=BB=D1=8C=D0=BA=D0=BE =D0=B4=D0=BB=D1=8F Static IP(=D0=B8=D0=BB=D0=B8 DHCP= =D0=B5=D1=81=D0=BB=D0=B8 DNS =D0=BD=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B5=D0= =BD) =D0=BD=D0=B0 =D0=B8=D0=BD=D1=82=D0=B5=D1=80=D1=84=D0=B5=D0=B9=D1=81=D0= =B5 RED." =20 #: networking.c:773 msgid "Default gateway" @@ -527,12 +528,12 @@ msgstr "=D0=A8=D0=BB=D1=8E=D0=B7 =D0=BF=D0=BE =D1=83=D0= =BC=D0=BE=D0=BB=D1=87=D0=B0=D0=BD=D0=B8=D1=8E" =20 #: networking.c:780 msgid "Secondary DNS specified without a Primary DNS" -msgstr "" +msgstr "=D0=92=D1=82=D0=BE=D1=80=D0=B8=D1=87=D0=BD=D1=8B=D0=B9 DNS =D0=BD=D0= =B0=D0=B7=D0=BD=D0=B0=D1=87=D0=B5=D0=BD =D0=B1=D0=B5=D0=B7 =D0=BD=D0=B0=D0=B7= =D0=BD=D0=B0=D1=87=D0=B5=D0=BD=D0=B8=D1=8F =D0=BF=D0=B5=D1=80=D0=B2=D0=B8=D1= =87=D0=BD=D0=BE=D0=B3=D0=BE DNS" =20 #: passwords.c:33 msgid "" "Enter the 'root' user password. Login as this user for commandline access." -msgstr "" +msgstr "=D0=92=D0=B2=D0=B5=D0=B4=D0=B8=D1=82=D0=B5 =D0=BF=D0=B0=D1=80=D0=BE= =D0=BB=D1=8C =D0=B4=D0=BB=D1=8F =D0=BF=D0=BE=D0=BB=D1=8C=D0=B7=D0=BE=D0=B2=D0= =B0=D1=82=D0=B5=D0=BB=D1=8F 'root'. =D0=AD=D1=82=D0=BE=D1=82 =D0=BF=D0=BE=D0= =BB=D1=8C=D0=B7=D0=BE=D0=B2=D0=B0=D1=82=D0=B5=D0=BB=D1=8C =D0=B8=D1=81=D0=BF= =D0=BE=D0=BB=D1=8C=D0=B7=D1=83=D0=B5=D1=82=D1=81=D1=8F =D0=B4=D0=BB=D1=8F =D0= =B4=D0=BE=D1=81=D1=82=D1=83=D0=BF=D0=B0 =D0=BA =D0=BA=D0=BE=D0=BD=D1=81=D0=BE= =D0=BB=D0=B8." =20 #: passwords.c:38 passwords.c:61 msgid "Setting password" @@ -544,14 +545,14 @@ msgstr "=D0=A3=D1=81=D1=82=D0=B0=D0=BD=D0=BE=D0=B2=D0= =BA=D0=B0 'root' =D0=BF=D0=B0=D1=80=D0=BE=D0=BB=D1=8F..." =20 #: passwords.c:39 msgid "Problem setting 'root' password." -msgstr "" +msgstr "=D0=9F=D1=80=D0=BE=D0=B1=D0=BB=D0=B5=D0=BC=D0=B0 =D1=81 =D1=83=D0=BA= =D0=B0=D0=B7=D0=B0=D0=BD=D0=B8=D0=B5=D0=BC =D0=BF=D0=B0=D1=80=D0=BE=D0=BB=D1= =8F =D0=B4=D0=BB=D1=8F =D0=BF=D0=BE=D0=BB=D1=8C=D0=B7=D0=BE=D0=B2=D0=B0=D1= =82=D0=B5=D0=BB=D1=8F 'root'." =20 #: passwords.c:53 #, c-format msgid "" "Enter %s 'admin' user password. This is the user to use for logging into th= e" " %s web administration pages." -msgstr "" +msgstr "=D0=92=D0=B2=D0=B5=D0=B4=D0=B8=D1=82=D0=B5 =D0=BF=D0=B0=D1=80=D0=BE= =D0=BB=D1=8C =D0=B4=D0=BB=D1=8F =D0=BF=D0=BE=D0=BB=D1=8C=D0=B7=D0=BE=D0=B2=D0= =B0=D1=82=D0=B5=D0=BB=D1=8F %s 'admin'. =D0=AD=D1=82=D0=BE=D1=82 =D0=BF=D0=BE= =D0=BB=D1=8C=D0=B7=D0=BE=D0=B2=D0=B0=D1=82=D0=B5=D0=BB=D1=8C =D0=B8=D1=81=D0= =BF=D0=BE=D0=BB=D1=8C=D0=B7=D1=83=D0=B5=D1=82=D1=81=D1=8F =D0=B4=D0=BB=D1=8F = =D0=B0=D0=B4=D0=BC=D0=B8=D0=BD=D0=B8=D1=81=D1=82=D1=80=D0=B8=D1=80=D0=BE=D0= =B2=D0=B0=D0=BD=D0=B8=D1=8F =D1=87=D0=B5=D1=80=D0=B5=D0=B7 %s web." =20 #: passwords.c:60 #, c-format diff --git a/src/setup/po/rw.po b/src/setup/po/rw.po index 0bd98ee..7307735 100644 --- a/src/setup/po/rw.po +++ b/src/setup/po/rw.po @@ -10,7 +10,7 @@ msgstr "" "POT-Creation-Date: 2014-08-21 15:12+0000\n" "PO-Revision-Date: 2014-08-12 10:08+0000\n" "Last-Translator: FULL NAME \n" -"Language-Team: Kinyarwanda (http://www.transifex.com/projects/p/ipfire/lang= uage/rw/)\n" +"Language-Team: Kinyarwanda (http://www.transifex.com/mstremer/ipfire/langua= ge/rw/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/sk.po b/src/setup/po/sk.po index 8b5944e..555b033 100644 --- a/src/setup/po/sk.po +++ b/src/setup/po/sk.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-08-21 15:13+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Slovak (http://www.transifex.com/projects/p/ipfire/language/= sk/)\n" +"Language-Team: Slovak (http://www.transifex.com/mstremer/ipfire/language/sk= /)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/sq.po b/src/setup/po/sq.po index 9983002..0284399 100644 --- a/src/setup/po/sq.po +++ b/src/setup/po/sq.po @@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2015-06-22 10:58+0000\n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" "Last-Translator: Ardit Dani \n" "Language-Team: Albanian (http://www.transifex.com/mstremer/ipfire/language/= sq/)\n" "MIME-Version: 1.0\n" diff --git a/src/setup/po/sr.po b/src/setup/po/sr.po index 7c71314..fb3bf3d 100644 --- a/src/setup/po/sr.po +++ b/src/setup/po/sr.po @@ -10,7 +10,7 @@ msgstr "" "POT-Creation-Date: 2014-08-21 15:12+0000\n" "PO-Revision-Date: 2014-08-12 10:08+0000\n" "Last-Translator: FULL NAME \n" -"Language-Team: Serbian (http://www.transifex.com/projects/p/ipfire/language= /sr/)\n" +"Language-Team: Serbian (http://www.transifex.com/mstremer/ipfire/language/s= r/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/su.po b/src/setup/po/su.po index 1cab064..e2fed39 100644 --- a/src/setup/po/su.po +++ b/src/setup/po/su.po @@ -10,7 +10,7 @@ msgstr "" "POT-Creation-Date: 2014-08-21 15:12+0000\n" "PO-Revision-Date: 2014-08-12 10:08+0000\n" "Last-Translator: FULL NAME \n" -"Language-Team: Sundanese (http://www.transifex.com/projects/p/ipfire/langua= ge/su/)\n" +"Language-Team: Sundanese (http://www.transifex.com/mstremer/ipfire/language= /su/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/sv.po b/src/setup/po/sv.po index a2acfe3..1949c6f 100644 --- a/src/setup/po/sv.po +++ b/src/setup/po/sv.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. #=20 # Translators: +# Urban Berggren , 2016 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-08-21 15:13+0000\n" -"Last-Translator: Michael Tremer \n" -"Language-Team: Swedish (http://www.transifex.com/projects/p/ipfire/language= /sv/)\n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" +"Last-Translator: Urban Berggren \n" +"Language-Team: Swedish (http://www.transifex.com/mstremer/ipfire/language/s= v/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -19,31 +20,31 @@ msgstr "" =20 #: dhcp.c:50 msgid "Start address:" -msgstr "" +msgstr "Startadress" =20 #: dhcp.c:51 msgid "End address:" -msgstr "" +msgstr "Slutadress" =20 #: dhcp.c:52 networking.c:717 msgid "Primary DNS:" -msgstr "" +msgstr "Prim=C3=A4r DNS" =20 #: dhcp.c:53 networking.c:723 msgid "Secondary DNS:" -msgstr "" +msgstr "Sekund=C3=A4r DNS" =20 #: dhcp.c:54 msgid "Default lease (mins):" -msgstr "" +msgstr "Standard lease-tid (min):" =20 #: dhcp.c:55 msgid "Max lease (mins):" -msgstr "" +msgstr "Max lease-tid (min):" =20 #: dhcp.c:56 msgid "Domain name suffix:" -msgstr "" +msgstr "Dom=C3=A4nnamn:" =20 #: dhcp.c:86 dhcp.c:93 dhcp.c:101 domainname.c:34 hostname.c:37 keymap.c:70 #: misc.c:40 misc.c:52 netstuff.c:377 netstuff.c:566 netstuff.c:704 @@ -51,19 +52,19 @@ msgstr "" #: networking.c:442 networking.c:552 networking.c:603 networking.c:610 #: networking.c:713 timezone.c:63 msgid "Unable to open settings file" -msgstr "" +msgstr "Kan inte =C3=B6ppna konfigurationsfilen" =20 #: dhcp.c:111 msgid "DHCP server configuration" -msgstr "" +msgstr "DHCP server konfiguration" =20 #: dhcp.c:116 msgid "Configure the DHCP server by entering the settings information." -msgstr "" +msgstr "Konfigurera DHCP-servern genom att skriva in alla n=C3=B6dv=C3=A4ndi= ga inst=C3=A4llningar." =20 #: dhcp.c:125 msgid "Enabled" -msgstr "" +msgstr "Aktiverad" =20 #: dhcp.c:142 domainname.c:43 hostname.c:47 keymap.c:86 main.c:99 main.c:172 #: main.c:174 netstuff.c:157 netstuff.c:733 netstuff.c:756 networking.c:163 @@ -71,367 +72,367 @@ msgstr "" #: networking.c:642 networking.c:653 networking.c:746 passwords.c:89 #: timezone.c:78 msgid "OK" -msgstr "" +msgstr "OK" =20 #: dhcp.c:143 domainname.c:43 hostname.c:47 keymap.c:86 netstuff.c:158 #: netstuff.c:673 netstuff.c:733 netstuff.c:756 networking.c:305 #: networking.c:410 networking.c:560 networking.c:653 networking.c:746 #: passwords.c:89 timezone.c:78 msgid "Cancel" -msgstr "" +msgstr "Avbryt" =20 #: dhcp.c:156 msgid "" "The following fields are invalid:\n" "\n" -msgstr "" +msgstr "F=C3=B6ljande f=C3=A4lt =C3=A4r ogiltiga:\n\n" =20 #: dhcp.c:159 msgid "Start address" -msgstr "" +msgstr "Startadress" =20 #: dhcp.c:165 msgid "End address" -msgstr "" +msgstr "Slutadress" =20 #: dhcp.c:173 networking.c:755 msgid "Primary DNS" -msgstr "" +msgstr "Prim=C3=A4r DNS" =20 #: dhcp.c:182 networking.c:764 msgid "Secondary DNS" -msgstr "" +msgstr "Sekund=C3=A4r DNS" =20 #: dhcp.c:189 msgid "Default lease time" -msgstr "" +msgstr "Standard lease-tid" =20 #: dhcp.c:195 msgid "Max. lease time" -msgstr "" +msgstr "Max lease-tid" =20 #: domainname.c:42 main.c:70 msgid "Domain name" -msgstr "" +msgstr "Dom=C3=A4nnamn" =20 #: domainname.c:42 msgid "Enter Domain name" -msgstr "" +msgstr "Ange Dom=C3=A4nnamn" =20 #: domainname.c:48 msgid "Domain name cannot be empty." -msgstr "" +msgstr "Dom=C3=A4nnamnet kan inte vara tomt." =20 #: domainname.c:50 msgid "Domain name cannot contain spaces." -msgstr "" +msgstr "Dom=C3=A4nnamnet kan inte inneh=C3=A5lla mellanslag." =20 #: domainname.c:53 msgid "Domain name may only contain letters, numbers, hyphens and periods." -msgstr "" +msgstr "Dom=C3=A4nnamnet kan bara inneh=C3=A5lla bokst=C3=A4ver, siffror, bi= ndestreck och punkter." =20 #: hostname.c:46 main.c:69 msgid "Hostname" -msgstr "" +msgstr "V=C3=A4rdnamn" =20 #: hostname.c:46 msgid "Enter the machine's hostname." -msgstr "" +msgstr "Ange datorns v=C3=A4rdnamn." =20 #: hostname.c:53 msgid "Hostname cannot be empty." -msgstr "" +msgstr "V=C3=A4rdnamnet kan inte vara tomt." =20 #: hostname.c:55 msgid "Hostname cannot contain spaces." -msgstr "" +msgstr "V=C3=A4rdnamnet kan inte inneh=C3=A5lla mellanslag." =20 #: hostname.c:58 msgid "Hostname may only contain letters, numbers and hyphens." -msgstr "" +msgstr "V=C3=A4rdnamnet kan bara inneh=C3=A5lla bokst=C3=A4ver, siffror och = bindestreck." =20 #: keymap.c:84 main.c:67 msgid "Keyboard mapping" -msgstr "" +msgstr "Tangentbordslayout" =20 #: keymap.c:85 msgid "Choose the type of keyboard you are using from the list below." -msgstr "" +msgstr "V=C3=A4lj vilket typ av tangenbord du anv=C3=A4nder fr=C3=A5n listan= nedan." =20 #: main.c:68 timezone.c:77 msgid "Timezone" -msgstr "" +msgstr "Tidszon" =20 #: main.c:71 networking.c:110 networking.c:115 networking.c:447 msgid "Networking" -msgstr "" +msgstr "N=C3=A4tverk" =20 #: main.c:72 misc.c:147 msgid "ISDN" -msgstr "" +msgstr "ISDN" =20 #: main.c:73 msgid "'root' password" -msgstr "" +msgstr "'root* l=C3=B6senord" =20 #: main.c:74 msgid "'admin' password" -msgstr "" +msgstr "'admin' l=C3=B6senord" =20 #: main.c:90 msgid " / between elements | selects" -msgstr "" +msgstr "/ mellan menyer | v=C3=A4ljer" =20 #: main.c:97 msgid "Section menu" -msgstr "" +msgstr "Menyval" =20 #: main.c:98 msgid "Select the item you wish to configure." -msgstr "" +msgstr "V=C3=A4lj objektet du vill konfigurera." =20 #: main.c:99 msgid "Quit" -msgstr "" +msgstr "Avsluta" =20 #: main.c:172 msgid "Setup is complete." -msgstr "" +msgstr "Konfigurationen =C3=A4r slutf=C3=B6rd." =20 #: main.c:174 netstuff.c:733 networking.c:560 networking.c:653 msgid "Warning" -msgstr "" +msgstr "Varning" =20 #: main.c:175 msgid "" "Initial setup was not entirely complete. You must ensure that Setup is " "properly finished by running setup again at the shell." -msgstr "" +msgstr "F=C3=B6rsta installationen var inte helt klar. Du m=C3=A5ste se till= att installationen =C3=A4r korrekt avslutad genom att k=C3=B6ra installation= en igen." =20 #: misc.c:62 #, c-format msgid "Unable to write %s/main/hostname.conf" -msgstr "" +msgstr "Kan inte skriva %s/main/hostname.conf" =20 #: misc.c:71 msgid "Unable to open main hosts file." -msgstr "" +msgstr "Kan inte =C3=B6ppna v=C3=A4rdfilen." =20 #: misc.c:76 msgid "Unable to write /etc/hosts." -msgstr "" +msgstr "Kan inte skriva /etc/hosts" =20 #: misc.c:117 msgid "Unable to write /etc/hosts.deny." -msgstr "" +msgstr "Kan inte skriva /etc/hosts.deny" =20 #: misc.c:125 msgid "Unable to write /etc/hosts.allow." -msgstr "" +msgstr "Kan inte skriva /etc/hosts.allow" =20 #: misc.c:136 msgid "Unable to set hostname." -msgstr "" +msgstr "Det g=C3=A5r inte att st=C3=A4lla in v=C3=A4rdnamn." =20 #: misc.c:147 msgid "Scanning and configuring ISDN devices." -msgstr "" +msgstr "Skannar och konfigurerar ISDN enheter." =20 #: misc.c:148 msgid "Unable to scan for ISDN devices." -msgstr "" +msgstr "Kan inte skanna efter ISDN enheter." =20 #: netstuff.c:86 #, c-format msgid "Interface - %s" -msgstr "" +msgstr "Gr=C3=A4nssnitt - %s" =20 #: netstuff.c:91 #, c-format msgid "Enter the IP address information for the %s interface." -msgstr "" +msgstr "Skriv in IP-nummer f=C3=B6r %s gr=C3=A4nssnittet." =20 #: netstuff.c:103 msgid "Static" -msgstr "" +msgstr "Statisk" =20 #: netstuff.c:104 msgid "DHCP" -msgstr "" +msgstr "DHCP" =20 #: netstuff.c:105 msgid "PPP DIALUP (PPPoE, modem, ATM ...)" -msgstr "" +msgstr "PPP DIALUP (PPPoE, modem, ATM...)" =20 #: netstuff.c:113 msgid "DHCP Hostname:" -msgstr "" +msgstr "DHCP V=C3=A4rdnamn" =20 #: netstuff.c:115 msgid "Force DHCP MTU:" -msgstr "" +msgstr "Tvinga DHCP MTU" =20 #: netstuff.c:134 msgid "IP address:" -msgstr "" +msgstr "IP-adress:" =20 #: netstuff.c:146 msgid "Network mask:" -msgstr "" +msgstr "N=C3=A4tverksmask:" =20 #: netstuff.c:173 networking.c:749 msgid "The following fields are invalid:" -msgstr "" +msgstr "F=C3=B6ljande f=C3=A4lt =C3=A4r ogiltiga:" =20 #: netstuff.c:183 msgid "IP address" -msgstr "" +msgstr "IP-adress" =20 #: netstuff.c:189 msgid "Network mask" -msgstr "" +msgstr "N=C3=A4tverksmask" =20 #: netstuff.c:198 msgid "DHCP hostname" -msgstr "" +msgstr "DHCP v=C3=A4rdnamn" =20 #: netstuff.c:396 netstuff.c:709 msgid "Unset" -msgstr "" +msgstr "Urkopplat" =20 #: netstuff.c:669 #, c-format msgid "Please choose a networkcard for the following interface - %s." -msgstr "" +msgstr "Var god v=C3=A4lj ett n=C3=A4tverkskort f=C3=B6r f=C3=B6ljande gr=C3= =A4nssnitt - %s" =20 #: netstuff.c:672 msgid "Extended Network Menu" -msgstr "" +msgstr "Ut=C3=B6kad N=C3=A4tverksmeny" =20 #: netstuff.c:673 networking.c:520 msgid "Select" -msgstr "" +msgstr "V=C3=A4lj" =20 #: netstuff.c:673 msgid "Identify" -msgstr "" +msgstr "Identifiera" =20 #: netstuff.c:678 msgid "Device Identification" -msgstr "" +msgstr "Enhetsidentifikation" =20 #: netstuff.c:678 msgid "The lights on the selected port should flash now for 10 seconds..." -msgstr "" +msgstr "Lamporna p=C3=A5 den valda porten b=C3=B6r nu blinka i 10 sekunder..= ." =20 #: netstuff.c:679 msgid "Identification is not supported by this interface." -msgstr "" +msgstr "Identifikation st=C3=B6ds inte av detta gr=C3=A4nssnitt." =20 #: netstuff.c:691 msgid "There are no unassigned interfaces on your system." -msgstr "" +msgstr "Det finns inga otilldelade gr=C3=A4nsnitt p=C3=A5 ditt system." =20 #: netstuff.c:732 #, c-format msgid "Do you really want to remove the assigned %s interface?" -msgstr "" +msgstr "Vill du verkligen ta bort det tilldelade gr=C3=A4nsnittet %s" =20 #: netstuff.c:755 msgid "Select network driver" -msgstr "" +msgstr "V=C3=A4lj n=C3=A4tverksdrivrutin" =20 #: netstuff.c:755 msgid "Set additional module parameters" -msgstr "" +msgstr "St=C3=A4ll in yttligare modulparametrar" =20 #: netstuff.c:762 msgid "Loading module..." -msgstr "" +msgstr "Laddar moduler..." =20 #: netstuff.c:777 msgid "Unable to load driver module." -msgstr "" +msgstr "Kan inte ladda drivrutin/modul." =20 #: netstuff.c:780 msgid "Module name cannot be blank." -msgstr "" +msgstr "Modulens namn kan inte vara tomt." =20 #: networking.c:110 msgid "Stopping network..." -msgstr "" +msgstr "Stoppar n=C3=A4tverk..." =20 #: networking.c:115 msgid "Restarting network..." -msgstr "" +msgstr "Startar om n=C3=A4tverk..." =20 #: networking.c:146 msgid "No GREEN interface assigned." -msgstr "" +msgstr "Inget GR=C3=96NT gr=C3=A4nsnitt tilldelat." =20 #: networking.c:152 msgid "Missing an IP address on GREEN." -msgstr "" +msgstr "Saknar en IP-adress p=C3=A5 GR=C3=96N." =20 #: networking.c:163 msgid "Error" -msgstr "" +msgstr "Fel" =20 #: networking.c:163 msgid "Ignore" -msgstr "" +msgstr "Ignorera" =20 #: networking.c:164 msgid "No RED interface assigned." -msgstr "" +msgstr "Inget R=C3=96TT gr=C3=A4nssnitt tilldelat." =20 #: networking.c:173 msgid "Missing an IP address on RED." -msgstr "" +msgstr "Saknar IP-adress p=C3=A5 R=C3=96D." =20 #: networking.c:183 msgid "No ORANGE interface assigned." -msgstr "" +msgstr "Inget ORANGE gr=C3=A4nssnitt tilldelat." =20 #: networking.c:189 msgid "Missing an IP address on ORANGE." -msgstr "" +msgstr "Saknar IP-adress p=C3=A5 gr=C3=A4nsnitt ORANGE." =20 #: networking.c:199 msgid "No BLUE interface assigned." -msgstr "" +msgstr "Inget BL=C3=85TT gr=C3=A4nssnitt tilldelat." =20 #: networking.c:205 msgid "Missing an IP address on BLUE." -msgstr "" +msgstr "Saknar IP-adress p=C3=A5 BL=C3=85." =20 #: networking.c:217 msgid "Misssing DNS." -msgstr "" +msgstr "Saknar DNS." =20 #: networking.c:224 msgid "Missing Default Gateway." -msgstr "" +msgstr "Saknar Standardgr=C3=A4nssnitt." =20 #: networking.c:237 networking.c:304 msgid "Network configuration type" -msgstr "" +msgstr "Typ av n=C3=A4tverkskonfiguration" =20 #: networking.c:238 networking.c:409 msgid "Drivers and card assignments" -msgstr "" +msgstr "Tilldelning av drivrutiner och n=C3=A4tverkskort" =20 #: networking.c:239 networking.c:640 msgid "Address settings" -msgstr "" +msgstr "Adressinst=C3=A4llningar" =20 #: networking.c:240 networking.c:743 msgid "DNS and Gateway settings" -msgstr "" +msgstr "DNS och Gateway inst=C3=A4llningar" =20 #: networking.c:260 msgid "When configuration is complete, a network restart will be required." -msgstr "" +msgstr "N=C3=A4r konfigurationen =C3=A4r f=C3=A4rdig, s=C3=A5 m=C3=A5ste n= =C3=A4tverket startas om." =20 #: networking.c:267 #, c-format @@ -439,15 +440,15 @@ msgid "" "Current config: %s\n" "\n" "%s" -msgstr "" +msgstr "Nuvarande konfiguration: %s\n\n%s" =20 #: networking.c:268 msgid "Network configuration menu" -msgstr "" +msgstr "N=C3=A4tverkskonfigurationsmeny" =20 #: networking.c:269 networking.c:520 networking.c:642 msgid "Done" -msgstr "" +msgstr "F=C3=A4rdig" =20 #: networking.c:300 #, c-format @@ -456,7 +457,7 @@ msgid "" "list those interfaces which have ethernet attached. If you change this " "setting, a network restart will be required, and you will have to " "reconfigure the network driver assignments." -msgstr "" +msgstr "V=C3=A4lj n=C3=A4tverkskonfigurationen f=C3=B6r %s. F=C3=B6ljande ko= nfigurationstyper visar de gr=C3=A4nssnitt som har n=C3=A4tverks=C3=A5tkomst.= Om du =C3=A4ndrar denna inst=C3=A4llning, m=C3=A5ste n=C3=A4tverket startas = om, och du m=C3=A5ste omkonfigurera n=C3=A4tverksdrivrutinen." =20 #: networking.c:307 #, c-format @@ -464,35 +465,35 @@ msgid "" "Not enough netcards for your choice.\n" "\n" "Needed: %d - Available: %d\n" -msgstr "" +msgstr "Du har. inte valt nog m=C3=A5nga n=C3=A4tverkskort.\n\nBeh=C3=B6vs: = %d - Tillg=C3=A4ngligt: %d\n" =20 #: networking.c:359 msgid "" "Configure network drivers, and which interface each card is assigned to. Th= e current configuration is as follows:\n" "\n" -msgstr "" +msgstr "Konfigurera drivrutiner, och till vilket gr=C3=A4nsnitt varje kort = =C3=A4r tilldelat. Den nuvarande konfigurationen =C3=A4r som f=C3=B6ljer:\n\n" =20 #: networking.c:408 msgid "Do you wish to change these settings?" -msgstr "" +msgstr "Vill du =C3=A4ndra p=C3=A5 dessa inst=C3=A4llningar?" =20 #: networking.c:447 msgid "Restarting non-local network..." -msgstr "" +msgstr "Startar om icke-lokalt n=C3=A4tverk..." =20 #: networking.c:464 msgid "" "Please choose the interface you wish to change.\n" "\n" -msgstr "" +msgstr "Vad god v=C3=A4lj vilket gr=C3=A4nssnitt du =C3=B6nskar att =C3=A4nd= ra p=C3=A5.\n\n" =20 #: networking.c:519 msgid "Assigned Cards" -msgstr "" +msgstr "Tilldelade n=C3=A4tverkskort" =20 #: networking.c:520 msgid "Remove" -msgstr "" +msgstr "Ta bort" =20 #: networking.c:556 networking.c:649 #, c-format @@ -501,84 +502,84 @@ msgid "" "connection to the %s machine will be broken, and you will have to reconnect= " "on the new IP. This is a risky operation, and should only be attempted if " "you have physical access to the machine, should something go wrong." -msgstr "" +msgstr "Om du =C3=A4ndrar denna IP-adress, och =C3=A4r fj=C3=A4rrinloggad, s= =C3=A5 kommer din uppkoppling till %s brytas, och du m=C3=A5ste =C3=A5teransl= uta till det nya IP-numret. Detta =C3=A4r riskabelt, och borde bara f=C3=B6rs= =C3=B6kas med om du har fysisk tillg=C3=A5ng till datorn om n=C3=A5got skulle= g=C3=A5 fel." =20 #: networking.c:641 msgid "Select the interface you wish to reconfigure." -msgstr "" +msgstr "V=C3=A4lj det gr=C3=A4nssnitt du vill konfigurera om." =20 #: networking.c:729 msgid "Default gateway:" -msgstr "" +msgstr "Standard gateway:" =20 #: networking.c:744 msgid "" "Enter the DNS and gateway information. These settings are used only with " "Static IP (and DHCP if DNS set) on the RED interface." -msgstr "" +msgstr "Ange DNS och gateway information. Dessa inst=C3=A4llningar anv=C3=A4= nds bara vid statiskt IP (och DHCP om DNS =C3=A4r inst=C3=A4llt) p=C3=A5 R=C3= =96TT gr=C3=A4nssnitt." =20 #: networking.c:773 msgid "Default gateway" -msgstr "" +msgstr "Standard gateway" =20 #: networking.c:780 msgid "Secondary DNS specified without a Primary DNS" -msgstr "" +msgstr "Sekund=C3=A4r DNS specificerad utan en prim=C3=A4r DNS" =20 #: passwords.c:33 msgid "" "Enter the 'root' user password. Login as this user for commandline access." -msgstr "" +msgstr "Ange 'root' l=C3=B6senordet. Logga in p=C3=A5 denna anv=C3=A4ndare f= =C3=B6r tillg=C3=A5ng till kommandorad." =20 #: passwords.c:38 passwords.c:61 msgid "Setting password" -msgstr "" +msgstr "St=C3=A4ller in l=C3=B6senord" =20 #: passwords.c:38 msgid "Setting 'root' password...." -msgstr "" +msgstr "St=C3=A4ller in 'root' l=C3=B6senord..." =20 #: passwords.c:39 msgid "Problem setting 'root' password." -msgstr "" +msgstr "Problem med att st=C3=A4lla in 'root' l=C3=B6senord." =20 #: passwords.c:53 #, c-format msgid "" "Enter %s 'admin' user password. This is the user to use for logging into th= e" " %s web administration pages." -msgstr "" +msgstr "Ange %s 'admin' l=C3=B6senord. Anv=C3=A4nd denna anv=C3=A4ndare f=C3= =B6r att logga in i %s webbgr=C3=A4nssnitt f=C3=B6r administration." =20 #: passwords.c:60 #, c-format msgid "Setting %s 'admin' user password..." -msgstr "" +msgstr "St=C3=A4ller in %s 'admin' l=C3=B6senord..." =20 #: passwords.c:62 #, c-format msgid "Problem setting %s 'admin' user password." -msgstr "" +msgstr "Problem med att st=C3=A4lla in %s 'admin' l=C3=B6senord." =20 #: passwords.c:76 msgid "Password:" -msgstr "" +msgstr "L=C3=B6senord:" =20 #: passwords.c:77 msgid "Again:" -msgstr "" +msgstr "Igen:" =20 #: passwords.c:95 msgid "Password cannot be blank." -msgstr "" +msgstr "L=C3=B6senordet kan inte vara tomt." =20 #: passwords.c:102 msgid "Passwords do not match." -msgstr "" +msgstr "L=C3=B6senorden matchar inte." =20 #: passwords.c:109 msgid "Password cannot contain spaces." -msgstr "" +msgstr "L=C3=B6senordet kan inte inneh=C3=A5lla mellanslag." =20 #: timezone.c:77 msgid "Choose the timezone you are in from the list below." -msgstr "" +msgstr "V=C3=A4lj tidszonen du befinner dig i fr=C3=A5n listan nedan." diff --git a/src/setup/po/th.po b/src/setup/po/th.po index ad29452..feaaecc 100644 --- a/src/setup/po/th.po +++ b/src/setup/po/th.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-08-21 15:13+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Thai (http://www.transifex.com/projects/p/ipfire/language/th= /)\n" +"Language-Team: Thai (http://www.transifex.com/mstremer/ipfire/language/th/)= \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/tk.po b/src/setup/po/tk.po index 073e06a..e45ec68 100644 --- a/src/setup/po/tk.po +++ b/src/setup/po/tk.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-08-21 15:13+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Turkmen (http://www.transifex.com/projects/p/ipfire/language= /tk/)\n" +"Language-Team: Turkmen (http://www.transifex.com/mstremer/ipfire/language/t= k/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/tr.po b/src/setup/po/tr.po index 9e52d07..d861493 100644 --- a/src/setup/po/tr.po +++ b/src/setup/po/tr.po @@ -4,15 +4,15 @@ #=20 # Translators: # Ersan YILDIRIM , 2015 -# Kudret Emre , 2014 +# Kudret , 2014 msgid "" msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2015-03-20 15:05+0000\n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" "Last-Translator: Ersan YILDIRIM \n" -"Language-Team: Turkish (http://www.transifex.com/projects/p/ipfire/language= /tr/)\n" +"Language-Team: Turkish (http://www.transifex.com/mstremer/ipfire/language/t= r/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -530,7 +530,7 @@ msgstr "Birincil DNS olmadan =C4=B0kincil DNS belirtildi." #: passwords.c:33 msgid "" "Enter the 'root' user password. Login as this user for commandline access." -msgstr "%s 'root' kullan=C4=B1c=C4=B1 parolas=C4=B1n=C4=B1 girin. Komut sat= =C4=B1r=C4=B1 eri=C5=9Fimi i=C3=A7in bu kullan=C4=B1c=C4=B1yla oturum a=C3=A7= =C4=B1n." +msgstr "'Root' kullan=C4=B1c=C4=B1 parolas=C4=B1n=C4=B1 girin. Komut sat=C4= =B1r=C4=B1 eri=C5=9Fimi i=C3=A7in bu kullan=C4=B1c=C4=B1yla oturum a=C3=A7=C4= =B1n." =20 #: passwords.c:38 passwords.c:61 msgid "Setting password" diff --git a/src/setup/po/uk.po b/src/setup/po/uk.po index afcfa30..999c67f 100644 --- a/src/setup/po/uk.po +++ b/src/setup/po/uk.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-08-21 15:13+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Ukrainian (http://www.transifex.com/projects/p/ipfire/langua= ge/uk/)\n" +"Language-Team: Ukrainian (http://www.transifex.com/mstremer/ipfire/language= /uk/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/uz(a)Latn.po b/src/setup/po/uz(a)Latn.po index 9044283..67e53da 100644 --- a/src/setup/po/uz(a)Latn.po +++ b/src/setup/po/uz(a)Latn.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-08-21 15:13+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Uzbek (Latin) (http://www.transifex.com/projects/p/ipfire/la= nguage/uz(a)Latn/)\n" +"Language-Team: Uzbek (Latin) (http://www.transifex.com/mstremer/ipfire/lang= uage/uz(a)Latn/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/vi.po b/src/setup/po/vi.po index 4d2457e..f3c982e 100644 --- a/src/setup/po/vi.po +++ b/src/setup/po/vi.po @@ -8,9 +8,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2014-08-21 15:13+0000\n" +"PO-Revision-Date: 2017-08-03 19:28+0000\n" "Last-Translator: Michael Tremer \n" -"Language-Team: Vietnamese (http://www.transifex.com/projects/p/ipfire/langu= age/vi/)\n" +"Language-Team: Vietnamese (http://www.transifex.com/mstremer/ipfire/languag= e/vi/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/src/setup/po/zh.po b/src/setup/po/zh.po index 70b0a0e..1574254 100644 --- a/src/setup/po/zh.po +++ b/src/setup/po/zh.po @@ -9,9 +9,9 @@ msgstr "" "Project-Id-Version: IPFire Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-08-21 15:12+0000\n" -"PO-Revision-Date: 2015-01-31 09:57+0000\n" +"PO-Revision-Date: 2017-09-20 09:45+0000\n" "Last-Translator: ipfire \n" -"Language-Team: Chinese (http://www.transifex.com/projects/p/ipfire/language= /zh/)\n" +"Language-Team: Chinese (http://www.transifex.com/mstremer/ipfire/language/z= h/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=3DUTF-8\n" "Content-Transfer-Encoding: 8bit\n" hooks/post-receive -- IPFire 2.x development tree --===============8304237986910129327==--