diff --git a/history.txt b/history.txt index c1f411d80c..366c3858df 100644 --- a/history.txt +++ b/history.txt @@ -1,6 +1,10 @@ 2015-01-28 zzz * UPnP: - Rescan for devices periodically and when reachability changes (tickets #661, #959) + - Callback when device removed + - Consolidate callbacks + - Clear ignored devices after primary device removed + to allow one to be promoted on rescan - Don't put "I2P" in registered protocol name - Add uptime to UPnP info - HTML escaping diff --git a/router/java/src/net/i2p/data/router/RouterInfo.java b/router/java/src/net/i2p/data/router/RouterInfo.java index 7b07e1364a..7298608037 100644 --- a/router/java/src/net/i2p/data/router/RouterInfo.java +++ b/router/java/src/net/i2p/data/router/RouterInfo.java @@ -38,6 +38,7 @@ import net.i2p.data.Hash; import net.i2p.data.KeysAndCert; import net.i2p.data.Signature; import net.i2p.data.SimpleDataStructure; +import net.i2p.router.Router; import net.i2p.util.Clock; import net.i2p.util.Log; import net.i2p.util.OrderedProperties; @@ -84,9 +85,17 @@ public class RouterInfo extends DatabaseEntry { public static final String PROP_CAPABILITIES = "caps"; public static final char CAPABILITY_HIDDEN = 'H'; - // Public string of chars which serve as bandwidth capacity markers - // NOTE: individual chars defined in Router.java - public static final String BW_CAPABILITY_CHARS = "KLMNO"; + /** Public string of chars which serve as bandwidth capacity markers + * NOTE: individual chars defined in Router.java + */ + public static final String BW_CAPABILITY_CHARS = "" + + Router.CAPABILITY_BW12 + + Router.CAPABILITY_BW32 + + Router.CAPABILITY_BW64 + + Router.CAPABILITY_BW128 + + Router.CAPABILITY_BW256 + + Router.CAPABILITY_BW512 + + Router.CAPABILITY_BW_UNLIMITED; public RouterInfo() { _addresses = new ArrayList(2); diff --git a/router/java/src/net/i2p/router/Router.java b/router/java/src/net/i2p/router/Router.java index 2b37900171..13b8b5f6fa 100644 --- a/router/java/src/net/i2p/router/Router.java +++ b/router/java/src/net/i2p/router/Router.java @@ -765,6 +765,10 @@ public class Router implements RouterClock.ClockShiftListener { public static final char CAPABILITY_BW64 = 'M'; public static final char CAPABILITY_BW128 = 'N'; public static final char CAPABILITY_BW256 = 'O'; + /** @since 0.9.18 */ + public static final char CAPABILITY_BW512 = 'P'; + /** @since 0.9.18 */ + public static final char CAPABILITY_BW_UNLIMITED = 'X'; public static final String PROP_FORCE_BWCLASS = "router.forceBandwidthClass"; public static final char CAPABILITY_REACHABLE = 'R'; @@ -793,6 +797,7 @@ public class Router implements RouterClock.ClockShiftListener { } else if (bwLim <= 128) { ri.addCapability(CAPABILITY_BW128); } else { // ok, more than 128KBps... aka "lots" + // TODO 512, unlimited ri.addCapability(CAPABILITY_BW256); } diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java index 5a58b19bc2..e36cd3b143 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 = 11; + public final static long BUILD = 12; /** for example "-test" */ public final static String EXTRA = ""; diff --git a/router/java/src/net/i2p/router/peermanager/PeerManager.java b/router/java/src/net/i2p/router/peermanager/PeerManager.java index d2de16d9ba..9146a881e2 100644 --- a/router/java/src/net/i2p/router/peermanager/PeerManager.java +++ b/router/java/src/net/i2p/router/peermanager/PeerManager.java @@ -61,6 +61,8 @@ class PeerManager { Router.CAPABILITY_BW64 + Router.CAPABILITY_BW128 + Router.CAPABILITY_BW256 + + Router.CAPABILITY_BW512 + + Router.CAPABILITY_BW_UNLIMITED + Router.CAPABILITY_REACHABLE + Router.CAPABILITY_UNREACHABLE; diff --git a/router/java/src/net/i2p/router/transport/TransportImpl.java b/router/java/src/net/i2p/router/transport/TransportImpl.java index bcb3516cc9..1b54d5c707 100644 --- a/router/java/src/net/i2p/router/transport/TransportImpl.java +++ b/router/java/src/net/i2p/router/transport/TransportImpl.java @@ -158,6 +158,9 @@ public abstract class TransportImpl implements Transport { def *= 4; break; case Router.CAPABILITY_BW256: + // TODO + case Router.CAPABILITY_BW512: + case Router.CAPABILITY_BW_UNLIMITED: def *= 7; break; }