From c15c97f69cdeb034fe90b6da9c139f3c8bcec22d Mon Sep 17 00:00:00 2001 From: zzz <zzz@mail.i2p> Date: Tue, 14 Dec 2010 22:14:29 +0000 Subject: [PATCH] put blacklist mode on form --- .../java/src/net/i2p/i2ptunnel/web/EditBean.java | 8 ++++++-- .../java/src/net/i2p/i2ptunnel/web/IndexBean.java | 14 +++++++++++--- apps/i2ptunnel/jsp/editServer.jsp | 13 +++++++------ 3 files changed, 24 insertions(+), 11 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 ebaeccf199..696c652e2a 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/EditBean.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/EditBean.java @@ -171,8 +171,12 @@ public class EditBean extends IndexBean { return getProperty(tunnel, "i2cp.leaseSetKey", ""); } - public boolean getAccess(int tunnel) { - return getBooleanProperty(tunnel, "i2cp.enableAccessList"); + public String getAccessMode(int tunnel) { + if (getBooleanProperty(tunnel, PROP_ENABLE_ACCESS_LIST)) + return "1"; + if (getBooleanProperty(tunnel, PROP_ENABLE_BLACKLIST)) + return "2"; + return "0"; } public String getAccessList(int tunnel) { 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 909e94c23e..510f550336 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/IndexBean.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/IndexBean.java @@ -643,9 +643,17 @@ public class IndexBean { public void setEncrypt(String moo) { _booleanOptions.add("i2cp.encryptLeaseSet"); } - public void setAccess(String moo) { - _booleanOptions.add("i2cp.enableAccessList"); + + protected static final String PROP_ENABLE_ACCESS_LIST = "i2cp.enableAccessList"; + protected static final String PROP_ENABLE_BLACKLIST = "i2cp.enableBlackList"; + + public void setAccessMode(String val) { + if ("1".equals(val)) + _booleanOptions.add(PROP_ENABLE_ACCESS_LIST); + else if ("2".equals(val)) + _booleanOptions.add(PROP_ENABLE_BLACKLIST); } + public void setDelayOpen(String moo) { _booleanOptions.add("i2cp.delayOpen"); } @@ -942,7 +950,7 @@ public class IndexBean { I2PTunnelHTTPClientBase.PROP_AUTH, I2PTunnelHTTPClientBase.PROP_OUTPROXY_AUTH }; private static final String _booleanServerOpts[] = { - "i2cp.reduceOnIdle", "i2cp.encryptLeaseSet", "i2cp.enableAccessList" + "i2cp.reduceOnIdle", "i2cp.encryptLeaseSet", PROP_ENABLE_ACCESS_LIST, PROP_ENABLE_BLACKLIST }; private static final String _otherClientOpts[] = { "i2cp.reduceIdleTime", "i2cp.reduceQuantity", "i2cp.closeIdleTime", diff --git a/apps/i2ptunnel/jsp/editServer.jsp b/apps/i2ptunnel/jsp/editServer.jsp index 4ecd93e648..5ad17a2efe 100644 --- a/apps/i2ptunnel/jsp/editServer.jsp +++ b/apps/i2ptunnel/jsp/editServer.jsp @@ -359,17 +359,18 @@ </label> </div> <div id="portField" class="rowItem"> - <label for="access" accesskey="s"> - <%=intl._("Enable")%>: - </label> - <input value="1" type="checkbox" id="startOnLoad" name="access" title="Enable Access List"<%=(editBean.getAccess(curTunnel) ? " checked=\"checked\"" : "")%> class="tickbox" /> + <label><%=intl._("Disable")%></label> + <input value="0" type="radio" id="startOnLoad" name="accessMode" title="Allow all clients"<%=(editBean.getAccessMode(curTunnel).equals("0") ? " checked=\"checked\"" : "")%> class="tickbox" /> + <label><%=intl._("Whitelist")%></label> + <input value="1" type="radio" id="startOnLoad" name="accessMode" title="Allow listed clients only"<%=(editBean.getAccessMode(curTunnel).equals("1") ? " checked=\"checked\"" : "")%> class="tickbox" /> + <label><%=intl._("Blacklist")%></label> + <input value="2" type="radio" id="startOnLoad" name="accessMode" title="Reject listed clients"<%=(editBean.getAccessMode(curTunnel).equals("2") ? " checked=\"checked\"" : "")%> class="tickbox" /> </div> <div id="hostField" class="rowItem"> <label for="accessList" accesskey="s"> <%=intl._("Access List")%>: </label> - <textarea rows="2" style="height: 6em;" cols="60" id="hostField" name="accessList" title="Access List" wrap="off"><%=editBean.getAccessList(curTunnel)%></textarea> - <span class="comment"><%=intl._("(Restrict to these clients only)")%></span> + <textarea rows="2" style="height: 8em;" cols="60" id="hostField" name="accessList" title="Access List" wrap="off"><%=editBean.getAccessList(curTunnel)%></textarea> </div> <div class="subdivider"> -- GitLab