Merge branch 'master' of i2pgit.org:i2p-hackers/i2p.i2p

This commit is contained in:
idk
2021-11-23 14:08:19 -05:00
14 changed files with 727 additions and 23 deletions

View File

@@ -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

View File

@@ -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 +
"";

View File

@@ -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

View File

@@ -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

1
debian/i2p.manpages vendored
View File

@@ -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

View File

@@ -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:

View File

@@ -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)"

View File

@@ -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)

View File

@@ -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)

View File

@@ -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)

View File

@@ -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";

View File

@@ -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;

View File

@@ -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);
}
}
*/
}

View File

@@ -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);
}
}
*/
}