diff --git a/apps/i2psnark/i2psnark.config b/apps/i2psnark/i2psnark.config
index 7315d1b5f..525046ac6 100644
--- a/apps/i2psnark/i2psnark.config
+++ b/apps/i2psnark/i2psnark.config
@@ -1 +1,6 @@
+#
+# If you have a 'split' directory installation, with configuration
+# files in ~/.i2p (Linux) or %APPDATA%\I2P (Windows), be sure to
+# edit the file in the configuration directory, NOT the install directory.
+#
i2psnark.dir=i2psnark
diff --git a/apps/i2ptunnel/jsp/editClient.jsp b/apps/i2ptunnel/jsp/editClient.jsp
index 26e40afad..1b3c1eb81 100644
--- a/apps/i2ptunnel/jsp/editClient.jsp
+++ b/apps/i2ptunnel/jsp/editClient.jsp
@@ -319,7 +319,7 @@
- All changes require restart to take effect. To change other client options, edit the clients.config file.
+ To change other client options, edit the file
+<%=net.i2p.router.startup.ClientAppConfig.configFile(net.i2p.I2PAppContext.getGlobalContext())%>.
+All changes require restart to take effect.
@@ -57,7 +59,7 @@ button span.hide{
- All changes require restart to take effect. To change other webapp options, edit the webapps.config file.
+ All changes require restart to take effect.
diff --git a/installer/resources/clients.config b/installer/resources/clients.config
index daa698908..88cc115f8 100644
--- a/installer/resources/clients.config
+++ b/installer/resources/clients.config
@@ -1,3 +1,9 @@
+#
+# If you have a 'split' directory installation, with configuration
+# files in ~/.i2p (Linux) or %APPDATA%\I2P (Windows), be sure to
+# edit the file in the configuration directory, NOT the install directory.
+#
+
# fire up the web console
clientApp.0.args=7657 ::1,127.0.0.1 ./webapps/
clientApp.0.main=net.i2p.router.web.RouterConsoleRunner
diff --git a/installer/resources/i2ptunnel.config b/installer/resources/i2ptunnel.config
index f1fe7cda2..db79ef5af 100644
--- a/installer/resources/i2ptunnel.config
+++ b/installer/resources/i2ptunnel.config
@@ -1,3 +1,9 @@
+#
+# If you have a 'split' directory installation, with configuration
+# files in ~/.i2p (Linux) or %APPDATA%\I2P (Windows), be sure to
+# edit the file in the configuration directory, NOT the install directory.
+#
+
# eepproxy
tunnel.0.name=eepProxy
tunnel.0.description=HTTP proxy for browsing eepsites and the web
@@ -17,18 +23,22 @@ tunnel.0.option.i2p.streaming.connectDelay=1000
tunnel.0.startOnLoad=true
# irc
-tunnel.1.name=ircProxy
-tunnel.1.description=IRC proxy to access the anonymous irc net
+tunnel.1.name=IRC Proxy
+tunnel.1.description=IRC proxy to access the anonymous IRC network
tunnel.1.type=ircclient
-tunnel.1.sharedClient=true
+tunnel.1.sharedClient=false
tunnel.1.interface=127.0.0.1
tunnel.1.listenPort=6668
tunnel.1.targetDestination=irc.postman.i2p,irc.freshcoffee.i2p
tunnel.1.i2cpHost=127.0.0.1
tunnel.1.i2cpPort=7654
-tunnel.1.option.inbound.nickname=shared clients
-tunnel.1.option.outbound.nickname=shared clients
-tunnel.1.option.i2cp.reduceIdleTime=900000
+tunnel.1.option.inbound.nickname=IRC Proxy
+tunnel.1.option.outbound.nickname=IRC Proxy
+tunnel.1.option.i2cp.closeIdleTime=1200000
+tunnel.1.option.i2cp.closeOnIdle=true
+tunnel.1.option.i2cp.delayOpen=true
+tunnel.1.option.i2cp.newDestOnResume=false
+tunnel.1.option.i2cp.reduceIdleTime=600000
tunnel.1.option.i2cp.reduceOnIdle=true
tunnel.1.option.i2cp.reduceQuantity=1
tunnel.1.option.i2p.streaming.connectDelay=1000
diff --git a/router/java/src/net/i2p/router/startup/ClientAppConfig.java b/router/java/src/net/i2p/router/startup/ClientAppConfig.java
index 70d61f346..dd30d662f 100644
--- a/router/java/src/net/i2p/router/startup/ClientAppConfig.java
+++ b/router/java/src/net/i2p/router/startup/ClientAppConfig.java
@@ -7,6 +7,7 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
+import net.i2p.I2PAppContext;
import net.i2p.data.DataHelper;
import net.i2p.router.RouterContext;
@@ -39,12 +40,17 @@ public class ClientAppConfig {
disabled = dis;
}
- private static Properties getClientAppProps(RouterContext ctx) {
- Properties rv = new Properties();
+ public static File configFile(I2PAppContext ctx) {
String clientConfigFile = ctx.getProperty(PROP_CLIENT_CONFIG_FILENAME, DEFAULT_CLIENT_CONFIG_FILENAME);
File cfgFile = new File(clientConfigFile);
if (!cfgFile.isAbsolute())
cfgFile = new File(ctx.getConfigDir(), clientConfigFile);
+ return cfgFile;
+ }
+
+ private static Properties getClientAppProps(RouterContext ctx) {
+ Properties rv = new Properties();
+ File cfgFile = configFile(ctx);
// fall back to use router.config's clientApp.* lines
if (!cfgFile.exists()) {
@@ -94,10 +100,7 @@ public class ClientAppConfig {
}
public static void writeClientAppConfig(RouterContext ctx, List apps) {
- String clientConfigFile = ctx.getProperty(PROP_CLIENT_CONFIG_FILENAME, DEFAULT_CLIENT_CONFIG_FILENAME);
- File cfgFile = new File(clientConfigFile);
- if (!cfgFile.isAbsolute())
- cfgFile = new File(ctx.getConfigDir(), clientConfigFile);
+ File cfgFile = configFile(ctx);
FileOutputStream fos = null;
try {
fos = new FileOutputStream(cfgFile);