Tunnels: Load RIs more efficiently in peer selector

This commit is contained in:
zzz
2023-02-08 08:58:22 -05:00
parent b87fd621b1
commit 6ac08e0929
2 changed files with 6 additions and 6 deletions

View File

@@ -84,10 +84,10 @@ public class ConnectChecker {
boolean ust = to.equals(us);
if (ust && ctx.commSystem().isEstablished(from))
return true;
RouterInfo rt = ctx.netDb().lookupRouterInfoLocally(to);
RouterInfo rt = (RouterInfo) ctx.netDb().lookupLocallyWithoutValidation(to);
if (rt == null)
return true;
RouterInfo rf = ctx.netDb().lookupRouterInfoLocally(from);
RouterInfo rf = (RouterInfo) ctx.netDb().lookupLocallyWithoutValidation(from);
if (rf == null)
return true;
int ct;

View File

@@ -227,7 +227,7 @@ public abstract class TunnelPeerSelector extends ConnectChecker {
if (ctx.commSystem().wasUnreachable(h))
return true;
RouterInfo info = ctx.netDb().lookupRouterInfoLocally(h);
RouterInfo info = (RouterInfo) ctx.netDb().lookupLocallyWithoutValidation(h);
if (info == null)
return true;
@@ -267,7 +267,7 @@ public abstract class TunnelPeerSelector extends ConnectChecker {
* @since 0.9.34, protected since 0.9.58 for ClientPeerSelector
*/
protected boolean allowAsOBEP(Hash h) {
RouterInfo ri = ctx.netDb().lookupRouterInfoLocally(h);
RouterInfo ri = (RouterInfo) ctx.netDb().lookupLocallyWithoutValidation(h);
if (ri == null)
return true;
return canConnect(ri, ANY_V4);
@@ -284,7 +284,7 @@ public abstract class TunnelPeerSelector extends ConnectChecker {
* @since 0.9.34, protected since 0.9.58 for ClientPeerSelector
*/
protected boolean allowAsIBGW(Hash h) {
RouterInfo ri = ctx.netDb().lookupRouterInfoLocally(h);
RouterInfo ri = (RouterInfo) ctx.netDb().lookupLocallyWithoutValidation(h);
if (ri == null)
return true;
if (ri.getCapabilities().indexOf(Router.CAPABILITY_REACHABLE) < 0)
@@ -675,7 +675,7 @@ public abstract class TunnelPeerSelector extends ConnectChecker {
if (ctx.commSystem().isEstablished(h))
return false;
boolean canConnect;
RouterInfo peer = ctx.netDb().lookupRouterInfoLocally(h);
RouterInfo peer = (RouterInfo) ctx.netDb().lookupLocallyWithoutValidation(h);
if (peer == null) {
canConnect = false;
} else if (isIn) {