From 46970f5a4a0ee4ec913e8990cb440503c2774819 Mon Sep 17 00:00:00 2001 From: z3d Date: Fri, 17 Jul 2009 12:26:29 +0000 Subject: [PATCH 1/7] I2P Tunnels shakeup. --- apps/i2ptunnel/jsp/index.jsp | 586 ++++++++++++++++++----------------- 1 file changed, 295 insertions(+), 291 deletions(-) diff --git a/apps/i2ptunnel/jsp/index.jsp b/apps/i2ptunnel/jsp/index.jsp index 8f506c8d0..4c26bd3da 100644 --- a/apps/i2ptunnel/jsp/index.jsp +++ b/apps/i2ptunnel/jsp/index.jsp @@ -1,291 +1,295 @@ -<%@page contentType="text/html" import="net.i2p.i2ptunnel.web.IndexBean"%> - - - - - - I2PTunnel Webmanager - List - - - - - <% if (indexBean.allowCSS()) { - %> - - - <% } - %> - - - - -
-
-

Status Messages

-
- -
-
-
- - - -
-
-
- - -
- -
-
-

Local Client Tunnels

-
- -
-
-
- -
- -
-
- -
-
- -
-
- -
-
- -
- -
-
-
- <% - for (int curClient = 0; curClient < indexBean.getTunnelCount(); curClient++) { - if (!indexBean.isClient(curClient)) continue; - %> - -
- - <%=indexBean.getClientPort(curClient)%> -
-
- - <%=indexBean.getTunnelType(curClient)%> -
-
- - <%=indexBean.getClientInterface(curClient)%> -
-
- - <% - switch (indexBean.getTunnelStatus(curClient)) { - case IndexBean.STARTING: - %>
Starting...
- Stop - <% - break; - case IndexBean.STANDBY: - %>
Standby
- Stop - <% - break; - case IndexBean.RUNNING: - %>
Running
- Stop - <% - break; - case IndexBean.NOT_RUNNING: - %>
Stopped
- Start - <% - break; - } - %>
- - <% if (!"sockstunnel".equals(indexBean.getInternalType(curClient))) { %> -
- - -
- <% } %> - -
- -
<%=indexBean.getTunnelDescription(curClient)%>
-
- -
-
-
- <% - } - %> -
-
-
- - -
- -
-
-

Local Server Tunnels

-
- -
-
-
- -
- -
-
- -
-
- -
-
- -
- - <% - for (int curServer = 0; curServer < indexBean.getTunnelCount(); curServer++) { - if (indexBean.isClient(curServer)) continue; - - %> - -
- - - <% - if ("httpserver".equals(indexBean.getInternalType(curServer))) { - %> - <%=indexBean.getServerTarget(curServer)%> - <% - } else { - %><%=indexBean.getServerTarget(curServer)%> - <% - } - %> -
-
- <% - if ("httpserver".equals(indexBean.getInternalType(curServer)) && indexBean.getTunnelStatus(curServer) == IndexBean.RUNNING) { - %> - Preview - <% - } else if (indexBean.getTunnelStatus(curServer) == IndexBean.RUNNING) { - %>Base32 Address:
<%=indexBean.getDestHashBase32(curServer)%>.b32.i2p
- <% - } else { - %>No Preview - <% - } - %>
-
- - <% - switch (indexBean.getTunnelStatus(curServer)) { - case IndexBean.STARTING: - %>
Starting...
- Stop - <% - break; - case IndexBean.RUNNING: - %>
Running
- Stop - <% - break; - case IndexBean.NOT_RUNNING: - %>
Stopped
- Start - <% - break; - } - %>
- -
- -
<%=indexBean.getTunnelDescription(curServer)%>
-
- -
-
-
- <% - } - %> -
-
-
- - -
- - - - - - +<%@page contentType="text/html" import="net.i2p.i2ptunnel.web.IndexBean"%> + + + + + + I2PTunnel Webmanager - List + + + + + <% if (indexBean.allowCSS()) { + %> + + + <% } + %> + + + + +
+
+

Status Messages

+
+ +
+
+
+ + + +
+
+
+ + +
+ + + + + +
+
+ +

I2P Server Tunnels

+
+ + +
+ +
+ +
+
+ +
+
+ +
+
+ +
+ + <% + for (int curServer = 0; curServer < indexBean.getTunnelCount(); curServer++) { + if (indexBean.isClient(curServer)) continue; + + %> + +
+ + + <% + if ("httpserver".equals(indexBean.getInternalType(curServer))) { + %> + <%=indexBean.getServerTarget(curServer)%> + <% + } else { + %><%=indexBean.getServerTarget(curServer)%> + <% + } + %> +
+
+ <% + if ("httpserver".equals(indexBean.getInternalType(curServer)) && indexBean.getTunnelStatus(curServer) == IndexBean.RUNNING) { + %> + Preview + <% + } else if (indexBean.getTunnelStatus(curServer) == IndexBean.RUNNING) { + %>Base32 Address:
<%=indexBean.getDestHashBase32(curServer)%>.b32.i2p
+ <% + } else { + %>No Preview + <% + } + %>
+
+ + <% + switch (indexBean.getTunnelStatus(curServer)) { + case IndexBean.STARTING: + %>
Starting...
+ Stop + <% + break; + case IndexBean.RUNNING: + %>
Running
+ Stop + <% + break; + case IndexBean.NOT_RUNNING: + %>
Stopped
+ Start + <% + break; + } + %>
+ +
+ +
<%=indexBean.getTunnelDescription(curServer)%>
+
+ +
+
+
+ <% + } + %> +
+
+
+ + +
+ + +
+
+ +

I2P Client Tunnels

