Quentin McGaw
284d4340b1
fix(tests): fix netlink wireguard test
2022-09-05 15:23:31 +00:00
Quentin McGaw
aa53436e56
chore(lint): upgrade golangci-lint to v1.49.0
...
- Add linter `interfacebloat` and fix code issues
- Add linter `reassign`
- Remove deprecated linter `nosnakecase`
2022-08-24 21:48:24 +00:00
Quentin McGaw
578ef768ab
chore(all): return concrete types, accept interfaces
...
- Remove exported interfaces unused locally
- Define interfaces to accept arguments
- Return concrete types, not interfaces
2022-06-11 01:34:30 +00:00
Quentin McGaw
eb18eaf0a9
fix(wireguard): continue on ipv6 route add permission denial
2022-05-28 21:06:21 +00:00
Quentin McGaw
7fd45cf17f
feat(wireguard): add debug logs for IPv6 detection
...
- To debug issue #998
- Enable with `LOG_LEVEL=debug`
2022-05-27 17:27:53 +00:00
Quentin McGaw
5ffe8555ba
chore(lint): upgrade golangci-lint from v1.44.2 to v1.46.2
...
- Add linter `execinquery`
- Add linter `nosprintfhostport`
2022-05-27 00:52:25 +00:00
Quentin McGaw
920ad8b54b
chore(errors): review all errors in codebase
2022-02-20 02:58:16 +00:00
Quentin McGaw
7d824a5179
chore(settings): refactor settings processing ( #756 )
...
- Better settings tree structure logged using `qdm12/gotree`
- Read settings from environment variables, then files, then secret files
- Settings methods to default them, merge them and override them
- `DNS_PLAINTEXT_ADDRESS` default changed to `127.0.0.1` to use DoT. Warning added if set to something else.
- `HTTPPROXY_LISTENING_ADDRESS` instead of `HTTPPROXY_PORT` (with retro-compatibility)
2022-01-06 06:40:23 -05:00
Quentin McGaw
cfa3bb3b64
feat(internal/wireguard): opportunistic kernelspace
...
- Auto detect if kernelspace implementation is available
- Fallback to Go userspace implementation if kernel is not available
2021-12-14 11:03:36 +00:00
Quentin McGaw (desktop)
59a3a072e0
Feat: support IPv6 routing for Wireguard
2021-09-21 15:12:48 +00:00
Quentin McGaw (desktop)
9f001bbc06
Feat: log wireguard server endpoint
2021-09-18 19:12:27 +00:00
Quentin McGaw (desktop)
82ac568ee3
Fix: wireguard cleanup preventing restarts
2021-09-04 22:29:04 +00:00
Quentin McGaw (desktop)
b3d8b78205
Maint: only internal/netlink depends on github.com/vishvananda/netlink
2021-08-23 21:12:28 +00:00
Quentin McGaw (desktop)
ee82a85543
Maint: internal/routing uses internal/netlink
2021-08-23 20:56:10 +00:00
Quentin McGaw
614eb10d67
Wireguard support for Mullvad and Windscribe ( #565 )
...
- `internal/wireguard` client package with unit tests
- Implementation works with kernel space or user space if unavailable
- `WIREGUARD_PRIVATE_KEY`
- `WIREGUARD_ADDRESS`
- `WIREGUARD_PRESHARED_KEY`
- `WIREGUARD_PORT`
- `internal/netlink` package used by `internal/wireguard`
2021-08-22 14:58:39 -07:00