b1283e15f6
Link state tracking tweaks and improved shutdown
2024-08-11 10:42:25 +01:00
9950d1225d
Improve link and handshake errors
2024-08-01 21:53:48 +01:00
5ea16e63a1
Implement websocket (ws:// and wss://) links ( #1152 )
...
ws:// can be listened and dialed
wss:// is a convenience link for ws:// that supports dialing to ws://
peer.
---------
Signed-off-by: Vasyl Gello <vasek.gello@gmail.com >
Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com >
2024-07-23 22:58:11 +01:00
04c0acf71b
Various clean-ups
2024-07-20 12:31:58 +01:00
8ecc402d7c
Allow multiple connections to the same link-local address
...
Note that this may mean that currently we end up with two links to each multicast-discovered peer, one incoming and one outgoing
2024-07-20 11:31:08 +01:00
f788a18bef
Measure RTT, report in getPeers
( #1143 )
...
Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com >
2024-05-30 22:46:06 +01:00
f56f9c124c
Minor Fixes ( #1107 )
...
* Minor comment fixes.
* Optimize PeerEntry for memory efficiency
* Improve NodeConfig for memory alignment
2024-05-27 21:57:28 +01:00
6cbe56adfe
fix incorrect pool use
2024-05-25 06:15:36 -05:00
180d7bf499
Adjust default backoff max to just over 1 hour, add ?maxbackoff=
peer option ( #1124 )
...
Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com >
2024-01-15 23:09:07 +00:00
1e9a59edf9
Update behaviour in QUIC listener handler
2024-01-05 11:45:20 +00:00
3dfa6d0cc9
Validate public key lengths on debug_
API endpoints ( fixes #1113 )
2023-12-03 17:55:12 +00:00
6b6cd0bed5
Fix PPROFLISTEN
2023-11-28 13:24:54 +00:00
fef553ed18
Tweak logging
2023-11-26 16:28:48 +00:00
39c4b24395
Don't use 0-RTT for QUIC
2023-11-26 16:19:00 +00:00
a0b3897278
Cap link backoff at roughly 4.5 hours
2023-11-21 23:54:27 +00:00
7aca869170
Tweak backoff success handling
2023-11-21 10:35:17 +00:00
0346af46da
Don't panic when connect returns nil
( fixes #1086 ) ( #1089 )
...
* Don't panic when connect returns `nil` (fixes #1086 )
It isn't clear to me why this would happen but let's guard the condition anyway.
* Log inconsistent error state
---------
Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com >
2023-11-04 18:42:42 +00:00
93a5adfd18
Add sockstls://
( #1090 )
...
Closes #1087 .
Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com >
2023-11-04 17:57:15 +00:00
ddb75700a0
Report errors during handshake stage ( #1091 )
...
Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com >
2023-11-04 17:57:04 +00:00
e41b838d8f
Don't panic at startup when duplicate peers are configured
...
Fixes #1077
2023-10-28 21:34:15 +01:00
094f80f39c
Fix RetryPeersNow
, move startup logging, don't set TUN address if not available
2023-10-22 15:51:30 +01:00
955aa4af79
Remove unnecessary pprof log line
2023-10-22 10:29:19 +01:00
73c6c25bd9
Restore removePeer
method
2023-10-22 10:27:41 +01:00
80e56eafcd
Allow PPROFLISTEN
on all builds
2023-10-21 21:36:28 +01:00
bcd80b043f
Don't tightloop when a listener can no longer accept connections
2023-10-17 21:41:21 +01:00
74ca02edfd
Don't require TLS client certificate
2023-10-15 23:06:10 +01:00
efb4b4635d
Don't send a TLS ALPN name
2023-10-14 20:26:30 +01:00
117e4b88f8
Fix panic on invalid handshake length
2023-10-12 19:12:17 +01:00
45b773eade
Remove TLS root validation
...
This is just too complicated compared to the per-peer/per-listener/per-interface password
approach.
2023-10-11 18:25:35 +01:00
bd7e699130
Add unit test for password auth
2023-10-09 22:28:20 +01:00
268ffbfd14
Add authenticated handshake, support for passwords
2023-10-09 17:17:12 +01:00
490c11c29e
Fix more codefactor suggestions
2023-09-03 13:49:21 +01:00
991ea8b876
Fix codefactor suggestion
2023-09-03 13:32:15 +01:00
fa3d943ba9
Don't set BBR for TCP peerings
2023-09-03 13:30:41 +01:00
5b203ad8c5
Use Go 1.21 in CI, update minimum version to Go 1.20, lint fixes, update quic-go
2023-08-12 18:12:58 +01:00
63b214f6b7
Fix negotiating priority on connection
2023-07-15 22:34:29 +01:00
7f94463332
Merge pull request #1037 from yggdrasil-network/neil/quic
...
QUIC interface support
2023-06-19 06:27:09 -05:00
423fc248d2
Remove debug lines
2023-06-18 20:54:16 +01:00
516fcce6b3
Keepalives are needed to stop the connection inactivity timeout
2023-06-18 20:54:16 +01:00
d8dc6b2670
QUIC interface support
2023-06-18 20:54:14 +01:00
109f59c7dc
Tweak link handshake
2023-06-18 20:28:14 +01:00
c1ae9ea0d4
Switch back to using an actor to manage link state, and slighty randomize the delay between multicast announcements. This seems to fix the issue with duplicate connections (and breaks a livelock in the multicast code where both nodes keep closing the listen side of their connection, but that's kind of a hack, we need a better solution)
2023-06-18 03:40:40 -05:00
2eda59d9e4
Improve link setup locking and guards
2023-05-23 22:39:10 +01:00
06ca8941c7
Fix race condition between incoming and outgoing connection setup
2023-05-22 23:10:44 +01:00
e94985c583
try to cheer up the linter again
2023-05-21 12:49:49 -05:00
5a6f27e732
cheer up the linter
2023-05-21 12:43:03 -05:00
8b5add5301
reduce allocations (also pulls in updated ironwood to do the same)
2023-05-21 12:38:16 -05:00
cb8333f9ff
Tweak lock behaviour
2023-05-21 00:02:04 +01:00
333561f4e1
Tweak link state locking, add comments, listener priority, other fixes
2023-05-20 23:44:31 +01:00
aff3201084
Fix incoming connection handlers
2023-05-20 22:22:15 +01:00