Commit Graph

2336 Commits

Author SHA1 Message Date
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
65e350153e Don't start multicast module if all Beacon and Listen are disabled 2022-10-22 18:05:14 +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
0a1a155e66 Use SO_REUSEADDR instead of SO_REUSEPORT on Linux 2022-10-22 14:56:29 +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
b8a2d9f125
Version 0.4.5 (#957)
* Version 0.4.5 changelog

* Update changelog
2022-10-18 23:04:06 +01:00
Neil Alexander
8ce7c86383 Update some dependencies 2022-10-15 17:45:41 +01:00
Neil Alexander
69782ad87b Improve shutdown behaviour (fixes #891) 2022-10-15 16:07:32 +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
962665189c Tweaks to yggdrasilctl 2022-10-02 13:15:11 +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
1de587a971
Update to Arceliar/ironwood@ed4b6d4 2022-09-24 17:06:24 +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
e165b1fa0c
Add quote marks to InterfacePeers comment
Fixes #945.
2022-09-24 14:44:50 +01:00
Neil Alexander
01c44a087b
Rename tuntap package to tun
We haven't had TAP support in ages.
2022-09-24 14:41:47 +01:00
Neil Alexander
217ac39e77
Allow setting default config path and AdminListen at compile time
By providing the following items to `LDFLAGS`:

* `-X github.com/yggdrasil-network/yggdrasil-go/src/defaults.defaultConfig=/path/to/config`
* '-X github.com/yggdrasil-network/yggdrasil-go/src/defaults.defaultAdminListen=unix://path/to/sock'

Closes #818.
2022-09-24 14:09:08 +01:00
Neil Alexander
0abfe78858
Silence error when reconnecting to already connected peer 2022-09-24 13:46:22 +01:00
Neil Alexander
5ad8c33d26
Remove packaging from main CI run 2022-09-24 13:38:14 +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
Alexander Ivanov
414aaf6eb9
Update mobile.go (#942) 2022-09-05 12:55:35 +01:00
Neil Alexander
88a393a7b3 Load listen addresses 2022-09-03 17:26:12 +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
a7d06e048a Refactor TUN setup (isolated config) 2022-09-03 12:20:57 +01:00
Neil Alexander
b1f61fb0a8 Refactor admin socket setup (isolated config) 2022-09-03 11:54:46 +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
Karandashov Daniil
486ffebedd
Delete unused param (#935) 2022-08-29 20:40:19 +01:00
Arceliar
af99fa4f6b
Merge pull request #929 from yggdrasil-network/neilalexander/refactor
Node setup refactoring
2022-08-28 13:46:42 -05:00
Arceliar
a182fad8d6
Merge branch 'develop' into neilalexander/refactor 2022-08-28 13:39:26 -05:00
Alexander Ivanov
f8e626dbe1
Fix Android multicast crash (#930)
* Do not exit on multicast errors (mobile)

* Consistency with cmd/yggdrasil/main.go

Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2022-08-10 22:54:02 +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
d5c0dc9bee Go 1.19 in CI 2022-08-06 15:19:01 +01:00
Neil Alexander
4c889703b1 Continue refactoring 2022-08-06 15:05:12 +01:00