Commit Graph

9049 Commits

Author SHA1 Message Date
orignal ae3de9ef46 close all session and regenerate static keys for new dest 2026-04-08 14:50:15 -04:00
orignal cc3d610592 detach remaining tunnels and close remaining streams if destination changes 2026-04-07 17:39:33 -04:00
orignal 070adc88ee read i2cp.closeIdleTime and i2cp.newDestOnResume with correct separator 2026-04-06 20:40:06 -04:00
orignal 8bf34aacf6 resume idling cleint tunnel upon accepting new connecton 2026-04-06 15:59:01 -04:00
orignal caf36cb638 persist.netdbinterval param 2026-04-06 15:28:58 -04:00
orignal 776cf02477 replace destination's ident hash in client context 2026-04-05 09:04:00 -04:00
orignal c45b0abb25 impplemented i2cp.newDestOnResume 2026-04-04 11:47:04 -04:00
orignal d3233cfd06 Merge pull request #2365 from majestrate/2026-04-03-i2cp-reconfigure-fix
Fixup i2cp option on reconfigure.
2026-04-03 09:17:26 -04:00
jeff af8a3decbf Update libi2pd/Destination.cpp
style fix

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-03 09:13:44 -04:00
jeff ac5ba2dbf0 Update libi2pd/Destination.cpp
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-03 09:13:06 -04:00
Jeff Becker 1397c93de1 Fixup i2cp option on reconfigure.
Make sure i2cp.dontPublishLeaseSet option logic correctly applies on reconfigure.
2026-04-03 09:02:12 -04:00
orignal 975d3c61f0 fixed inverted value of i2cp.dontPublishLeaseSet 2026-04-02 21:22:18 -04:00
orignal 0fbf06ddf4 set only default receiver if port=0 2026-04-02 17:35:30 -04:00
orignal a683b98e73 check for idle time. don't create and test tunnel if idling 2026-04-02 13:37:35 -04:00
orignal 7f4bfccdbb read i2cp.closeIdleTime param. set last update time 2026-04-01 21:47:40 -04:00
orignal 6be73912c7 generate tags faster 2026-03-31 18:19:24 -04:00
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
orignal ea27bd2fe3 Merge pull request #2364 from Jercik/i2pcontrol-missing-metrics
Add missing I2PControl RouterInfo metrics
2026-03-28 17:22:31 -04:00
orignal 8267772fc6 Merge pull request #2363 from rex4539/typos
fix typos
2026-03-28 07:34:01 -04:00
Łukasz Jerciński 2a63ce340b add missing I2PControl RouterInfo metrics 2026-03-28 10:12:26 +01: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
orignal 01cddbf886 Merge pull request #2362 from Jercik/fix/i2pcontrol-buffer-overflow
Prevent buffer overflow on large I2PControl requests
2026-03-27 11:11:46 -04:00
Łukasz Jerciński 824f66f2eb prevent buffer overflow on large I2PControl requests 2026-03-27 13:26:15 +01:00
orignal 96e14c84d7 Merge pull request #2361 from Jercik/case-insensitive-http-headers
Case insensitive http headers
2026-03-27 07:42:26 -04:00
Łukasz Jerciński 8df75098d0 test(HTTP): add case-insensitive header matching tests
Add comprehensive tests for RFC 7230 compliance (header field names
are case-insensitive):

- HTTPReq: GetHeader, GetNumHeaders, UpdateHeader, RemoveHeader
- HTTPRes: content_length(), is_chunked(), is_gzipped(), add_header,
  del_header, to_string() duplicate prevention

These tests currently fail and document the expected behavior.
2026-03-27 10:24:21 +01: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 326675cec2 show 'slow' and 'pq' for ipv6 connections 2026-03-24 13:17:04 -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 d5d6af6f50 print correct value 2026-03-22 15:40:02 -04:00
orignal 9a881e7753 show protocol version for post quantum transport sessions 2026-03-22 12:24:59 -04:00
orignal deb7f8523d upsteam handshake for all address types 2026-03-21 15:12:57 -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 d65c7f94a0 print endpoint if server tunnel connection failed 2026-03-18 14:57:42 -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
orignal 8f61ff3bc9 Merge pull request #2357 from parsebulb/fix-exit-segfault
Don't preserve session lifetime in handlers
2026-03-17 10:26:18 -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 bb6d8d8384 check if m_UnackedDatagrams is empty before access 2026-03-17 08:16:15 -04:00