Skip to content

Commit 80dcca7

Browse files
committed
Squashed commit of the following:
commit f5d221ab111a060d749e5c0d4c81ec8bfb5779be Author: Summpot <summpot> Date: Mon Dec 8 23:20:11 2025 +0800 Remove debug logging from multicast functions and add .gitignore for debug files commit ae405adf7c4c710de0b74985aad82ee8fbe5a16a Author: Neil Alexander <[email protected]> Date: Mon Nov 24 09:29:15 2025 +0000 Update to Arceliar/ironwood@e1358f790504bf54ed1d4be339b14de1cb527706 to reduce heap allocations commit bde65aa239f65de8b58fc5317002b43372483806 Author: Neil Alexander <[email protected]> Date: Sun Nov 23 22:06:25 2025 +0000 Fix backpressure issue when TUN is disabled commit b43e213c322354a84f6dcb150f82a114dc979130 Author: Neil Alexander <[email protected]> Date: Tue Nov 11 23:18:56 2025 +0000 Don't re-attempt connections when detecting a connection to self Closes #1286. commit b920e17f24016caf01e321b124f05bea7fcd51d5 Author: Neil Alexander <[email protected]> Date: Tue Nov 11 23:18:37 2025 +0000 Do not report error in `getPeers` before it has happened commit a2272a021652533f5aa38bf49cb7c41ed88dd776 Author: Neil Alexander <[email protected]> Date: Mon Nov 10 19:53:22 2025 +0000 Tweak lint step to checkout first commit aafe75154567c3f584a1b49c0f0adee78ed89801 Author: Neil Alexander <[email protected]> Date: Mon Nov 10 19:52:00 2025 +0000 Use `go.mod`-specified Go version for lint step commit 56044b822ba5b3afbeb00cacb24eaf7162293a11 Author: Neil Alexander <[email protected]> Date: Mon Nov 10 19:48:01 2025 +0000 Fix build issues from QUIC dependency update commit 1e48a4c4c9c62cc6dff95c525cca9ec1b3f14f26 Author: Neil Alexander <[email protected]> Date: Mon Nov 10 19:44:37 2025 +0000 Update to Go 1.24 minimum, update dependencies commit 306c4c624b51490b5a68a7118474f3cdf1e493a1 Author: Neil Alexander <[email protected]> Date: Sun Nov 9 23:39:22 2025 +0000 Add `sort=` option to `getPeers` (`uptime`, `cost` or default if not specified) Signed-off-by: Neil Alexander <[email protected]> commit d0b5352db33a0d19ee10e915c1c5ca739e591f12 Author: Neil Alexander <[email protected]> Date: Sat Oct 4 10:55:45 2025 +0100 Tweak Docker tags commit 284894fe406f597dc31595007076a0faa8be8f19 Author: Dmitriy Pervin <[email protected]> Date: Sat Oct 4 14:51:43 2025 +0500 Add multi-arch Docker build & GHCR publishing (#1278) This PR addresses failures to run Yggdrasil on ARM systems. The root cause was the lack of ARM artifacts/images, which led to exec format error and similar issues. - ```Dockerfile.multiarch``` — multi-stage Go build that correctly propagates GOOS/GOARCH for linux/amd64, linux/arm64, linux/armhf and linux/armel platform. - ```entrypoint.sh``` - Introduced ENV **ALLOW_IPV6_FORWARDING**. When set to a truthy value (e.g., true), the entrypoint executes: ```sysctl -w net.ipv6.conf.all.forwarding=1```. - GitHub Action for multi-arch builds and publishing to GHCR — triggered via ```workflow_dispatch```, push to ```master``` and release via tags (with docker semantic tags e.g. v0.5.12 → 0.5.12, 0.5, 0). Example published images: [https://github.com/Forne/yggdrasil-go/pkgs/container/yggdrasil-go](https://github.com/Forne/yggdrasil-go/pkgs/container/yggdrasil-go) ✅ Ubuntu (24.04, amd64) — image runs correctly. ✅ macOS (Apple Silicon, arm64) — image runs correctly. ✅ MikroTik RouterOS (arm64) — image runs under the RouterOS container package. commit 89a3718d59b656aa86274cc7f7e7a6a8c0482dab Author: Neil Alexander <[email protected]> Date: Sat Aug 16 11:49:37 2025 +0100 Add Go 1.25 to CI pipeline commit 6d195c6de3684a8734df518050aede62b798d255 Author: Klemens Nanni <[email protected]> Date: Tue Aug 12 06:39:52 2025 +0800 OpenBSD: Pledge full filesystem read for Go's resolv.conf polling (#1275) sys/kern/kern_pledge.c r1.329[0] removed the unveil bypass for "dns", so "rpath" is needed for Go's DNS to stat(2) it. Since current "/ rwc" and "cpath" with the new "rpath" amount to full read access, there is no point in unveiling anymore. 0: https://github.com/openbsd/src/commit/8d49ad01ac8af306145a19ff67bb1f10cd3ef57f commit 429403aea5a611fe8062d3fa68775a27de47e82d Author: Neil Alexander <[email protected]> Date: Sun Jun 22 23:00:38 2025 +0100 Update CI workers for packaging pipeline commit ffc0dc92e0eb9c5070cd1fd9296c013aeb5952fe Author: Neil Alexander <[email protected]> Date: Sun Jun 22 16:37:18 2025 +0100 Reduce minimum `maxbackoff` to 5 seconds commit 81543e9cc03fc87cd3493efaee969a7ee00716fd Author: Neil Alexander <[email protected]> Date: Sat Jun 21 20:09:12 2025 +0100 Remove Go 1.22 from CI commit 9e5c25d4af9862e03de7d46796a264616bc0622c Author: Neil Alexander <[email protected]> Date: Sat Jun 21 20:05:28 2025 +0100 Update to Go 1.23, update dependencies commit 390dba04718dd3cddf2015a0442d00e29ccfe9c3 Author: Neil <[email protected]> Date: Mon Jun 2 22:02:02 2025 +0100 Update readme commit 47818a1a7c475c3c214e3b25d961b77d55069086 Author: Sergey Alirzaev <[email protected]> Date: Tue Apr 15 18:17:52 2025 +0200 apparmor: add yggdrasilctl policy (#1235) commit 6377d7f0717296e2c94561fcbd1c3b4df5af63bb Author: Sergey Alirzaev <[email protected]> Date: Tue Apr 15 18:15:09 2025 +0200 contrib/openrc: remove SIGHUP logic (#1236) as it is long gone from the daemon code and unexpectedly kills the daemon commit 5b8dbc8b1e297cd580eff36557d23df1ac5daab2 Author: Neil Alexander <[email protected]> Date: Mon Mar 31 10:18:57 2025 +0100 Add summary helpers to mobile wrapper commit 73705ff09ddfef8b458390aafe84315671952f1a Author: patrini32 <[email protected]> Date: Thu Feb 20 12:45:49 2025 +0300 Typo fix (#1232) commit 3b18909f70527ee5f927be3683daf6f949b43578 Author: Neil Alexander <[email protected]> Date: Tue Feb 18 12:56:52 2025 +0000 Update dependencies commit 58b727d1f0e22b10fcac01d128d1d1659d78b14c Author: Neil Alexander <[email protected]> Date: Tue Feb 18 12:52:21 2025 +0000 Add Go 1.24 to CI commit 782c0250d743421c7f1ecaeafdf78fc41db97749 Author: Klemens Nanni <[email protected]> Date: Sun Dec 22 14:04:26 2024 +0300 Use pledge(2) on OpenBSD (#1215) Straight forward thanks to all privileged operations being done early enough during startup. commit 213f72b8403ff55a5e38a0fa7d1cd0a093ac4666 Author: Neil Alexander <[email protected]> Date: Wed Dec 18 22:34:30 2024 +0000 Yggdrasil 0.5.12 commit 1fbcf3b3c2014f128575af0b4381c592536bc90b Author: Neil Alexander <[email protected]> Date: Wed Dec 18 22:21:23 2024 +0000 Rename `latency_ms` to `latency` in `getPeers` response since it isn't even milliseconds anymore commit 22bc9c44e286568e423305fc67c8f890a351b6a1 Author: Peter Gervai <[email protected]> Date: Wed Dec 18 20:56:46 2024 +0100 genkeys print the number of generated keys (#1217) It is good to know how many resources have we carelessly wasted. :-) commit 9c73bacab90806d913df1ef2b6d79b5ebeb0f98b Author: Neil <[email protected]> Date: Sat Dec 14 00:33:26 2024 +0100 Update to Go 1.22, quic-go/[email protected] (#1218) Our dependencies are now moving beyond Go 1.21 so need to update. Co-authored-by: Neil Alexander <[email protected]> commit 04be129878a68d7bbd2fcf2444f1f17b0c52aa36 Author: Neil Alexander <[email protected]> Date: Fri Dec 13 23:12:36 2024 +0000 Update to Arceliar/ironwood@743fe2f commit 657f7e0db38e9375a75e8a88bac5ba6e3f02537f Author: Neil Alexander <[email protected]> Date: Fri Dec 13 16:54:14 2024 +0000 Fix empty user/group detection on `chuser` This should fix #1216. commit 7adf5f18b7ca234c48236e23b2a025be8e8afc13 Author: Neil <[email protected]> Date: Thu Dec 12 20:26:54 2024 +0100 Yggdrasil 0.5.11 (#1214) Changelog updates. Co-authored-by: Neil Alexander <[email protected]> commit 69451fe969bfadb779bed4eecc46f604800bdd0d Author: Neil Alexander <[email protected]> Date: Thu Dec 12 19:07:55 2024 +0000 Specify TLS 1.2-TLS 1.3 supported range for client connections Should fix #1208. commit 2d587740c11e136dbc094be206bfaeeda8559d3f Author: Klemens Nanni <[email protected]> Date: Thu Dec 12 21:48:24 2024 +0300 genkeys, yggdrasilctl: Use pledge(2) on OpenBSD (#1193) Restrict system operations of CLI tools with https://man.openbsd.org/pledge.2. https://pkg.go.dev/suah.dev/protect abstracts the OS specific code, i.e. is a NOOP on non-OpenBSD systems. This PR is to gauge upstream interest in this direction; my OpenBSD port of yggdrasil already pledges the daemon, resulting in minimal runtime privileges, but there are still a few rough edges: https://github.com/jasperla/openbsd-wip/blob/master/net/yggdrasil/patches/patch-cmd_yggdrasil_main_go#L80 --------- Co-authored-by: Neil <[email protected]> commit b2b0396d48ee5d2803a14a5d9d9bd4f86b11d792 Author: Neil Alexander <[email protected]> Date: Thu Dec 12 18:42:53 2024 +0000 Update dependencies commit 83ec58afc763ff89d9664876ed2e95fb5842985a Author: Klemens Nanni <[email protected]> Date: Thu Dec 12 21:37:02 2024 +0300 Use unveil(2) on OpenBSD (#1194) After #1175 removed ioctl(2) fallback code shelling out to ifconfig(8), there is no code left (compiled on OpenBSD) that would fork(2) or execve(2). Drop the ability to run any executable file to double down on this, thus reducing the attack surface of this this experimental, internet facing daemon running as root. pledge(2) is doable, but needs more polish. unveil(2), however, is as simple as it gets. On other systems, this code is a NOOP, but can still help to implement similar safety belts. commit b436052b2d7ff9f3cc3acd3c8a55396fa2308563 Author: Neil Alexander <[email protected]> Date: Tue Dec 10 19:02:13 2024 +0000 Update to Arceliar/ironwood@9deb08d commit 3ed4a92288ee47dc388af9bf23e0bf66bbab96ae Author: Neil <[email protected]> Date: Sun Nov 24 12:56:24 2024 +0000 Yggdrasil 0.5.10 (#1207) Changelog updates. Co-authored-by: Neil Alexander <[email protected]> commit bdb2d399c5776a80ea81164f1e9b8013fa934775 Author: Neil Alexander <[email protected]> Date: Sat Nov 23 14:55:14 2024 +0000 Update dependencies commit 7790a19e4c78da866bb29c653558a3bfba363ffe Author: Neil Alexander <[email protected]> Date: Sat Nov 23 14:49:48 2024 +0000 New detail in `getMulticastInterfaces` admin endpoint commit d3b4de46ea156b63e925909b957ff6138e6b07ba Author: Neil Alexander <[email protected]> Date: Sat Nov 23 13:43:34 2024 +0000 Improvements to how link shutdowns are handled commit 2454970e4dbd55d8e9788e0022f4f0ca065e7af5 Author: Neil Alexander <[email protected]> Date: Fri Nov 22 09:47:33 2024 +0000 Tweaks to configuration commit b98f98318f9c9f0137f734adc5c6728cc4ae7a2e Author: Neil Alexander <[email protected]> Date: Fri Nov 22 09:44:30 2024 +0000 Tweaks to link handling commit ff9e90c5aa2d7e177577f2d1044c25a278ae2036 Author: Neil Alexander <[email protected]> Date: Fri Nov 22 09:31:38 2024 +0000 Update link cost calculation and next-hop selection (update to Arceliar/ironwood@75a6e82) commit 9398cae230170990b5b048f63a22653a714e30ee Author: Neil <[email protected]> Date: Tue Nov 19 08:42:27 2024 +0000 Expose download/upload rate per peer (#1206) commit c22a746a1d166b0060ce4b0b0496b82a1a96e29b Author: Klemens Nanni <[email protected]> Date: Mon Nov 18 00:37:07 2024 +0300 Rewrite chuser() for simplicity and correctness (#1203) - Use unambiguous variable names (w/o package name conflict). - Fail on invalid input such as the empty string or `:`. - Do not change group without user, i.e. fail on `:group`. - Parse input using mnemonic APIs. - Do not juggle between integer types. - Unset supplementary groups. - Use set[ug]id(2) to follow the idiom of OpenBSD base programs. (cannot use setres[ug]id(2) as macOS does not have them.) Includes/Supersedes #1202. Fixes #927. I only tested on OpenBSD (so far), but other systems should just work. commit 67ec5a92b33089d1b821717d6e9f96e28f06fe26 Author: Neil Alexander <[email protected]> Date: Sun Nov 17 21:29:26 2024 +0000 Fix some lint issues commit 42873be09b5912cfbff0053fa94a1cb03112e0cf Author: Neil Alexander <[email protected]> Date: Sat Nov 16 22:59:03 2024 +0000 Reusable peer lookup/dial logic commit 75d2080e53d8b2e98fb471bcc4e561d08ad7f7bc Author: Klemens Nanni <[email protected]> Date: Mon Nov 11 22:28:28 2024 +0300 Set groups when dropping privileges to not leak supplementary group access (#1202) Changing the real and effective user/group IDs and the saved set-user/group-ID is not enough to get rid of intial access permissions. The list of groups must be cleared also, otherwise a process changing from, e.g. `root:root` to `nobody:nobody` retains rights to access `:wheel` files (assuming `root` is a member of the `wheel` group). For example: ``` uid=0(root) gid=0(wheel) groups=0(wheel), 2(kmem), 3(sys), 4(tty), 5(operator), 20(staff), 31(guest) [1] 4337 COMMAND USER GROUP SUPGRP ./yggdrasil -aut nobody nobody wheel,kmem,sys,tty,operator,staff,guest ``` Fix that so the process runs as mere ``` COMMAND USER GROUP SUPGRP ./yggdrasil -aut nobody nobody nobody ``` Fixes #927. commit 834680045a9738df7940cfbab74ccc5e94ff6509 Author: Klemens Nanni <[email protected]> Date: Mon Nov 11 22:27:02 2024 +0300 Create admin socket synchronously before privdrop (#1201) Creating UNIX sockets the listen() goroutine that races against the main one dropping to an unprivileged user may cause startup failure when privdrop happens before privileged filesystem access. Setup or fail in New() and only do listen(2) in listen() to avoid this. ``` 2024/11/03 21:15:27 Build name: yggdrasil-go 2024/11/03 21:15:27 Build version: 0.5.9 ... 2024/11/03 21:15:27 Admin socket failed to listen: listen unix /var/run/yggdrasil.sock: bind: permission denied ``` Rerun, now the order is flipped: ``` 2024/11/03 21:15:34 Build name: yggdrasil-go 2024/11/03 21:15:34 Build version: 0.5.9 [...] 2024/11/03 21:15:34 UNIX admin socket listening on /var/run/yggdrasil.sock [...] ``` Fixes #927. commit eef613993fdaa330faeaa187c2d2bca6389c4b86 Author: Neil Alexander <[email protected]> Date: Sun Oct 27 21:06:56 2024 +0000 Raise link error when SNI supplied on unsupported link type Closes #1196 commit ff0ef7ff567b772c6a45a60eb37ed9982a55aac7 Author: Neil Alexander <[email protected]> Date: Sun Oct 27 20:59:05 2024 +0000 Update comments in default configuration file commit ef110b018109655633a52b08472b1453fe61068a Author: Neil Alexander <[email protected]> Date: Sun Oct 27 20:38:15 2024 +0000 Update Debian package metadata commit b20ad846a136d619e435a97380a14af3f97376f8 Author: Neil Alexander <[email protected]> Date: Sun Oct 20 21:27:20 2024 +0100 When `IfName` is `none`, start queue goroutine, otherwise `iprwc` blocks and some handlers don't run commit 0b9c8bd020f971847604e7e1f0e0cfc66e65da49 Author: Neil <[email protected]> Date: Sat Oct 19 17:09:46 2024 +0100 Yggdrasil 0.5.9 (#1191) Changelog updates. Co-authored-by: Neil Alexander <[email protected]> commit 0b9469100cf4dbfc5ea904f0182d1575d5c95963 Author: Neil Alexander <[email protected]> Date: Thu Oct 17 13:23:11 2024 +0100 Update dependencies commit a6429390da831e77c47863e124d39a70e94b47e6 Author: Klemens Nanni <[email protected]> Date: Thu Oct 17 15:22:46 2024 +0300 Use UNIX socket patch from url struct (#1186) No need to extract it again when the url package provides it for us: ``` $ jq -n '{"AdminListen":"unix:///tmp/ygg.sock"}' | ./yggdrasil -useconf | grep 'admin socket' 2024/10/08 22:41:11 UNIX admin socket listening on /tmp/ygg.sock ``` Follow-up on #1176 commit 1ee61dcefaa083d79b24e659b2688aeffa837b06 Author: Klemens Nanni <[email protected]> Date: Thu Oct 17 15:22:22 2024 +0300 zap obsolete nonexistent command from usage (#1184) commit 81e345c1ae96a7fbddfebf07587676333ab8fab9 Author: Neil Alexander <[email protected]> Date: Wed Oct 16 09:46:22 2024 +0100 Update to Arceliar/ironwood@f6fb9da97a170f97922e65c6b5afbcc499939503 commit a038a6a8ef90e61840dc96a7ffea39a67b8814c9 Author: Neil Alexander <[email protected]> Date: Sun Oct 13 21:33:47 2024 +0100 Update to Arceliar/ironwood@4ea1ec6d68200a2ff6697b408c094f1a5b95bb60 commit 01e73792fe6e505b11e82d2fc05aecba43550908 Author: Neil Alexander <[email protected]> Date: Sun Oct 13 20:04:21 2024 +0100 Update to Arceliar/ironwood@0ac2ff3eef3b6be16426f6cf7e0e20cbd75d61aa commit d22dc9ecc96d7434e33a7ec3205d5993034183f5 Author: Neil Alexander <[email protected]> Date: Thu Oct 10 09:23:13 2024 +0100 TUN: Skip `ErrTooManySegments` commit 874083da790f69132c468a4f7fa5c07fbd97b5a3 Author: Klemens Nanni <[email protected]> Date: Mon Sep 30 16:25:04 2024 +0300 Replace repeated subscripts with single TrimPrefix (#1176) This stood out to me while reading the code: [7:] is skipping "unix://", so why not do that? Doing so reveals a bug in the last line changed, where chmod(2) failure would print just the prefix, not everything but it... easy to miss, but now this kind of bug can no longer happen. commit ccda1075c08d95804e6f84a789930589356cc9da Author: Klemens Nanni <[email protected]> Date: Mon Sep 30 16:24:20 2024 +0300 Fix ioctl(2) code for OpenBSD (#1175) This cleans up the mess to configure an IP address on a tun(4) device. Handrolling a hardcoded ioctl(2) request is far from perfect, but Go (golang.org/sys/unix) is to blame here. Tested on OpenBSD 7.6 -current where yggdrasil now drives the interface would use of ifconfig or other helpers. commit 6d5243bd9afb841f8968a481fbfd0b1c79ebfe69 Author: Neil Alexander <[email protected]> Date: Sun Sep 29 22:04:41 2024 +0100 Add unit test for `AllowedPublicKeys` commit 377bc664c9b2458ea2906fd9e4f3a6788cd1327f Author: Neil Alexander <[email protected]> Date: Sun Sep 29 21:38:56 2024 +0100 The `AllowedPublicKeys` option should not apply to multicast listeners Another fix for #1141. commit d1b849588f1dc4bcc2d5c2b3551628d42beeb67b Author: Neil Alexander <[email protected]> Date: Sun Sep 29 21:23:45 2024 +0100 Fix bug where ephemeral links would try to reconnect in a fast loop Helps #1141, although not a complete solution. commit d6fd305f125ed27708ed4b8afc798bbf3bac67b8 Author: Sergey Bobrenok <[email protected]> Date: Sun Sep 29 23:06:36 2024 +0300 Fix Android build with Go 1.23.0 or later (#1166) The `github.com/wlynxg/anet` library depends on the `//go:linkname` linker feature [1]. However, since Go 1.23.0, the usage of `//go:linkname` has been restricted [2]. And now it's necessary to explicitly specify `-checklinkname=0` linker flag to use it. [1] https://github.com/wlynxg/anet/blob/main/README.md#how-to-build-with-go-1230-or-later [2] https://tip.golang.org/doc/go1.23#linker Resolves: #1165 commit 98a6fdb4f2b372c3feb620f0c49f3d7bf696907e Author: Klemens Nanni <[email protected]> Date: Sun Sep 29 23:05:38 2024 +0300 tun: bsd: remove redundant ioctl to set MTU (#1172) wireguard's CreateTUN() sets the MTU using the same ioctl(2), on both FreeBSD and OpenBSD. Tested on OpenBSD (outputwith this patch): ``` 2024/09/24 17:26:29 Interface name: tun0 2024/09/24 17:26:29 Interface IPv6: 201:26e:68f0:502e:f445:13eb:2fe1:f7cd/7 2024/09/24 17:26:29 Interface MTU: 16384 ``` ``` $ ifconfig tun0 | head -n1 tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 16384 ``` ``` 53097 yggdrasil CALL ioctl(10,SIOCGIFMTU,0xc0000376b8) 53097 yggdrasil RET ioctl 0 53097 yggdrasil CALL ioctl(10,SIOCSIFMTU,0xc0000376c0) 53097 yggdrasil RET ioctl 0 53097 yggdrasil CALL ioctl(10,SIOCGIFMTU,0xc0000377f8) 53097 yggdrasil RET ioctl 0 53097 yggdrasil CALL ioctl(10,_IOW('i',12,0x20),0xc00003777c) 53097 yggdrasil RET ioctl -1 errno 25 Inappropriate ioctl for device "2024/09/24 17:26:29 Error in SIOCSIFADDR_IN6: inappropriate ioctl for device ``` (The completely broken address ioctl is another story...) commit c00779c7d3959ddad37ab63923aad567afb176fb Author: Neil Alexander <[email protected]> Date: Sun Sep 29 20:58:10 2024 +0100 Multicast interface detection and shutdown tweaks May help with #1173. commit 43a1a3de64acfacdadc5c9ff00ca8fdb4b7fdc40 Author: Arceliar <[email protected]> Date: Sat Sep 28 18:52:04 2024 -0500 update ironwood dependency commit b8ab843a98e25d7212beccff3db2b56f0726546c Author: Neil Alexander <[email protected]> Date: Mon Sep 23 22:40:52 2024 +0100 Update admin socket response sorting commit e138fa679c8bf32e02f07cc0c3bba5a2dd5e9e9c Author: Neil Alexander <[email protected]> Date: Sun Sep 22 17:05:25 2024 +0100 Fix link panic when shutting down (closes #1168) commit 361b9fd6fc7ef792880728a9fe34a0620cff7143 Author: Neil Alexander <[email protected]> Date: Sun Sep 22 16:54:58 2024 +0100 Update WebSocket dependency to new import path commit 5461bb380e9519a724b3c6e45b5ac913ab7528c3 Author: Neil Alexander <[email protected]> Date: Sun Sep 22 16:51:04 2024 +0100 Update dependencies commit 34f087de1c24e39fce7201bfe8d238f7e5bc85cf Author: cathugger <[email protected]> Date: Sun Sep 22 15:46:54 2024 +0000 argument to change uid/gid (#927) different from https://github.com/yggdrasil-network/yggdrasil-go/pull/817 in that it can resolve user names, automatically use user's primary gid & allows specifying gid in the same argument, with `:` eg `username:groupname`. feel free to criticize & suggest different argument name & description because i didn't put much of thought to that. --------- Co-authored-by: Neil <[email protected]> Co-authored-by: VNAT <[email protected]> Co-authored-by: Neil Alexander <[email protected]> commit c4b29b735cff4448e0343fe0fbfdb4e668d13660 Author: Neil <[email protected]> Date: Sat Sep 21 23:05:23 2024 +0100 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 <[email protected]> commit 947b6ad7aa93eb2174bf16ddac844c7afaf2677d Author: Sergey Bobrenok <[email protected]> Date: Fri Aug 16 20:28:57 2024 +0300 Restore local peer discovery mechanism on Android 11+ (#1158) This solution is bases on https://github.com/wlynxg/anet project. `github.com/wlynxg/anet` is a partial alternative implementation of the `golang.org/x/net` module. The goal of `anet` module is to provide workarounds of the issues https://github.com/golang/go/issues/40569 and https://github.com/golang/go/issues/68082 on Android 11+. Tested on AOSP 13. Resolves: #1149 commit 340cedbe145ec40de2648dab658795ec21e11992 Author: Neil Alexander <[email protected]> Date: Mon Aug 12 19:17:40 2024 +0100 Yggdrasil 0.5.8 commit b1283e15f63dc7a553e0381efed6abdfa6006819 Author: Neil Alexander <[email protected]> Date: Sun Aug 11 10:42:25 2024 +0100 Link state tracking tweaks and improved shutdown commit ef989bef6362ad42eec9376a512a5d7be2b7e9e7 Author: Neil Alexander <[email protected]> Date: Sun Aug 11 10:41:58 2024 +0100 Multicast module state tweaks commit af9ff34995aa8da5670227fc1a8981051ceaec65 Author: Neil Alexander <[email protected]> Date: Wed Aug 7 19:55:10 2024 +0100 Fix macOS build commit 63cd7575258a68d7ceda425c80766c4dd6e9b42d Author: Neil Alexander <[email protected]> Date: Wed Aug 7 19:52:19 2024 +0100 Remove `waitForTUNUp` from TUN Causes issues such as #1156. commit 5e5de3a34314d9ac3f549a93e3e30a5a9ce66966 Author: Revertron <[email protected]> Date: Tue Aug 6 11:28:15 2024 +0200 Fixed wait for TUN to come up (#1157) So, the function waiting for TUN to come up never succeeds: ``` func waitForTUNUp(ch <-chan wgtun.Event) bool { t := time.After(time.Second * 5) for { select { case ev := <-ch: if ev == wgtun.EventUp { return true } case <-t: return false } } } ``` I've tried the sleep for one second, and it works flawlessly on several PCs. Another point - sometimes, if the service stop abruptly (in case of some errors) there is an old hidden device in the system, that we need to uninstall, and then create new. commit edf179ed26df30b30665f703b366f2688fefde92 Author: Neil Alexander <[email protected]> Date: Mon Aug 5 19:18:38 2024 +0100 Yggdrasil 0.5.7 commit 9950d1225d1284ed8f47da3f027bb1444954c0d2 Author: Neil Alexander <[email protected]> Date: Thu Aug 1 21:53:48 2024 +0100 Improve link and handshake errors commit 4fbdeb4e3fd77dfc2bef8f9784bf14213d5461e4 Author: Revertron <[email protected]> Date: Thu Jul 25 14:55:14 2024 +0200 Fixed Windows service life-cycle. (#1153) This fix fixes two issues: https://github.com/yggdrasil-network/yggdrasil-go/issues/993 & https://github.com/yggdrasil-network/yggdrasil-go/issues/1098 commit 5ea16e63a1574ca2e4e07c52d167350241a6ff1c Author: Vasyl Gello <[email protected]> Date: Tue Jul 23 21:58:11 2024 +0000 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 <[email protected]> Co-authored-by: Neil Alexander <[email protected]> commit da7ebde828ee6cf0a2c896676e6d409448850fb4 Author: Neil Alexander <[email protected]> Date: Sat Jul 20 15:37:31 2024 +0100 Update dependencies commit 02d92ff81c2dd986323492ef9f6af26a2bab5ec5 Author: Neil <[email protected]> Date: Sat Jul 20 15:24:30 2024 +0100 TUN vectorised reads/writes (#1145) This PR updates the Wireguard dependency and updates to use new vectorised reads/writes, which should reduce the number of syscalls and improve performance. This will only make a difference on Linux as this is the only platform for which the Wireguard TUN library supports vectorised reads/writes. For other platforms, single reads and writes will be performed as usual. --------- Co-authored-by: Neil Alexander <[email protected]> commit 04c0acf71b8e21679f9b68e8145e9c3094da59ff Author: Neil Alexander <[email protected]> Date: Sat Jul 20 12:31:58 2024 +0100 Various clean-ups commit 8ecc402d7c48da048cf700f5c6028737a14abfad Author: Neil Alexander <[email protected]> Date: Sat Jul 20 11:31:08 2024 +0100 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 commit c505097be077ee2af02ce37a9f73e2efa08feeb7 Author: Neil Alexander <[email protected]> Date: Wed Jun 26 23:17:11 2024 +0100 Update mobile build for iOS/macOS framework generation commit fec96a38a423142ac1712eb63ad7651c5e7a82aa Author: Neil <[email protected]> Date: Thu May 30 23:30:05 2024 +0100 Release: Yggdrasil v0.5.6 (#1144) * Changelog updates for Yggdrasil v0.5.6 * Fix spelling error --------- Co-authored-by: Neil Alexander <[email protected]> Co-authored-by: Arceliar <[email protected]> commit f788a18befe25579d9406f51a2d22cc1a1a26d26 Author: Neil <[email protected]> Date: Thu May 30 22:46:06 2024 +0100 Measure RTT, report in `getPeers` (#1143) Co-authored-by: Neil Alexander <[email protected]> commit fcefb20993c51e06c140e922b61d7a9286c977b1 Author: Neil Alexander <[email protected]> Date: Tue May 28 10:03:48 2024 +0100 Fix interval check when sending multicast beacons commit 2831d73f73c273baf773a8b841bd425483c9d42a Author: Neil Alexander <[email protected]> Date: Mon May 27 22:52:48 2024 +0100 Try to fix WiX for Windows MSI builds commit c2811c0cdc348a5575580d75d03cd8576f9060fb Author: Neil Alexander <[email protected]> Date: Mon May 27 22:14:28 2024 +0100 Update more GHA actions due to deprecations commit 5d9c5b3c9b2f51d6a5076a50624146513ac41ece Author: Neil Alexander <[email protected]> Date: Mon May 27 22:03:41 2024 +0100 Minimum Go 1.21, update `quic-go`, update some CI actions commit f56f9c124ca5aec0b7d51ec2a37e5a5ba554dce0 Author: Paul Donald <[email protected]> Date: Mon May 27 22:57:28 2024 +0200 Minor Fixes (#1107) * Minor comment fixes. * Optimize PeerEntry for memory efficiency * Improve NodeConfig for memory alignment commit 5da1fbe39748a6e057c1eef02fb4eb6b124840b7 Author: trashpile-shenanigans <[email protected]> Date: Mon May 27 23:53:52 2024 +0300 Bump minimum required go version to 1.20 in documentation as required by quic-go dependency (#1138) commit 6f3a0a71d43c8f25cf8d34346e5e3948fe4221ef Author: Arceliar <[email protected]> Date: Sat May 25 06:16:11 2024 -0500 update ironwood and other dependencies commit 6cbe56adfe43a9d95781f110611c4188b34b34c8 Author: Arceliar <[email protected]> Date: Sat May 25 06:15:36 2024 -0500 fix incorrect pool use commit 2d644eabc38ff4b3ebc0556315f97fdab30d7ec2 Author: Arceliar <[email protected]> Date: Thu Mar 21 21:33:07 2024 -0500 update ironwood (updates bloom dependency) commit 2c20a043692a5f54f67480971830aa56c4d3de03 Author: Neil Alexander <[email protected]> Date: Sat Jan 27 22:54:54 2024 +0000 Release: Yggdrasil 0.5.5 commit 81f2c711b484d05fbbab2394dd8860700294cbf2 Author: Neil Alexander <[email protected]> Date: Mon Jan 15 23:14:43 2024 +0000 Fix panic in `getPeers` on abstract UNIX socket names Fixes #1111 commit 180d7bf499cbdb5d0aa732de02ef1600ab14284a Author: Neil <[email protected]> Date: Mon Jan 15 23:09:07 2024 +0000 Adjust default backoff max to just over 1 hour, add `?maxbackoff=` peer option (#1124) Co-authored-by: Neil Alexander <[email protected]> commit 9f4c89acad2e0cab52ab5e154212edcd000ce893 Author: Neil Alexander <[email protected]> Date: Mon Jan 15 23:00:58 2024 +0000 Update dependencies commit 5da4c1131e224f63d376eec594c31ef29c1c427d Author: Neil Alexander <[email protected]> Date: Mon Jan 15 19:07:17 2024 +0000 Update ironwood to `ddd1fa6` commit 768278a8e6508a82ab5e2e4655c224be657a8e23 Author: Neil Alexander <[email protected]> Date: Thu Jan 11 22:37:05 2024 +0000 Improve `getPeers` sorting commit 1e9a59edf99b232cf160982e42c6bc3a807eaf0e Author: Neil Alexander <[email protected]> Date: Fri Jan 5 11:45:20 2024 +0000 Update behaviour in QUIC listener handler commit 3dfa6d0cc9f4020f065392b3f8eeaca9680b347e Author: Neil Alexander <[email protected]> Date: Sun Dec 3 17:55:12 2023 +0000 Validate public key lengths on `debug_` API endpoints (fixes #1113) commit 6b6cd0bed553ada887632524994e4de4e839688e Author: Neil Alexander <[email protected]> Date: Tue Nov 28 13:24:54 2023 +0000 Fix `PPROFLISTEN` commit 3d15da34ad9021add84f5df00cdf65341cb29829 Author: Neil Alexander <[email protected]> Date: Mon Nov 27 14:17:16 2023 +0000 Release: Yggdrasil 0.5.4 commit 741f825b8ed3e78664997f49c786dd51fa6a3805 Author: Arceliar <[email protected]> Date: Mon Nov 27 07:18:16 2023 -0600 update ironwood dependency, should fix bloom filter encoding crash commit 676ae52503a5f0c86314958a5817afe949deb1e3 Author: Neil Alexander <[email protected]> Date: Sun Nov 26 18:42:08 2023 +0000 Release: Yggdrasil 0.5.3 commit fef553ed185b279145a132461da862f8f8a98f79 Author: Neil Alexander <[email protected]> Date: Sun Nov 26 16:28:48 2023 +0000 Tweak logging commit f6f669617fffd75b96de6977c3b75b5eff2985c1 Author: Neil Alexander <[email protected]> Date: Sun Nov 26 16:20:52 2023 +0000 Fix `-normaliseconf` when using `PrivateKeyPath` commit 39c4b24395a471d032a96f9bac1e69e17cafb99b Author: Neil Alexander <[email protected]> Date: Sun Nov 26 16:19:00 2023 +0000 Don't use 0-RTT for QUIC commit 0d676c6a3bbd3289b98a5b2572e1149b5d3dc4c2 Author: Arceliar <[email protected]> Date: Sun Nov 26 04:56:44 2023 -0600 update ironwood dependency commit a0b38972787947fc9dbf5e1e9fc6539213a998ce Author: Neil Alexander <[email protected]> Date: Tue Nov 21 23:54:27 2023 +0000 Cap link backoff at roughly 4.5 hours commit abec2256ae7abe010d2e3476b15780790aa48d40 Merge: b759683 7aca869 Author: Arceliar <[email protected]> Date: Tue Nov 21 04:49:41 2023 -0600 Merge pull request #1105 from yggdrasil-network/neil/backoff Tweak backoff success handling commit 7aca8691706f5bbc99a986c2205a43646d90ca3d Author: Neil Alexander <[email protected]> Date: Tue Nov 21 10:35:17 2023 +0000 Tweak backoff success handling commit b759683b76985665b5218346abab35f08d9f4d38 Merge: 6677d70 7ac38e3 Author: Arceliar <[email protected]> Date: Thu Nov 9 22:06:38 2023 -0600 Merge branch 'develop' of https://github.com/yggdrasil-network/yggdrasil-go into develop commit 6677d70648b076d25a8db0dfe5fe886e7ae3190e Author: Arceliar <[email protected]> Date: Thu Nov 9 22:06:19 2023 -0600 update ironwood, fixed data race from buffered pathfinder traffic commit 7ac38e3e58d2134802fcd0e7ae42f54bfd92314a Author: Neil Alexander <[email protected]> Date: Mon Nov 6 09:25:15 2023 +0000 Release: Yggdrasil 0.5.2 commit 49c424ef213589d63215f10dc1958b2e93fb1e6c Author: Neil <[email protected]> Date: Sat Nov 4 18:42:51 2023 +0000 Add `-publickey` command line switch (#1096) Co-authored-by: Neil Alexander <[email protected]> commit 0346af46dae233e7d95d2a08e2b992382e1f2d64 Author: Neil <[email protected]> Date: Sat Nov 4 18:42:42 2023 +0000 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 <[email protected]> commit 93a5adfd189ff8ecd233693dc123b0ef7e11216f Author: Neil <[email protected]> Date: Sat Nov 4 17:57:15 2023 +0000 Add `sockstls://` (#1090) Closes #1087. Co-authored-by: Neil Alexander <[email protected]> commit ddb75700a08ebca65e8a6dfac825f4ec781af43c Author: Neil <[email protected]> Date: Sat Nov 4 17:57:04 2023 +0000 Report errors during handshake stage (#1091) Co-authored-by: Neil Alexander <[email protected]> commit ae997a5acbe6a522841b1f51cadbdde05998ff64 Author: Neil <[email protected]> Date: Sat Nov 4 17:56:52 2023 +0000 Improve TUN setup logging (#1093) (#1095) Co-authored-by: Neil Alexander <[email protected]> commit 6a9c90d3eb1b463811fd947ed80a2241654bb705 Merge: 41e045f e5e8c84 Author: Arceliar <[email protected]> Date: Fri Nov 3 21:56:26 2023 -0500 Merge branch 'develop' of https://github.com/yggdrasil-network/yggdrasil-go into develop commit 41e045fe5bf18eb08b3e467f499ef4f469fad329 Author: Arceliar <[email protected]> Date: Fri Nov 3 21:55:42 2023 -0500 update ironwood dependency commit e5e8c84d7c1a030cf0da1076eb6d2e01d2b9c8c3 Merge: 7f9d4f3 e41b838 Author: Neil <[email protected]> Date: Sat Oct 28 22:21:04 2023 +0100 Merge pull request #1078 from yggdrasil-network/duplicate-peers Don't panic at startup when duplicate peers are configured commit e41b838d8f119b4c71f7a27995c5a941185164c5 Author: Neil Alexander <[email protected]> Date: Sat Oct 28 21:28:38 2023 +0100 Don't panic at startup when duplicate peers are configured Fixes #1077 commit 7f9d4f3f6d06262e212a8dd101d51fda134332da Author: Neil Alexander <[email protected]> Date: Sat Oct 28 18:21:26 2023 +0100 Don't import `LDFLAGS` from the environment commit a6b316ef085553761b20af61ecfc4acefbf2bbec Author: Neil Alexander <[email protected]> Date: Sat Oct 28 16:21:50 2023 +0100 Release: Yggdrasil 0.5.1 commit d781fef760d2e8152f2fa955e51ee03028a3da9a Author: Neil Alexander <[email protected]> Date: Sat Oct 28 15:20:56 2023 +0100 Release: Yggdrasil 0.5.0 commit b332664acbcb4b787eaf005b1067cfe76d2114d7 Merge: 14f1cd4 01c1498 Author: Neil Alexander <[email protected]> Date: Sat Oct 28 15:11:34 2023 +0100 Release: Yggdrasil 0.5.0 commit 01c1498bd52291ba246c8f00d0bd5511b16c1959 Author: Neil Alexander <[email protected]> Date: Sat Oct 28 15:07:45 2023 +0100 Yggdrasil 0.5 release notes commit 0b578a637a86468f22a6e142901340d93889e52b Author: Neil <[email protected]> Date: Sat Oct 28 14:58:52 2023 +0100 Debian package updates (#1073) * Update Debian package * Don't put `AdminListen` in config by default, fix path in Debian package * Fix path in unit file * Preserve original service files for other packages --------- Co-authored-by: Neil Alexander <[email protected]> commit 82c54f87eae55c7f0acbb1dfb91a91482b393ce3 Author: Arceliar <[email protected]> Date: Sat Oct 28 06:36:01 2023 -0500 clean up some debug API output commit d17ac397898391129c834f9966464a6072513249 Author: Arceliar <[email protected]> Date: Sat Oct 28 05:26:43 2023 -0500 update ironwood dependency, add a debug API call for lookups commit ea6ccf552f8b5e29b912e5b9d2f91012bca84c50 Author: Neil Alexander <[email protected]> Date: Fri Oct 27 23:15:34 2023 +0100 Update dependencies, test cross-builds for FreeBSD and OpenBSD in CI commit 1ac3d540e7ec82318b2c1c13d2cfc6c09c065ba0 Merge: 8afa737 6873fd4 Author: Neil <[email protected]> Date: Wed Oct 25 20:31:15 2023 +0100 Merge pull request #1070 from Revertron/fix_mobile commit 6873fd44ffdf764f4733b7efd8834856b1b8c5bc Author: Revertron <[email protected]> Date: Wed Oct 25 20:59:19 2023 +0200 Fixes logger, adds some log messages. commit 8afa737a8ddf02861e5605982b06f64305a793ba Author: Neil Alexander <[email protected]> Date: Tue Oct 24 22:44:33 2023 +0100 Use `ubuntu-20.04` image for router packages in CI commit 7934158f5f49e9eea0fac43b21770b2071bc5cf2 Author: Neil Alexander <[email protected]> Date: Tue Oct 24 12:10:48 2023 +0100 Use `ubuntu-20.04` image for Debian packages in CI commit a60771344ac2270a324c7ce9f1e2913a8f242038 Author: Neil Alexander <[email protected]> Date: Mon Oct 23 23:42:31 2023 +0100 Remove DHT from `yggdrasilctl` help text (fixes #1069) commit 90c6288f7c2ab2b20d19856387a6c148041ee26d Author: Neil Alexander <[email protected]> Date: Mon Oct 23 22:26:53 2023 +0100 Yggdrasil 0.5 RC3 commit 094f80f39c2fdd25a1cee2eee7584abecea379b0 Author: Neil Alexander <[email protected]> Date: Sun Oct 22 15:51:30 2023 +0100 Fix `RetryPeersNow`, move startup logging, don't set TUN address if not available commit 955aa4af79886f05c3d45ea08c8b36de721fd79e Author: Neil Alexander <[email protected]> Date: Sun Oct 22 10:29:19 2023 +0100 Remove unnecessary pprof log line commit 73c6c25bd9d518a5bdc33e40c2f38e44505b706b Author: Neil Alexander <[email protected]> Date: Sun Oct 22 10:27:41 2023 +0100 Restore `removePeer` method commit 80e56eafcdb620b61c4e60256d757d826d31b37a Author: Neil Alexander <[email protected]> Date: Sat Oct 21 21:36:28 2023 +0100 Allow `PPROFLISTEN` on all builds commit 6a9493757d88471e4e70ad1323e27d731424ef8e Author: Alex Akselrod <[email protected]> Date: Sat Oct 21 10:33:17 2023 -0700 mobile: add support for `Listen` in config (#1063) Co-authored-by: Neil <[email protected]> commit 8ea20cd205a32f22a1f267bf61efc487db2e6b8b Author: John Jolly <[email protected]> Date: Sun Apr 16 19:43:25 2023 -0600 Add output for threadcount and key generation time to cmd/genkey This change is to display information about the key generation process. Specifically, two bits of information are now displayed * The number of threads created to search for keys, and * The time taken to generate a successful "next best" key commit a2dffeff33f4279cbcb2acc0842702a7daffdb8b Author: Neil Alexander <[email protected]> Date: Wed Oct 18 22:52:37 2023 +0100 Version 0.5 RC2 release notes commit a2053b51fef37c5d625857525fa354c35728bc99 Author: Neil Alexander <[email protected]> Date: Wed Oct 18 22:44:14 2023 +0100 Yggdrasil 0.5 RC2 commit aceb037c577afb49d06608c21777a93a63e39936 Author: Neil Alexander <[email protected]> Date: Wed Oct 18 22:38:10 2023 +0100 Fix panic in mobile `GetPeersJSON` commit bcd80b043ff6cd11751c784fe19dbf4b1e270ff4 Author: Neil Alexander <[email protected]> Date: Tue Oct 17 21:41:21 2023 +0100 Don't tightloop when a listener can no longer accept connections commit 74ca02edfdce5bdcdbe32b1e8ad459034ffc6597 Author: Neil Alexander <[email protected]> Date: Sun Oct 15 23:06:10 2023 +0100 Don't require TLS client certificate commit e110dd46fd82e8ae9e85c7eaf50c3adf8190b575 Merge: c8b9aae 88b773c Author: Neil <[email protected]> Date: Sun Oct 15 17:29:59 2023 +0100 Yggdrasil 0.5 RC1 (merge `future` into `develop`) Merge `future` into `develop` commit 88b773cd0a061f992832ad57cdb8cc87699e3231 Author: Neil Alexander <[email protected]> Date: Sun Oct 15 17:09:12 2023 +0100 Version 0.5 RC1 release notes commit efb4b4635d0496d9775624a0ae8ff217d932ef5a Author: Neil Alexander <[email protected]> Date: Sat Oct 14 20:26:30 2023 +0100 Don't send a TLS ALPN name commit 117e4b88f8bd520948049c9482936fa490c64b1f Author: Neil Alexander <[email protected]> Date: Thu Oct 12 19:12:17 2023 +0100 Fix panic on invalid handshake length commit 4b48fd0b5f24ee8dbcb36bc7e12b9b720147840b Author: Neil Alexander <[email protected]> Date: Thu Oct 12 00:08:16 2023 +0100 Fix Windows TUN build commit 854cd75f04e4b674888a1e1c120fbf2e021d5f26 Merge: 4f65668 f6c0d84 Author: Neil <[email protected]> Date: Wed Oct 11 23:58:12 2023 +0100 Merge pull request #1042 from pfactum/syslog-no-timestamp cmd/yggdrasil: do not log timestamps to syslog commit 4f656685ef3af2b5dea8aba9aa48d0cc30310097 Author: Neil Alexander <[email protected]> Date: Wed Oct 11 23:52:39 2023 +0100 Revert Wireguard TUN upgrade (needs work for vectorised reads) commit ed8ba584e2da7b4c3501d498578b8c2c9ced5a1b Author: Neil Alexander <[email protected]> Date: Wed Oct 11 23:42:37 2023 +0100 Update dependencies commit 2a212417389fcf8f41fd44c74864adfcc9b9e009 Author: Neil Alexander <[email protected]> Date: Wed Oct 11 19:28:28 2023 +0100 Multicast passwords commit 45b773eade3b10e45c532671550cce244b559090 Author: Neil Alexander <[email protected]> Date: Wed Oct 11 18:25:35 2023 +0100 Remove TLS root validation This is just too complicated compared to the per-peer/per-listener/per-interface password approach. commit 6dc847de319d8095dc0002a87b80cecfaa6092ad Merge: 490c11c bd7e699 Author: Neil Alexander <[email protected]> Date: Wed Oct 11 17:06:58 2023 +0100 Merge branch 'neil/password' into future commit bd7e699130ef0c647eaec30f2c5fc8c5c55a7b14 Author: Neil Alexander <[email protected]> Date: Mon Oct 9 22:28:20 2023 +0100 Add unit test for password auth commit 268ffbfd14baed7503e7be7cccc3cf19a6e0f7f5 Author: Neil Alexander <[email protected]> Date: Mon Oct 9 16:44:07 2023 +0100 Add authenticated handshake, support for passwords commit 490c11c29e54aca9a639b1a4243308a2b611efc5 Author: Neil Alexander <[email protected]> Date: Sun Sep 3 13:49:21 2023 +0100 Fix more codefactor suggestions commit 991ea8b876b7eb48a738015b1ffd97a60cf06ef9 Author: Neil Alexander <[email protected]> Date: Sun Sep 3 13:32:15 2023 +0100 Fix codefactor suggestion commit 68d1036de861c2cdef3bfc55ef187450d138f211 Author: Neil Alexander <[email protected]> Date: Sun Sep 3 13:30:46 2023 +0100 Fix mobile unit test commit fa3d943ba90f168d3cc591c276b944f1eeda1344 Author: Neil Alexander <[email protected]> Date: Sun Sep 3 13:30:41 2023 +0100 Don't set BBR for TCP peerings commit 9defa35c66669fb34d36c9fd333daeba519af76f Merge: 8f3ab1d c8b9aae Author: Neil <[email protected]> Date: Sun Sep 3 13:18:47 2023 +0100 Merge branch 'develop' into future commit c8b9aaeb67b051668bb1ef302891698d7fcc788a Author: Neil Alexander <[email protected]> Date: Sun Sep 3 13:13:49 2023 +0100 Only set mobile memory limit on supported Go versions commit 8f3ab1d83c0d85e2f2505e46f47f7b3f8c4873b9 Merge: 6ab0639 12a3a8c Author: Neil Alexander <[email protected]> Date: Sun Sep 3 13:08:40 2023 +0100 Merge branch 'develop' into future commit 12a3a8c73bc4ce2bd27d74734af17fc559f435e0 Author: Neil Alexander <[email protected]> Date: Sun Sep 3 13:08:13 2023 +0100 Fix build tags for `setupFD` commit 6ab0639b821d7b6f727687934b88275d4bf7aeb7 Merge: 5b203ad fbc5f62 Author: Neil <[email protected]> Date: Sun Sep 3 12:58:55 2023 +0100 Merge branch 'develop' into future commit fbc5f62add6ea6227cd8d904b3e3791041b9983f Author: Neil Alexander <[email protected]> Date: Thu Aug 17 14:08:03 2023 +0100 Fix missing `setupFD` stubs commit 5b203ad8c5f78d42e2ade2886f8107c4eeb337b4 Author: Neil Alexander <[email protected]> Date: Sat Aug 12 18:12:58 2023 +0100 Use Go 1.21 in CI, update minimum version to Go 1.20, lint fixes, update `quic-go` commit fe14981ddabf6628548cac0b002451ff0ab93652 Author: Arceliar <[email protected]> Date: Sat Aug 5 04:01:15 2023 -0500 update ironwood commit 63b214f6b707f1f7ea837d495fa5ae97300b755b Author: Neil Alexander <[email protected]> Date: Sat Jul 15 22:34:29 2023 +0100 Fix negotiating priority on connection commit ff96740ac79567da816587672fd757a1fd9bdeb9 Author: Neil Alexander <[email protected]> Date: Sat Jul 15 20:12:14 2023 +0100 Fail to start if no configuration provided commit 7f94463332a905a39e99c16902c74ba0de1e4513 Merge: bcbabff 423fc24 Author: Arceliar <[email protected]> Date: Mon Jun 19 06:27:09 2023 -0500 Merge pull request #1037 from yggdrasil-network/neil/quic QUIC interface support commit bcbabff80f6ca03a06e4583ea69c31fb466dfbc6 Merge: 99dd8f8 57d9a23 Author: Arceliar <[email protected]> Date: Mon Jun 19 06:26:58 2023 -0500 Merge pull request #1038 from yggdrasil-network/neil/multicast Revise multicast format to include protocol version, discriminator for TLS roots commit 99dd8f85d3735bce5914d6f87576bbaeaaff702c Merge: 002b984 109f59c Author: Arceliar <[email protected]> Date: Mon Jun 19 06:23:47 2023 -0500 Merge pull request #1046 from yggdrasil-network/neil/handshake Tweak link handshake commit 57d9a2399f3d89530ebec371e27b27dbd7edbb13 Author: Neil Alexander <[email protected]> Date: Sun May 21 15:24:31 2023 +0100 Revise multicast format to include protocol version, discriminator for TLS roots commit 423fc248d27f46c647cd07001c19c59722b1f366 Author: Neil Alexander <[email protected]> Date: Sun May 21 11:50:47 2023 +0100 Remove debug lines commit 516fcce6b3d0160d4b4ae7c268c0bfcd17c25517 Author: Neil Alexander <[email protected]> Date: Sun May 21 11:39:49 2023 +0100 Keepalives are needed to stop the connection inactivity timeout commit d8dc6b2670297ee063969910555569e92998bea0 Author: Neil Alexander <[email protected]> Date: Sun May 21 11:29:05 2023 +0100 QUIC interface support commit 109f59c7dc48e1979492f527f05a8abe83914836 Author: Neil Alexander <[email protected]> Date: Sun Jun 18 20:28:14 2023 +0100 Tweak link handshake commit 002b984c0450ba8ff2f865127de38b27de8ddc0b Author: Neil Alexander <[email protected]> Date: Sun Jun 18 18:10:27 2023 +0100 Fix private key setup when certificate not specified commit 5e684550a87828edac22cc523406a5c5c92e1efa Author: Neil Alexander <[email protected]> Date: Sun Jun 18 15:45:04 2023 +0100 Take interface in `tun.New` commit 80724438c966e8cd80cab0ce6f64963efed92f70 Merge: 31177f5 b0f8d8a Author: Neil <[email protected]> Date: Sun Jun 18 15:43:16 2023 +0100 Merge pull request #1045 from yggdrasil-network/neil/tunintf Define interface for RWCs commit b0f8d8af1319878fefd375b193a41f4cb0b33c44 Author: Neil Alexander <[email protected]> Date: Sun Jun 18 15:36:14 2023 +0100 Define interface for RWCs commit 31177f5a730eba080c55ba2ca1b119e156127a98 Merge: 2eda59d c1ae9ea Author: Arceliar <[email protected]> Date: Sun Jun 18 08:49:20 2023 -0500 Merge pull request #1044 from yggdrasil-network/arc/linkfix Fix duplicate connections commit c1ae9ea0d4c916c1e85dc90cedd038934d03af04 Author: Arceliar <[email protected]> Date: Sun Jun 18 03:40:40 2023 -0500 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) commit f6c0d8406d7bfad4bf76baf681750d85dbf7fcf9 Author: Oleksandr Natalenko <[email protected]> Date: Thu Jun 8 21:44:46 2023 +0200 cmd/yggdrasil: do not log timestamps to syslog It is expected a syslog implementation be it rsyslog or journald to have their own timestamping, so there's no point in duplicating that info. Signed-off-by: Oleksandr Natalenko <[email protected]> commit db9b57c052e628fa7dcef909a24bc39e532df469 Author: Neil Alexander <[email protected]> Date: Tue Jun 6 22:11:49 2023 +0100 Update `contrib/mobile` for the latest iOS build commit 2eda59d9e4cd97ee9f784630c9ad2800afc4cefc Author: Neil Alexander <[email protected]> Date: Tue May 23 22:39:10 2023 +0100 Improve link setup locking and guards commit 06ca8941c7fd4c2436cff0266fdbcfeaa9c7f9a9 Author: Neil Alexander <[email protected]> Date: Mon May 22 23:10:44 2023 +0100 Fix race condition between incoming and outgoing connection setup commit 8562b6b86e94d5d6c43c4d34d76f7591264f4101 Merge: 5270969 e94985c Author: Arceliar <[email protected]> Date: Sun May 21 12:56:37 2023 -0500 Merge pull request #1040 from yggdrasil-network/Arceliar/allocs Reduce allocations commit e94985c583857cd3077dcc37132c7eb879d02292 Author: Arceliar <[email protected]> Date: Sun May 21 12:49:49 2023 -0500 try to cheer up the linter again commit 5a6f27e732757e1b1468f89bbcf487d113b88457 Author: Arceliar <[email protected]> Date: Sun May 21 12:43:03 2023 -0500 cheer up the linter commit 8b5add5301808a449f8b58f466cd3b85a2e72546 Author: Arceliar <[email protected]> Date: Sun May 21 12:38:16 2023 -0500 reduce allocations (also pulls in updated ironwood to do the same) commit 52709696a575b720c1c320cbb7a6ca84af8eced9 Merge: 2565cbf cb8333f Author: Neil <[email protected]> Date: Sun May 21 00:06:43 2023 +0100 Merge pull request #1036 from yggdrasil-network/neil/linktweaks Tweak link state locking, add comments, listener priority, other fixes commit cb8333f9ffc0c7ccde3d512962d3c0133d8f027a Author: Neil Alexander <[email protected]> Date: Sun May 21 00:02:04 2023 +0100 Tweak lock behaviour commit 333561f4e17206f0949409e27f4cebf2a78fe1f7 Author: Neil Alexander <[email protected]> Date: Sat May 20 23:44:31 2023 +0100 Tweak link state locking, add comments, listener priority, other fixes commit 2565cbf11b9d05e14a86104b32e5fae4d226bd1d Merge: 19ca255 aff3201 Author: Neil <[email protected]> Date: Sat May 20 23:02:44 2023 +0100 Merge pull request #1034 from yggdrasil-network/neil/futurelink2 Link refactoring, admin socket changes, TLS changes commit 19ca25538fb42a7783cbf808c9d4856a5ef10a3f Merge: 1345960 c7ee7d9 Author: Arceliar <[email protected]> Date: Sat May 20 17:00:23 2023 -0500 Merge pull request #1033 from yggdrasil-network/ironwood-experimental Update to experimental ironwood commit aff320108433e33246c22d0be4436127743c9930 Author: Neil Alexander <[email protected]> Date: Sat May 20 22:22:15 2023 +0100 Fix incoming connection handlers commit c0188f56002789ad3017d4a29d0a4f75ef018fe9 Author: Neil Alexander <[email protected]> Date: Sat May 20 21:18:49 2023 +0100 Discriminate multicast peers more loosely commit e0b39b303f4d852d7ffbf6e8e259a5a26ccf6edc Author: Neil Alexander <[email protected]> Date: Sat May 20 18:36:44 2023 +0100 Use regular mutex instead (less type assertions) This reverts commit 5ba9dadc490a5880c68db2519a8bc768c6ee002b. commit 5ba9dadc490a5880c68db2519a8bc768c6ee002b Author: Neil Alexander <[email protected]> Date: Sat May 20 18:31:01 2023 +0100 Use `sync.Map` instead of link actor commit 6e338b6f89481925a14cf8fffe6b46caa0fd9f36 Author: Neil Alexander <[email protected]> Date: Sat May 20 18:21:02 2023 +0100 Fix con urrent map accesses commit e290e744f4c8d729a8086854d16ecf16deeb7978 Author: Neil Alexander <[email protected]> Date: Sat May 20 10:54:49 2023 +0100 Fix `-autoconf` commit a233e775eb54852f311ff7cd40a1375f758e13d6 Author: Neil Alexander <[email protected]> Date: Fri May 19 20:57:14 2023 +0100 `yggdrasilctl` tweaks commit 6ac2fae845a628857a96e7c3715ec76a21822ac2 Author: Neil Alexander <[email protected]> Date: Fri May 19 20:34:51 2023 +0100 Fix Windows build commit 7b1635245f67d0717b8b638865392f562a9d38ce Author: Neil Alexander <[email protected]> Date: Fri May 19 19:33:40 2023 +0100 Add missing path notify and bloom transform commit a9ec3877b5ff4619031a6995b3ac8eff436081a2 Author: Neil Alexander <[email protected]> Date: Sun May 14 15:59:52 2023 +0100 Fix unit test commit 7afa23be4c9850cc0d8a3fa5cf2cfd3b554a40e2 Author: Neil Alexander <[email protected]> Date: Thu Apr 6 21:45:49 2023 +0100 Link refactoring, admin socket changes commit c7ee7d96813ff787cfa6192a90f784cd69e1ab47 Author: Arceliar <[email protected]> Date: Sun May 14 21:24:08 2023 -0500 update ironwood dependency (it should build now...) commit ffb2f06992a7db2e4945dfa732dee5fdde04eec0 Merge: 101189a c7ea223 Author: Arceliar <[email protected]> Date: Sun May 14 21:14:32 2023 -0500 Merge branch 'ironwood-experimental' of https://github.com/yggdrasil-network/yggdrasil-go into ironwood-experimental commit 101189a9dc8214fd361130c4c5512de904988b14 Author: Arceliar <[email protected]> Date: Sun May 14 21:13:53 2023 -0500 update ironwood dependency commit c7ea223a9a1b045ab00572a6407243f01a6a91b3 Author: Neil Alexander <[email protected]> Date: Sun May 14 10:16:33 2023 +0100 Update mobile bindings commit 669e61af9a378544cee16d4058f99460a5326081 Author: Arceliar <[email protected]> Date: Sat May 13 16:15:04 2023 -0500 update to bugfixed ironwood, fix broken core test, add getPaths handler to admin socket commit 5e95246c26b497672851ab0eccd43ed2cbed7df6 Author: Arceliar <[email protected]> Date: Sat May 13 14:44:38 2023 -0500 update to ironwood v0.0.0-20230513191034-495699d87ae4 with API changes commit 1345960d5f71bd726bc3d7c1bdb044f7034907a5 Author: Neil Alexander <[email protected]> Date: Sun May 7 17:29:46 2023 +0100 Update to Arceliar/ironwood@14d951a commit 8696650958692ab8a3b02e24f6554515baff7a0c Author: Arceliar <[email protected]> Date: Sun Mar 26 17:06:18 2023 -0500 Update go.mod commit ebd3596c2ca83693d0f9090d5fd3aaf4a69bd378 Author: Arceliar <[email protected]> Date: Sun Mar 26 17:05:55 2023 -0500 Update ci.yml commit e99c870d51878878e1de8ed1fac65bd3fafb38d4 Author: Arceliar <[email protected]> Date: Sun Mar 26 16:49:40 2023 -0500 update admin functions and fix core tests commit abbe94fa8085aefd4d9ce8962cd9fcba5d84b445 Author: Arceliar <[email protected]> Date: Sun Mar 26 16:34:49 2023 -0500 fix core tests and run gofmt on src commit fc632c5caaac7159bf114598147c242a76c49ee9 Author: Arceliar <[email protected]> Date: Sun Mar 26 16:17:31 2023 -0500 comment out some unused ipv6rwc code commit 5b6d9d52f302ee6d0ef56235abd4a682c40e24b7 Author: Arceliar <[email protected]> Date: Sun Mar 26 16:12:45 2023 -0500 update ironwood replace, update ipv6rwc to work (may need updates later if interface changes) commit 5a243d5b9587c7dfa12b00163574e119c76d0f7e Author: Neil Alexander <[email protected]> Date: Sun Mar 19 21:44:34 2023 +0000 Update ironwood replace commit a148f4cfecd92d4464da9431a1416ad413b4f76d Author: Neil Alexander <[email protected]> Date: Sun Mar 19 10:33:07 2023 +0000 More updates for Ygg v0.5 commit 83c1a810b57d99e68ebe9e04955c290b6b4fac1b Author: Neil Alexander <[email protected]> Date: Sat Mar 18 12:14:32 2023 +0000 New handshake, use `softcrdt` upstream commit 1420ea5662d94fe6c0b2d0b9644685c43a77d203 Merge: 1685b87 a8f0ada Author: Neil <[email protected]> Date: Sun Feb 26 22:01:32 2023 +0000 Merge pull request #1004 from Dry-Leaf/bsd_build_fix Added member to Logger struct expected by tun_bsd.go commit a8f0ada7ee01ef39012f255eb5a0b65cad018b1a Merge: 9ee6c46 1685b87 Author: Neil <[email protected]> Date: Sun Feb 26 21:54:50 2023 +0000 Merge branch 'develop' into bsd_build_fix commit 1685b87a045ea2392ea9c10e240961e00c7e869f Merge: 3873635 3b0a819 Author: Neil <[email protected]> Date: Sun Feb 26 21:43:51 2023 +0000 Merge pull request #1021 from yggdrasil-network/dependabot/go_modules/golang.org/x/net-0.7.0 Bump golang.org/x/net from 0.0.0-20221014081412-f15817d10f9b to 0.7.0 commit 9ee6c46b1da8142ac3f3369540949559f129cf87 Merge: 783b4d3 3873635 Author: Neil <[email protected]> Date: Sun Feb 26 21:40:29 2023 +0000 Merge branch 'develop' into bsd_build_fix commit 3b0a819e688b4cc2809551466a5c04092014800e Merge: a6f742e 3873635 Author: Neil <[email protected]> Date: Sun Feb 26 21:36:09 2023 +0000 Merge branch 'develop' into dependabot/go_modules/golang.org/x/net-0.7.0 commit 38736358dda588e30cbce931f7f41fdf26f5d5f0 Author: Neil Alexander <[email protected]> Date: Sun Feb 26 21:35:56 2023 +0000 Fix lint error properly this time commit 1dd1d0ab8c55bba222f4ef678011b97a0382316e Author: Neil Alexander <[email protected]> Date: Sun Feb 26 21:32:26 2023 +0000 Build packages with Go 1.20 commit 6d6c4089575dfbd1619623c442de4419b3445430 Author: Neil Alexander <[email protected]> Date: Sun Feb 26 21:31:20 2023 +0000 Test against Go 1.20, maybe fix lint issue commit 783b4d3de6fd187708c8b3b4d70acf238a4081b2 Merge: 9cbc71b 4189053 Author: Neil <[email protected]> Date: Sun Feb 26 21:28:29 2023 +0000 Merge branch 'develop' into bsd_build_fix commit a6f742ee93ae72cbaf85203df7bd39336ad8f597 Merge: 886281a 4189053 Author: Neil <[email protected]> Date: Sun Feb 26 21:27:56 2023 +0000 Merge branch 'develop' into dependabot/go_modules/golang.org/x/net-0.7.0 commit 4189053cfcd5a295c018af0df1bb7422787eebd0 Merge: 14f1cd4 723097f Author: Neil <[email protected]> Date: Sun Feb 26 21:24:01 2023 +0000 Merge pull request #981 from yggdrasil-network/neilalexander/tryall Try all addresses when connecting to a DNS name commit 886281af7c23f75e1847c644ff98bd070046a8c6 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat Feb 25 02:28:24 2023 +0000 Bump golang.org/x/net from 0.0.0-20221014081412-f15817d10f9b to 0.7.0 Bumps [golang.org/x/net](https://github.com/golang/net) from 0.0.0-20221014081412-f15817d10f9b to 0.7.0. - [Release notes](https://github.com/golang/net/releases) - [Commits](https://github.com/golang/net/commits/v0.7.0) --- updated-dependencies: - dependency-name: golang.org/x/net dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]> commit 9cbc71bc8a9d3b160ec2e166cf8c51584187cb4d Author: anon <na> Date: Sun Dec 18 00:37:34 2022 -0500 Added member to Logger struct expected by tun_bsd.go commit 723097fbf61f447abd6cd027f183bdea30598054 Author: Neil Alexander <[email protected]> Date: Sat Nov 26 16:18:15 2022 +0000 Deduplicate some logic commit 1adc88ec779c9a9870bccf40ad6a4e82a3ee5cc8 Merge: 110613b 14f1cd4 Author: Neil Alexander <[email protected]> Date: Sat Nov 26 16:00:46 2022 +0000 Merge branch 'develop' into neilalexander/tryall commit 14f1cd4696a37b0f7fdcb067fac337c46953f8af Merge: 4c66a13 b0f6544 Author: Neil Alexander <[email protected]> Date: Sun Nov 20 21:20:11 2022 +0000 Version 0.4.7 Merge pull request #986 from yggdrasil-network/develop commit b0f6544b079240c17157072dd3d3dc8d5400a0a4 Author: Neil Alexander <[email protected]> Date: Sun Nov 20 21…
1 parent 2e117f9 commit 80dcca7

File tree

12 files changed

+24
-2
lines changed

12 files changed

+24
-2
lines changed

thirdparty/yggdrasil-go/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
__debug*
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
{
2+
// 使用 IntelliSense 了解相关属性。
3+
// 悬停以查看现有属性的描述。
4+
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
5+
"version": "0.2.0",
6+
"configurations": [
7+
{
8+
"name": "Launch Package",
9+
"type": "go",
10+
"request": "launch",
11+
"mode": "auto",
12+
"program": "cmd/yggdrasil",
13+
"args": [
14+
"-useconffile",
15+
"/etc/yggdrasil/yggdrasil.conf",
16+
"-loglevel",
17+
"trace"
18+
]
19+
}
20+
]
21+
}

thirdparty/yggdrasil-go/build

100644100755
File mode changed.

thirdparty/yggdrasil-go/clean

100644100755
File mode changed.

thirdparty/yggdrasil-go/contrib/busybox-init/S42yggdrasil

100644100755
File mode changed.

thirdparty/yggdrasil-go/contrib/docker/entrypoint.sh

100644100755
File mode changed.

thirdparty/yggdrasil-go/contrib/macos/create-pkg.sh

100644100755
File mode changed.

thirdparty/yggdrasil-go/contrib/mobile/build

100644100755
File mode changed.

thirdparty/yggdrasil-go/contrib/openrc/yggdrasil

100644100755
File mode changed.

thirdparty/yggdrasil-go/misc/run-schannel-netns

100644100755
File mode changed.

0 commit comments

Comments
 (0)