Commit Graph
6605 Commits
Author SHA1 Message Date
zzz 4f76d02efe Tunnels: Request IBGW limits on all IB tunnels (prop. 168) 2026-05-27 17:45:12 -04:00
zzz c0c7a94169 bump -12 2026-05-26 11:25:05 -04:00
zzz bb93079f33 NetDB: Note RI store successful in profile when we skip verification 2026-05-25 16:25:00 -04:00
zzz 0789ccd41f NetDB: Increase max early expiration probability for U RIs
- expire more often if we expired a lot
- shorten expiration slightly
- increase min RIs before expiring at all
2026-05-24 18:48:30 -04:00
zzz 0214a65383 PeerManager: fix getIsActive inversion
introduced in 2009
fix adapted from I2PPlus
2026-05-24 17:11:17 -04:00
zzz 4335ebe141 Router: Reduce conn limit threshold for D cap again 2026-05-24 13:23:34 -04:00
zzz 8271735d57 bump -11 2026-05-24 11:31:33 -04:00
zzz d5b8dc17e8 SSU2: Revert token time calculation change that messed up expiration times 2026-05-24 11:13:00 -04:00
zzz 3c4f257bff NTCP2: Reduce max connections for inbound to leave room for outbound 2026-05-24 11:09:29 -04:00
zzz 03ec3e8990 bump -10 2026-05-23 12:41:48 -04:00
zzz 1f5f5abaff SSU2: Token improvements
- Do not send tokens to all peers
- Only send tokens with good termination reasons
- Do not send tokens to low-quality peers as determined during handshake
- Do not send tokens if near transport limits
- Do not increase relay token lifetime from 1m to 2m
- Favor session req over token req if congested
2026-05-23 12:41:21 -04:00
zzz 981797e615 bump -9 2026-05-21 09:41:14 -04:00
zzz 9f685a38f8 Profiles: Reduce new profile creation
- Change several ProfileManager methods so they don't create a profile
  if not previously existing
- Pass RI caps to heardAbout() to centralize creation decision
- Don't create profile for low-speed or congested caps
- Add deprecations for unused methods, to be removed
- Document behavior

This primarily benefits floodfills. Little change seen on non-floodfills.

Test results on floodfill:

- Profile creation/expiration rate reduced by 20x
- Avg. profile count reduced by 85%
- Memory usage down by 30%

with assistance from: I2PPlus
2026-05-21 09:40:28 -04:00
zzz 087a8fd363 Profiles: Remove unused counters of unprompted DB stores
no evidence of use since 2004-04 import from CVS
2026-05-20 17:24:49 -04:00
zzz 35585ce02d bump -8 2026-05-18 12:11:25 -04:00
zzz 38e2b31e5b SSU2: Remove check for SSU 1 2026-05-18 08:32:46 -04:00
zzz 609803e080 SSU2: Peer test result fix as Alice when we never got Charlie's RI
If we got msg 4 but not the RI, but we got msg 5 while waiting,
we can still declare success and return OK instead of UNKNOWN,
even though we never sent msg 6. See spec.
2026-05-18 07:42:25 -04:00
zzz 3114275b10 Transports: Reduce min downtime to rekey transport keys 2026-05-16 20:06:48 -04:00
zzz 1180597882 Router: Fix rare NPE at startup in InNetMessagePool
where netdb has not registered a DatabaseStoreMessage job builder.

- Add shortcut for DSRM and DeliveryStatus that do not have job builders.
- Log tweaks

reported by: postman
2026-05-15 10:06:37 -04:00
zzz 2bf04648c3 bump -7 2026-05-12 11:43:42 -04:00
zzz d042a7d354 SSU2: Require three consecutive peer tests for IPv6 state changes
due to high false-positive firewalled rates
2026-05-12 11:43:10 -04:00
zzz a00bc02fb9 SSU2: Require two peers from different /16s to change address
(/32 for IPv6)

suggested by: bottomlineit.co.za
2026-05-11 13:58:32 -04:00
zzz 514f0c1237 I2NP: Add missing length checks in readMessage() methods
- strict checks in Data, DeliveryStatus, Garlic, TunnelData
- check if we did read over and throw in DatabaseLookup, DatabaseSearchReply
- fix potential leaseset read overrun in DatabaseStore
- convert AIOOBE to I2NPMessageException in I2NPMessageImpl

