TomZ
0c7abaaffb
Match sock file default to systemd setup.
...
The `AdminListen` option and `yggdrasilctl` now default to
`unix:///var/run/yggdrasil/yggdrasil.sock` on Linux
This allows yggdrasil to be run as its own user.
Closes #802
2022-01-09 14:52:19 +01:00
TomZ
aa46ee57bb
[Security] do not run as root.
...
An Internet accessible service should aim to have as little as
possible attack surface, which is much easier to do when running
with the absolute minimum number of priviledges.
This makes the systemd setup run the service as a user 'yggdrasil'
and uses the systemd feature `RuntimeDirectory` to auto-create
the /var/run/yggdrasil dir so our non-elevated client can still
create the socket.
The sysusers file will cause the user be created on first install
using the sysusers subsystem.
2022-01-09 14:50:19 +01:00
Neil Alexander
408d381591
Set hostArchitectures
in macOS .pkg
installer
2021-12-06 11:19:58 +00:00
Alex Kotov
87e936195e
Add some tests ( #828 )
...
* Add tests
* Add tests
* Add tests
* Add tests
* Fix code style
* Remove unnecessary tests
2021-11-04 08:05:53 +00:00
Neil Alexander
e4e58831bf
Version 0.4.2
2021-11-03 22:16:53 +00:00
Neil Alexander
03a5cce5bb
Revert Wireguard update
...
This reverts commit 5c19f3f88c
.
2021-11-03 20:03:27 +00:00
Neil Alexander
1f64319712
Version 0.4.1
2021-11-03 17:53:35 +00:00
Neil Alexander
4f3117d81d
Use network-online.target
instead of network.target
for systemd service unit
2021-11-03 17:40:06 +00:00
Neil Alexander
5c19f3f88c
Update dependencies
2021-11-03 10:33:00 +00:00
Arceliar
feb02c485a
Merge pull request #861 from yggdrasil-network/fix860
...
Fix panic in `address.GetKey()`
2021-11-02 17:30:50 -05:00
Neil Alexander
4859accbb0
Fix panic in address.GetKey()
( fixes #860 )
2021-11-02 18:03:16 +00:00
Neil Alexander
99227b60ce
Update CI to use Go 1.17, produce Apple Silicon builds ( closes #844 )
2021-09-28 11:02:15 +01: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
f2d1eff8f6
Merge pull request #835 from kotovalexarian/test-and-refactor-proto-handler
...
Really tiny refactoring of "src/core"
2021-09-24 04:43:06 -05:00
Neil Alexander
9a1d1df85e
Use newer Xcode image for macOS builds in CircleCI
2021-09-23 12:11:03 +01:00
Arceliar
e5d638ff4b
better way to empty ipv6rwc buffer
2021-09-23 04:39:12 -05:00
Arceliar
86e5306eec
fix race from mutex that wasn't held long enough
2021-09-23 04:35:31 -05:00
Arceliar
529a33034b
gofmt to add new build comments
2021-09-23 04:34:58 -05:00
Paul Dee
1c7deb72db
Align struct elements to byte boundaries: reduce memory footprint. ( #834 )
2021-09-21 21:19:40 +01:00
Fyodor Ustinov
52345a2de4
Check tun.config is not equal to nil before usage ( #830 )
...
We have to check tun.config is not nil before first use, not after.
2021-09-21 21:19:25 +01: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
Arceliar
3613614b41
Revert "Add IPReadWriteCloser interface"
...
This reverts commit ebe366ef3b
.
2021-08-07 12:56:36 -05:00
Neil Alexander
ebe366ef3b
Add IPReadWriteCloser interface
2021-08-07 10:17:21 +01:00
Alex Kotov
cbb6dc1b7d
Split yggdrasilctl code into separate functions (refactoring) ( #815 )
...
* Move yggdrasilctl responses to separate functions
* Move yggdrasilctl request switch to separate function
* Add empty lines
* Create struct CmdLine for yggdrasilctl
* Move yggdrasilctl command line parsing to separate func
* Turn struct CmdLine into CmdLineEnv
* Rename func parseCmdLine to parseFlagsAndArgs
* Move yggdrasilctl endpoint setting logic into separate func
* Function to create yggdrasilctl CmdLineEnv
* Reorder code
* Move struct fields into lines
* Turn yggdrasilctl CmdLineEnv funcs to methods
* Move yggdrasilctl connection code to separate func
* Rename functions
* Move yggdrasilctl command line env to separate mod
* Move yggdrasilctl command line env to main mod
* Run goimports
Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2021-08-02 22:47:38 +01: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
Neil Alexander
b333c7d7f3
Merge pull request #813 from cofob/patch-1
...
Allow yggdrasil bind to ports <1024
2021-07-22 12:18:11 +01:00
cofob
6a0ddc20ef
Allow yggdrasil bind to ports <1024
2021-07-21 17:57:59 +07:00
Neil Alexander
52309d094c
Merge pull request #800 from yggdrasil-network/iprwc
...
Refactor PacketConn/ReadWriteCloser interfaces
2021-07-15 09:39:03 +01:00
Arceliar
747a2538d7
Merge pull request #801 from tdemin/develop
...
Preallocate memory when deriving address from key
2021-07-08 17:47:43 -05:00
Timur Demin
04ecdf6045
Preallocate memory when deriving address from key
...
This makes src/address.AddrForKey preallocate 32 bytes before starting
the address derivation. As benches in syg_go show, reallocating temp
takes 20% of the function runtime.
2021-07-08 16:04:43 +05:00
Arceliar
cd5383f7b7
fix core tests
2021-07-07 18:36:51 -05:00
Arceliar
3704ebf4cb
fix debug rpcs and cleanup core.Close/core.Stop
2021-07-06 19:45:12 -05:00
Neil Alexander
e224c02d6d
Revert "Add LocalAddr to complete net.PacketConn interface"
...
This reverts commit e4ce2c79a9
.
2021-07-05 22:35:46 +01:00
Neil Alexander
e4ce2c79a9
Add LocalAddr to complete net.PacketConn interface
2021-07-05 22:26:09 +01:00
Arceliar
f990a56046
have the core wrap and export the underlying PacketConn, move IPv6 ReadWriteCloser wrapper logic to a separate package
2021-07-05 13:14:12 -05:00
Neil Alexander
35e8ff7c9d
Merge pull request #799 from yggdrasil-network/develop
...
Version 0.4.0
2021-07-04 09:34:38 +01:00
Neil Alexander
2fc34bbd5a
Revert "Merge pull request #796 from Chaz6/update-systemd-files"
...
This reverts commit 88bd098f91
, reversing
changes made to 4d798a3494
.
2021-07-04 09:26:17 +01:00
Neil Alexander
88bd098f91
Merge pull request #796 from Chaz6/update-systemd-files
...
Update executable path in systemd service files to match the installation instructions.
2021-07-04 09:24:40 +01:00
Neil Alexander
4d798a3494
Merge pull request #781 from yggdrasil-network/future
...
Main v0.4 routing changes
2021-07-04 09:22:43 +01:00
Arceliar
92ef49987a
Merge branch 'future' of https://github.com/yggdrasil-network/yggdrasil-go into future
2021-07-03 17:27:13 -05:00
Arceliar
5844079f67
make sure genconf exits, clean up some commented out code
2021-07-03 17:27:00 -05:00
Neil Alexander
f7b91a8f93
Update README.md
2021-07-02 23:24:34 +01:00
Neil Alexander
4d47ba8bf4
Update README.md
2021-07-02 23:21:38 +01:00