+
+ + +
+ +
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+ +
+
+
+ <% + for (int curClient = 0; curClient < indexBean.getTunnelCount(); curClient++) { + if (!indexBean.isClient(curClient)) continue; + %> + +
+ + <%=indexBean.getClientPort(curClient)%> +
+
+ + <%=indexBean.getTunnelType(curClient)%> +
+
+ + <%=indexBean.getClientInterface(curClient)%> +
+
+ + <% + switch (indexBean.getTunnelStatus(curClient)) { + case IndexBean.STARTING: + %>
Starting...
+ Stop + <% + break; + case IndexBean.STANDBY: + %>
Standby
+ Stop + <% + break; + case IndexBean.RUNNING: + %>
Running
+ Stop + <% + break; + case IndexBean.NOT_RUNNING: + %>
Stopped
+ Start + <% + break; + } + %>
+ + <% if (!"sockstunnel".equals(indexBean.getInternalType(curClient))) { %> +
+ + +
+ <% } %> + +
+ +
<%=indexBean.getTunnelDescription(curClient)%>
+
+ +
+
+
+ <% + } + %> +
+
+
+ + +
+ + + From 2772a0e5e48cf3a37ba3f977059362932fe8fd60 Mon Sep 17 00:00:00 2001 From: z3d Date: Fri, 17 Jul 2009 13:09:05 +0000 Subject: [PATCH 2/7] More I2Ptunnels page surgery. Not out of the woods yet! --- apps/i2ptunnel/jsp/index.jsp | 9 +++++---- installer/resources/themes/console/light/default.css | 11 +++++++---- .../resources/themes/console/light/i2ptunnel.css | 10 +++++++--- 3 files changed, 19 insertions(+), 11 deletions(-) diff --git a/apps/i2ptunnel/jsp/index.jsp b/apps/i2ptunnel/jsp/index.jsp index 4c26bd3da..dd3bde8f1 100644 --- a/apps/i2ptunnel/jsp/index.jsp +++ b/apps/i2ptunnel/jsp/index.jsp @@ -74,7 +74,7 @@ p-equiv="Content-Type" content="text/html; charset=UTF-8" />
-
+ <% for (int curServer = 0; curServer < indexBean.getTunnelCount(); curServer++) { @@ -118,7 +118,8 @@ p-equiv="Content-Type" content="text/html; charset=UTF-8" /> <% switch (indexBean.getTunnelStatus(curServer)) { case IndexBean.STARTING: - %>
Starting...
+ %>
+
Starting...
Stop <% break; @@ -194,7 +195,6 @@ p-equiv="Content-Type" content="text/html; charset=UTF-8" />
-
<% for (int curClient = 0; curClient < indexBean.getTunnelCount(); curClient++) { @@ -221,7 +221,7 @@ p-equiv="Content-Type" content="text/html; charset=UTF-8" /> <% switch (indexBean.getTunnelStatus(curClient)) { case IndexBean.STARTING: - %>
Starting...
+ %>
Starting...
Stop <% break; @@ -291,5 +291,6 @@ p-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ diff --git a/installer/resources/themes/console/light/default.css b/installer/resources/themes/console/light/default.css index 2411bdca7..d4d4603a9 100644 --- a/installer/resources/themes/console/light/default.css +++ b/installer/resources/themes/console/light/default.css @@ -29,7 +29,7 @@ label { height: 28px; font-weight: normal; text-align: right; - font-size: 7pt; + font-size: 8pt; font-style: italic; -moz-box-sizing: border-box; box-sizing: border-box; @@ -122,8 +122,11 @@ hr { .separator, .subdivider { clear: both; height: 1px; - margin: 3px 0px 3px 0px; + margin: 1px 0px 1px 0px; border-bottom: 1px solid #225; +/* + display: none; +*/ } .subdivider { @@ -150,7 +153,7 @@ hr { } .control { - margin: 4px 0 0 0 !important; + margin: 4px 0 0 4px !important; padding: 2px; overflow: hidden; /* @@ -171,7 +174,7 @@ hr { } .control:active { - border: 2px inset; + border: 1px inset; background-color: #003; color: #ff6600; } diff --git a/installer/resources/themes/console/light/i2ptunnel.css b/installer/resources/themes/console/light/i2ptunnel.css index 5df715e01..8b3a9aee3 100644 --- a/installer/resources/themes/console/light/i2ptunnel.css +++ b/installer/resources/themes/console/light/i2ptunnel.css @@ -83,10 +83,14 @@ height: 100px; padding: 0 0 0 4px; margin: 1px 0 4px 0; - background-color: #000088; + background-color: #005; color: #fff; - font-family: "Lucida Console", "Andale Mono", "Courier New", Courier, mono; - border: 1px inset #002; + font-family: "Lucida Console", "DejaVu Sans Mono", "Andale Mono", "Courier New", Courier, mono; + border: 2px inset #002; + font-size: 10pt !important; + font-weight: bold; + text-align: justify !important; + background: url(images/darkbluetile.png); } #tunnelListPage .footer .control { From b869860a83c7cf802ae16d76dc2829e5135056ed Mon Sep 17 00:00:00 2001 From: z3d Date: Fri, 17 Jul 2009 13:40:34 +0000 Subject: [PATCH 3/7] Restore accidentally reverted

styling. Apply some polish to configtunnels.jsp . --- apps/routerconsole/jsp/configtunnels.jsp | 102 +++++++++--------- .../resources/themes/console/dark/console.css | 14 ++- 2 files changed, 61 insertions(+), 55 deletions(-) diff --git a/apps/routerconsole/jsp/configtunnels.jsp b/apps/routerconsole/jsp/configtunnels.jsp index 4a53940cd..d1b08b5b2 100644 --- a/apps/routerconsole/jsp/configtunnels.jsp +++ b/apps/routerconsole/jsp/configtunnels.jsp @@ -1,51 +1,51 @@ -<%@page contentType="text/html"%> -<%@page pageEncoding="UTF-8"%> - - - -I2P Router Console - config tunnels -<%@include file="css.jsp" %> - - -<%@include file="nav.jsp" %> -<%@include file="summary.jsp" %> - - -" /> -

I2P Tunnel Configuration

-
- <%@include file="confignav.jsp" %> - - - " /> - " /> - " /> - " /> - - - -

- NOTE: The default settings work for most people. - There is a fundamental tradeoff between anonymity and performance. - Tunnels longer than 3 hops (for example 2 hops + 0-2 hops, 3 hops + 0-1 hops, 3 hops + 0-2 hops), - or a high quantity + backup quantity, may severely reduce performance or reliability. - High CPU and/or high outbound bandwidth usage may result. - Change these settings with care, and adjust them if you have problems. -

- -
- <% String prev = System.getProperty("net.i2p.router.web.ConfigTunnelsHandler.nonce"); - if (prev != null) System.setProperty("net.i2p.router.web.ConfigTunnelsHandler.noncePrev", prev); - System.setProperty("net.i2p.router.web.ConfigTunnelsHandler.nonce", new java.util.Random().nextLong()+""); %> - " /> - - - Note - Exploratory tunnel setting changes are stored in the router.config file.
- Client tunnel changes are temporary and are not saved.
- To make permanent client tunnel changes see the i2ptunnel page.
-
- -
- - - +<%@page contentType="text/html"%> +<%@page pageEncoding="UTF-8"%> + + + +I2P Router Console - config tunnels +<%@include file="css.jsp" %> + + +<%@include file="nav.jsp" %> +<%@include file="summary.jsp" %> + + +" /> +

I2P Tunnel Configuration

+
+ <%@include file="confignav.jsp" %> + + + " /> + " /> + " /> + " /> + + +
+

+ NOTE: The default settings work for most people. + There is a fundamental tradeoff between anonymity and performance. + Tunnels longer than 3 hops (for example 2 hops + 0-2 hops, 3 hops + 0-1 hops, 3 hops + 0-2 hops), + or a high quantity + backup quantity, may severely reduce performance or reliability. + High CPU and/or high outbound bandwidth usage may result. + Change these settings with care, and adjust them if you have problems. +

+ +
+ <% String prev = System.getProperty("net.i2p.router.web.ConfigTunnelsHandler.nonce"); + if (prev != null) System.setProperty("net.i2p.router.web.ConfigTunnelsHandler.noncePrev", prev); + System.setProperty("net.i2p.router.web.ConfigTunnelsHandler.nonce", new java.util.Random().nextLong()+""); %> + " /> + + + Note - Exploratory tunnel setting changes are stored in the router.config file.
+ Client tunnel changes are temporary and are not saved.
+ To make permanent client tunnel changes see the i2ptunnel page.
+
+ +
+
+ + diff --git a/installer/resources/themes/console/dark/console.css b/installer/resources/themes/console/dark/console.css index 7440a98f8..87180c286 100644 --- a/installer/resources/themes/console/dark/console.css +++ b/installer/resources/themes/console/dark/console.css @@ -166,6 +166,7 @@ div.configure { -khtml-border-radius: 4px; border-radius: 4px; border: 1px solid #99f; + background: url(images/darkbluebg.png); } div.messages { @@ -340,10 +341,15 @@ h2 a:hover { } h3 { - border-bottom: 1px; - border-bottom-style: solid; - border-bottom-color: #99f; - padding: 5px 0; + border: 1px solid #99f; + border-left: 5px solid #99f; + padding: 3px 5px 3px 5px; + margin: 20px 0 15px 0; + border-radius: 0 4px 4px 0; + -moz-border-radius: 0 4px 4px 0; + -khtml-border-radius: 0 4px 4px 0; + background: #004; + background: url(images/darkbluebg.png); } h4 { From ec49d9becf4decec900fd84007e8a8fbdae48280 Mon Sep 17 00:00:00 2001 From: z3d Date: Fri, 17 Jul 2009 15:33:18 +0000 Subject: [PATCH 4/7] configstats.jsp layout tweak. --- apps/routerconsole/jsp/configstats.jsp | 223 ++++++++++++------------- 1 file changed, 111 insertions(+), 112 deletions(-) diff --git a/apps/routerconsole/jsp/configstats.jsp b/apps/routerconsole/jsp/configstats.jsp index e2dde4c44..82e70b9c7 100644 --- a/apps/routerconsole/jsp/configstats.jsp +++ b/apps/routerconsole/jsp/configstats.jsp @@ -1,112 +1,111 @@ -<%@page contentType="text/html"%> -<%@page pageEncoding="UTF-8"%> - - - -I2P Router Console - config stats -<%@include file="css.jsp" %> - - -<%@include file="nav.jsp" %> -<%@include file="summary.jsp" %> -

I2P Stats Configuration

-
- <%@include file="confignav.jsp" %> - - - " /> - - - - - " /> - -
- <% String prev = System.getProperty("net.i2p.router.web.ConfigStatsHandler.nonce"); - if (prev != null) System.setProperty("net.i2p.router.web.ConfigStatsHandler.noncePrev", prev); - System.setProperty("net.i2p.router.web.ConfigStatsHandler.nonce", new java.util.Random().nextLong()+""); %> - - " /> - Enable full stats? - checked="true" <% } %>/> - (change requires restart to take effect)
- Stat file:
- Filter: (toggle all)
- - <% while (statshelper.hasMoreStats()) { - while (statshelper.groupRequired()) { %> - <% - } // end iterating over required groups for the current stat %> - - - <% - } // end iterating over all stats %> - - - - - - - -
- <%=statshelper.getCurrentGroupName()%> - (toggle all) -
LogGraph
- - checked="true" <% } %>/> - <% if (statshelper.getCurrentCanBeGraphed()) { %> - checked="true" <% } %>/><% } %><%=statshelper.getCurrentStatName()%>:
- <%=statshelper.getCurrentStatDescription()%>

Advanced filter: -

-
- - - +<%@page contentType="text/html"%> +<%@page pageEncoding="UTF-8"%> + + + +I2P Router Console - config stats +<%@include file="css.jsp" %> + + +<%@include file="nav.jsp" %> +<%@include file="summary.jsp" %> +

I2P Stats Configuration

+
+ <%@include file="confignav.jsp" %> + + + " /> + + + + + " /> +
+
+ <% String prev = System.getProperty("net.i2p.router.web.ConfigStatsHandler.nonce"); + if (prev != null) System.setProperty("net.i2p.router.web.ConfigStatsHandler.noncePrev", prev); + System.setProperty("net.i2p.router.web.ConfigStatsHandler.nonce", new java.util.Random().nextLong()+""); %> + + " /> + Enable full stats? + checked="true" <% } %>/> + (change requires restart to take effect)
+ Stat file:
+ Filter: (toggle all)
+ + <% while (statshelper.hasMoreStats()) { + while (statshelper.groupRequired()) { %> + <% + } // end iterating over required groups for the current stat %> + + + <% + } // end iterating over all stats %> + + + + + + +
+ <%=statshelper.getCurrentGroupName()%> + (toggle all) +
LogGraph
+ + checked="true" <% } %>/> + <% if (statshelper.getCurrentCanBeGraphed()) { %> + checked="true" <% } %>/><% } %><%=statshelper.getCurrentStatName()%>:
+ <%=statshelper.getCurrentStatDescription()%>

Advanced filter: +

+
+
+ + From 1bff5a7b9e1b51122af44bf7f9969a95a1bcb4f0 Mon Sep 17 00:00:00 2001 From: z3d Date: Fri, 17 Jul 2009 16:28:38 +0000 Subject: [PATCH 5/7] Visual overhaul of config pages. --- apps/routerconsole/jsp/configadvanced.jsp | 85 ++++++----- apps/routerconsole/jsp/configclients.jsp | 138 ++++++++--------- apps/routerconsole/jsp/configkeyring.jsp | 120 ++++++++------- apps/routerconsole/jsp/configlogging.jsp | 122 ++++++++------- apps/routerconsole/jsp/configpeer.jsp | 171 ++++++++++----------- apps/routerconsole/jsp/configservice.jsp | 174 +++++++++++----------- apps/routerconsole/jsp/configstats.jsp | 2 +- apps/routerconsole/jsp/configupdate.jsp | 140 +++++++++-------- 8 files changed, 500 insertions(+), 452 deletions(-) diff --git a/apps/routerconsole/jsp/configadvanced.jsp b/apps/routerconsole/jsp/configadvanced.jsp index 96750c465..ab177676c 100644 --- a/apps/routerconsole/jsp/configadvanced.jsp +++ b/apps/routerconsole/jsp/configadvanced.jsp @@ -1,41 +1,44 @@ -<%@page contentType="text/html"%> -<%@page pageEncoding="UTF-8"%> - - - -I2P Router Console - config advanced -<%@include file="css.jsp" %> - - -<%@include file="nav.jsp" %> -<%@include file="summary.jsp" %> - - -" /> - -

I2P Advanced Configuration

-
- - <%@include file="confignav.jsp" %> - - - - " /> - - -
- <% String prev = System.getProperty("net.i2p.router.web.ConfigAdvancedHandler.nonce"); - if (prev != null) System.setProperty("net.i2p.router.web.ConfigAdvancedHandler.noncePrev", prev); - System.setProperty("net.i2p.router.web.ConfigAdvancedHandler.nonce", new java.util.Random().nextLong()+""); %> - " /> - -
-

- -

- NOTE: Some changes may require a restart to take effect. -

-
-
- - +<%@page contentType="text/html"%> +<%@page pageEncoding="UTF-8"%> + + + +I2P Router Console - config advanced +<%@include file="css.jsp" %> + + +<%@include file="nav.jsp" %> +<%@include file="summary.jsp" %> + + +" /> + +

I2P Advanced Configuration

+
+ + <%@include file="confignav.jsp" %> + + + + " /> + +
+
+ <% String prev = System.getProperty("net.i2p.router.web.ConfigAdvancedHandler.nonce"); + if (prev != null) System.setProperty("net.i2p.router.web.ConfigAdvancedHandler.noncePrev", prev); + System.setProperty("net.i2p.router.web.ConfigAdvancedHandler.nonce", new java.util.Random().nextLong()+""); %> + " /> + +

+

+ + +

+

+ NOTE: Some changes may require a restart to take effect. +

+
+
+
+ + diff --git a/apps/routerconsole/jsp/configclients.jsp b/apps/routerconsole/jsp/configclients.jsp index 9a06aa4d2..9634908d4 100644 --- a/apps/routerconsole/jsp/configclients.jsp +++ b/apps/routerconsole/jsp/configclients.jsp @@ -1,69 +1,69 @@ -<%@page contentType="text/html"%> -<%@page pageEncoding="UTF-8"%> - - - -I2P Router Console - config clients -<%@include file="css.jsp" %> - - - -<%@include file="nav.jsp" %> -<%@include file="summary.jsp" %> - - -" /> -

I2P Client Configuration

-
- <%@include file="confignav.jsp" %> - - - " /> - " /> - " /> - - - -
- <% String prev = System.getProperty("net.i2p.router.web.ConfigClientsHandler.nonce"); - if (prev != null) System.setProperty("net.i2p.router.web.ConfigClientsHandler.noncePrev", prev); - System.setProperty("net.i2p.router.web.ConfigClientsHandler.nonce", new java.util.Random().nextLong()+""); %> - " /> -

Client Configuration

-

- The Java clients listed below are started by the router and run in the same JVM. -

- -

- All changes require restart to take effect. To change other client options, edit the clients.config file. -


- -

-
-

WebApp Configuration

-

- The Java web applications listed below are started by the webConsole client and run in the same JVM as the router. - They are usually web applications accessible through the router console. - They may be complete applications (e.g. i2psnark), - front-ends to another client or application which must be separately enabled (e.g. susidns, i2ptunnel), - or have no web interface at all (e.g. addressbook). -

- A web app may also be disabled by removing the .war file from the webapps directory; - however the .war file and web app will reappear when you update your router to a newer version, - so disabling the web app here is the preferred method. -

- -

- -

- All changes require restart to take effect. To change other webapp options, edit the webapps.config file. -

-
-
- - - +<%@page contentType="text/html"%> +<%@page pageEncoding="UTF-8"%> + + + +I2P Router Console - config clients +<%@include file="css.jsp" %> + + + +<%@include file="nav.jsp" %> +<%@include file="summary.jsp" %> + + +" /> +

I2P Client Configuration

+
+ <%@include file="confignav.jsp" %> + + + " /> + " /> + " /> + + +
+
+ <% String prev = System.getProperty("net.i2p.router.web.ConfigClientsHandler.nonce"); + if (prev != null) System.setProperty("net.i2p.router.web.ConfigClientsHandler.noncePrev", prev); + System.setProperty("net.i2p.router.web.ConfigClientsHandler.nonce", new java.util.Random().nextLong()+""); %> + " /> +

Client Configuration

+

+ The Java clients listed below are started by the router and run in the same JVM. +

+ +

+ All changes require restart to take effect. To change other client options, edit the clients.config file. +


+ +

+
+

WebApp Configuration

+

+ The Java web applications listed below are started by the webConsole client and run in the same JVM as the router. + They are usually web applications accessible through the router console. + They may be complete applications (e.g. i2psnark), + front-ends to another client or application which must be separately enabled (e.g. susidns, i2ptunnel), + or have no web interface at all (e.g. addressbook). +

+ A web app may also be disabled by removing the .war file from the webapps directory; + however the .war file and web app will reappear when you update your router to a newer version, + so disabling the web app here is the preferred method. +

+ +


+ +


+ All changes require restart to take effect. To change other webapp options, edit the webapps.config file. +

+
+
+
+ + diff --git a/apps/routerconsole/jsp/configkeyring.jsp b/apps/routerconsole/jsp/configkeyring.jsp index 5f31e1b3b..4dbc914cd 100644 --- a/apps/routerconsole/jsp/configkeyring.jsp +++ b/apps/routerconsole/jsp/configkeyring.jsp @@ -1,57 +1,63 @@ -<%@page contentType="text/html"%> -<%@page pageEncoding="UTF-8"%> - - - -I2P Router Console - config keyring -<%@include file="css.jsp" %> - - -<%@include file="nav.jsp" %> -<%@include file="summary.jsp" %> -

I2P Keyring Configuration

-
- <%@include file="confignav.jsp" %> - - - - " /> - - - - - - " /> - -

-

Keyring

- The router keyring is used to decrypt encrypted leaseSets. - The keyring may contain keys for local or remote encrypted destinations. -

-

- -
- -
- <% String prev = System.getProperty("net.i2p.router.web.ConfigKeyringHandler.nonce"); - if (prev != null) System.setProperty("net.i2p.router.web.ConfigKeyringHandler.noncePrev", prev); - System.setProperty("net.i2p.router.web.ConfigKeyringHandler.nonce", new java.util.Random().nextLong()+""); %> - " /> -

Manual Keyring Addition

- Enter keys for encrypted remote destinations here. - Keys for local destinations must be entered on the I2PTunnel page. -

- -
Dest. name, hash, or full key: - -
Session Key: - -
-
-

- - -
- - - +<%@page contentType="text/html"%> +<%@page pageEncoding="UTF-8"%> + + + +I2P Router Console - config keyring +<%@include file="css.jsp" %> + + +<%@include file="nav.jsp" %> +<%@include file="summary.jsp" %> +

I2P Keyring Configuration

+
+ <%@include file="confignav.jsp" %> + + + + " /> + + + + + + " /> +
+

+

Keyring

+ The router keyring is used to decrypt encrypted leaseSets. + The keyring may contain keys for local or remote encrypted destinations. +

+

+ +
+ +
+ <% String prev = System.getProperty("net.i2p.router.web.ConfigKeyringHandler.nonce"); + if (prev != null) System.setProperty("net.i2p.router.web.ConfigKeyringHandler.noncePrev", prev); + System.setProperty("net.i2p.router.web.ConfigKeyringHandler.nonce", new java.util.Random().nextLong()+""); %> + " /> +

Manual Keyring Addition

+ Enter keys for encrypted remote destinations here. + Keys for local destinations must be entered on the I2PTunnel page. +

+ + + + +
Dest. name, hash, or full key: + +
Session Key: + +
+
+ +
+
+

+ + +
+
+ + diff --git a/apps/routerconsole/jsp/configlogging.jsp b/apps/routerconsole/jsp/configlogging.jsp index a3f854c0e..3f4c6daa2 100644 --- a/apps/routerconsole/jsp/configlogging.jsp +++ b/apps/routerconsole/jsp/configlogging.jsp @@ -1,54 +1,68 @@ -<%@page contentType="text/html"%> -<%@page pageEncoding="UTF-8"%> - - - -I2P Router Console - config logging -<%@include file="css.jsp" %> - - -" /> - -<%@include file="nav.jsp" %> -<%@include file="summary.jsp" %> -

I2P Logging Configuration

-
- <%@include file="confignav.jsp" %> - - - - " /> - - -
- <% String prev = System.getProperty("net.i2p.router.web.ConfigLoggingHandler.nonce"); - if (prev != null) System.setProperty("net.i2p.router.web.ConfigLoggingHandler.noncePrev", prev); - System.setProperty("net.i2p.router.web.ConfigLoggingHandler.nonce", new java.util.Random().nextLong()+""); %> - " /> - - -
Logging filename: - " />
- (the symbol '@' will be replaced during log rotation) -
Log record format: - " />
- (use 'd' = date, 'c' = class, 't' = thread, 'p' = priority, 'm' = message) -
Log date format: - " />
- ('MM' = month, 'dd' = day, 'HH' = hour, 'mm' = minute, 'ss' = second, 'SSS' = millisecond) -
Max log file size: - " />
-
Default log level: - -
(DEBUG and INFO are not recommended defaults, as they will drastically slow down your router) -
Log level overrides: - -
- - -
-
-
- - - +<%@page contentType="text/html"%> +<%@page pageEncoding="UTF-8"%> + + + +I2P Router Console - config logging +<%@include file="css.jsp" %> + + +" /> + +<%@include file="nav.jsp" %> +<%@include file="summary.jsp" %> +

I2P Logging Configuration

+
+ <%@include file="confignav.jsp" %> + + + + " /> + +
+
+ <% String prev = System.getProperty("net.i2p.router.web.ConfigLoggingHandler.nonce"); + if (prev != null) System.setProperty("net.i2p.router.web.ConfigLoggingHandler.noncePrev", prev); + System.setProperty("net.i2p.router.web.ConfigLoggingHandler.nonce", new java.util.Random().nextLong()+""); %> + " /> + + + + + + + + + + +
Logging filename: + " /> +
(the symbol '@' will be replaced during log rotation) +
Log record format: + " /> +
(use 'd' = date, 'c' = class, 't' = thread, 'p' = priority, + 'm' = message) +
Log date format: + " /> +
('MM' = month, 'dd' = day, 'HH' = hour, 'mm' = minute, 'ss' + = second, 'SSS' = millisecond) +
Max log file size: + " /> +
+
Default log level: +
(DEBUG and INFO are not recommended defaults, + as they will drastically slow down your router) +
Log level overrides: + +

+
+
+ + +
+
+
+
+
+ + diff --git a/apps/routerconsole/jsp/configpeer.jsp b/apps/routerconsole/jsp/configpeer.jsp index b465559cd..2fc0de9ec 100644 --- a/apps/routerconsole/jsp/configpeer.jsp +++ b/apps/routerconsole/jsp/configpeer.jsp @@ -1,84 +1,87 @@ -<%@page contentType="text/html"%> -<%@page pageEncoding="UTF-8"%> - - - -I2P Router Console - config peers -<%@include file="css.jsp" %> - - -<%@include file="nav.jsp" %> -<%@include file="summary.jsp" %> -

I2P Peer Configuration

-
- <%@include file="confignav.jsp" %> - - - - " /> - - - - - - " /> - - <% String peer = ""; - if (request.getParameter("peer") != null) - peer = request.getParameter("peer"); - %> - -
- <% String prev = System.getProperty("net.i2p.router.web.ConfigPeerHandler.nonce"); - 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()+""); %> - " /> -
-

- - - -

Manual Peer Controls

- Router Hash: - -

Manually Shitlist / Unshitlist a Router

- Shitlisting will prevent the participation of this peer in tunnels you create. -

- - - <% if (! "".equals(peer)) { %> - <---- click to verify action - <% } %> -

- -

Adjust Profile Bonuses

- 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 profiles page. -

- <% long speed = 0; long capacity = 0; - if (! "".equals(peer)) { - // get existing bonus values? - } - %> - Speed: - - Capacity: - - -

-
- -
- - - " /> - -
- - - -
- - - +<%@page contentType="text/html"%> +<%@page pageEncoding="UTF-8"%> + + + +I2P Router Console - config peers +<%@include file="css.jsp" %> + + +<%@include file="nav.jsp" %> +<%@include file="summary.jsp" %> +

I2P Peer Configuration

+
+ <%@include file="confignav.jsp" %> + + + + " /> + + + + + + " /> + + <% String peer = ""; + if (request.getParameter("peer") != null) + peer = request.getParameter("peer"); + %> +
+
+ <% String prev = System.getProperty("net.i2p.router.web.ConfigPeerHandler.nonce"); + 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()+""); %> + " /> +
+

+ + + +

Manual Peer Controls

+ Router Hash: + +

Manually Shitlist / Unshitlist a Router

+ Shitlisting will prevent the participation of this peer in tunnels you create. +
+

+ + + <% if (! "".equals(peer)) { %> + <---- click to verify action + <% } %> +

+ +

Adjust Profile Bonuses

+ 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 profiles page. +
+

+ <% long speed = 0; long capacity = 0; + if (! "".equals(peer)) { + // get existing bonus values? + } + %> + Speed: + + Capacity: + + +

+
+ +
+ + + " /> + +
+ + + +
+
+ + diff --git a/apps/routerconsole/jsp/configservice.jsp b/apps/routerconsole/jsp/configservice.jsp index e465757ff..d2ed15b22 100644 --- a/apps/routerconsole/jsp/configservice.jsp +++ b/apps/routerconsole/jsp/configservice.jsp @@ -1,87 +1,87 @@ -<%@page contentType="text/html"%> -<%@page pageEncoding="UTF-8"%> - - - -I2P Router Console - config service -<%@include file="css.jsp" %> - - -<%@include file="nav.jsp" %> -<%@include file="summary.jsp" %> -

I2P Service Configuration

-
- <%@include file="confignav.jsp" %> - - - - " /> - - -
- <% String prev = System.getProperty("net.i2p.router.web.ConfigServiceHandler.nonce"); - if (prev != null) System.setProperty("net.i2p.router.web.ConfigServiceHandler.noncePrev", prev); - System.setProperty("net.i2p.router.web.ConfigServiceHandler.nonce", new java.util.Random().nextLong()+""); %> - " /> -

Shutdown the router

-

Graceful shutdown lets the router satisfy the agreements it has already made - before shutting down, but may take a few minutes. If you need to kill the - router immediately, that option is available as well.

- - - - -
- <% if (System.getProperty("wrapper.version") != null) { %> -

If you want the router to restart itself after shutting down, you can choose one of - the following. This is useful in some situations - for example, if you changed - some settings that client applications only read at startup, such as the routerconsole password - or the interface it listens on. A graceful restart will take a few minutes (but your peers - will appreciate your patience), while a hard restart does so immediately. After tearing down - the router, it will wait 1 minute before starting back up again.

- - - - <% } %> -
- <% if ( (System.getProperty("os.name") != null) && (System.getProperty("os.name").startsWith("Win")) ) { %> -

Systray integration

-

On the windows platform, there is a small application to sit in the system - tray, allowing you to view the router's status (later on, I2P client applications - will be able to integrate their own functionality into the system tray as well). - If you are on windows, you can either enable or disable that icon here.

- - -
-

Run on startup

-

You can control whether I2P is run on startup or not by selecting one of the - following options - I2P will install (or remove) a service accordingly. You can - also run the install_i2p_service_winnt.bat (or - uninstall_i2p_service_winnt.bat) from the command line, if you prefer.

- -
-

Note: If you are running I2P as service right now, removing it will shut - down your router immediately. You may want to consider shutting down gracefully, as - above, then running uninstall_i2p_service_winnt.bat.


- <% } %> - - <% if (System.getProperty("wrapper.version") != null) { %> -

Debugging

-

At times, it may be helpful to debug I2P by getting a thread dump. To do so, - please select the following option and review the thread dumped to - wrapper.log.

- - <% } %>
- -

Launch browser on router startup?

-

I2P's main configuration interface is this web console, so for your convenience - I2P can launch a web browser pointing at - http://127.0.0.1:7657/index.jsp whenever - the router starts up.

- - -

-
- - - +<%@page contentType="text/html"%> +<%@page pageEncoding="UTF-8"%> + + + +I2P Router Console - config service +<%@include file="css.jsp" %> + + +<%@include file="nav.jsp" %> +<%@include file="summary.jsp" %> +

I2P Service Configuration

+
+ <%@include file="confignav.jsp" %> + + + + " /> + +
+
+ <% String prev = System.getProperty("net.i2p.router.web.ConfigServiceHandler.nonce"); + if (prev != null) System.setProperty("net.i2p.router.web.ConfigServiceHandler.noncePrev", prev); + System.setProperty("net.i2p.router.web.ConfigServiceHandler.nonce", new java.util.Random().nextLong()+""); %> + " /> +

Shutdown the router

+

Graceful shutdown lets the router satisfy the agreements it has already made + before shutting down, but may take a few minutes. If you need to kill the + router immediately, that option is available as well.

+ + + + +
+ <% if (System.getProperty("wrapper.version") != null) { %> +

If you want the router to restart itself after shutting down, you can choose one of + the following. This is useful in some situations - for example, if you changed + some settings that client applications only read at startup, such as the routerconsole password + or the interface it listens on. A graceful restart will take a few minutes (but your peers + will appreciate your patience), while a hard restart does so immediately. After tearing down + the router, it will wait 1 minute before starting back up again.

+ + + + <% } %> +
+ <% if ( (System.getProperty("os.name") != null) && (System.getProperty("os.name").startsWith("Win")) ) { %> +

Systray integration

+

On the windows platform, there is a small application to sit in the system + tray, allowing you to view the router's status (later on, I2P client applications + will be able to integrate their own functionality into the system tray as well). + If you are on windows, you can either enable or disable that icon here.

+ + +
+

Run on startup

+

You can control whether I2P is run on startup or not by selecting one of the + following options - I2P will install (or remove) a service accordingly. You can + also run the install_i2p_service_winnt.bat (or + uninstall_i2p_service_winnt.bat) from the command line, if you prefer.

+ +
+

Note: If you are running I2P as service right now, removing it will shut + down your router immediately. You may want to consider shutting down gracefully, as + above, then running uninstall_i2p_service_winnt.bat.


+ <% } %> + + <% if (System.getProperty("wrapper.version") != null) { %> +

Debugging

+

At times, it may be helpful to debug I2P by getting a thread dump. To do so, + please select the following option and review the thread dumped to + wrapper.log.

+ + <% } %>
+ +

Launch browser on router startup?

+

I2P's main configuration interface is this web console, so for your convenience + I2P can launch a web browser pointing at + http://127.0.0.1:7657/index.jsp whenever + the router starts up.

+ + +

+
+
+ + diff --git a/apps/routerconsole/jsp/configstats.jsp b/apps/routerconsole/jsp/configstats.jsp index 82e70b9c7..039f9b55f 100644 --- a/apps/routerconsole/jsp/configstats.jsp +++ b/apps/routerconsole/jsp/configstats.jsp @@ -65,7 +65,7 @@ function toggleAll(category) " /> -
+
<% String prev = System.getProperty("net.i2p.router.web.ConfigStatsHandler.nonce"); if (prev != null) System.setProperty("net.i2p.router.web.ConfigStatsHandler.noncePrev", prev); diff --git a/apps/routerconsole/jsp/configupdate.jsp b/apps/routerconsole/jsp/configupdate.jsp index 9127eaa9b..72aac377b 100644 --- a/apps/routerconsole/jsp/configupdate.jsp +++ b/apps/routerconsole/jsp/configupdate.jsp @@ -1,59 +1,81 @@ -<%@page contentType="text/html"%> -<%@page pageEncoding="UTF-8"%> - - - -I2P Router Console - config update -<%@include file="css.jsp" %> - - -<%@include file="nav.jsp" %> -<%@include file="summary.jsp" %> -

I2P Update Configuration

-
- <%@include file="confignav.jsp" %> - - - - " /> - - - - " /> - -

 
- - <% String prev = System.getProperty("net.i2p.router.web.ConfigUpdateHandler.nonce"); - if (prev != null) System.setProperty("net.i2p.router.web.ConfigUpdateHandler.noncePrev", prev); - System.setProperty("net.i2p.router.web.ConfigUpdateHandler.nonce", new java.util.Random().nextLong()+""); %> - " /> - - - - - -
News: - <% if ("true".equals(System.getProperty("net.i2p.router.web.UpdateHandler.updateInProgress", "false"))) { %> - Update In Progress
- <% } else { %> - -<% } %>

News URL:">
Refresh frequency: - -
Update policy: - -
Update through the eepProxy? - -
eepProxy host: -" /> -
eepProxy port: -" /> -
Update URLs: - -
Trusted keys: - -

-
- -
- - +<%@page contentType="text/html"%> +<%@page pageEncoding="UTF-8"%> + + + +I2P Router Console - config update +<%@include file="css.jsp" %> + + +<%@include file="nav.jsp" %> +<%@include file="summary.jsp" %> +

I2P Update Configuration

+
+ <%@include file="confignav.jsp" %> + + + + " /> + + + + " /> +
+
+
+
+ <% String prev = System.getProperty("net.i2p.router.web.ConfigUpdateHandler.nonce"); + if (prev != null) System.setProperty("net.i2p.router.web.ConfigUpdateHandler.noncePrev", prev); + System.setProperty("net.i2p.router.web.ConfigUpdateHandler.nonce", new java.util.Random().nextLong()+""); %> + " /> + + + + + + + + + + + + + + + + + + + + + + + + +
News: <% if ("true".equals(System.getProperty("net.i2p.router.web.UpdateHandler.updateInProgress", "false"))) { %> Update In Progress
<% } else { %> + <% } %>

News URL:">
Refresh frequency: + +
Update policy: + +
Update through the eepProxy? + +
eepProxy host: + " /> +
eepProxy port: + " /> +
Update URLs: + +
Trusted keys: + +

+
+
+ + +
+
+
+
+
+ + From 15dbf67983fbaee65e0af31fdd1d053f83106110 Mon Sep 17 00:00:00 2001 From: z3d Date: Fri, 17 Jul 2009 16:52:08 +0000 Subject: [PATCH 6/7] Config page(s) tweaked. --- apps/routerconsole/jsp/config.jsp | 553 +++++++++++----------- apps/routerconsole/jsp/configadvanced.jsp | 2 +- 2 files changed, 277 insertions(+), 278 deletions(-) diff --git a/apps/routerconsole/jsp/config.jsp b/apps/routerconsole/jsp/config.jsp index c95a96d46..4152e434a 100644 --- a/apps/routerconsole/jsp/config.jsp +++ b/apps/routerconsole/jsp/config.jsp @@ -1,277 +1,276 @@ -<%@page contentType="text/html" %> - - - -I2P Router Console - config networking -<%@include file="css.jsp" %> - - -<%@include file="nav.jsp" %> -<%@include file="summary.jsp" %> - - -" /> -

I2P Network Configuration

-
- <%@include file="confignav.jsp" %> - - - - " /> - - -
- <% String prev = System.getProperty("net.i2p.router.web.ConfigNetHandler.nonce"); - if (prev != null) System.setProperty("net.i2p.router.web.ConfigNetHandler.noncePrev", prev); - System.setProperty("net.i2p.router.web.ConfigNetHandler.nonce", new java.util.Random().nextLong()+""); %> - " /> - -

Bandwidth limiter

-

- I2P will work best if you configure your rates to match the speed of your internet connection. -

-
-

- -
" /> KBps - In ()
- -
" /> KBps - Out ()
- -
- Share ()
-
-

- <% int share = nethelper.getShareBandwidth(); - if (share < 12) { - out.print("NOTE: You have configured I2P to share only " + share + "KBps. "); - out.print("I2P requires at least 12KBps to enable sharing. "); - out.print("Please enable sharing (participating in tunnels) by configuring more bandwidth. "); - out.print("It improves your anonymity by creating cover traffic, and helps the network.
"); - } else { - out.print("You have configured I2P to share " + share + "KBps. "); - out.print("The higher the share bandwidth the more you improve your anonymity and help the network.
"); - } - %> -

-
-

-
- -

IP and Transport Configuration

-

- The default settings will work for most people. There is help below. -

-

- UPnP Configuration:
- /> - Enable UPnP to open firewall ports - UPnP status -

- IP Configuration:
- Externally reachable hostname or IP address:
- /> - Use all auto-detect methods
- /> - Disable UPnP IP address detection
- /> - Ignore local interface IP address
- /> - Use SSU IP address detection only
- /> - Specify hostname or IP: - " /> - <% String[] ips = nethelper.getAddresses(); - if (ips.length > 0) { - out.print(" or \n"); - } - %> -
- /> - Hidden mode - do not publish IP (prevents participating traffic)
-

- UDP Configuration:
- UDP port: - " />
- -

- TCP Configuration:
- Externally reachable hostname or IP address:
- /> - Use auto-detected IP address - (currently ) - if we are not firewalled
- /> - Always use auto-detected IP address (Not firewalled)
- /> - Specify hostname or IP: - " />
- /> - Disable inbound (Firewalled)
- /> - Completely disable (select only if behind a firewall that throttles or blocks outbound TCP)
-

- Externally reachable TCP port:
- /> - Use the same port configured for UDP - (currently )
- /> - Specify Port: - " />
-

Note: Changing these settings will restart your router. -

- -
-

Configuration Help:

-
-

- While I2P will work fine behind most firewalls, your speeds and network integration will generally improve - if the I2P port (generally 8887) is forwarded for both UDP and TCP. -

- If you can, please poke a hole in your firewall to allow unsolicited UDP and TCP packets to reach - you. If you can't, I2P supports UPnP (Universal Plug and Play) and UDP hole punching - with "SSU introductions" to relay traffic. Most of the options above are for special situations, - for example where UPnP does not work correctly, or a firewall not under your control is doing - harm. Certain firewalls such as symmetric NATs may not work well with I2P. -

- -

- UPnP is used to communicate with Internet Gateway Devices (IGDs) to detect the external IP address - and forward ports. - UPnP support is beta, and may not work for any number of reasons: -

    -
  • No UPnP-compatible device present -
  • UPnP disabled on the device -
  • Software firewall interference with UPnP -
  • Bugs in the device's UPnP implementation -
  • Multiple firewall/routers in the internet connection path -
  • UPnP device change, reset, or address change -

- Reviewing the UPnP status may help. - UPnP may be enabled or disabled above, but a change requires a router restart to take effect. -

Hostnames entered above will be published in the network database. - They are not private. - Also, do not enter a private IP address like 127.0.0.1 or 192.168.1.1. - If you specify the wrong IP address or - hostname, or do not properly configure your NAT or firewall, your network performance will degrade - substantially. When in doubt, leave the settings at the defaults.

-

-

Reachability Help:

-

- While I2P will work fine behind most firewalls, your speeds and network integration will generally improve - if the I2P port (generally 8887) to both UDP and TCP. - If you think you have opened up your firewall and I2P still thinks you are firewalled, remember - that you may have multiple firewalls, for example both software packages and external hardware routers. - If there is an error, the logs may also help diagnose the problem. -

    -
  • OK - Your UDP port does not appear to be firewalled. -
  • Firewalled - Your UDP port appears to be firewalled. - As the firewall detection methods are not 100% reliable, this may occasionally be displayed in error. - However, if it appears consistently, you should check whether both your external and internal - firewalls are open on port 8887. I2P will work fine when firewalled, there is no reason for concern. - When firewalled, the router uses "introducers" to relay inbound connections. - However, you will get more participating traffic and help the network more if you can open your - firewall(s). If you think you have already done so, remember that you may have both a hardware - and a software firewall, or be behind an additional, institutional firewall you cannot control. - Also, some routers cannot correctly forward both TCP and UDP on a single port, or may have other - limitations or bugs that prevent them from passing traffic through to I2P. -
  • Testing - The router is currently testing whether your UDP port is firewalled. -
  • Hidden - The router is not configured to publish its address, - therefore it does not expect incoming connections. -
  • WARN - Firewalled and Fast - You have configured I2P to share more than 128KBps of bandwidth, - but you are firewalled. While I2P will work fine in this configuration, if you really have - over 128KBps of bandwidth to share, it will be much more helpful to the network if - you open your firewall. -
  • WARN - Firewalled and Floodfill - You have configured I2P to be a floodfill router, but - you are firewalled. For best participation as a floodfill router, you should open your firewall. -
  • WARN - Firewalled with Inbound TCP Enabled - You have configured inbound TCP, however - your UDP port is firewalled, and therefore it is likely that your TCP port is firewalled as well. - If your TCP port is firewalled with inbound TCP enabled, routers will not be able to contact - you via TCP, which will hurt the network. Please open your firewall or disable inbound TCP above. -
  • WARN - Firewalled with UDP Disabled - - You have configured inbound TCP, however - you have disabled UDP. You appear to be firewalled on TCP, therefore your router cannot - accept inbound connections. - Please open your firewall or enable UDP. -
  • ERR - Clock Skew - Your system's clock is skewed, which will make it difficult - to participate in the network. Correct your clock setting if this error persists. -
  • ERR - Private TCP Address - You must never advertise an unroutable IP address such as - 127.0.0.1 or 192.168.1.1 as your external address. Correct the address or disable inbound TCP above. -
  • ERR - SymmetricNAT - I2P detected that you are firewalled by a Symmetric NAT. - I2P does not work well behind this type of firewall. You will probably not be able to - accept inbound connections, which will limit your participation in the network. -
  • ERR - UDP Port In Use - Set i2np.udp.internalPort=xxxx in advanced config and restart - - I2P was unable to bind to port 8887 or other configured port. - Check to see if another program is using port 8887. If so, stop that program or configure - I2P to use a different port. This may be a transient error, if the other program is no longer - using the port. However, a restart is always required after this error. -
  • ERR - UDP Disabled and Inbound TCP host/port not set - - You have not configured inbound TCP with a hostname and port above, however - you have disabled UDP. Therefore your router cannot accept inbound connections. - Please configure a TCP host and port above or enable UDP. -
  • ERR - Client Manager I2CP Error - check logs - - This is usually due to a port 7654 conflict. Check the logs to verify. Do you have another I2P instance running? - Stop the conflicting program and restart I2P. -
-

-
-
- - -
- - - +<%@page contentType="text/html" %> + + + +I2P Router Console - config networking +<%@include file="css.jsp" %> + + +<%@include file="nav.jsp" %> +<%@include file="summary.jsp" %> + + +" /> +

I2P Network Configuration

+
+ <%@include file="confignav.jsp" %> + + + + " /> + +
+
+ <% String prev = System.getProperty("net.i2p.router.web.ConfigNetHandler.nonce"); + if (prev != null) System.setProperty("net.i2p.router.web.ConfigNetHandler.noncePrev", prev); + System.setProperty("net.i2p.router.web.ConfigNetHandler.nonce", new java.util.Random().nextLong()+""); %> + " /> + +

Bandwidth limiter

+

+ I2P will work best if you configure your rates to match the speed of your internet connection. +

+
+

+ +
" /> KBps + In ()
+ +
" /> KBps + Out ()
+ +
+ Share ()
+
+

+ <% int share = nethelper.getShareBandwidth(); + if (share < 12) { + out.print("NOTE: You have configured I2P to share only " + share + "KBps. "); + out.print("I2P requires at least 12KBps to enable sharing. "); + out.print("Please enable sharing (participating in tunnels) by configuring more bandwidth. "); + out.print("It improves your anonymity by creating cover traffic, and helps the network.
"); + } else { + out.print("You have configured I2P to share " + share + "KBps. "); + out.print("The higher the share bandwidth the more you improve your anonymity and help the network.
"); + } + %> +

+
+

+
+ +

IP and Transport Configuration

+

+ The default settings will work for most people. There is help below. +

+

+ UPnP Configuration:
+ /> + Enable UPnP to open firewall ports - UPnP status +

+ IP Configuration:
+ Externally reachable hostname or IP address:
+ /> + Use all auto-detect methods
+ /> + Disable UPnP IP address detection
+ /> + Ignore local interface IP address
+ /> + Use SSU IP address detection only
+ /> + Specify hostname or IP: + " /> + <% String[] ips = nethelper.getAddresses(); + if (ips.length > 0) { + out.print(" or \n"); + } + %> +
+ /> + Hidden mode - do not publish IP (prevents participating traffic)
+

+ UDP Configuration:
+ UDP port: + " />
+ +

+ TCP Configuration:
+ Externally reachable hostname or IP address:
+ /> + Use auto-detected IP address + (currently ) + if we are not firewalled
+ /> + Always use auto-detected IP address (Not firewalled)
+ /> + Specify hostname or IP: + " />
+ /> + Disable inbound (Firewalled)
+ /> + Completely disable (select only if behind a firewall that throttles or blocks outbound TCP)
+

+ Externally reachable TCP port:
+ /> + Use the same port configured for UDP + (currently )
+ /> + Specify Port: + " />
+

Note: Changing these settings will restart your router. +

+ +
+

Configuration Help:

+
+

+ While I2P will work fine behind most firewalls, your speeds and network integration will generally improve + if the I2P port (generally 8887) is forwarded for both UDP and TCP. +

+ If you can, please poke a hole in your firewall to allow unsolicited UDP and TCP packets to reach + you. If you can't, I2P supports UPnP (Universal Plug and Play) and UDP hole punching + with "SSU introductions" to relay traffic. Most of the options above are for special situations, + for example where UPnP does not work correctly, or a firewall not under your control is doing + harm. Certain firewalls such as symmetric NATs may not work well with I2P. +

+ +

+ UPnP is used to communicate with Internet Gateway Devices (IGDs) to detect the external IP address + and forward ports. + UPnP support is beta, and may not work for any number of reasons: +

    +
  • No UPnP-compatible device present +
  • UPnP disabled on the device +
  • Software firewall interference with UPnP +
  • Bugs in the device's UPnP implementation +
  • Multiple firewall/routers in the internet connection path +
  • UPnP device change, reset, or address change +

+ Reviewing the UPnP status may help. + UPnP may be enabled or disabled above, but a change requires a router restart to take effect. +

Hostnames entered above will be published in the network database. + They are not private. + Also, do not enter a private IP address like 127.0.0.1 or 192.168.1.1. + If you specify the wrong IP address or + hostname, or do not properly configure your NAT or firewall, your network performance will degrade + substantially. When in doubt, leave the settings at the defaults.

+

+

Reachability Help:

+

+ While I2P will work fine behind most firewalls, your speeds and network integration will generally improve + if the I2P port (generally 8887) to both UDP and TCP. + If you think you have opened up your firewall and I2P still thinks you are firewalled, remember + that you may have multiple firewalls, for example both software packages and external hardware routers. + If there is an error, the logs may also help diagnose the problem. +

    +
  • OK - Your UDP port does not appear to be firewalled. +
  • Firewalled - Your UDP port appears to be firewalled. + As the firewall detection methods are not 100% reliable, this may occasionally be displayed in error. + However, if it appears consistently, you should check whether both your external and internal + firewalls are open on port 8887. I2P will work fine when firewalled, there is no reason for concern. + When firewalled, the router uses "introducers" to relay inbound connections. + However, you will get more participating traffic and help the network more if you can open your + firewall(s). If you think you have already done so, remember that you may have both a hardware + and a software firewall, or be behind an additional, institutional firewall you cannot control. + Also, some routers cannot correctly forward both TCP and UDP on a single port, or may have other + limitations or bugs that prevent them from passing traffic through to I2P. +
  • Testing - The router is currently testing whether your UDP port is firewalled. +
  • Hidden - The router is not configured to publish its address, + therefore it does not expect incoming connections. +
  • WARN - Firewalled and Fast - You have configured I2P to share more than 128KBps of bandwidth, + but you are firewalled. While I2P will work fine in this configuration, if you really have + over 128KBps of bandwidth to share, it will be much more helpful to the network if + you open your firewall. +
  • WARN - Firewalled and Floodfill - You have configured I2P to be a floodfill router, but + you are firewalled. For best participation as a floodfill router, you should open your firewall. +
  • WARN - Firewalled with Inbound TCP Enabled - You have configured inbound TCP, however + your UDP port is firewalled, and therefore it is likely that your TCP port is firewalled as well. + If your TCP port is firewalled with inbound TCP enabled, routers will not be able to contact + you via TCP, which will hurt the network. Please open your firewall or disable inbound TCP above. +
  • WARN - Firewalled with UDP Disabled - + You have configured inbound TCP, however + you have disabled UDP. You appear to be firewalled on TCP, therefore your router cannot + accept inbound connections. + Please open your firewall or enable UDP. +
  • ERR - Clock Skew - Your system's clock is skewed, which will make it difficult + to participate in the network. Correct your clock setting if this error persists. +
  • ERR - Private TCP Address - You must never advertise an unroutable IP address such as + 127.0.0.1 or 192.168.1.1 as your external address. Correct the address or disable inbound TCP above. +
  • ERR - SymmetricNAT - I2P detected that you are firewalled by a Symmetric NAT. + I2P does not work well behind this type of firewall. You will probably not be able to + accept inbound connections, which will limit your participation in the network. +
  • ERR - UDP Port In Use - Set i2np.udp.internalPort=xxxx in advanced config and restart - + I2P was unable to bind to port 8887 or other configured port. + Check to see if another program is using port 8887. If so, stop that program or configure + I2P to use a different port. This may be a transient error, if the other program is no longer + using the port. However, a restart is always required after this error. +
  • ERR - UDP Disabled and Inbound TCP host/port not set - + You have not configured inbound TCP with a hostname and port above, however + you have disabled UDP. Therefore your router cannot accept inbound connections. + Please configure a TCP host and port above or enable UDP. +
  • ERR - Client Manager I2CP Error - check logs - + This is usually due to a port 7654 conflict. Check the logs to verify. Do you have another I2P instance running? + Stop the conflicting program and restart I2P. +
+

+
+ +
+
+
+ + diff --git a/apps/routerconsole/jsp/configadvanced.jsp b/apps/routerconsole/jsp/configadvanced.jsp index ab177676c..a2357ccd1 100644 --- a/apps/routerconsole/jsp/configadvanced.jsp +++ b/apps/routerconsole/jsp/configadvanced.jsp @@ -29,7 +29,7 @@ System.setProperty("net.i2p.router.web.ConfigAdvancedHandler.nonce", new java.util.Random().nextLong()+""); %> " /> -

+

From 8ffdae41827a3643bc71764f77f5b45e94bcec52 Mon Sep 17 00:00:00 2001 From: z3d Date: Fri, 17 Jul 2009 17:30:11 +0000 Subject: [PATCH 7/7] More work on the config pages. --- apps/routerconsole/jsp/config.jsp | 5 +- apps/routerconsole/jsp/configpeer.jsp | 19 ++--- apps/routerconsole/jsp/configservice.jsp | 10 +-- apps/routerconsole/jsp/configstats.jsp | 2 +- apps/routerconsole/jsp/configui.jsp | 81 +++++++++---------- apps/routerconsole/jsp/configupdate.jsp | 1 + .../themes/console/light/console.css | 2 +- 7 files changed, 57 insertions(+), 63 deletions(-) diff --git a/apps/routerconsole/jsp/config.jsp b/apps/routerconsole/jsp/config.jsp index 4152e434a..079799d1a 100644 --- a/apps/routerconsole/jsp/config.jsp +++ b/apps/routerconsole/jsp/config.jsp @@ -30,7 +30,6 @@

I2P will work best if you configure your rates to match the speed of your internet connection.

-

" /> KBps @@ -67,7 +66,6 @@


- diff --git a/apps/routerconsole/jsp/configpeer.jsp b/apps/routerconsole/jsp/configpeer.jsp index 2fc0de9ec..8109d123d 100644 --- a/apps/routerconsole/jsp/configpeer.jsp +++ b/apps/routerconsole/jsp/configpeer.jsp @@ -33,8 +33,7 @@ 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()+""); %> " /> -
-

+

@@ -43,21 +42,19 @@

Manually Shitlist / Unshitlist a Router

Shitlisting will prevent the participation of this peer in tunnels you create. +

+ + + <% if (! "".equals(peer)) { %> + <---- click to verify action + <% } %> +


-

- - - <% if (! "".equals(peer)) { %> - <---- click to verify action - <% } %> -

-

Adjust Profile Bonuses

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 profiles page. -

<% long speed = 0; long capacity = 0; if (! "".equals(peer)) { diff --git a/apps/routerconsole/jsp/configservice.jsp b/apps/routerconsole/jsp/configservice.jsp index d2ed15b22..a5233693a 100644 --- a/apps/routerconsole/jsp/configservice.jsp +++ b/apps/routerconsole/jsp/configservice.jsp @@ -23,7 +23,7 @@ if (prev != null) System.setProperty("net.i2p.router.web.ConfigServiceHandler.noncePrev", prev); System.setProperty("net.i2p.router.web.ConfigServiceHandler.nonce", new java.util.Random().nextLong()+""); %> " /> -

Shutdown the router

+

Shutdown the router

Graceful shutdown lets the router satisfy the agreements it has already made before shutting down, but may take a few minutes. If you need to kill the router immediately, that option is available as well.

@@ -45,7 +45,7 @@ <% } %>
<% if ( (System.getProperty("os.name") != null) && (System.getProperty("os.name").startsWith("Win")) ) { %> -

Systray integration

+

Systray integration

On the windows platform, there is a small application to sit in the system tray, allowing you to view the router's status (later on, I2P client applications will be able to integrate their own functionality into the system tray as well). @@ -53,7 +53,7 @@


-

Run on startup

+

Run on startup

You can control whether I2P is run on startup or not by selecting one of the following options - I2P will install (or remove) a service accordingly. You can also run the install_i2p_service_winnt.bat (or @@ -66,14 +66,14 @@ <% } %> <% if (System.getProperty("wrapper.version") != null) { %> -

Debugging

+

Debugging

At times, it may be helpful to debug I2P by getting a thread dump. To do so, please select the following option and review the thread dumped to wrapper.log.

<% } %>
-

Launch browser on router startup?

+

Launch browser on router startup?

I2P's main configuration interface is this web console, so for your convenience I2P can launch a web browser pointing at http://127.0.0.1:7657/index.jsp whenever diff --git a/apps/routerconsole/jsp/configstats.jsp b/apps/routerconsole/jsp/configstats.jsp index 039f9b55f..20be36927 100644 --- a/apps/routerconsole/jsp/configstats.jsp +++ b/apps/routerconsole/jsp/configstats.jsp @@ -77,7 +77,7 @@ function toggleAll(category) if (statshelper.getIsFull()) { %>checked="true" <% } %>/> (change requires restart to take effect)
Stat file:
- Filter: (toggle all)
+ Filter: (toggle all)


<% while (statshelper.hasMoreStats()) { while (statshelper.groupRequired()) { %> diff --git a/apps/routerconsole/jsp/configui.jsp b/apps/routerconsole/jsp/configui.jsp index 8b2cfbc4b..135866277 100644 --- a/apps/routerconsole/jsp/configui.jsp +++ b/apps/routerconsole/jsp/configui.jsp @@ -1,41 +1,40 @@ -<%@page contentType="text/html"%> -<%@page pageEncoding="UTF-8"%> - - - -I2P Router Console - config UI -<%@include file="css.jsp" %> - - -<%@include file="nav.jsp" %> -<%@include file="summary.jsp" %> - - -" /> - -

I2P UI Configuration

-
- - <%@include file="confignav.jsp" %> - - - - " /> - - -

Router Console Theme

-
-
- <% String prev = System.getProperty("net.i2p.router.web.ConfigUIHandler.nonce"); - if (prev != null) System.setProperty("net.i2p.router.web.ConfigUIHandler.noncePrev", prev); - System.setProperty("net.i2p.router.web.ConfigUIHandler.nonce", new java.util.Random().nextLong()+""); %> - " /> - - -
- - -
-
- - +<%@page contentType="text/html"%> +<%@page pageEncoding="UTF-8"%> + + + +I2P Router Console - config UI +<%@include file="css.jsp" %> + + +<%@include file="nav.jsp" %> +<%@include file="summary.jsp" %> + + +" /> + +

I2P UI Configuration

+
+ + <%@include file="confignav.jsp" %> + + + + " /> + +
+

Router Console Theme

+
+ <% String prev = System.getProperty("net.i2p.router.web.ConfigUIHandler.nonce"); + if (prev != null) System.setProperty("net.i2p.router.web.ConfigUIHandler.noncePrev", prev); + System.setProperty("net.i2p.router.web.ConfigUIHandler.nonce", new java.util.Random().nextLong()+""); %> + " /> + + +
+ + +
+
+ + diff --git a/apps/routerconsole/jsp/configupdate.jsp b/apps/routerconsole/jsp/configupdate.jsp index 72aac377b..bac04e87b 100644 --- a/apps/routerconsole/jsp/configupdate.jsp +++ b/apps/routerconsole/jsp/configupdate.jsp @@ -28,6 +28,7 @@ if (prev != null) System.setProperty("net.i2p.router.web.ConfigUpdateHandler.noncePrev", prev); System.setProperty("net.i2p.router.web.ConfigUpdateHandler.nonce", new java.util.Random().nextLong()+""); %> " /> +

Check for I2P and news updates

diff --git a/installer/resources/themes/console/light/console.css b/installer/resources/themes/console/light/console.css index f80066d99..ee2efeb86 100644 --- a/installer/resources/themes/console/light/console.css +++ b/installer/resources/themes/console/light/console.css @@ -166,7 +166,7 @@ div.confignav { div.configure { padding: 15px 10px !important; margin: 10px 0px 25px 0; - background: #ddf; + background: #ddf url('images/lightbluetile.png'); -moz-border-radius: 4px; -khtml-border-radius: 4px; border-radius: 4px;