DLM reported by: bottomlineit.co.za
2026-05-10 17:32:54 -04:00
zzz fac0f85197 I2NP: Enforce 4 bits for RI netdb type in DSM
to match current spec
2026-05-10 16:40:32 -04:00
zzz b48cb21119 Remove old NTCP1 I2NPMessageHandler pool, unused 2026-05-10 15:26:16 -04:00
zzz 3429f733f3 SSU2: Resurrect hole punch throttling as Charlie
Was in SSU 1 code but was never adapted for SSU2 and then got deleted.
Send limit reject code when throttled.
Add conn limit check.
Limits same as previously, to be reviewed and adjusted.

reported by: bottomlineit.co.za
2026-05-08 12:16:37 -04:00
zzz 7dbeb265a1 Transport: Disable SSU bid adjustment for new routers as of next release 2026-05-07 13:58:55 -04:00
zzz 704f4949e4 bump -6 2026-05-06 13:01:04 -04:00
zzz 635584bfcb Transport: Fix PQ SSU2 I2NP block header, bump -5
was using SSU1-style header
remove SSU1 code in fragmenter

reported by: orignal
2026-05-02 18:26:50 -04:00
zzz d2d4325e65 bump -4 2026-05-01 18:28:08 -04:00
zzz 4d98a0b62d SSU2: Increase nonce replay cache size
Based on measurement of actual relay requests, typ. rate is calculated
as 6/minute total when at the relaying limit of 100 routers,
or 24 in the 4-minute skew window. Increase cache size from 8 to 32.

reported by: bottomlineit.co.za
2026-05-01 17:57:57 -04:00
zzz 5482d470a6 I2NP: Add min length checks to fromRawByteArray() methods
reported by: bottomlineit.co.za
2026-05-01 17:07:18 -04:00
zzz 04caa91e3e Transport: Fail-fast if NTCP2 msg 2 padding length is too much
reported by: bottomlineit.co.za
2026-05-01 13:34:29 -04:00
zzz 6c33651714 i2ptunnel, I2CP, SAM: Add delays on auth failure
to slow down repeat attempts
2026-04-27 12:13:18 -04:00
zzz 55f55208ad bump -3 2026-04-26 15:42:53 -04:00
zzz 16a188996f Transport: Fix off-by-one check of SSU2 max fragment number
reported by: bottomlineit.co.za
2026-04-25 17:11:37 -04:00
zzz aa77c9a4ab Router: Don't use InetAddress.getByName() for blocklist IP conversion
to make really sure we don't use DNS, and it's slow anyway.

reported by: bottomlineit.co.za
2026-04-25 17:03:13 -04:00
zzz 20a10ae0ae Crypto: Change RFC 7748 DH error to a checked exception
so things are cleaned up properly
2026-04-25 15:22:21 -04:00
zzz e9d4b0c7e1 Crypto: Refactor Noise initialization to a separate class
with enums for efficiency and sanity
2026-04-25 14:26:52 -04:00
zzz b9bdce41a0 Add missing file for I2CP, bump -2 2026-04-25 10:57:31 -04:00
zzz 4c764b5165 bump -1 2026-04-25 10:54:02 -04:00
zzz 5e829e4ccb Transport: Add support for SSU2 PQ hybrid (proposal 169)
Gitea PR #533
2026-04-25 10:50:51 -04:00
zzz 4f892d6331 I2CP, SAM: Support lookup of ls2 options (proposal 167) 2026-04-25 10:43:58 -04:00
zzz 94f62c9e9b NTCP2: Fail-fast if msg 1 padding length is too much
reported by: bottomlineit.co.za
2026-04-25 10:12:41 -04:00
zzz ba572bd1bd spotbugs fixes all over 2026-04-25 09:53:32 -04:00
eyedeekay 2800040dee Bump version to 2.12.0 and update related files 2026-04-20 09:44:38 -04:00
zzz 386a90f6cd bump -14-rc for review 2026-04-17 14:26:38 -04:00
zzz c8be9527b3 bump -13-rc 2026-04-13 08:14:36 -04:00
zzz 77fb8949e0 bump -12-rc 2026-04-08 11:39:39 -04:00
zzz 61a65346b1 Router: Increase conn limit for congestion flag 2026-04-04 06:13:33 -04:00