Commit Graph
3153 Commits
Author SHA1 Message Date
orignal 726c1b9ec0 use std::mt19937 instead RAND_bytes 2026-08-20 21:42:05 -04:00
orignal c42051f6b3 Merge pull request #2499 from jpk68/checks-2
libi2pd: add missing checks and limits
2026-08-19 21:33:57 -04:00
jpk68 a57d375bf1 libi2pd: add missing checks and limits 2026-08-19 21:29:25 -04:00
PobreGato 85b6104080 stop runnable destination in its own thread 2026-08-19 19:12:20 +03:00
orignal 2b37acc525 Merge pull request #2495 from pobregat0/mapping-contains-find
use find in Mapping::Contains
2026-08-18 19:04:25 -04:00
PobreGato bc346f0a88 use find in Mapping::Contains 2026-08-19 02:02:05 +03:00
orignal 6d80583cb5 Merge pull request #2493 from jpk68/memory-bugs-4
chore: fix memory safety issues
2026-08-18 17:00:33 -04:00
jpk68 67404cd82f chore: fix memory safety issues 2026-08-18 15:43:44 -04:00
orignal 04b9cdcd99 Revert "openbsd: fix a issue from IRC chat"
This reverts commit 55ecab7c8d.
2026-08-18 06:56:58 -04:00
orignal 6c9ded8926 Merge pull request #2490 from jpk68/size-checks
libi2pd: add missing size checks
2026-08-17 20:11:27 -04:00
PobreGato 03daaf85be compare tags by value in ordered containers 2026-08-18 03:06:31 +03:00
jpk68 575acd6f13 libi2pd: add missing size checks 2026-08-17 13:27:12 -04:00
orignal 996a467513 Merge pull request #2488 from pobregat0/streaming-lock-guard
use lock_guard for streams mutex
2026-08-16 20:46:52 -04:00
PobreGato d2a6ed9100 use lock_guard for streams mutex 2026-08-17 03:45:16 +03:00
orignal a5d5eab81d Merge pull request #2486 from pobregat0/local-destination-info
added LocalDestinationInfo I2PControl request
2026-08-16 20:39:54 -04:00
PobreGato 37acd98bdd move GetStreamsList body to Streaming.cpp 2026-08-17 03:35:32 +03:00
orignal 1d0162078c use std::mt19937 instead RANG_bytes 2026-08-16 20:26:52 -04:00
PobreGato 08ec42909a return the stream list instead of filling a reference 2026-08-17 03:21:18 +03:00
user 55ecab7c8d openbsd: fix a issue from IRC chat 2026-08-16 23:24:02 +00:00
PobreGato 52bde6a907 added LocalDestinationInfo I2PControl request 2026-08-16 22:50:47 +03:00
PobreGato 5312aba642 use base64 from boost::beast for basic authorization 2026-08-16 03:56:58 +03:00
orignal 5352ac46bc removed CreateAndReserveFile 2026-08-13 13:37:44 -04:00
PobreGato 6be42e68f1 keep streaming packets pool alive for streams 2026-08-13 02:53:38 +03:00
orignal 0ac37e14de fixed race condtion with local RouterInfo properties 2026-08-12 16:43:22 -04:00
Dimitris Apostolou ea423cbe6f fix typos 2026-08-12 19:27:06 +03:00
orignal 3b6b48b94a Merge pull request #2466 from pobregat0/config-init-twice
don't add config options twice on repeated Init
2026-08-10 20:26:12 -04:00
PobreGato 278b0c5714 don't add config options twice on repeated Init 2026-08-11 03:09:44 +03:00
orignal 87c9e7a847 create subdirs when reserve file. create path from subdirs 2026-08-10 10:24:22 -04:00
orignal 2182a0add5 fixed possible overflow with negative value 2026-08-09 15:02:21 -04:00
orignal e32e694a83 common HKDF context for ratchets tags 2026-08-08 16:52:28 -04:00
orignal 6b100353ba generate msgid from instead RAND_bytes 2026-08-08 14:38:11 -04:00
orignal 60678683ab Merge pull request #2464 from freeacetone/udp-tunnel-performance
Udp tunnel performance (2)
2026-08-08 11:44:32 -04:00
acetone 9d320d77eb datagram tunnel window and ack policy 2026-08-08 17:56:59 +03:00
orignal 7547d675a2 Rename added 2026-08-08 08:32:29 -04:00
orignal bff47aff7c cancel ack send timer on terminate 2026-08-06 07:10:58 -04:00
orignal 72aeea494e don't invoke completion handler within async function 2026-08-05 10:09:53 -04:00
orignal 3ae36ee350 don't save session with saved packet 2026-08-04 14:43:23 -04:00
orignal db484aabb3 Merge pull request #2459 from bimawa/fix/openssl-crash-socks5
fix: cancel pending socket ops before close to prevent macOS crash
2026-08-03 17:37:11 -04:00
Maxim Bunkov e16160b74d fix: cancel pending socket ops before close to prevent macOS crash
On macOS (kqueue), boost::asio throws an exception from pending
async_write/async_read handlers after the socket is closed.
This reaches io_service::run() as an uncaught exception and
terminates the process.

Call m_Socket.cancel() before shutdown/close in NTCP2, SAM,
I2PTunnel, and BOB so pending operations complete with
operation_aborted on a live socket.

Crash log (macOS 26, i2pd 2.61):
  libc++abi: terminating due to uncaught exception of type
  boost::wrapexcept<boost::system::system_error>:
  write_some: Bad file descriptor [system:9]

This is a kqueue-specific issue. On Linux (epoll), close() alone
cancels pending operations correctly. The fix is defensive on Linux
and required on macOS.
2026-08-04 02:04:30 +05:00
orignal d053ef4021 don't try to get data if receive timeout 2026-08-03 16:29:14 -04:00
orignal 3bcbab75e4 fixed typo 2026-08-01 21:19:14 -04:00
orignal f6625e7c21 don't accept NTCP2 version 3 and 5 if LibreSSL 2026-08-01 20:19:35 -04:00
orignal 867e977457 fallback to version 2 if peer is version 3 or 5 for LibreSSL because this post-quantum types are not supported 2026-08-01 18:44:03 -04:00
orignal b0b4051595 complete AsyncRead right away if stream is closed 2026-07-31 17:56:49 -04:00
orignal 0066db4119 create error code based on stream status 2026-07-31 17:17:49 -04:00
orignal 5b080f8d9b removed ECDSA blinding 2026-07-30 17:51:39 -04:00
jpk68 77c2f266b8 chore: fix memory safety issues 2026-07-30 17:01:45 -04:00
orignal 075cdc1850 allow ipv6 binding for Haiku because IPV6_V6ONLY has been implemented since R1/Beta6 2026-07-30 08:05:41 -04:00
orignal 57ea80fdbd Merge pull request #2453 from jpk68/ntcp2-issues
ntcp2: fix memory safety issues
2026-07-30 07:06:54 -04:00
jpk68 b148455295 libi2pd: add missing length checks 2026-07-29 19:07:39 -04:00