From 3bf3a4ff9d6952b56cc0bb29fd1cc6272e980cdc Mon Sep 17 00:00:00 2001 From: zzz <zzz@i2pmail.org> Date: Tue, 20 Jul 2021 10:26:17 -0400 Subject: [PATCH] NetDB: Increase min ff version to 0.9.38 previously was .38 for LS2 stores/lookups only --- .../networkdb/kademlia/FloodfillNetworkDatabaseFacade.java | 2 ++ .../router/networkdb/kademlia/FloodfillVerifyStoreJob.java | 4 ++-- .../i2p/router/networkdb/kademlia/IterativeSearchJob.java | 3 +-- .../java/src/net/i2p/router/networkdb/kademlia/StoreJob.java | 5 ++++- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillNetworkDatabaseFacade.java b/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillNetworkDatabaseFacade.java index 56083a05ac..ab6244bdf8 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillNetworkDatabaseFacade.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillNetworkDatabaseFacade.java @@ -304,9 +304,11 @@ public class FloodfillNetworkDatabaseFacade extends KademliaNetworkDatabaseFacad if (peer.equals(_context.routerHash())) return false; // min version checks +/* if (type != DatabaseEntry.KEY_TYPE_ROUTERINFO && type != DatabaseEntry.KEY_TYPE_LEASESET && !StoreJob.shouldStoreLS2To(target)) return false; +*/ if ((type == DatabaseEntry.KEY_TYPE_ENCRYPTED_LS2 || lsSigType == SigType.RedDSA_SHA512_Ed25519) && !StoreJob.shouldStoreEncLS2To(target)) diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillVerifyStoreJob.java b/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillVerifyStoreJob.java index 338b556861..f9e024a396 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillVerifyStoreJob.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillVerifyStoreJob.java @@ -268,8 +268,8 @@ class FloodfillVerifyStoreJob extends JobImpl { RouterInfo ri = _facade.lookupRouterInfoLocally(peer); //if (ri != null && StoreJob.supportsCert(ri, keyCert)) { if (ri != null && StoreJob.shouldStoreTo(ri) && - (!_isLS2 || (StoreJob.shouldStoreLS2To(ri) && - (_type != DatabaseEntry.KEY_TYPE_ENCRYPTED_LS2 || StoreJob.shouldStoreEncLS2To(ri))))) { + //(!_isLS2 || (StoreJob.shouldStoreLS2To(ri) && + (_type != DatabaseEntry.KEY_TYPE_ENCRYPTED_LS2 || StoreJob.shouldStoreEncLS2To(ri))) { Set<String> peerIPs = new MaskedIPSet(getContext(), ri, IP_CLOSE_BYTES); if (!_ipSet.containsAny(peerIPs)) { _ipSet.addAll(peerIPs); diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/IterativeSearchJob.java b/router/java/src/net/i2p/router/networkdb/kademlia/IterativeSearchJob.java index fb4997002a..a1799bfa1a 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/IterativeSearchJob.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/IterativeSearchJob.java @@ -321,8 +321,7 @@ public class IterativeSearchJob extends FloodSearchJob { // querying old floodfills that don't know about those sig types. // This is also more recent than the version that supports encrypted replies, // so we won't request unencrypted replies anymore either. - if (!StoreJob.shouldStoreTo(ri) || - (_isLease && !StoreJob.shouldStoreLS2To(ri))) { + if (!StoreJob.shouldStoreTo(ri)) { failed(peer, false); if (_log.shouldInfo()) _log.info(getJobId() + ": not sending query to old router: " + ri); diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/StoreJob.java b/router/java/src/net/i2p/router/networkdb/kademlia/StoreJob.java index a00de87c30..addb6e6063 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/StoreJob.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/StoreJob.java @@ -215,12 +215,15 @@ abstract class StoreJob extends JobImpl { _log.info(getJobId() + ": Skipping router that doesn't support EncLS2/RedDSA " + peer); _state.addSkipped(peer); skipped++; +/* + // same as shouldStoreTo() now } else if (isls2 && !shouldStoreLS2To((RouterInfo)ds)) { if (_log.shouldLog(Log.INFO)) _log.info(getJobId() + ": Skipping router that doesn't support LS2 " + peer); _state.addSkipped(peer); skipped++; +*/ } else { int peerTimeout = _facade.getPeerTimeout(peer); @@ -641,7 +644,7 @@ abstract class StoreJob extends JobImpl { } /** @since 0.9.28 */ - public static final String MIN_STORE_VERSION = "0.9.28"; + public static final String MIN_STORE_VERSION = "0.9.38"; /** * Is it new enough? -- GitLab