forked from I2P_Developers/i2p.i2p
Whitespace removals.
This commit is contained in:
@ -356,7 +356,7 @@ public class SummaryHelper extends HelperBase {
|
||||
Collections.sort(clients, new AlphaComparator());
|
||||
|
||||
StringBuilder buf = new StringBuilder(512);
|
||||
buf.append("<h3><a href=\"i2ptunnel/index.jsp\" target=\"_blank\" title=\"Add/remove/edit & control your client and server tunnels (local destinations).\" title=\"View existing tunnels and tunnel build status.\">Local destinations</a></h3><hr><table>");
|
||||
buf.append("<h3><a href=\"i2ptunnel/index.jsp\" target=\"_blank\" title=\"Add/remove/edit & control your client and server tunnels (local destinations).\" title=\"View existing tunnels and tunnel build status.\">Local destinations</a></h3><hr><table class=\"tunnels\">");
|
||||
|
||||
for (Iterator iter = clients.iterator(); iter.hasNext(); ) {
|
||||
Destination client = (Destination)iter.next();
|
||||
|
@ -17,15 +17,13 @@
|
||||
<jsp:getProperty name="formhandler" property="allMessages" />
|
||||
<jsp:useBean class="net.i2p.router.web.ConfigKeyringHelper" id="keyringhelper" scope="request" />
|
||||
<jsp:setProperty name="keyringhelper" property="contextId" value="<%=(String)session.getAttribute("i2p.contextId")%>" />
|
||||
<div class="configure"><p><h3>Keyring</h3>
|
||||
<div class="configure"><h2>Keyring</h2>
|
||||
The router keyring is used to decrypt encrypted leaseSets.
|
||||
The keyring may contain keys for local or remote encrypted destinations.
|
||||
<div class="wideload"><p>
|
||||
<jsp:getProperty name="keyringhelper" property="summary" />
|
||||
</p></div>
|
||||
|
||||
<br>
|
||||
|
||||
<form action="configkeyring.jsp" method="POST">
|
||||
<% String prev = System.getProperty("net.i2p.router.web.ConfigKeyringHandler.nonce");
|
||||
if (prev != null) System.setProperty("net.i2p.router.web.ConfigKeyringHandler.noncePrev", prev);
|
||||
|
@ -31,7 +31,6 @@
|
||||
if (prev != null) System.setProperty("net.i2p.router.web.ConfigPeerHandler.noncePrev", prev);
|
||||
System.setProperty("net.i2p.router.web.ConfigPeerHandler.nonce", new java.util.Random().nextLong()+""); %>
|
||||
<input type="hidden" name="nonce" value="<%=System.getProperty("net.i2p.router.web.ConfigPeerHandler.nonce")%>" />
|
||||
<p>
|
||||
<a name="sh"> </a>
|
||||
<a name="unsh"> </a>
|
||||
<a name="bonus"> </a>
|
||||
@ -40,7 +39,6 @@
|
||||
<input type="text" size="55" name="peer" value="<%=peer%>" /></div>
|
||||
<h3>Manually Ban / Unban a Peer</h3>
|
||||
Banning will prevent the participation of this peer in tunnels you create.
|
||||
<hr>
|
||||
<div class="formaction">
|
||||
<input type="submit" name="action" value="Ban peer until restart" />
|
||||
<input type="submit" name="action" value="Unban peer" />
|
||||
@ -53,26 +51,22 @@
|
||||
Bonuses may be positive or negative, and affect the peer's inclusion in Fast
|
||||
and High Capacity tiers. Fast peers are used for client tunnels, and High
|
||||
Capacity peers are used for some exploratory tunnels. Current bonuses are
|
||||
displayed on the <a href="profiles.jsp">profiles page</a>.
|
||||
<p>
|
||||
displayed on the <a href="profiles.jsp">profiles page</a>.<br>
|
||||
<% long speed = 0; long capacity = 0;
|
||||
if (! "".equals(peer)) {
|
||||
// get existing bonus values?
|
||||
}
|
||||
%>
|
||||
<hr>
|
||||
<div class="mediumtags">Speed:
|
||||
<input type="text" size="8" name="speed" value="<%=speed%>" />
|
||||
Capacity:
|
||||
<input type="text" size="8" name="capacity" value="<%=capacity%>" />
|
||||
<input type="submit" name="action" value="Adjust peer bonuses" /></div>
|
||||
</p>
|
||||
</form>
|
||||
<a name="shitlist"> </a>
|
||||
<jsp:useBean class="net.i2p.router.web.ProfilesHelper" id="profilesHelper" scope="request" />
|
||||
<jsp:setProperty name="profilesHelper" property="contextId" value="<%=(String)session.getAttribute("i2p.contextId")%>" />
|
||||
<jsp:getProperty name="profilesHelper" property="shitlistSummary" />
|
||||
<hr>
|
||||
<div class="wideload">
|
||||
<jsp:getProperty name="peerhelper" property="blocklistSummary" />
|
||||
|
||||
|
@ -71,12 +71,12 @@ function toggleAll(category)
|
||||
<input type="hidden" name="action" value="foo" />
|
||||
<input type="hidden" name="nonce" value="<%=System.getProperty("net.i2p.router.web.ConfigStatsHandler.nonce")%>" />
|
||||
<h3>Configure I2P Stat Collection</h3>
|
||||
Enable full stats?
|
||||
<p>Enable full stats?
|
||||
<input type="checkbox" class="optbox" name="isFull" value="true" <%
|
||||
if (statshelper.getIsFull()) { %>checked="true" <% } %>/>
|
||||
(change requires restart to take effect)<br>
|
||||
Stat file: <input type="text" name="filename" value="<%=statshelper.getFilename()%>" /><br>
|
||||
Filter: (<a href="javascript: void(null);" onclick="toggleAll('*')">toggle all</a>)<br>
|
||||
Filter: (<a href="javascript: void(null);" onclick="toggleAll('*')">toggle all</a>)<br></p>
|
||||
<div class="wideload">
|
||||
<table>
|
||||
<% while (statshelper.hasMoreStats()) {
|
||||
|
@ -20,7 +20,7 @@
|
||||
<jsp:setProperty name="formhandler" property="*" />
|
||||
<jsp:setProperty name="formhandler" property="contextId" value="<%=(String)session.getAttribute("i2p.contextId")%>" />
|
||||
<jsp:getProperty name="formhandler" property="allMessages" />
|
||||
<div class="configure"><h3>Router Console Theme</h3>
|
||||
<div class="configure"><div class="topshimten"><h3>Router Console Theme</h3></div>
|
||||
<%
|
||||
// userAgent defined in confignav
|
||||
if (userAgent == null || !userAgent.contains("MSIE")) {
|
||||
|
@ -18,11 +18,11 @@ help with other aspects of the project, please see the documentation for
|
||||
You may also try the <a href="http://forum.i2p/">I2P forum</a>
|
||||
or IRC.<br>
|
||||
|
||||
<h2>Summary Bar Information</h2><div align="justify">
|
||||
<h2>Summary Bar Information</h2><p>
|
||||
Many of the stats on the summary bar may be
|
||||
<a href="configstats.jsp">configured</a> to be
|
||||
<a href="graphs.jsp">graphed</a> for further analysis.
|
||||
</div><h3>General</h3><ul>
|
||||
</p><h3>General</h3><ul>
|
||||
<li class="tidylist"><b>Ident:</b>
|
||||
The first four characters (24 bits) of your 44-character (256-bit) Base64 router hash.
|
||||
The full hash is shown on your <a href="netdb.jsp?r=.">router info page</a>.
|
||||
@ -129,9 +129,8 @@ or reject all requests for a number of reasons, to control
|
||||
the bandwidth and CPU demands and maintain capacity for
|
||||
local clients.</ul>
|
||||
|
||||
<h2>Legal stuff</h2><div align="justify">
|
||||
The I2P router (router.jar) and SDK (i2p.jar) are almost entirely public domain, with
|
||||
a few notable exceptions:</div><br><ul>
|
||||
<h2>Legal stuff</h2><p>The I2P router (router.jar) and SDK (i2p.jar) are almost entirely public domain, with
|
||||
a few notable exceptions:</p><ul>
|
||||
<li class="tidylist">ElGamal and DSA code, under the BSD license, written by TheCrypto</li>
|
||||
<li class="tidylist">SHA256 and HMAC-SHA256, under the MIT license, written by the Legion of the Bouncycastle</li>
|
||||
<li class="tidylist">AES code, under the Cryptix (MIT) license, written by the Cryptix team</li>
|
||||
@ -166,7 +165,7 @@ details on other applications available, as well as their licenses, please see t
|
||||
client applications can be found on our <a href="http://www.i2p2.i2p/download">download page</a>.
|
||||
.</p>
|
||||
|
||||
<h2>Release history</h2>
|
||||
<h2>Release history</h2><br>
|
||||
<jsp:useBean class="net.i2p.router.web.ContentHelper" id="contenthelper" scope="request" />
|
||||
<% java.io.File fpath = new java.io.File(net.i2p.I2PAppContext.getGlobalContext().getBaseDir(), "history.txt"); %>
|
||||
<jsp:setProperty name="contenthelper" property="page" value="<%=fpath.getAbsolutePath()%>" />
|
||||
|
@ -209,6 +209,15 @@ div.routersummary tr {
|
||||
border: 0 !important;
|
||||
}
|
||||
|
||||
.tunnels {
|
||||
margin-top: 3px;
|
||||
}
|
||||
|
||||
.tunnels tr {
|
||||
padding: 4px 0 !important;
|
||||
margin-left: -7px !important;
|
||||
}
|
||||
|
||||
div.routersummary form {
|
||||
margin-top: 8px;
|
||||
}
|
||||
@ -260,7 +269,7 @@ div.main {
|
||||
}
|
||||
|
||||
div.main ul {
|
||||
margin: 0;
|
||||
margin: 5px 0 -10px -10px;
|
||||
}
|
||||
|
||||
div.main li {
|
||||
@ -274,11 +283,28 @@ div.main li:first-child {
|
||||
padding-top: 15px;
|
||||
}
|
||||
|
||||
div.main hr:last-child {
|
||||
margin: 15px 0 10px 0;
|
||||
}
|
||||
|
||||
div.main textarea {
|
||||
width: 98% !important;
|
||||
margin: 2px 0 2px 5px;
|
||||
}
|
||||
|
||||
div.main h2 {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
div.welcome {
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
div.main h2:first-child, div.main h3:first-child {
|
||||
margin-top: 0px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
div.news {
|
||||
margin: -5px 0px 0 195px;
|
||||
padding: -10px 0px 8px 0px;
|
||||
@ -299,11 +325,11 @@ div.news {
|
||||
div.news li {
|
||||
text-align: justify;
|
||||
list-style: none;
|
||||
margin: -15px 15px -30px -20px;
|
||||
margin: -15px 15px -25px -20px;
|
||||
padding: 0px 0 15px 0;
|
||||
border-bottom: 2px dotted #cc7;
|
||||
border-top: 0px solid #cc7;
|
||||
padding: 3px 5px 5px 5px;
|
||||
padding: 3px 5px 5px 0;
|
||||
font-size: 10pt;
|
||||
color: #540;
|
||||
}
|
||||
@ -326,9 +352,9 @@ div.news a:visited {
|
||||
div.news hr {
|
||||
color: #cc7;
|
||||
background: #cc7;
|
||||
height: 2px;
|
||||
height: 1px;
|
||||
border: 0px solid #cccc77;
|
||||
margin: 5px 0;
|
||||
margin: 2px 0 0 0;
|
||||
}
|
||||
|
||||
div.confignav {
|
||||
@ -362,6 +388,22 @@ div.configure tr {
|
||||
-moz-box-shadow: inset 0px 0px 1px 0px #bbf;
|
||||
}
|
||||
|
||||
div.configure li:first-child, div.main li:first-child {
|
||||
margin-top: -10px;
|
||||
}
|
||||
|
||||
div.configure li:last-child {
|
||||
margin-bottom: -5px;
|
||||
}
|
||||
|
||||
div.configure h2:first-child {
|
||||
margin-top: 15px;
|
||||
}
|
||||
|
||||
.topshimten {
|
||||
margin-top: 15px;
|
||||
}
|
||||
|
||||
div.messages {
|
||||
padding: 0px 10px;
|
||||
background: #fff;
|
||||
@ -417,6 +459,7 @@ h3 {
|
||||
border-bottom: 3px solid #aaf;
|
||||
border-top: 0px solid #aaf;
|
||||
letter-spacing: 0.04em;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.proxyfooter{
|
||||
@ -513,6 +556,7 @@ div.joblog:ul {
|
||||
div.joblog li:first-child {
|
||||
margin-top: -10px;
|
||||
}
|
||||
|
||||
div.joblog li:last-child {
|
||||
margin-bottom: -10px;
|
||||
}
|
||||
@ -530,7 +574,11 @@ div.joblog p {
|
||||
}
|
||||
|
||||
div.joblog h3 {
|
||||
margin: 5px 0 5px 0;
|
||||
margin: 10px 0 10px 0;
|
||||
}
|
||||
|
||||
div.joblog h3:first-child {
|
||||
margin: 5px 0 15px 0;
|
||||
}
|
||||
|
||||
div.joblog hr {
|
||||
@ -571,10 +619,10 @@ p {
|
||||
}
|
||||
|
||||
.langbox {
|
||||
margin: 20px -15px 0px 5px;
|
||||
margin: 10px -20px 0px 5px;
|
||||
color: #001;
|
||||
font-size: 7pt;
|
||||
width: 180px;
|
||||
width: 220px;
|
||||
text-align: center;
|
||||
float: right;
|
||||
valign: middle;
|
||||
@ -641,7 +689,7 @@ tt {
|
||||
}
|
||||
|
||||
div.graphspanel {
|
||||
padding: 20px 10px;
|
||||
padding: 15px 5px 20px 5px;
|
||||
margin: -20px;
|
||||
background: #ddf url('images/lightbluetile.png');
|
||||
-moz-border-radius: 4px;
|
||||
|
@ -154,7 +154,7 @@ div.routersummary h4 {
|
||||
div.routersummary table {
|
||||
border: 0;
|
||||
text-align: center !important;
|
||||
margin: -1px -4px -4px -4px;
|
||||
margin: -4px -4px -4px -4px;
|
||||
width: 185px !important;
|
||||
overflow: hidden;
|
||||
font-size: 8pt;
|
||||
@ -169,6 +169,15 @@ div.routersummary tr {
|
||||
border: 0 !important;
|
||||
}
|
||||
|
||||
.tunnels {
|
||||
margin-top: 0 !important;
|
||||
}
|
||||
|
||||
.tunnels tr {
|
||||
padding: 4px 0 !important;
|
||||
margin-left: -6px !important;
|
||||
}
|
||||
|
||||
div.routersummary form {
|
||||
margin-top: 8px;
|
||||
}
|
||||
@ -292,6 +301,7 @@ div.news li {
|
||||
padding: 5px 5px 5px 0;
|
||||
vertical-align: middle;
|
||||
word-wrap: break-word;
|
||||
color: #99f;
|
||||
}
|
||||
|
||||
div.news h4 {
|
||||
@ -532,7 +542,7 @@ a:link, h2 a:link{
|
||||
}
|
||||
|
||||
a:visited{
|
||||
color: #7bb;
|
||||
color: #77f;
|
||||
text-decoration: none;
|
||||
font-weight: bold;
|
||||
word-wrap: break-word;
|
||||
|
@ -161,6 +161,15 @@ div.routersummary tr {
|
||||
border: 0 !important;
|
||||
}
|
||||
|
||||
.tunnels {
|
||||
margin-top: 0 !important;
|
||||
margin-left: -7px !important;
|
||||
}
|
||||
|
||||
.tunnels tr {
|
||||
padding: 4px 0 !important;
|
||||
}
|
||||
|
||||
div.routersummary form {
|
||||
margin-top: 8px;
|
||||
}
|
||||
@ -261,6 +270,10 @@ div.main hr, hr {
|
||||
margin: 10px 0;
|
||||
}
|
||||
|
||||
hr:last-child {
|
||||
margin-top: 20px !important;
|
||||
}
|
||||
|
||||
div.main textarea {
|
||||
background: #eef;
|
||||
color: #001;
|
||||
@ -531,14 +544,14 @@ code {
|
||||
}
|
||||
|
||||
a:link{
|
||||
color: #007;
|
||||
color: #008;
|
||||
text-decoration: none;
|
||||
font-weight: bold;
|
||||
word-wrap: break-word;
|
||||
}
|
||||
|
||||
a:visited{
|
||||
color: #606;
|
||||
color: #004;
|
||||
text-decoration: none;
|
||||
font-weight: bold;
|
||||
}
|
||||
@ -863,7 +876,7 @@ div.joblog li:first-child {
|
||||
margin-top: 10px;
|
||||
}
|
||||
div.joblog li:last-child {
|
||||
margin-bottom: -10px;
|
||||
margin-bottom: -15px;
|
||||
}
|
||||
|
||||
div.joblog form:first-child {
|
||||
|
@ -6,7 +6,7 @@
|
||||
<a href="/index.jsp?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
|
||||
<a href="/index.jsp?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a></div>
|
||||
</div>
|
||||
<h2>Welcome to I2P!</h2>
|
||||
<div class="welcome"><h2>Welcome to I2P!</h2></div>
|
||||
<p>If you've just started I2P, the Active: numbers on the left should start to
|
||||
grow over the next few minutes and you'll see a "shared clients" local destination
|
||||
listed on the left (if not, <a href="#trouble">see below</a>). Once those show
|
||||
@ -37,7 +37,7 @@ up, you can:</p>
|
||||
</ul><br>
|
||||
There are many more eepsites - just follow the links from the ones you see,
|
||||
bookmark your favorites, and visit them often!
|
||||
</li><br>
|
||||
</li>
|
||||
<ul>
|
||||
<li class="tidylist"><b>browse the web</b> - there is currently an HTTP
|
||||
"outproxy" in I2P hooked up to your own HTTP proxy on port 4444 - simply
|
||||
|
@ -1,7 +1,7 @@
|
||||
<div align="right">
|
||||
<div class="langbox" align="right"><a href="/index.jsp?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a> <a href="/index.jsp?lang=zh"><img src="/flags.jsp?c=cn" title="Chinese" alt="Chinese"></a> <a href="/index.jsp?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a> <a href="/index.jsp?lang=fr"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a> <a href="/index.jsp?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a> <a href="/index.jsp?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a></div>
|
||||
</div>
|
||||
<h2>Willkommen zu I2P!</h2>
|
||||
<div class="welcome"><h2>Willkommen zu I2P!</h2></div>
|
||||
<p>Wenn Du gerade I2P gestartet hast, sollten die "Active:" Zahlen links in den nächsten paar Minuten anwachsen und Du siehst dann dort ein "shared clients" lokales Ziel gelistet (falls nicht, <a href="#trouble">siehe Unten</a>). Sobald das erscheint, kannst Du:</p>
|
||||
<ul>
|
||||
<li class="tidylist"><b>"Eepsites" besuchen</b> - In I2P sind anonym gehostete Websites -
|
||||
|
@ -1,7 +1,7 @@
|
||||
<div align="right">
|
||||
<div class="langbox" align="right"><a href="/index.jsp?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a> <a href="/index.jsp?lang=zh"><img src="/flags.jsp?c=cn" title="Chinese" alt="Chinese"></a> <a href="/index.jsp?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a> <a href="/index.jsp?lang=fr"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a> <a href="/index.jsp?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a> <a href="/index.jsp?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a></div>
|
||||
</div>
|
||||
<h2>Bienvenu a I2P!</h2>
|
||||
<div class="welcome"><h2>Bienvenu a I2P!</h2></div>
|
||||
<p>Si vous venez juste de lancer I2P, les chiffres sur la gauche à coté de Active devraient commencer à augmenter dans les prochaines minutes et vous verrez un "Shared client" en destination locale listés sur la gauche (si non, <a href=#trouble>voir plus bas</a>). Une fois qu'ils apparaissent, vous pouvez:</p>
|
||||
<ul>
|
||||
<li class="tidylist"><b>parcourir les "eepsites"</b> - sur I2P il y a des sites web anonymes hébergés - dites à votre navigateur d'utiliser <b>le HTTP proxy a l'adresse 127.0.0.1 port 4444</b>, ensuite vous pouvez naviguer sur les eepsites:<br>
|
||||
|
@ -1,7 +1,7 @@
|
||||
<div align="right">
|
||||
<div class="langbox" align="right"><a href="/index.jsp?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a> <a href="/index.jsp?lang=zh"><img src="/flags.jsp?c=cn" title="Chinese" alt="Chinese"></a> <a href="/index.jsp?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a> <a href="/index.jsp?lang=fr"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a> <a href="/index.jsp?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a> <a href="/index.jsp?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a></div>
|
||||
</div>
|
||||
<h2>Welkom bij I2P!</h2>
|
||||
<div class="welcome"><h2>Welkom bij I2P!</h2></div>
|
||||
<p>Als je net I2P opgestart hebt, zullen de 'Active:' (Actieve) getallen aan de linkerkant in de komende minuten stijgen, en je zal een "Shared clients" (Gedeelde clients) lokale bestemming zien staan aan de linkerkant (indien niet, <a href=#trouble>zie hieronder</a>). Eenmaal je deze bestemming ziet, kan je:</p>
|
||||
<ul>
|
||||
<li><b>surfen naar "eepsites"</b> - op I2P zijn er anonieme websites - stel je browser in om de <b>HTTP proxy op 127.0.0.1, poort 4444</b> te gebruiken, en surf vervolgens naar een eepsite:<br><br>
|
||||
|
@ -1,7 +1,7 @@
|
||||
<div align="right">
|
||||
<div class="langbox" align="right"><a href="/index.jsp?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a> <a href="/index.jsp?lang=zh"><img src="/flags.jsp?c=cn" title="Chinese" alt="Chinese"></a> <a href="/index.jsp?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a> <a href="/index.jsp?lang=fr"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a> <a href="/index.jsp?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a> <a href="/index.jsp?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a></div>
|
||||
</div>
|
||||
<h2>Welcome to I2P!</h2>
|
||||
<div class="welcome"><h2>Welcome to I2P!</h2></div>
|
||||
<p>Om du just har startat I2P kommer de "Aktiva: #/#" börja öka inom
|
||||
några få minuter och du kommer se en destination kallad "delade
|
||||
klienter" på den vänstra listan (om inte <a href="#trouble">se
|
||||
|
@ -6,7 +6,7 @@
|
||||
<a href="/index.jsp?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
|
||||
<a href="/index.jsp?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a></div>
|
||||
</div>
|
||||
<h2>欢迎使用 I2P!</h2>
|
||||
<div class="welcome"><h2>欢迎使用 I2P!</h2></div>
|
||||
<p>如果 I2P 已经运行,未来的几分钟里控制台左侧的活动节点(Active)数量将会增加,并会出现名为共享客户端("shared clients") 的本地目标。(如果没有,请见 <a href="#trouble">疑难解答</a>)。待出现以上消息后,您可以:</p>
|
||||
<ul>
|
||||
<li><B>浏览 I2P 站点 "eepsites"</B> - I2P 网络内匿名运行的小站 - 您要首先设置浏览器的 <b>HTTP 代理</b> 为 127.0.0.1:4444 然后才能浏览 I2P 站点 - <ul>
|
||||
|
@ -642,10 +642,10 @@ public class NTCPTransport extends TransportImpl {
|
||||
long totalRecv = 0;
|
||||
|
||||
StringBuilder buf = new StringBuilder(512);
|
||||
buf.append("<p><b id=\"ntcpcon\"><h3>NTCP connections: ").append(peers.size());
|
||||
buf.append("<h3 id=\"ntcpcon\">NTCP connections: ").append(peers.size());
|
||||
buf.append(". Limit: ").append(getMaxConnections());
|
||||
buf.append(". Timeout: ").append(DataHelper.formatDuration(_pumper.getIdleTimeout()));
|
||||
buf.append(".</b></h3>\n" +
|
||||
buf.append(".</h3>\n" +
|
||||
"<div class=\"wideload\"><table>\n" +
|
||||
"<tr><th><a href=\"#def.peer\">Peer</a></th>" +
|
||||
"<th>Dir</th>" +
|
||||
@ -730,7 +730,7 @@ public class NTCPTransport extends TransportImpl {
|
||||
"</td></tr>\n");
|
||||
}
|
||||
|
||||
buf.append("</table></div></p>\n");
|
||||
buf.append("</table></div>\n");
|
||||
out.write(buf.toString());
|
||||
buf.setLength(0);
|
||||
}
|
||||
|
@ -2002,7 +2002,7 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority
|
||||
buf.append(sendTotal).append("</b></td> <td align=\"center\"><b>").append(recvTotal).append("</b></td>\n");
|
||||
buf.append(" <td align=\"center\"><b>").append(resentTotal);
|
||||
buf.append("</b></td> <td align=\"center\"><b>").append(dupRecvTotal).append("</b></td>\n");
|
||||
buf.append(" </tr></table></div></p><p>\n");
|
||||
buf.append(" </tr></table></div>\n");
|
||||
long bytesTransmitted = _context.bandwidthLimiter().getTotalAllocatedOutboundBytes();
|
||||
// NPE here early
|
||||
double averagePacketSize = _context.statManager().getRate("udp.sendPacketSize").getLifetimeAverageValue();
|
||||
@ -2011,7 +2011,7 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority
|
||||
double nondupSent = ((double)bytesTransmitted - ((double)resentTotal)*averagePacketSize);
|
||||
double bwResent = (nondupSent <= 0 ? 0d : ((((double)resentTotal)*averagePacketSize) / nondupSent));
|
||||
buf.append("<h3>Percentage of bytes retransmitted (lifetime): ").append(formatPct(bwResent));
|
||||
buf.append("</h3><i>(Includes retransmission required by packet loss)</i><br></p>\n");
|
||||
buf.append("</h3><i>(Includes retransmission required by packet loss)</i>\n");
|
||||
out.write(buf.toString());
|
||||
buf.setLength(0);
|
||||
out.write(KEY);
|
||||
@ -2031,7 +2031,7 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority
|
||||
}
|
||||
|
||||
private static final String KEY = "<h3>Definitions:</h3><div class=\"configure\">" +
|
||||
"<br><b id=\"def.peer\">Peer</b>: the remote peer.<br>\n" +
|
||||
"<p><b id=\"def.peer\">Peer</b>: the remote peer.<br>\n" +
|
||||
"<b id=\"def.dir\">Dir</b>: v means they offer to introduce us, ^ means we offer to introduce them.<br>\n" +
|
||||
"<b id=\"def.idle\">Idle</b>: the idle time is how long since a packet has been received or sent.<br>\n" +
|
||||
"<b id=\"def.rate\">In/out</b>: the rates show a smoothed inbound and outbound transfer rate (KBytes per second).<br>\n" +
|
||||
@ -2049,10 +2049,10 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority
|
||||
"<b id=\"def.send\">TX</b>: the number of packets sent to the peer.<br>\n" +
|
||||
"<b id=\"def.recv\">RX</b>: the number of packets received from the peer.<br>\n" +
|
||||
"<b id=\"def.resent\">ReTX</b>: the number of packets retransmitted to the peer.<br>\n" +
|
||||
"<b id=\"def.dupRecv\">DupRX</b>: the number of duplicate packets received from the peer." +
|
||||
"<b id=\"def.dupRecv\">DupRX</b>: the number of duplicate packets received from the peer.</p>" +
|
||||
"</div>\n";
|
||||
|
||||
/**
|
||||
/*
|
||||
* Cache the bid to reduce object churn
|
||||
*/
|
||||
private class SharedBid extends TransportBid {
|
||||
|
Reference in New Issue
Block a user