Neil Alexander
eef613993f
Raise link error when SNI supplied on unsupported link type
...
Yggdrasil / Lint (push) Has been cancelled
Yggdrasil / Analyse (push) Has been cancelled
Yggdrasil / Build & Test (Linux, Go ${{ matrix.goversion }}) (1.21) (push) Has been cancelled
Yggdrasil / Build & Test (Linux, Go ${{ matrix.goversion }}) (1.22) (push) Has been cancelled
Yggdrasil / Build & Test (Linux, Go ${{ matrix.goversion }}) (1.23) (push) Has been cancelled
Yggdrasil / Build & Test (Windows, Go ${{ matrix.goversion }}) (1.21) (push) Has been cancelled
Yggdrasil / Build & Test (Windows, Go ${{ matrix.goversion }}) (1.22) (push) Has been cancelled
Yggdrasil / Build & Test (Windows, Go ${{ matrix.goversion }}) (1.23) (push) Has been cancelled
Yggdrasil / Build & Test (macOS, Go ${{ matrix.goversion }}) (1.21) (push) Has been cancelled
Yggdrasil / Build & Test (macOS, Go ${{ matrix.goversion }}) (1.22) (push) Has been cancelled
Yggdrasil / Build & Test (macOS, Go ${{ matrix.goversion }}) (1.23) (push) Has been cancelled
Yggdrasil / Build (Cross ${{ matrix.goos }}, Go ${{ matrix.goversion }}) (freebsd, 1.21) (push) Has been cancelled
Yggdrasil / Build (Cross ${{ matrix.goos }}, Go ${{ matrix.goversion }}) (freebsd, 1.22) (push) Has been cancelled
Yggdrasil / Build (Cross ${{ matrix.goos }}, Go ${{ matrix.goversion }}) (freebsd, 1.23) (push) Has been cancelled
Yggdrasil / Build (Cross ${{ matrix.goos }}, Go ${{ matrix.goversion }}) (openbsd, 1.21) (push) Has been cancelled
Yggdrasil / Build (Cross ${{ matrix.goos }}, Go ${{ matrix.goversion }}) (openbsd, 1.22) (push) Has been cancelled
Yggdrasil / Build (Cross ${{ matrix.goos }}, Go ${{ matrix.goversion }}) (openbsd, 1.23) (push) Has been cancelled
Yggdrasil / All tests passed (push) Has been cancelled
Closes #1196
2024-10-27 21:06:56 +00:00
Neil Alexander
6d5243bd9a
Add unit test for AllowedPublicKeys
2024-09-29 22:04:41 +01:00
Neil Alexander
377bc664c9
The AllowedPublicKeys
option should not apply to multicast listeners
...
Another fix for #1141 .
2024-09-29 21:38:56 +01:00
Neil Alexander
d1b849588f
Fix bug where ephemeral links would try to reconnect in a fast loop
...
Helps #1141 , although not a complete solution.
2024-09-29 21:24:39 +01:00
Neil Alexander
c00779c7d3
Multicast interface detection and shutdown tweaks
...
May help with #1173 .
2024-09-29 20:58:10 +01:00
Neil Alexander
e138fa679c
Fix link panic when shutting down ( closes #1168 )
2024-09-22 17:05:25 +01:00
Neil Alexander
361b9fd6fc
Update WebSocket dependency to new import path
2024-09-22 16:54:58 +01:00
Neil
c4b29b735c
Link costing based on average RTT ( #1171 )
...
This PR updates Ironwood to include the new RTT-based link costing and
updates `yggdrasilctl` to report the cost in `getPeers`.
Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2024-09-21 22:05:23 +00:00
Neil Alexander
b1283e15f6
Link state tracking tweaks and improved shutdown
2024-08-11 10:42:25 +01:00
Neil Alexander
9950d1225d
Improve link and handshake errors
2024-08-01 21:53:48 +01:00
Vasyl Gello
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
Neil Alexander
04c0acf71b
Various clean-ups
2024-07-20 12:31:58 +01:00
Neil Alexander
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
Neil
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
Paul Donald
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
Arceliar
6cbe56adfe
fix incorrect pool use
2024-05-25 06:15:36 -05:00
Neil
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
Neil Alexander
1e9a59edf9
Update behaviour in QUIC listener handler
2024-01-05 11:45:20 +00:00
Neil Alexander
3dfa6d0cc9
Validate public key lengths on debug_
API endpoints ( fixes #1113 )
2023-12-03 17:55:12 +00:00
Neil Alexander
6b6cd0bed5
Fix PPROFLISTEN
2023-11-28 13:24:54 +00:00
Neil Alexander
fef553ed18
Tweak logging
2023-11-26 16:28:48 +00:00
Neil Alexander
39c4b24395
Don't use 0-RTT for QUIC
2023-11-26 16:19:00 +00:00
Neil Alexander
a0b3897278
Cap link backoff at roughly 4.5 hours
2023-11-21 23:54:27 +00:00
Neil Alexander
7aca869170
Tweak backoff success handling
2023-11-21 10:35:17 +00:00
Neil
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
Neil
93a5adfd18
Add sockstls://
( #1090 )
...
Closes #1087 .
Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2023-11-04 17:57:15 +00:00
Neil
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
Neil Alexander
e41b838d8f
Don't panic at startup when duplicate peers are configured
...
Fixes #1077
2023-10-28 21:34:15 +01:00
Neil Alexander
094f80f39c
Fix RetryPeersNow
, move startup logging, don't set TUN address if not available
2023-10-22 15:51:30 +01:00
Neil Alexander
955aa4af79
Remove unnecessary pprof log line
2023-10-22 10:29:19 +01:00
Neil Alexander
73c6c25bd9
Restore removePeer
method
2023-10-22 10:27:41 +01:00
Neil Alexander
80e56eafcd
Allow PPROFLISTEN
on all builds
2023-10-21 21:36:28 +01:00
Neil Alexander
bcd80b043f
Don't tightloop when a listener can no longer accept connections
2023-10-17 21:41:21 +01:00
Neil Alexander
74ca02edfd
Don't require TLS client certificate
2023-10-15 23:06:10 +01:00
Neil Alexander
efb4b4635d
Don't send a TLS ALPN name
2023-10-14 20:26:30 +01:00
Neil Alexander
117e4b88f8
Fix panic on invalid handshake length
2023-10-12 19:12:17 +01:00
Neil Alexander
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
Neil Alexander
bd7e699130
Add unit test for password auth
2023-10-09 22:28:20 +01:00
Neil Alexander
268ffbfd14
Add authenticated handshake, support for passwords
2023-10-09 17:17:12 +01:00
Neil Alexander
490c11c29e
Fix more codefactor suggestions
2023-09-03 13:49:21 +01:00
Neil Alexander
991ea8b876
Fix codefactor suggestion
2023-09-03 13:32:15 +01:00
Neil Alexander
fa3d943ba9
Don't set BBR for TCP peerings
2023-09-03 13:30:41 +01:00
Neil Alexander
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
Neil Alexander
63b214f6b7
Fix negotiating priority on connection
2023-07-15 22:34:29 +01:00
Arceliar
7f94463332
Merge pull request #1037 from yggdrasil-network/neil/quic
...
QUIC interface support
2023-06-19 06:27:09 -05:00
Neil Alexander
423fc248d2
Remove debug lines
2023-06-18 20:54:16 +01:00
Neil Alexander
516fcce6b3
Keepalives are needed to stop the connection inactivity timeout
2023-06-18 20:54:16 +01:00
Neil Alexander
d8dc6b2670
QUIC interface support
2023-06-18 20:54:14 +01:00
Neil Alexander
109f59c7dc
Tweak link handshake
2023-06-18 20:28:14 +01:00
Arceliar
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