diff --git a/.tx/config b/.tx/config index 423e742011b31180fa2fa34fa9b876905ef63aed..442e2561d32b970a339c27194210fdd784dc681d 100644 --- a/.tx/config +++ b/.tx/config @@ -575,6 +575,7 @@ trans.de = installer/resources/locale-man/man_de.po trans.es = installer/resources/locale-man/man_es.po trans.fi = installer/resources/locale-man/man_fi.po trans.fr = installer/resources/locale-man/man_fr.po +trans.hu = installer/resources/locale-man/man_hu.po trans.id = installer/resources/locale-man/man_id.po trans.it = installer/resources/locale-man/man_it.po trans.ko = installer/resources/locale-man/man_ko.po diff --git a/apps/routerconsole/java/src/net/i2p/router/web/helpers/HomeHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/helpers/HomeHelper.java index a42e610b6b0812d6d95e9a66e7d7489302b92181..a8661176d99d76e39ee981897a194f19b149171e 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/helpers/HomeHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/helpers/HomeHelper.java @@ -92,7 +92,7 @@ public class HomeHelper extends HelperBase { _x("Project Website") + S + _x("I2P home page") + S + "http://i2p-projekt.i2p/" + S + I + "glass.png" + S + //_x("lenta news [ru]") + S + _x("Russian News Feed") + S + "http://lenta.i2p/" + S + I + "lenta_main_logo.png" + S + //"Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + "salt_console.png" + S + - _x("The Tin Hat") + S + _x("Privacy guides and tutorials") + S + "http://secure.thetinhat.i2p/" + S + I + "thetinhat.png" + S + + //_x("The Tin Hat") + S + _x("Privacy guides and tutorials") + S + "http://secure.thetinhat.i2p/" + S + I + "thetinhat.png" + S + //_x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + "billiard_marker.png" + S + //"sponge.i2p" + S + _x("Seedless and the Robert BitTorrent applications") + S + "http://sponge.i2p/" + S + I + "user_astronaut.png" + S + ""; diff --git a/core/java/src/net/i2p/time/BuildTime.java b/core/java/src/net/i2p/time/BuildTime.java index 96706e86e0e687f7923dfd81af9c00137910a860..8a48b071c82739229e92d0c2fea6ee47e2cddd71 100644 --- a/core/java/src/net/i2p/time/BuildTime.java +++ b/core/java/src/net/i2p/time/BuildTime.java @@ -34,10 +34,10 @@ public class BuildTime { private static final long _latestTime; private static final long YEARS_25 = 25L*365*24*60*60*1000; /** update this periodically */ - private static final String EARLIEST = "2021-08-19 12:00:00 UTC"; + private static final String EARLIEST = "2021-11-23 12:00:00 UTC"; // fallback if parse fails ticket #1976 // date -d 202x-xx-xx +%s - private static final long EARLIEST_LONG = 1629345600 * 1000L; + private static final long EARLIEST_LONG = 1637643600 * 1000L; static { // this is the standard format of build.timestamp as set in the top-level build.xml diff --git a/debian/i2p-router.manpages b/debian/i2p-router.manpages index c0cbdb8ad494902639a51ad2c40c480756e92b11..7fd69ecdff0a43f55af9f3654180702c10e2bb28 100644 --- a/debian/i2p-router.manpages +++ b/debian/i2p-router.manpages @@ -5,6 +5,7 @@ installer/resources/man/eepget.de.1 installer/resources/man/eepget.es.1 installer/resources/man/eepget.fi.1 installer/resources/man/eepget.fr.1 +installer/resources/man/eepget.hu.1 installer/resources/man/eepget.it.1 installer/resources/man/eepget.ko.1 installer/resources/man/eepget.nl.1 @@ -23,6 +24,7 @@ installer/resources/man/i2prouter-nowrapper.de.1 installer/resources/man/i2prouter-nowrapper.es.1 installer/resources/man/i2prouter-nowrapper.fi.1 installer/resources/man/i2prouter-nowrapper.fr.1 +installer/resources/man/i2prouter-nowrapper.hu.1 installer/resources/man/i2prouter-nowrapper.it.1 installer/resources/man/i2prouter-nowrapper.ko.1 installer/resources/man/i2prouter-nowrapper.nl.1 diff --git a/debian/i2p.manpages b/debian/i2p.manpages index 1aa65fe4cb621f536743f54cb1274247efc8b108..e94ecad2923d7f1875b7b93410af7ef1e8a72404 100644 --- a/debian/i2p.manpages +++ b/debian/i2p.manpages @@ -5,6 +5,7 @@ installer/resources/man/i2prouter.de.1 installer/resources/man/i2prouter.es.1 installer/resources/man/i2prouter.fi.1 installer/resources/man/i2prouter.fr.1 +installer/resources/man/i2prouter.hu.1 installer/resources/man/i2prouter.it.1 installer/resources/man/i2prouter.ko.1 installer/resources/man/i2prouter.nl.1 diff --git a/history.txt b/history.txt index 32916b8e8a9ce73f8e112b3a0a62c7758892e675..4c48c799bd2f54782d013b9341b246fcf963ccce 100644 --- a/history.txt +++ b/history.txt @@ -1,3 +1,8 @@ +2021-11-23 zzz + * Tunnels: + - Drop request if hop throttle exceeded by 50% + - Revert banning peer in throttles + 2021-11-21 zzz * Console: Drop peer when manually banned * Tunnels: diff --git a/installer/resources/locale-man/man_hu.po b/installer/resources/locale-man/man_hu.po new file mode 100644 index 0000000000000000000000000000000000000000..9ebc922c7abd6465123ced9249e04fdff6c960bc --- /dev/null +++ b/installer/resources/locale-man/man_hu.po @@ -0,0 +1,476 @@ +# I2P +# Copyright (C) 2017 The I2P Project +# This file is distributed under the same license as the routerconsole package. +# To contribute translations, see https://www.transifex.com/otf/I2P/dashboard/ +# zzz <zzz@mail.i2p>, 2017. +# +# Translators: +# benewfy <benewfy@gmail.com>, 2017 +# GergÅ‘ Doma <domag02@gmail.com>, 2019 +# Nyul Csoki <csokinyul@i2pmail.org>, 2021 +# +msgid "" +msgstr "" +"Project-Id-Version: I2P man pages\n" +"POT-Creation-Date: 2017-01-26 15:24+0000\n" +"PO-Revision-Date: 2017-01-26 15:31+0000\n" +"Last-Translator: Nyul Csoki <csokinyul@i2pmail.org>, 2021\n" +"Language-Team: Hungarian (https://www.transifex.com/otf/teams/12694/hu/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: hu\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. type: TH +#: man/eepget.1:1 +#, no-wrap +msgid "EEPGET" +msgstr "EEPGET" + +#. type: TH +#: man/eepget.1:1 man/i2prouter.1:1 man/i2prouter-nowrapper.1:1 +#, no-wrap +msgid "January 26, 2017" +msgstr "January 26, 2017" + +#. type: TH +#: man/eepget.1:1 man/i2prouter.1:1 man/i2prouter-nowrapper.1:1 +#, no-wrap +msgid "I2P" +msgstr "I2P" + +#. type: SH +#: man/eepget.1:3 man/i2prouter.1:3 man/i2prouter-nowrapper.1:3 +#, no-wrap +msgid "NAME" +msgstr "NÉV" + +#. type: Plain text +#: man/eepget.1:5 +msgid "Eepget - I2P downloader" +msgstr "Eepget - I2P letöltÅ‘" + +#. type: SH +#: man/eepget.1:6 man/i2prouter.1:6 man/i2prouter-nowrapper.1:6 +#, no-wrap +msgid "SYNOPSIS" +msgstr "ÖSSZEGZÉS" + +#. type: Plain text +#: man/eepget.1:9 +msgid "B<eepget> [I<options>]I<URL>" +msgstr "B<eepget> [I<options>]I<URL>" + +#. type: SH +#: man/eepget.1:11 man/i2prouter.1:11 man/i2prouter-nowrapper.1:10 +#, no-wrap +msgid "DESCRIPTION" +msgstr "LEÃRÃS" + +#. type: Plain text +#: man/eepget.1:15 +msgid "" +"Download a file non-interactively via HTTP. Transfers through both I2P and " +"the regular Internet are supported." +msgstr "" +"Beavatkozás nélkül HTTP-n keresztül tölt le fájlokat. Mind I2P-n keresztüli," +" mint normál Interneten keresztüli átvitel támogatott." + +#. type: Plain text +#: man/eepget.1:21 +msgid "" +"Eepget is able to cope with slow or unstable network connections; if a " +"download is not successful because of a network problem, it will keep " +"retrying until the whole file has been retrieved (if the -n option is set)." +" If supported by the remote server, eepget will instruct the server to " +"continue the download from the point of interruption." +msgstr "" +"Az Eepget meg tud birkózni lassú vagy instabil hálózati kapcsolatokkal; ha " +"hálózati probléma miatt sikertelen a letöltés, addig fogja újrapróbálni, " +"amÃg leszed az egész fájlt (ha a -n opció be van állÃtva). Ha a távoli " +"szerver támogatja, eepget utasÃtani fogja a szervert, hogy folytassa a " +"letöltést attól a ponttól, ahol megszakadt." + +#. type: SH +#: man/eepget.1:22 +#, no-wrap +msgid "OPTIONS" +msgstr "OPCIÓK" + +#. type: Plain text +#: man/eepget.1:25 +msgid "B<-c>" +msgstr "B<-c>" + +#. type: TP +#: man/eepget.1:25 +#, no-wrap +msgid "Clearnet. Do not use a proxy. Same as B<-p> :0 ." +msgstr "Tiszta hálózat. Ne használd proxyként. Ugyanaz, mint B<-p> :0 ." + +#. type: Plain text +#: man/eepget.1:31 +msgid "B<-e> etag" +msgstr "B<-e> etag" + +#. type: TP +#: man/eepget.1:31 +#, no-wrap +msgid "Sets the etag value in the request headers." +msgstr "BeállÃtja az ecÃmke értéket a kérési fejlécekben." + +#. type: Plain text +#: man/eepget.1:37 +msgid "B<-h> name=value" +msgstr "B<-h> name=value" + +#. type: TP +#: man/eepget.1:37 +#, no-wrap +msgid "Adds an arbitrary request header with the given name and value." +msgstr "TetszÅ‘leges kérési fejlécet ad hozzá a megadott névvel és értékkel." + +#. type: Plain text +#: man/eepget.1:43 +msgid "B<-l> lineLen" +msgstr "B<-l> lineLen" + +#. type: TP +#: man/eepget.1:43 +#, no-wrap +msgid "" +"Controls the progress display. B<\\ lineLen > is the length of one progress " +"line in characters. The default is 40." +msgstr "" +"A folyamatkijelzÅ‘t irányÃtja. B<\\ lineLen > egy folyamatsor hossza, " +"karakterekben megadva. Alapértelmezésben 40." + +#. type: Plain text +#: man/eepget.1:49 +msgid "B<-m> markSize" +msgstr "B<-m> markSize" + +#. type: TP +#: man/eepget.1:49 +#, no-wrap +msgid "" +"Controls the progress display. B<\\ markSize > is the number of bytes one " +"'#' character represents. The default is 1024." +msgstr "" +"A folyamatkijelzÅ‘t irányÃtja. B<\\ markSize > a bájtok száma, melyet egy '#'" +" karakter jelez. Alapértelmezésben 1024." + +#. type: Plain text +#: man/eepget.1:55 +msgid "B<-n> retries" +msgstr "B<-n> retries" + +#. type: TP +#: man/eepget.1:55 +#, no-wrap +msgid "" +"Specify the number of times to retry downloading if the download isn't " +"successful. If this option is not specified, eepget will not retry." +msgstr "" +"Megadja, hogy hányszor próbálja újra a letöltést, ha sikertelen. Ha nincs ez" +" az opció megadva, eepget nem fogja újrapróbálni." + +#. type: Plain text +#: man/eepget.1:61 +msgid "B<-o> file" +msgstr "B<-o> file" + +#. type: TP +#: man/eepget.1:61 +#, no-wrap +msgid "" +"Sets the output file to write to. If this option is not given, the output " +"filename will be determined by the URL." +msgstr "" +"BeállÃtja a kimeneti fájlt, mely Ãrásra kerül. Ha nincs ez az opció megadva," +" a kimeneti fájlnevet az URL határozza meg." + +#. type: Plain text +#: man/eepget.1:67 +msgid "B<-p> proxy_host[:port]" +msgstr "B<-p> proxy_host[:port]" + +#. type: TP +#: man/eepget.1:67 +#, no-wrap +msgid "" +"Specify an I2P proxy server (eeproxy) to use. If the port is not specified, " +"eepget will use 4444. If this option is not specified, eepget will use " +"127.0.0.1:4444. Specify B<-c> or B<-p> :0 to disable the eeproxy." +msgstr "" +"Megadja a használandó I2P proxy szervert. Ha nincs port megadva, eepget a " +"4444-es portot fogja használni. Ha nincs ez az opció megadva, eepget a " +"127.0.0.1:444-et fogja használni. Add meg ezt: B<-c> vagy ezt: B<-p> :0 az " +"eeproxy kikapcsolásához." + +#. type: Plain text +#: man/eepget.1:73 +msgid "B<-t> seconds" +msgstr "B<-t> seconds" + +#. type: TP +#: man/eepget.1:73 +#, no-wrap +msgid "Sets the inactivity timeout. The default is 60 seconds." +msgstr "BeállÃtja a tétlenségi idÅ‘korlátot. Alapértelmezésben 60 másodperc." + +#. type: Plain text +#: man/eepget.1:79 +msgid "B<-u> username" +msgstr "B<-u> username" + +#. type: TP +#: man/eepget.1:79 +#, no-wrap +msgid "Sets the username for proxy authorization, if required." +msgstr "BeállÃtja az felhasználónevet proxy azonosÃtáshoz, ha szükséges." + +#. type: Plain text +#: man/eepget.1:85 +msgid "B<-x> password" +msgstr "B<-x> password" + +#. type: TP +#: man/eepget.1:85 +#, no-wrap +msgid "" +"Sets the password for proxy authorization, if required. If a username is " +"specified but not a password, EepGet will prompt for the password." +msgstr "" +"BeállÃtja a jelszót a proxy azonosÃtáshoz, ha szükséges. Ha felhasználónév " +"meg van adva, de a jelszó nincs, EepGet kérni fogja a jelszót" + +#. type: SH +#: man/eepget.1:89 +#, no-wrap +msgid "EXIT STATUS" +msgstr "KILÉPÉSI ÃLLAPOT" + +#. type: Plain text +#: man/eepget.1:93 +msgid "" +"B<eepget> exits with status zero upon successful transfer and non-zero if " +"there were problems with the download." +msgstr "" +"B<eepget> kilép 0 állapottal sikeres átvitel esetén és nem 0 állapottal, ha " +"probléma volt a letöltéssel." + +#. type: SH +#: man/eepget.1:94 man/i2prouter.1:54 man/i2prouter-nowrapper.1:24 +#, no-wrap +msgid "REPORTING BUGS" +msgstr "HIBAJELENTÉS" + +#. type: Plain text +#: man/eepget.1:99 man/i2prouter.1:59 man/i2prouter-nowrapper.1:29 +msgid "" +"Please enter a ticket on E<.UR https://trac.i2p2.de/> the I2P trac page " +"E<.UE .>" +msgstr "" +"Kérünk, adj le jelentést itt: E<.UR https://trac.i2p2.de/> az I2P trac " +"oldalon E<.UE .>" + +#. type: SH +#: man/eepget.1:100 man/i2prouter.1:60 man/i2prouter-nowrapper.1:30 +#, no-wrap +msgid "SEE ALSO" +msgstr "LÃSD MÉG" + +#. type: Plain text +#: man/eepget.1:104 +msgid "B<i2prouter>(1) B<curl>(1) B<wget>(1)" +msgstr "B<i2prouter>(1) B<curl>(1) B<wget>(1)" + +#. type: TH +#: man/i2prouter.1:1 +#, no-wrap +msgid "I2PROUTER" +msgstr "I2PROUTER" + +#. type: Plain text +#: man/i2prouter.1:5 +msgid "i2prouter - start and stop the I2P router" +msgstr "i2prouter - az I2P router indÃtása és leállÃtása" + +#. type: Plain text +#: man/i2prouter.1:9 +msgid "" +"B<i2prouter> " +"{I<console>|I<start>|I<stop>|I<graceful>|I<restart>|I<condrestart>|I<status>|I<dump>|I<install>|I<remove>}" +msgstr "" +"B<i2prouter> " +"{I<console>|I<start>|I<stop>|I<graceful>|I<restart>|I<condrestart>|I<status>|I<dump>|I<install>|I<remove>}" + +#. type: Plain text +#: man/i2prouter.1:13 +msgid "Control the I2P service." +msgstr "Az I2P szolgáltatás irányÃtása." + +#. type: IP +#: man/i2prouter.1:15 +#, no-wrap +msgid "B<console>" +msgstr "B<console>" + +#. type: Plain text +#: man/i2prouter.1:17 +msgid "Runs I2P as a console application under the current user." +msgstr "" +"Parancssori alkalmazásként futtatja az I2P-t a jelenlegi felhasználóként." + +#. type: IP +#: man/i2prouter.1:19 +#, no-wrap +msgid "B<start>" +msgstr "B<start>" + +#. type: Plain text +#: man/i2prouter.1:21 +msgid "Starts the I2P service." +msgstr "ElindÃtja az I2P szolgáltatást." + +#. type: IP +#: man/i2prouter.1:23 +#, no-wrap +msgid "B<stop>" +msgstr "B<stop>" + +#. type: Plain text +#: man/i2prouter.1:25 +msgid "Stops the I2P service." +msgstr "LeállÃtja az I2P szolgáltatást." + +#. type: IP +#: man/i2prouter.1:27 +#, no-wrap +msgid "B<restart>" +msgstr "B<restart>" + +#. type: Plain text +#: man/i2prouter.1:29 +msgid "Stops the I2P service and then starts it." +msgstr "LeállÃtja, azután elindÃtja az I2P szolgáltatást." + +#. type: IP +#: man/i2prouter.1:31 +#, no-wrap +msgid "B<condrestart>" +msgstr "B<condrestart>" + +#. type: Plain text +#: man/i2prouter.1:33 +msgid "Restart the I2P service only if it is already running." +msgstr "ÚjraindÃtja az I2P szolgáltatást, de csak akkor, ha az már fut." + +#. type: IP +#: man/i2prouter.1:35 +#, no-wrap +msgid "B<graceful>" +msgstr "B<graceful>" + +#. type: Plain text +#: man/i2prouter.1:37 +msgid "Stop I2P gracefully (may take up to 11 minutes)" +msgstr "Óvatosan álltja le az I2P-t (eltarthat akár 11 perig is)" + +#. type: IP +#: man/i2prouter.1:39 +#, no-wrap +msgid "B<install>" +msgstr "B<install>" + +#. type: Plain text +#: man/i2prouter.1:41 +msgid "Install initscript to start I2P automatically when the system boots." +msgstr "" +"Initscript-et telepÃt, ami automatikusan elindÃtja az I2P-t " +"rendszerindÃtáskor." + +#. type: IP +#: man/i2prouter.1:43 +#, no-wrap +msgid "B<remove>" +msgstr "B<remove>" + +#. type: Plain text +#: man/i2prouter.1:45 +msgid "Uninstall initscript that was installed with B<install>" +msgstr "" +"EltávolÃtja az initscript-et, ami telepÃtésre került ezzel: B<install>" + +#. type: IP +#: man/i2prouter.1:47 +#, no-wrap +msgid "B<status>" +msgstr "B<status>" + +#. type: Plain text +#: man/i2prouter.1:49 +msgid "Prints whether the I2P service is running." +msgstr "Kiadja, hogy az I2P szolgáltatás fut vagy sem." + +#. type: IP +#: man/i2prouter.1:51 +#, no-wrap +msgid "B<dump>" +msgstr "B<dump>" + +#. type: Plain text +#: man/i2prouter.1:53 +msgid "Dumps the current threads into B<wrapper.log>." +msgstr "Lerakja a jelenlegi szálakat ide: B<wrapper.log>." + +#. type: Plain text +#: man/i2prouter.1:61 +msgid "B<i2prouter-nowrapper>(1)" +msgstr "B<i2prouter-nowrapper>(1)" + +#. type: TH +#: man/i2prouter-nowrapper.1:1 +#, no-wrap +msgid "I2PROUTER-NOWRAPPER" +msgstr "I2PROUTER-NOWRAPPER" + +#. type: Plain text +#: man/i2prouter-nowrapper.1:5 +msgid "i2prouter-nowrapper - start the I2P router" +msgstr "i2prouter-nowrapper - elindÃtja az I2P router-t" + +#. type: Plain text +#: man/i2prouter-nowrapper.1:8 +msgid "B<i2prouter-nowrapper>" +msgstr "B<i2prouter-nowrapper>" + +#. type: Plain text +#: man/i2prouter-nowrapper.1:14 +msgid "" +"Start the I2P router, without the service wrapper. This means the router " +"will not restart if it crashes. Also, it will use the default memory size, " +"which may not be enough for I2P." +msgstr "" +"A szolgáltatás-burkolat nélkül indÃtja el az I2P router-t. Ez azt jelenti, " +"hogy a router nem fog újraindulni összeomlás esetén. Ezen felül az " +"alapértelmezett memóriaméretet fogja használni, ami nem biztos, hogy elég " +"lesz az I2P-nek." + +#. type: Plain text +#: man/i2prouter-nowrapper.1:23 +msgid "" +"You should really use the B<i2prouter>(1) script instead. There are no " +"options. To stop the router, use your browser to access E<.UR " +"http://localhost:7657/> the router console E<.UE .>" +msgstr "" +"Tényleg a(z) B<i2prouter>(1) szkriptet kellene használnod ehelyett. Nem " +"adhatód meg opciók. A router leállÃtásához használd a böngészÅ‘d, hogy elérd " +"ezt: E<.UR http://localhost:7657/> a router konzol E<.UE .>" + +#. type: Plain text +#: man/i2prouter-nowrapper.1:31 +msgid "B<i2prouter>(1)" +msgstr "B<i2prouter>(1)" diff --git a/installer/resources/man/eepget.hu.1 b/installer/resources/man/eepget.hu.1 new file mode 100644 index 0000000000000000000000000000000000000000..c78681752a9aaab61dce3df8dd003442a528baf1 --- /dev/null +++ b/installer/resources/man/eepget.hu.1 @@ -0,0 +1,95 @@ +.\"******************************************************************* +.\" +.\" This file was generated with po4a. Translate the source file. +.\" +.\"******************************************************************* +.TH EEPGET 1 "January 26, 2017" "" I2P + +.SH NÉV +Eepget \- I2P letöltÅ‘ + +.SH ÖSSZEGZÉS +\fBeepget\fP [\fIoptions\fP]\fIURL\fP +.br + +.SH LEÃRÃS +.P +Beavatkozás nélkül HTTP\-n keresztül tölt le fájlokat. Mind I2P\-n keresztüli, +mint normál Interneten keresztüli átvitel támogatott. +.P +Az Eepget meg tud birkózni lassú vagy instabil hálózati kapcsolatokkal; ha +hálózati probléma miatt sikertelen a letöltés, addig fogja újrapróbálni, +amÃg leszed az egész fájlt (ha a \-n opció be van állÃtva). Ha a távoli +szerver támogatja, eepget utasÃtani fogja a szervert, hogy folytassa a +letöltést attól a ponttól, ahol megszakadt. + +.SH OPCIÓK +\fB\-c\fP +.TP +Tiszta hálózat. Ne használd proxyként. Ugyanaz, mint \fB\-p\fP :0 . +.TP + +\fB\-e\fP etag +.TP +BeállÃtja az ecÃmke értéket a kérési fejlécekben. +.TP + +\fB\-h\fP name=value +.TP +TetszÅ‘leges kérési fejlécet ad hozzá a megadott névvel és értékkel. +.TP + +\fB\-l\fP lineLen +.TP +A folyamatkijelzÅ‘t irányÃtja. \fB\ lineLen \fP egy folyamatsor hossza, karakterekben megadva. Alapértelmezésben 40. +.TP + +\fB\-m\fP markSize +.TP +A folyamatkijelzÅ‘t irányÃtja. \fB\ markSize \fP a bájtok száma, melyet egy '#' karakter jelez. Alapértelmezésben 1024. +.TP + +\fB\-n\fP retries +.TP +Megadja, hogy hányszor próbálja újra a letöltést, ha sikertelen. Ha nincs ez az opció megadva, eepget nem fogja újrapróbálni. +.TP + +\fB\-o\fP file +.TP +BeállÃtja a kimeneti fájlt, mely Ãrásra kerül. Ha nincs ez az opció megadva, a kimeneti fájlnevet az URL határozza meg. +.TP + +\fB\-p\fP proxy_host[:port] +.TP +Megadja a használandó I2P proxy szervert. Ha nincs port megadva, eepget a 4444\-es portot fogja használni. Ha nincs ez az opció megadva, eepget a 127.0.0.1:444\-et fogja használni. Add meg ezt: \fB\-c\fP vagy ezt: \fB\-p\fP :0 az eeproxy kikapcsolásához. +.TP + +\fB\-t\fP seconds +.TP +BeállÃtja a tétlenségi idÅ‘korlátot. Alapértelmezésben 60 másodperc. +.TP + +\fB\-u\fP username +.TP +BeállÃtja az felhasználónevet proxy azonosÃtáshoz, ha szükséges. +.TP + +\fB\-x\fP password +.TP +BeállÃtja a jelszót a proxy azonosÃtáshoz, ha szükséges. Ha felhasználónév meg van adva, de a jelszó nincs, EepGet kérni fogja a jelszót + +.SH "KILÉPÉSI ÃLLAPOT" + +\fBeepget\fP kilép 0 állapottal sikeres átvitel esetén és nem 0 állapottal, ha +probléma volt a letöltéssel. + +.SH HIBAJELENTÉS +Kérünk, adj le jelentést itt: +.UR https://trac.i2p2.de/ +az I2P trac +oldalon +.UE . + +.SH "LÃSD MÉG" +\fBi2prouter\fP(1) \fBcurl\fP(1) \fBwget\fP(1) + diff --git a/installer/resources/man/i2prouter-nowrapper.hu.1 b/installer/resources/man/i2prouter-nowrapper.hu.1 new file mode 100644 index 0000000000000000000000000000000000000000..320fbc081f4d0150cb798627a781c3ceb126ab3f --- /dev/null +++ b/installer/resources/man/i2prouter-nowrapper.hu.1 @@ -0,0 +1,36 @@ +.\"******************************************************************* +.\" +.\" This file was generated with po4a. Translate the source file. +.\" +.\"******************************************************************* +.TH I2PROUTER\-NOWRAPPER 1 "January 26, 2017" "" I2P + +.SH NÉV +i2prouter\-nowrapper \- elindÃtja az I2P router\-t + +.SH ÖSSZEGZÉS +\fBi2prouter\-nowrapper\fP +.br + +.SH LEÃRÃS +A szolgáltatás\-burkolat nélkül indÃtja el az I2P router\-t. Ez azt jelenti, +hogy a router nem fog újraindulni összeomlás esetén. Ezen felül az +alapértelmezett memóriaméretet fogja használni, ami nem biztos, hogy elég +lesz az I2P\-nek. +.P +Tényleg a(z) \fBi2prouter\fP(1) szkriptet kellene használnod ehelyett. Nem +adhatód meg opciók. A router leállÃtásához használd a böngészÅ‘d, hogy elérd +ezt: +.UR http://localhost:7657/ +a router konzol +.UE . + +.SH HIBAJELENTÉS +Kérünk, adj le jelentést itt: +.UR https://trac.i2p2.de/ +az I2P trac +oldalon +.UE . + +.SH "LÃSD MÉG" +\fBi2prouter\fP(1) diff --git a/installer/resources/man/i2prouter.hu.1 b/installer/resources/man/i2prouter.hu.1 new file mode 100644 index 0000000000000000000000000000000000000000..4069454b539c581d4db25b6698e58367b89978f9 --- /dev/null +++ b/installer/resources/man/i2prouter.hu.1 @@ -0,0 +1,58 @@ +.\"******************************************************************* +.\" +.\" This file was generated with po4a. Translate the source file. +.\" +.\"******************************************************************* +.TH I2PROUTER 1 "January 26, 2017" "" I2P + +.SH NÉV +i2prouter \- az I2P router indÃtása és leállÃtása + +.SH ÖSSZEGZÉS +\fBi2prouter\fP +{\fIconsole\fP|\fIstart\fP|\fIstop\fP|\fIgraceful\fP|\fIrestart\fP|\fIcondrestart\fP|\fIstatus\fP|\fIdump\fP|\fIinstall\fP|\fIremove\fP} +.br + +.SH LEÃRÃS +Az I2P szolgáltatás irányÃtása. + +.IP \fBconsole\fP +Parancssori alkalmazásként futtatja az I2P\-t a jelenlegi felhasználóként. + +.IP \fBstart\fP +ElindÃtja az I2P szolgáltatást. + +.IP \fBstop\fP +LeállÃtja az I2P szolgáltatást. + +.IP \fBrestart\fP +LeállÃtja, azután elindÃtja az I2P szolgáltatást. + +.IP \fBcondrestart\fP +ÚjraindÃtja az I2P szolgáltatást, de csak akkor, ha az már fut. + +.IP \fBgraceful\fP +Óvatosan álltja le az I2P\-t (eltarthat akár 11 perig is) + +.IP \fBinstall\fP +Initscript\-et telepÃt, ami automatikusan elindÃtja az I2P\-t +rendszerindÃtáskor. + +.IP \fBremove\fP +EltávolÃtja az initscript\-et, ami telepÃtésre került ezzel: \fBinstall\fP + +.IP \fBstatus\fP +Kiadja, hogy az I2P szolgáltatás fut vagy sem. + +.IP \fBdump\fP +Lerakja a jelenlegi szálakat ide: \fBwrapper.log\fP. + +.SH HIBAJELENTÉS +Kérünk, adj le jelentést itt: +.UR https://trac.i2p2.de/ +az I2P trac +oldalon +.UE . + +.SH "LÃSD MÉG" +\fBi2prouter\-nowrapper\fP(1) diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java index cf2cf692a81bcba7ea578ec708417becb09c1953..e83c76c346f72424a6bf2cfffbcd97f367bf2f3d 100644 --- a/router/java/src/net/i2p/router/RouterVersion.java +++ b/router/java/src/net/i2p/router/RouterVersion.java @@ -18,7 +18,7 @@ public class RouterVersion { /** deprecated */ public final static String ID = "Git"; public final static String VERSION = CoreVersion.VERSION; - public final static long BUILD = 6; + public final static long BUILD = 7; /** for example "-test" */ public final static String EXTRA = "-rc"; diff --git a/router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java b/router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java index b586b1dbff7507b18a5fe03c17e0a82c49d714a0..707f348a79e726ebbc4223b761d07b007ac96e71 100644 --- a/router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java +++ b/router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java @@ -867,22 +867,37 @@ class BuildHandler implements Runnable { // Check participating throttle counters for previous and next hops // This is at the end as it compares to a percentage of created tunnels. // We may need another counter above for requests. - if (response == 0 && !isInGW && _throttler != null) { - if (from != null && _throttler.shouldThrottle(from)) { - if (_log.shouldLog(Log.WARN)) + if (response == 0 && !isInGW && _throttler != null && from != null) { + ParticipatingThrottler.Result result = _throttler.shouldThrottle(from); + if (result == ParticipatingThrottler.Result.DROP) { + if (_log.shouldWarn()) + _log.warn("Dropping request (hop throttle), previous hop: " + from + ": " + req); + _context.statManager().addRateData("tunnel.rejectHopThrottle", 1); + _context.commSystem().mayDisconnect(from); + return; + } + if (result == ParticipatingThrottler.Result.REJECT) { + if (_log.shouldWarn()) _log.warn("Rejecting tunnel (hop throttle), previous hop: " + from + ": " + req); - // no setTunnelStatus() indication _context.statManager().addRateData("tunnel.rejectHopThrottle", 1); response = TunnelHistory.TUNNEL_REJECT_BANDWIDTH; } } - if (response == 0 && (!isOutEnd) && - _throttler != null && _throttler.shouldThrottle(nextPeer)) { - if (_log.shouldLog(Log.WARN)) - _log.warn("Rejecting tunnel (hop throttle), next hop: " + req); - _context.statManager().addRateData("tunnel.rejectHopThrottle", 1); - // no setTunnelStatus() indication - response = TunnelHistory.TUNNEL_REJECT_BANDWIDTH; + if (response == 0 && (!isOutEnd) && _throttler != null) { + ParticipatingThrottler.Result result = _throttler.shouldThrottle(nextPeer); + if (result == ParticipatingThrottler.Result.DROP) { + if (_log.shouldWarn()) + _log.warn("Dropping request (hop throttle), next hop: " + nextPeer + ": " + req); + _context.statManager().addRateData("tunnel.rejectHopThrottle", 1); + _context.commSystem().mayDisconnect(from); + return; + } + if (result == ParticipatingThrottler.Result.REJECT) { + if (_log.shouldWarn()) + _log.warn("Rejecting tunnel (hop throttle), next hop: " + nextPeer + ": " + req); + _context.statManager().addRateData("tunnel.rejectHopThrottle", 1); + response = TunnelHistory.TUNNEL_REJECT_BANDWIDTH; + } } HopConfig cfg = null; diff --git a/router/java/src/net/i2p/router/tunnel/pool/ParticipatingThrottler.java b/router/java/src/net/i2p/router/tunnel/pool/ParticipatingThrottler.java index abd186ca2f49f15f7861b6fb7205145b981fce3f..0e56d42a7aa26bce55db067ae405dee88edba901 100644 --- a/router/java/src/net/i2p/router/tunnel/pool/ParticipatingThrottler.java +++ b/router/java/src/net/i2p/router/tunnel/pool/ParticipatingThrottler.java @@ -40,6 +40,8 @@ class ParticipatingThrottler { private static final int PERCENT_LIMIT = 12 / LIFETIME_PORTION; private static final long CLEAN_TIME = 11*60*1000 / LIFETIME_PORTION; + public enum Result { ACCEPT, REJECT, DROP } + ParticipatingThrottler(RouterContext ctx) { this.context = ctx; this.counter = new ObjectCounter<Hash>(); @@ -48,17 +50,24 @@ class ParticipatingThrottler { } /** increments before checking */ - boolean shouldThrottle(Hash h) { + Result shouldThrottle(Hash h) { int numTunnels = this.context.tunnelManager().getParticipatingCount(); int limit = Math.max(MIN_LIMIT, Math.min(MAX_LIMIT, numTunnels * PERCENT_LIMIT / 100)); int count = counter.increment(h); - boolean rv = count > limit; - if (rv && count == 2 * limit) { - context.banlist().banlistRouter(h, "Excess participating tunnels", null, null, context.clock().now() + 30*60*1000); - // drop after any accepted tunnels have expired - context.simpleTimer2().addEvent(new Disconnector(h), 11*60*1000); - if (_log.shouldWarn()) - _log.warn("Banning router for excess part. tunnels, limit: " + limit + " count: " + count + ' ' + h.toBase64()); + Result rv; + if (count > limit) { + if (count > limit * 3 / 2) { + //context.banlist().banlistRouter(h, "Excess participating tunnels", null, null, context.clock().now() + 30*60*1000); + // drop after any accepted tunnels have expired + //context.simpleTimer2().addEvent(new Disconnector(h), 11*60*1000); + //if (_log.shouldWarn()) + // _log.warn("Banning router for excess part. tunnels, limit: " + limit + " count: " + count + ' ' + h.toBase64()); + rv = Result.DROP; + } else { + rv = Result.REJECT; + } + } else { + rv = Result.ACCEPT; } return rv; } @@ -72,6 +81,7 @@ class ParticipatingThrottler { /** * @since 0.9.52 */ +/* private class Disconnector implements SimpleTimer.TimedEvent { private final Hash h; public Disconnector(Hash h) { this.h = h; } @@ -79,4 +89,5 @@ class ParticipatingThrottler { context.commSystem().forceDisconnect(h); } } +*/ } diff --git a/router/java/src/net/i2p/router/tunnel/pool/RequestThrottler.java b/router/java/src/net/i2p/router/tunnel/pool/RequestThrottler.java index 7c29a55004c63e179310824aa63ea7d1d4a90d54..e26d890e56e9a13465b7760a0938a84bbf52d037 100644 --- a/router/java/src/net/i2p/router/tunnel/pool/RequestThrottler.java +++ b/router/java/src/net/i2p/router/tunnel/pool/RequestThrottler.java @@ -38,6 +38,7 @@ class RequestThrottler { int limit = Math.max(MIN_LIMIT, Math.min(MAX_LIMIT, numTunnels * PERCENT_LIMIT / 100)); int count = counter.increment(h); boolean rv = count > limit; +/* if (rv && count == 2 * limit) { context.banlist().banlistRouter(h, "Excess tunnel requests", null, null, context.clock().now() + 30*60*1000); // drop after any accepted tunnels have expired @@ -45,6 +46,7 @@ class RequestThrottler { if (_log.shouldWarn()) _log.warn("Banning router for excess tunnel requests, limit: " + limit + " count: " + count + ' ' + h.toBase64()); } +*/ return rv; } @@ -57,6 +59,7 @@ class RequestThrottler { /** * @since 0.9.52 */ +/* private class Disconnector implements SimpleTimer.TimedEvent { private final Hash h; public Disconnector(Hash h) { this.h = h; } @@ -64,4 +67,5 @@ class RequestThrottler { context.commSystem().forceDisconnect(h); } } +*/ }