From a2fd817915b33c8deb95acffaac03a6d96ae11e7 Mon Sep 17 00:00:00 2001 From: zzz <zzz@mail.i2p> Date: Sat, 7 Nov 2020 13:53:44 +0000 Subject: [PATCH] Tunnels: getUnknownOptions() is non-null one more TunnelId fixup --- .../src/net/i2p/router/TunnelPoolSettings.java | 3 +++ .../router/tunnel/BuildMessageGenerator.java | 4 ++-- .../tunnel/pool/PooledTunnelCreatorConfig.java | 3 +++ .../router/tunnel/pool/TunnelPeerSelector.java | 17 +++++++---------- 4 files changed, 15 insertions(+), 12 deletions(-) diff --git a/router/java/src/net/i2p/router/TunnelPoolSettings.java b/router/java/src/net/i2p/router/TunnelPoolSettings.java index 96349af669..6b3337a439 100644 --- a/router/java/src/net/i2p/router/TunnelPoolSettings.java +++ b/router/java/src/net/i2p/router/TunnelPoolSettings.java @@ -277,6 +277,9 @@ public class TunnelPoolSettings { */ public int getPriority() { return _priority; } + /** + * @return non-null + */ public Properties getUnknownOptions() { return _unknownOptions; } /** diff --git a/router/java/src/net/i2p/router/tunnel/BuildMessageGenerator.java b/router/java/src/net/i2p/router/tunnel/BuildMessageGenerator.java index 491be3af98..307110dfce 100644 --- a/router/java/src/net/i2p/router/tunnel/BuildMessageGenerator.java +++ b/router/java/src/net/i2p/router/tunnel/BuildMessageGenerator.java @@ -76,13 +76,13 @@ public abstract class BuildMessageGenerator { Hash peer = cfg.getPeer(hop); long recvTunnelId = -1; if (cfg.isInbound() || (hop > 0)) - recvTunnelId = hopConfig.getReceiveTunnel().getTunnelId(); + recvTunnelId = hopConfig.getReceiveTunnelId(); else recvTunnelId = 0; long nextTunnelId = -1; Hash nextPeer = null; if (hop + 1 < cfg.getLength()) { - nextTunnelId = cfg.getConfig(hop+1).getReceiveTunnel().getTunnelId(); + nextTunnelId = cfg.getConfig(hop+1).getReceiveTunnelId(); nextPeer = cfg.getPeer(hop+1); } else { if ( (replyTunnel >= 0) && (replyRouter != null) ) { diff --git a/router/java/src/net/i2p/router/tunnel/pool/PooledTunnelCreatorConfig.java b/router/java/src/net/i2p/router/tunnel/pool/PooledTunnelCreatorConfig.java index d27f82f7b9..950c841372 100644 --- a/router/java/src/net/i2p/router/tunnel/pool/PooledTunnelCreatorConfig.java +++ b/router/java/src/net/i2p/router/tunnel/pool/PooledTunnelCreatorConfig.java @@ -47,6 +47,9 @@ class PooledTunnelCreatorConfig extends TunnelCreatorConfig { return rv; } + /** + * @return non-null + */ @Override public Properties getOptions() { return _pool.getSettings().getUnknownOptions(); diff --git a/router/java/src/net/i2p/router/tunnel/pool/TunnelPeerSelector.java b/router/java/src/net/i2p/router/tunnel/pool/TunnelPeerSelector.java index da6b1c47af..fa7105e55a 100644 --- a/router/java/src/net/i2p/router/tunnel/pool/TunnelPeerSelector.java +++ b/router/java/src/net/i2p/router/tunnel/pool/TunnelPeerSelector.java @@ -104,14 +104,12 @@ public abstract class TunnelPeerSelector extends ConnectChecker { protected boolean shouldSelectExplicit(TunnelPoolSettings settings) { if (settings.isExploratory()) return false; Properties opts = settings.getUnknownOptions(); - if (opts != null) { - String peers = opts.getProperty("explicitPeers"); - if (peers == null) - peers = ctx.getProperty("explicitPeers"); - // only one out of 4 times so we don't break completely if peer doesn't build one - if (peers != null && ctx.random().nextInt(4) == 0) - return true; - } + String peers = opts.getProperty("explicitPeers"); + if (peers == null) + peers = ctx.getProperty("explicitPeers"); + // only one out of 4 times so we don't break completely if peer doesn't build one + if (peers != null && ctx.random().nextInt(4) == 0) + return true; return false; } @@ -123,8 +121,7 @@ public abstract class TunnelPeerSelector extends ConnectChecker { protected List<Hash> selectExplicit(TunnelPoolSettings settings, int length) { String peers = null; Properties opts = settings.getUnknownOptions(); - if (opts != null) - peers = opts.getProperty("explicitPeers"); + peers = opts.getProperty("explicitPeers"); if (peers == null) peers = ctx.getProperty("explicitPeers"); -- GitLab