orignal
262f183126
one connection to remote I2P address per torrent. Close connection if no data or keepalive
2026-08-05 19:01:36 -04:00
orignal
5535a17330
show Torrents tunnels on I2P tunnels page
2026-08-05 17:19:49 -04:00
orignal
50b4c3d8f1
put addressbook update with boost::beast back
2026-08-05 16:53:06 -04:00
orignal
797deb77b9
open file in correct mode to update piece
2026-08-05 14:11:29 -04:00
orignal
72aeea494e
don't invoke completion handler within async function
2026-08-05 10:09:53 -04:00
orignal
346c9c0cd0
rollback to old implemntation without boost::beast
2026-08-05 07:58:26 -04:00
orignal
adda8acf24
restore bitfield from .resume file
2026-08-04 22:28:41 -04:00
orignal
0f847655ee
save partially donwloaded torrent to .part/.resume files
2026-08-04 21:24:47 -04:00
orignal
c39ce4d87c
implement GetNonConnectedPeers. Reconnect timer
2026-08-04 18:18:46 -04:00
orignal
3ae36ee350
don't save session with saved packet
2026-08-04 14:43:23 -04:00
orignal
6246c4f9d3
close stream after HTTP response
2026-08-04 09:35:51 -04:00
orignal
57874dafb6
disseminate have message once piece complete
2026-08-03 21:38:59 -04:00
orignal
935f3f9878
send correct index and offset in request
2026-08-03 19:40:11 -04:00
orignal
95092d3fd2
fixed build error
2026-08-03 17:44:57 -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
orignal
9dc99b9ecc
multiple requests at the time
2026-08-03 17:35:37 -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
73d2ff7f44
send inetersted message after receiving bitfield
2026-08-03 11:59:21 -04:00
orignal
ffd3101241
handle choke and unchoke messages
2026-08-02 22:11:02 -04:00
orignal
1a4e820379
request next block
2026-08-02 21:43:14 -04:00
orignal
ee50116dbc
connect to peers and send keep-alive
2026-08-02 15:13:12 -04:00
orignal
21181b2deb
optional 'keys' param for torrents tunnel
2026-08-02 15:10:56 -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
b4666898b5
check if socket gets closed before creating sockets pipe. Catch set_option exception
2026-08-01 09:12:18 -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
07fb13c811
read torrents tunnel
2026-07-30 20:21:27 -04:00
orignal
c84d0c0a94
explicitly cast 32-bits streamID to 16-bits port
2026-07-30 18:22:00 -04:00
orignal
5b080f8d9b
removed ECDSA blinding
2026-07-30 17:51:39 -04:00
orignal
523b9ce5f7
Merge pull request #2456 from jpk68/memory-bugs-3
...
chore: fix memory safety issues
2026-07-30 17:14:18 -04:00
jpk68
77c2f266b8
chore: fix memory safety issues
2026-07-30 17:01:45 -04:00
orignal
2c46f85b7a
pass port to Host: header if specified in original request
2026-07-30 09:36:58 -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
orignal
88c7803f69
Merge pull request #2454 from jpk68/length-checks
...
libi2pd: add missing length checks
2026-07-30 07:05:38 -04:00
orignal
2a4591576f
Merge pull request #2455 from jpk68/client-memory
...
libi2pd_client: fix memory safety issues
2026-07-30 07:02:17 -04:00
jpk68
d3ea3ca10c
libi2pd_client: fix memory safety issues
2026-07-29 19:11:34 -04:00
jpk68
b148455295
libi2pd: add missing length checks
2026-07-29 19:07:39 -04:00
jpk68
b1d0bc34c1
ntcp2: fix memory safety issues
2026-07-29 18:34:52 -04:00
orignal
6d47cca978
receive timeout for BoostAsyncStream
2026-07-29 18:03:44 -04:00
orignal
4b507cda96
don't send eof with reveived data
2026-07-29 06:50:21 -04:00
orignal
da5b063420
fixed possible overflow with negative value
2026-07-28 22:09:03 -04:00
orignal
c884cdd32c
collect outstanding received data even if stream is closed
2026-07-28 22:05:59 -04:00
orignal
e6088eb30f
let pending operations complete when stream received FIN
2026-07-28 21:47:03 -04:00
orignal
c49ca9cbdd
pass boost::asio::error::eof if stream got terminated
2026-07-28 21:43:56 -04:00
orignal
bb116619b9
return eof if read closed socket
2026-07-28 21:29:40 -04:00
orignal
4d072c1d57
pass boost::asio::error::eof if stream get closed
2026-07-28 18:40:03 -04:00