From 0e9ceba05725f760bfcd52fe52a5b3374755b49e Mon Sep 17 00:00:00 2001
From: zzz <zzz@mail.i2p>
Date: Tue, 5 Aug 2014 21:26:48 +0000
Subject: [PATCH]  * i2ptunnel: Fix filtering of custom options

---
 apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/EditBean.java  | 3 ++-
 apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/IndexBean.java | 2 +-
 apps/i2ptunnel/jsp/editClient.jsp                            | 2 +-
 apps/i2ptunnel/jsp/editServer.jsp                            | 2 +-
 router/java/src/net/i2p/router/RouterVersion.java            | 2 +-
 5 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/EditBean.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/EditBean.java
index 019e1faaa3..c26d097395 100644
--- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/EditBean.java
+++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/EditBean.java
@@ -17,6 +17,7 @@ import java.util.TreeMap;
 import net.i2p.client.I2PClient;
 import net.i2p.crypto.SigType;
 import net.i2p.data.Base64;
+import net.i2p.data.DataHelper;
 import net.i2p.data.Destination;
 import net.i2p.data.PrivateKeyFile;
 import net.i2p.data.Signature;
@@ -452,7 +453,7 @@ public class EditBean extends IndexBean {
                     space = true;
                 buf.append(e.getKey()).append('=').append(e.getValue());
             }
-            return buf.toString();
+            return DataHelper.escapeHTML(buf.toString());
         } else {
             return "";
         }
diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/IndexBean.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/IndexBean.java
index 1964be4e03..06558d78e5 100644
--- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/IndexBean.java
+++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/IndexBean.java
@@ -728,7 +728,7 @@ public class IndexBean {
         _tunnelBackupQuantity = (tunnelBackupQuantity != null ? tunnelBackupQuantity.trim() : null);
     }
     /** what I2P session overrides should be used */
-    public void setCustomOptions(String customOptions) { 
+    public void setNofilter_customOptions(String customOptions) { 
         _customOptions = (customOptions != null ? customOptions.trim() : null);
     }
     /** what HTTP outproxies should be used (httpclient specific) */
diff --git a/apps/i2ptunnel/jsp/editClient.jsp b/apps/i2ptunnel/jsp/editClient.jsp
index 020871e64e..411386ea01 100644
--- a/apps/i2ptunnel/jsp/editClient.jsp
+++ b/apps/i2ptunnel/jsp/editClient.jsp
@@ -587,7 +587,7 @@ input.default { width: 1px; height: 1px; visibility: hidden; }
                 <label for="customOptions" accesskey="u">
                     <%=intl._("Custom options")%>(<span class="accessKey">u</span>):
                 </label>
-                <input type="text" id="customOptions" name="customOptions" size="60" title="Custom Options" value="<%=editBean.getCustomOptions(curTunnel)%>" class="freetext" />                
+                <input type="text" id="customOptions" name="nofilter_customOptions" size="60" title="Custom Options" value="<%=editBean.getCustomOptions(curTunnel)%>" class="freetext" />                
             </div>
             
             <div class="footer">
diff --git a/apps/i2ptunnel/jsp/editServer.jsp b/apps/i2ptunnel/jsp/editServer.jsp
index cc3601edad..afea4f7d28 100644
--- a/apps/i2ptunnel/jsp/editServer.jsp
+++ b/apps/i2ptunnel/jsp/editServer.jsp
@@ -611,7 +611,7 @@ input.default { width: 1px; height: 1px; visibility: hidden; }
                 <label for="customOptions" accesskey="u">
                     <%=intl._("Custom options")%>(<span class="accessKey">u</span>):
                 </label>
-                <input type="text" id="customOptions" name="customOptions" size="60" title="Custom Options" value="<%=editBean.getCustomOptions(curTunnel)%>" class="freetext" />                
+                <input type="text" id="customOptions" name="nofilter_customOptions" size="60" title="Custom Options" value="<%=editBean.getCustomOptions(curTunnel)%>" class="freetext" />                
             </div>
             
             <div class="footer">
diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java
index 8c2560977c..f6ba057e65 100644
--- a/router/java/src/net/i2p/router/RouterVersion.java
+++ b/router/java/src/net/i2p/router/RouterVersion.java
@@ -18,7 +18,7 @@ public class RouterVersion {
     /** deprecated */
     public final static String ID = "Monotone";
     public final static String VERSION = CoreVersion.VERSION;
-    public final static long BUILD = 3;
+    public final static long BUILD = 4;
 
     /** for example "-test" */
     public final static String EXTRA = "-rc";
-- 
GitLab