Author: toad
Date: 2007-07-20 17:37:43 +0000 (Fri, 20 Jul 2007)
New Revision: 14210
Added:
trunk/freenet/src/freenet/node/useralerts/OpennetUserAlert.java
Modified:
trunk/freenet/src/freenet/l10n/freenet.l10n.en.properties
trunk/freenet/src/freenet/node/Node.java
Log:
Warn the user when in opennet mode
Modified: trunk/freenet/src/freenet/l10n/freenet.l10n.en.properties
===================================================================
--- trunk/freenet/src/freenet/l10n/freenet.l10n.en.properties 2007-07-20
17:24:38 UTC (rev 14209)
+++ trunk/freenet/src/freenet/l10n/freenet.l10n.en.properties 2007-07-20
17:37:43 UTC (rev 14210)
@@ -604,6 +604,8 @@
NodeUpdateManager.updateURILong=Where should the node look for updates?
OpennetConnectionsToadlet.fullTitle=${counts} Strangers (Untrusted Peers) of
${name}
OpennetConnectionsToadlet.peersListTitle=My Opennet Peers (untrusted peers
added by the node)
+OpennetUserAlert.warningTitle=Warning: Promiscuous Mode Enabled: Your node
will connect to Strangers
+OpennetUserAlert.warning=Your node is currently running in promiscuous mode.
It will connect to Strangers, and this means that anyone can find out that you
are running a node. Most attacks are easier, your node may be blocked by
firewalls, and you have no control over who your node connects to. We strongly
recommend you get some connections to Friends (trusted nodes run by people you
already know); promiscuous mode is only intended as a temporary measure until
you are able to just connect to your Friends. Note that adding a peer in the
Friends section does not help much unless that peer belongs to somebody you
actually know!
PNGFilter.invalidHeader=The file you tried to fetch is not a PNG. It does not
include a valid PNG header. It might be some other file format, and your
browser may do something dangerous with it, therefore we have blocked it.
PNGFilter.invalidHeaderTitle=Not a PNG - invalid header
PeerManagerUserAlert.connErrorTitle=Some peers cannot connect
Modified: trunk/freenet/src/freenet/node/Node.java
===================================================================
--- trunk/freenet/src/freenet/node/Node.java 2007-07-20 17:24:38 UTC (rev
14209)
+++ trunk/freenet/src/freenet/node/Node.java 2007-07-20 17:37:43 UTC (rev
14210)
@@ -77,6 +77,7 @@
import freenet.node.useralerts.BuildOldAgeUserAlert;
import freenet.node.useralerts.ExtOldAgeUserAlert;
import freenet.node.useralerts.MeaningfulNodeNameUserAlert;
+import freenet.node.useralerts.OpennetUserAlert;
import freenet.node.useralerts.TimeSkewDetectedUserAlert;
import freenet.node.useralerts.UserAlert;
import freenet.pluginmanager.PluginManager;
@@ -1299,6 +1300,8 @@
else if(NodeStarter.extBuildNumber == -1)
clientCore.alerts.register(new ExtOldAgeUserAlert());
+ clientCore.alerts.register(new OpennetUserAlert(this));
+
this.clientCore.start(config);
// After everything has been created, write the config file
back to disk.
Added: trunk/freenet/src/freenet/node/useralerts/OpennetUserAlert.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/OpennetUserAlert.java
(rev 0)
+++ trunk/freenet/src/freenet/node/useralerts/OpennetUserAlert.java
2007-07-20 17:37:43 UTC (rev 14210)
@@ -0,0 +1,58 @@
+package freenet.node.useralerts;
+
+import freenet.l10n.L10n;
+import freenet.node.Node;
+import freenet.support.HTMLNode;
+
+public class OpennetUserAlert implements UserAlert {
+
+ private final Node node;
+
+ public OpennetUserAlert(Node node) {
+ this.node = node;
+ }
+
+ public String dismissButtonText() {
+ // Not dismissable
+ return null;
+ }
+
+ public HTMLNode getHTMLText() {
+ return new HTMLNode("#", getText());
+ }
+
+ public short getPriorityClass() {
+ return UserAlert.WARNING;
+ }
+
+ public String getText() {
+ return L10n.getString("OpennetUserAlert.warning");
+ }
+
+ public String getTitle() {
+ return L10n.getString("OpennetUserAlert.warningTitle");
+ }
+
+ public boolean isValid() {
+ return node.isOpennetEnabled();
+ }
+
+ public void isValid(boolean validity) {
+ // Ignore
+ }
+
+ public void onDismiss() {
+ // Can't dismiss
+ }
+
+ public boolean shouldUnregisterOnDismiss() {
+ // Can't dismiss
+ return false;
+ }
+
+ public boolean userCanDismiss() {
+ // Can't dismiss
+ return false;
+ }
+
+}