Matěj Laitl
eb90cc53a5
Fix clippy warnings, add clippy to CI ( #127 )
...
* Tidy code a bit thanks to clippy
Clippy 1.54 newly detects some redundant constructs, that's nice.
sort_unstable() should yield exact same results as sort() for `Vec<&str>`
and could be faster, clippy says.
* Add clippy to CI
2021-08-09 20:35:42 +09:00
Jake McGinty
e97eb737a4
shared(PeerDiff): refactor struct and update peer endpoints only when handshake failed
...
The past behavior of clients was to, on every fetch from the server, update each of its peer's endpoints with the one reported from the server. While this wasn't a problem on certain types of NATs to help with holepunching, in some situations it caused previously working connections to no longer work (when one peer had a port-restricted or symmetric cone type NAT).
2021-08-05 09:38:14 +09:00
Jake McGinty
b169435355
meta: release v1.4.1
2021-08-03 01:26:38 +09:00
Jake McGinty
89f2e813cf
client(install): fix install check failure when /var/run/wireguard doesn't exist
2021-08-03 00:44:06 +09:00
Jake McGinty
82325509db
meta: cargo clippy & fmt
2021-08-02 23:10:20 +09:00
Jake McGinty
61b055c44b
client(install): bail if WireGuard interface with same name exists
...
Closes #113
2021-08-02 23:07:45 +09:00
Jake McGinty
40e8ca68f9
wgctrl-rs(userspace): gracefully handle stale `.name` files on macOS
...
* wgctrl-rs(userspace): clean stale namefiles on starting up interface
Fixes #114
* wgctrl-rs(userspace): check connectability of interface socket in enumerate()
2021-08-02 22:12:29 +09:00
Jake McGinty
bbfb11e175
meta: cargo update & clippy fixes
2021-07-27 14:14:50 +09:00
Jake McGinty
26b962bea0
client: add debug info for peer endpoint changes on update
2021-07-15 15:54:31 +09:00
Jake McGinty
118986e5e3
meta: release v1.4.0
2021-07-11 22:16:20 +09:00
Jake McGinty
867583a992
meta: cargo update
2021-07-11 21:46:28 +09:00
Jake McGinty
4afa8a8a4e
shared(types): CidrTree: re-add with_root, rewrite leaves()
2021-06-23 20:54:05 +09:00
Jake McGinty
62e6464064
shared(types): undo with_root until a rewrite of leaves()
2021-06-23 20:31:22 +09:00
Jake McGinty
3c8530d956
shared: add with_root method in CidrTree
2021-06-23 16:11:37 +09:00
Jake McGinty
0c8a2ee991
meta: cargo clippy
2021-06-22 11:27:29 +09:00
Jake McGinty
b23f952e79
meta: cargo update
2021-06-22 11:16:33 +09:00
Jake McGinty
7bc1033b58
meta: cargo clippy
2021-06-16 20:34:53 +09:00
Jake McGinty
d8513d3d54
meta: release v1.4.0-beta.3
2021-06-16 20:28:52 +09:00
Jake McGinty
1aed782683
client: tighten some error types and apply helptext to io::Error
2021-06-16 20:26:01 +09:00
Jake McGinty
93b4b0b43c
meta: release v1.4.0-beta.2
2021-06-14 23:53:02 +09:00
Jake McGinty
d6ab8e6653
shared(wg): default to 1400 if network CIDR is IPv6
...
Second fix for #102
2021-06-14 23:06:04 +09:00
Jake McGinty
4a458a413c
meta: cargo fmt
2021-06-14 19:10:31 +09:00
Jake McGinty
d431953353
client, server: configurable MTU via --mtu
...
ex: innernet --mtu 1400 up foobarnet
Closes #102
2021-06-14 19:06:40 +09:00
Jake McGinty
2fa7524def
client: add list-cidrs function
...
Closes #99
2021-06-14 18:50:21 +09:00
Jake McGinty
647ec7ca3e
shared: proactively create invite file to ensure we have permission
...
This won't clean up an empty file if a later step fails, but this
is still better than the previous solution.
Closes #91
2021-06-14 18:15:31 +09:00
Jake McGinty
8bd7b6e283
meta: cargo update
2021-06-14 18:10:28 +09:00
Jake McGinty
3a1f5cab6b
meta: release v1.4.0-beta.1
2021-06-14 15:54:50 +09:00
Jake McGinty
72ef070ef3
shared(prompts): fail on no TTY if interactivity was needed
...
Fixes #98
2021-06-14 15:52:15 +09:00
Jake McGinty
449b4b8278
client: support running as non-root ( #94 )
...
shared(wg): use netlink instead of execve calls to "ip"
hostsfile: write to hostsfile in-place
2021-06-10 22:57:47 +09:00
Manuel Rüger
6a60643d7d
docker-tests/Dockerfile*: Use --no-install-recommends ( #103 )
2021-06-10 03:27:38 +09:00
George Shuklin
0942452950
Exit with code 1 (error) if wizard failed. ( #96 )
...
* Exit with code 1 (error) if wizard failed.
Should prevent error code 0 after
`creation failed: failed to create database (are you not running as root?).`
and similar errors.
* Switch error messages from stdin to stderr for init_wizard
2021-06-02 14:14:54 +09:00
Jake McGinty
8017539f82
client, server: fix RPM build issue.
2021-06-01 01:30:40 +09:00
Jake McGinty
ba0b062ce9
meta: release v1.3.1
2021-06-01 00:58:09 +09:00
Jake McGinty
b7f299c147
meta: cargo update & clippy
2021-06-01 00:22:48 +09:00
Jake McGinty
042881cc7d
client, server: don't require root for completions command
2021-06-01 00:18:56 +09:00
Jake McGinty
5570580b78
release.sh: fix completion generation
2021-06-01 00:11:14 +09:00
Jake McGinty
15e9c08a8a
shared(wg): remove leftover debugging command
...
Fixes #95
doy.
2021-05-31 16:27:04 +09:00
Jake McGinty
3766d88c83
deb: remove old unused scripts
2021-05-26 15:12:37 +09:00
Jake McGinty
9524019c55
client, server: make clap's helptext a bit friendlier
2021-05-26 14:23:02 +09:00
Kevin K
ec210f9468
client, server: adds ability to rename peers ( #92 )
...
This commit adds a subcommand to both the client and server to allow
changing the name of a peer. The peer retains all the same attributes as
before (public keys, IPs, admin/disabled status, etc.).
Closes #87
2021-05-25 19:58:00 +09:00
Kevin K
4226278e5a
client, server: add shell completions ( #84 )
...
This subcommand takes a shell as an argument and generates shell
completions for that shell to stdout.
example:
```
$ innernet completions bash
OR
$ innernet-server completions bash
```
2021-05-25 16:10:16 +09:00
Jake McGinty
2d012c6bd9
meta: release v1.3.0
2021-05-21 14:46:30 +09:00
Jake McGinty
414e9c83fb
docker-tests: support userspace and kernel backends
2021-05-21 14:22:43 +09:00
Jake McGinty
fed0c859c8
meta: cargo update & fmt
2021-05-21 13:35:52 +09:00
Jake McGinty
b4fb9f9250
client, server: new CIDRs must be hostname-compatible
...
towards the goal of supporting #82
2021-05-21 13:35:07 +09:00
Jake McGinty
911a2d8f00
shared(prompts): wait for newline on confirmations
2021-05-21 13:02:11 +09:00
Jake McGinty
a140786d53
client: fix add-cidr when confirm is 'no'
2021-05-21 13:00:09 +09:00
Kevin K
ff0527d836
client, server: adds ability to delete cidrs ( #88 )
...
This commit adds a `delete-cidr` to both the client and server. It walks
through the prompts just like adding a CIDR.
Only eligible CIDRs are presented to the user. Eligibilty requires:
- CIDR has no child CIDRs
- CIDR has no assigned peers
Closes #23
2021-05-21 12:39:33 +09:00
Jake McGinty
15595d6f23
client: count handshakes within 3 minutes as 'online'
2021-05-21 03:03:44 +09:00
Jake McGinty
e2011b4260
meta: release v1.3.0-beta.7
2021-05-20 13:05:03 +09:00