2925 Commits

Author SHA1 Message Date
orignal
6dcfee0e24 reduce send interval 2026-03-30 08:55:36 -04:00
orignal
e6d6699dfb exclude routers from the same family from next hop 2026-03-29 11:20:41 -04:00
Dimitris Apostolou
2f15da3d5a fix typos 2026-03-28 09:19:33 +02:00
orignal
f7c33b3995 fixed typo 2026-03-27 13:37:07 -04:00
Łukasz Jerciński
6ef0221f72 use case-insensitive HTTP header matching per RFC 7230 2026-03-27 10:24:14 +01:00
orignal
54ea2be8e0 don't select non-connected peer for first hop if too many connection from that subnet 2026-03-26 21:09:41 -04:00
orignal
8f24f0043d mutex for m_ConnectedNetworks 2026-03-26 16:26:03 -04:00
orignal
e291943e7b switch to non-PQ with a probability of one in four 2026-03-25 20:50:57 -04:00
orignal
a5341687ec subnet for yggdrasil addreses 2026-03-24 21:29:17 -04:00
orignal
7cfddc2ea0 don't select peer for first hop if too many connection from that subnet 2026-03-24 20:36:49 -04:00
orignal
ade3b45495 count sessions from same network 2026-03-23 21:33:50 -04:00
orignal
eda41230cc limit SessionRequest padding to 32 bytes and SessionCreated to 64 2026-03-22 18:37:55 -04:00
orignal
9a881e7753 show protocol version for post quantum transport sessions 2026-03-22 12:24:59 -04:00
orignal
50eccb8f83 fixed #2320. Removed NetDb::HandleNTCP2RouterInfoMsg 2026-03-20 08:52:06 -04:00
orignal
c05cf3c516 return value for ProcessRessionRequest and ProcessTokenRequest 2026-03-19 20:02:21 -04:00
orignal
0aa3d2e26b set version from TokenRequest 2026-03-19 13:44:30 -04:00
orignal
b4005a9f59 correct MixHash after sending SessionCreated 2026-03-17 21:02:24 -04:00
orignal
e5753ec44e adjust MTU after remote endpoint is known 2026-03-17 19:36:43 -04:00
orignal
46919746ce set default MTU for ipv6 address 2026-03-17 13:57:48 -04:00
orignal
64dc406185 resend packets without extra loop 2026-03-17 12:47:00 -04:00
parsebulb
39de43dfed Don't preserve session lifetime in handlers
This is an issue because i2pd does not wait for all handlers queued for
execution inside io_context to execute before it's destroyed. Because
these handlers preserve lifetime of IO objects via a shared pointer we
get into a situation where destroying io_context will invoke destructors
on those IO objects which in turn will attempt to access io_context and
the app will crash.

More info here https://github.com/PurpleI2P/i2pd/issues/2354
2026-03-17 13:51:57 +01:00
orignal
e62f504b0f adjust mtu before SessionRequest 2026-03-16 17:26:16 -04:00
orignal
44f174ab5f fixed typos 2026-03-16 14:17:18 -04:00
orignal
92c5d2b1e2 send and handle incorrect version reason for retry message 2026-03-15 17:43:26 -04:00
orignal
1a237d3ff9 fallback to non-PQ crypto if MTU is too small 2026-03-14 19:56:18 -04:00
orignal
6df4138178 correct MixHash after SessionRequest 2026-03-14 19:06:17 -04:00
orignal
1a23e5ab35 read first value if pq contains multiple values for SSU2 2026-03-14 16:15:32 -04:00
orignal
461b7037de apply ML-KEM shared key in right order in SessionCreated 2026-03-13 13:46:31 -04:00
orignal
bc2cdd6c01 update published pq param from config 2026-03-12 20:46:06 -04:00
orignal
eb5a808232 handle ssu2.version in config and pq in SSU2 address in RouterInfo 2026-03-12 20:26:29 -04:00
orignal
772b046258 handle incoming post-quantum sessions 2026-03-11 21:12:16 -04:00
orignal
17f6e710a2 create noise state on demand depending on protocol version 2026-03-11 15:05:23 -04:00
orignal
9285d2d58b post-quantum support for outgoing SSU2 session 2026-03-10 19:58:03 -04:00
orignal
872fd31280 fixed braces around scalar initializer clang warning 2026-03-09 16:07:08 -04:00
orignal
009a66fb7e init XK state with ML-KEM for SSU2 2026-03-08 17:24:47 -04:00
orignal
fdf174c205 recreate zero and one hop tunnels after being offline 2026-03-07 16:42:16 -05:00
orignal
8152012f0b call terminate for new streams on close 2026-03-07 08:50:34 -05:00
Benson Muite
73623a4793 Replace deadline_timer by steady_timer
Prevent deprecation warnings when building.
2026-03-06 10:55:47 +03:00
orignal
33e7ffaa16 use std::atomic_flag instead std::atomic<bool> for saving to disk 2026-03-05 15:54:14 -05:00
orignal
8beb6772a6 use own random number generator for tunnel selection 2026-03-04 13:43:47 -05:00
orignal
cf802974c8 atomic tunnel state 2026-03-04 12:09:23 -05:00
orignal
67013852d0 limit receive queue size 2026-03-03 18:59:44 -05:00
orignal
d81b0b6f25 own random numbers generator for each tunnel gateway 2026-03-02 15:04:49 -05:00
orignal
84e48e18a9 use std::array for radom buffer 2026-03-02 14:00:05 -05:00
orignal
4387e74a34 GetSize returns size_t instead int 2026-02-28 21:27:42 -05:00
orignal
a02ef28d80 don't publish mtu=1500 2026-02-28 15:15:26 -05:00
orignal
3e62ec4125 don't check MTU from address if not specified 2026-02-28 15:13:16 -05:00
orignal
44658d06be read LeaseSet2 properties 2026-02-28 11:16:26 -05:00
orignal
3fe52ce897 router elgibility is based on current tunnel build success rate 2026-02-28 09:16:03 -05:00
Lunar
1dc2e579f4 add null check for netdb.NewIdentity and check offset > len to ensure nothing bad happens 2026-02-28 23:27:21 +10:00