Neil Alexander
e824c73e21
Fix crash
2022-11-12 11:56:50 +00:00
Neil Alexander
7efd66932f
Redial failed connections if possible ( #983 )
2022-11-12 11:30:03 +00:00
majestrate
6fed2a75d7
Make TLS certs never expire ( #977 )
...
According to RFC5280 we can make TLS certs never expire by setting their `NotAfter` date to a value that is basically the end of time.
Fixes #976 .
2022-11-08 22:11:22 +00:00
Neil Alexander
f08dec822a
Priority support ( #964 )
...
* Allow setting link priorities
* Fix a bug
* Allow setting priority on listeners and multicast interfaces
* Update `yggdrasilctl`
* Update to Arceliar/ironwood#5
2022-10-26 09:24:24 +01:00
Neil Alexander
9a9452dcc8
Fix panic in GetPeers
that may happen mid-link setup
2022-10-25 18:58:52 +01:00
Neil Alexander
35ea66d651
Varying connection check strictness based on scope
2022-10-22 17:45:09 +01:00
Neil Alexander
8fe1c41295
Don't reject multiple genuine links from the same host
2022-10-22 16:59:25 +01:00
Neil Alexander
d66b3ffb7a
Always allow link-local peerings again
2022-10-22 16:23:25 +01:00
Neil Alexander
63c4cb5c21
Fix reporting name for TCP
2022-10-22 15:47:09 +01:00
Neil Alexander
c55611a478
Tweak logging for connections
2022-10-22 14:56:11 +01:00
Neil Alexander
22caddef63
Don't log duplicate connection attempt
2022-10-21 19:49:49 +01:00
Neil Alexander
81839ad50d
Fix InterfacePeers
2022-10-21 19:49:15 +01:00
Neil Alexander
ee21c56e43
Fix setting nodeinfo ( closes #954 )
2022-10-15 15:42:52 +01:00
Neil Alexander
69632bacb5
Tidy up
2022-10-02 13:20:39 +01:00
Neil Alexander
428d2375da
Don't allow configuring the same peer more than once
2022-10-02 12:39:18 +01:00
Neil Alexander
8cf76f841d
Silence already connected to this node
2022-10-02 12:36:51 +01:00
ehmry
7db934488e
Reimplement AddPeer and RemovePeer for admin socket ( #951 )
...
* Reimplement AddPeer and RemovePeer for admin socket
Fix #950
* Disconnect the peer on `removePeer`
Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2022-10-02 12:35:43 +01:00
Neil Alexander
c922eba2d8
Fix sending arguments to the admin socket in yggdrasilctl
2022-09-24 21:28:09 +01:00
Neil Alexander
d9fe6f72ac
Lint tweaks
2022-09-24 17:05:44 +01:00
Neil Alexander
d24d3fa047
Use deadline for link handshake ( #949 )
...
This uses a 6 second deadline for timeouts instead of using `util.FuncTimeout` at 30 seconds for the read and then again for the write.
If the handshake doesn't complete within 6 seconds then it's going to probably collapse when we give the connection to Ironwood and it tries to do a keepalive anyway.
2022-09-24 16:51:31 +01:00
Neil Alexander
0abfe78858
Silence error when reconnecting to already connected peer
2022-09-24 13:46:22 +01:00
Neil Alexander
b67c313f44
Admin socket and yggdrasilctl
improvements
...
This refactors the request parsing, as well as improving the output for some request types. It also tweaks `yggdrasilctl` output, which should help with #947 .
2022-09-24 12:22:38 +01:00
Neil Alexander
5ef61faeff
Link refactor ( #941 )
...
* Link refactoring
* More refactoring
* More tweaking
* Cleaner shutdowns, UNIX socket support, more tweaks
* Actorise links, remove mutex
* SOCKS support
2022-09-17 20:07:00 +01:00
Neil Alexander
dc9720e580
Extend getSessions
admin call to include uptime/TX/RX
2022-09-03 16:55:57 +01:00
Neil Alexander
5477566fa9
Length not capacity
2022-09-03 12:38:42 +01:00
Neil Alexander
9cdfd59476
Tidy up a bit, make sure to copy the private key at startup
2022-09-03 12:34:29 +01:00
Neil Alexander
493208fb37
Refactor multicast setup (isolated config, etc)
2022-09-03 11:42:05 +01:00
Neil Alexander
dad0b10dfe
Move Core._applyOption
2022-09-03 10:51:44 +01:00
Neil Alexander
c6fe81b5d2
Admin socket and yggdrasilctl
refactoring ( #939 )
2022-09-03 10:50:43 +01:00
Neil Alexander
4f2abece81
Fix panic in tcp.init
for incorrectly formatted listen addresses
2022-09-01 16:56:42 +01:00
Neil Alexander
dd66e8a9c9
Merge branch 'develop' into neilalexander/refactor
2022-08-06 15:23:44 +01:00
Neil Alexander
16b8149052
No longer use ioutil
which is deprecated
2022-08-06 15:21:21 +01:00
Neil Alexander
4c889703b1
Continue refactoring
2022-08-06 15:05:12 +01:00
Neil Alexander
5616b9fc84
Don't lose my work
2022-07-24 10:23:25 +01:00
Neil Alexander
88a0a3e8fb
Fix data races in handleProto
(observed by @majestrate)
2022-07-07 17:03:29 +01:00
Neil Alexander
41d890bb64
Run goimports
2022-04-17 18:02:25 +01:00
Neil Alexander
2d2ad4692b
Restore uptime
, bytes_sent
and bytes_recvd
to getPeers
( #888 )
...
* Restore `uptime`, `bytes_sent` and `bytes_recvd` to the admin API for peers
* Wrap conn in Yggdrasil instead, so not necessary to do so in Ironwood
* Shuffle struct for alignment
2022-02-01 13:37:45 +00:00
Tom
9f5cc0eecb
Make message clearer and downgrade ( #812 )
...
* Make message clearer and downgrade
* Differentiate between incoming and outgoing conn
2022-01-30 21:58:57 +00:00
Arceliar
f92d812f3c
Merge pull request #822 from yggdrasil-network/sni
...
TLS Server Name Indication
2021-09-24 05:14:28 -05:00
Arceliar
6af9b61b15
Merge pull request #842 from Arceliar/mutex
...
Fix incorrect mutex use in ipv6rwc
2021-09-24 04:43:44 -05:00
Arceliar
529a33034b
gofmt to add new build comments
2021-09-23 04:34:58 -05:00
Alex Kotov
571186ca77
Rename protohandler attributes
2021-09-03 01:45:30 +05:00
Alex Kotov
3c89781057
Align and reorder code for lesser diff
2021-09-01 07:58:11 +05:00
Alex Kotov
a5f2ba80a2
Organize code in "src/core/proto.go"
2021-09-01 07:50:03 +05:00
Alex Kotov
538ee13669
Add type core.AddHandlerFunc
2021-09-01 06:16:57 +05:00
Neil Alexander
d1cd671bec
Fix bug
2021-08-01 21:39:49 +01:00
Neil Alexander
bbdff033ce
Update SNI code
2021-08-01 21:36:51 +01:00
Neil Alexander
f094cf34bf
Set SNI by default if the peering URI contains a DNS name
2021-07-28 22:23:33 +01:00
Neil Alexander
d8df9755f2
Allow specifying TLS SNI with ?sni= in peering URI
2021-07-28 22:11:20 +01:00
Arceliar
cd5383f7b7
fix core tests
2021-07-07 18:36:51 -05:00