| Age | Commit message (Collapse) | Author | Files | Lines | |
|---|---|---|---|---|---|
| 2024-06-28 | Remove pointless firewall update | David Lönnhager | 2 | -56/+46 | |
| 2024-06-26 | Enable DAITA on macOS | David Lönnhager | 1 | -2/+2 | |
| 2024-06-25 | Link statically against libwg | Markus Pettersson | 1 | -1/+1 | |
| Co-authored-by: David Lönnhager <david.l@mullvad.net> | |||||
| 2024-06-25 | Add `daita` as a Cargo cfg variable | Markus Pettersson | 8 | -33/+72 | |
| Gate DAITA compilation on `"cargo::rustc-cfg=daita"` emitted in build files per platform. | |||||
| 2024-06-25 | Enable constant packet size for wireguard-go | Markus Pettersson | 2 | -1/+5 | |
| Activate the setting when DAITA is enabled and write constant packet size to WG config string. Co-authored-by: Sebastian Holmin <sebastian.holmin@mullvad.net> | |||||
| 2024-06-25 | Use Wireguard-go when DAITA is enabled | Markus Pettersson | 3 | -18/+53 | |
| 2024-06-25 | Add a safe FFI wrapper in `wireguard-go-rs` | Sebastian Holmin | 10 | -235/+179 | |
| - Add local wireguard go import - Activate DAITA and add `wgActivateDaita` and `wgReceiveEvent` FFI - Implement `start_daita` on Wireguard-go tunnel type - Mention DAITA in `wireguard-go-rs` description - Do not compile `wireguard-go-rs` on Windows - Handle DAITA closed on `nil` event - Handle daita action timeouts in libwg - Remove noisy log lines - Remove `maybenot_on_action` callback - Remove unused link to `../build/lib` for `talpid-wireguard` - Bump the `wireguard-go` submodule to a signed release tag in Mullvad's `wireguard-go` fork. - Update path to `libwg/go.sum` in verification script Also: - Use u64 instead of *mut void as log context - Make Tunnel::set_config take a &mut self - Use dyn Error instead of i32s for wg errors Co-authored-by: Joakim Hulthe <joakim@hulthe.net> | |||||
| 2024-06-24 | Run `cargo +nightly fmt` | Sebastian Holmin | 1 | -5/+7 | |
| 2024-05-29 | Migrate to gRPC | David Göransson | 1 | -3/+14 | |
| Co-authored-by: Jonatan Rhodin <jonatan.rhodin@mullvad.net> Co-authored-by: Markus Pettersson <markus.pettersson@mullvad.net> Co-authored-by: David Lönnhager <david.l@mullvad.net> | |||||
| 2024-05-07 | Check wireguard-go configuration | David Lönnhager | 1 | -1/+6 | |
| 2024-04-25 | Fix use of deprecated socket2 function | Joakim Hulthe | 1 | -1/+1 | |
| 2024-04-25 | Update windows-sys | Joakim Hulthe | 1 | -4/+2 | |
| 2024-04-25 | Run cargo update + use new base64 | Joakim Hulthe | 1 | -1/+0 | |
| 2024-04-22 | Fix broken lints in rustdocs | Sebastian Holmin | 1 | -7/+7 | |
| I ran `cargo doc` and fixed as many broken links as I could find. | |||||
| 2024-04-16 | Add DAITA to relay selection | David Lönnhager | 1 | -1/+1 | |
| 2024-04-16 | Add DAITA Windows client and updated tuncfg | David Lönnhager | 6 | -46/+695 | |
| 2024-03-27 | Refactor `mullvad-relay-selector` | Markus Pettersson | 1 | -2/+1 | |
| Implement a system built on 'queries' for selecting appropriate relays. A query is a set of constraints which dictates which relay(s) that *can* be chosen by the relay selector. The user's settings can naturally be expressed as a query. The semantics of merging two queries in a way that always prefer user settings is defined by the new `Intersection` trait. Split `mullvad-relay-selector` into several modules: - `query.rs`: Definition of a query on different types of relays. This module is integral to the new API of `mullvad-relay-selector` - `matcher.rs`: Logic for filtering out candidate relays based on a query. - `detailer.rs`: Logic for deriving connection details for the selected relay. - `tests/`: Integration tests for the new relay selector. These tests only use the public APIs of `RelaySelector` and make sure that the output matches the expected output in different scenarios. | |||||
| 2024-03-14 | Simplify route manager handle | David Lönnhager | 1 | -1/+1 | |
| 2024-03-13 | Fix cross-checking talpid-wireguard for windows | Joakim Hulthe | 1 | -2/+3 | |
| The `wireguard_go` cfg shouldn't be included when compiling towards windows. This change makes `cargo c --target x86_64-pc-windows-gnu` work on linux again. | |||||
| 2024-03-13 | Stop connectivity monitor when stats map is empty | David Lönnhager | 1 | -1/+8 | |
| This occurs when the WireGuard device is closed unexpectedly | |||||
| 2024-02-27 | Use `tokio::time::pause` to mock time in tests | Sebastian Holmin | 2 | -117/+138 | |
| 2024-02-27 | Make `max_ping_size` only take `FuturesUnordered` instead of being generic | Sebastian Holmin | 1 | -31/+64 | |
| 2024-02-27 | Add unit test for MTU detection | Sebastian Holmin | 1 | -39/+156 | |
| Split MTU detection into an inner pure function `max_ping_sized` and an outer function `detect_mtu` and add unit and prop-testing to the non io-dependent parts. | |||||
| 2024-02-27 | Replace err_derive with thiserror | Joakim Hulthe | 13 | -152/+144 | |
| `err_derive` is unmaintained and will probably stop working with rust edition 2024. `thiserror` is almost a drop-in replacement. This commit simply replaces all occurences of `derive(err_derive::Error)` with `derive(thiserror::Error)` and fixes the attributes, but the Error and Display impls should be identical. | |||||
| 2024-02-19 | Fix redundant imports | David Lönnhager | 2 | -4/+1 | |
| 2024-02-13 | Fix MTU detection below min IPv6 value for windows | Sebastian Holmin | 1 | -3/+19 | |
| 2024-02-12 | Move MTU detection to separate module | Sebastian Holmin | 2 | -177/+209 | |
| 2024-02-12 | Enable MTU detection on macos | Sebastian Holmin | 1 | -7/+7 | |
| 2024-02-12 | Increase socket buffer size for MTU pinger on macos | David Lönnhager | 1 | -3/+20 | |
| 2024-02-12 | Fix `talpid_wireguard::unix::set_mtu` for macos | Sebastian Holmin | 2 | -2/+7 | |
| 2024-02-09 | Add windows MTU detection implementation. | Sebastian Holmin | 2 | -12/+29 | |
| 2024-02-09 | Fix type mismatch in pointer cast on ARM | Markus Pettersson | 1 | -1/+1 | |
| 2024-02-08 | Add `proptest` dependency | Sebastian Holmin | 2 | -5/+30 | |
| 2024-02-08 | Enable automatic MTU detection on linux | Sebastian Holmin | 1 | -0/+30 | |
| 2024-02-08 | Refactor default MTU calculation | Sebastian Holmin | 1 | -10/+8 | |
| 2024-02-08 | Add automatic MTU detection | Sebastian Holmin | 2 | -0/+104 | |
| 2024-02-08 | Add `set_mtu` for linux | Sebastian Holmin | 2 | -0/+43 | |
| 2024-02-08 | Move constants | Sebastian Holmin | 1 | -6/+4 | |
| 2024-02-08 | Fix typos | Sebastian Holmin | 3 | -2/+4 | |
| 2024-01-31 | Simplify retry logic in connecting state | David Lönnhager | 2 | -2/+34 | |
| 2024-01-31 | Coalesce tunnel device errors on Windows | David Lönnhager | 2 | -1/+6 | |
| 2024-01-25 | Set default route MTU when using multihop on macOS. This prevents fragmentation | David Lönnhager | 1 | -8/+13 | |
| 2024-01-25 | Hardcode a low MTU/MSS for the tunnel config client socket | David Lönnhager | 1 | -54/+6 | |
| 2024-01-16 | Add rust-version to all Cargo.toml | Linus Färnstrand | 1 | -0/+1 | |
| 2024-01-09 | Remove version and publish cargo metadata | Linus Färnstrand | 1 | -2/+0 | |
| Since Rust 1.75.0 the `version` field is optional. The version defaults to "0.0.0" if it's not specified, and `publish` defaults to false if no version has been given. So by not specifying a version we get both `version = "0.0.0" and `publish = false` "for free" | |||||
| 2024-01-04 | Add workspace level lints | Linus Färnstrand | 2 | -1/+2 | |
| 2023-12-04 | Remove hidden assumptions from WireGuard config | David Lönnhager | 5 | -91/+85 | |
| 2023-12-04 | Subtract multihop overhead from default route MTU on Linux | David Lönnhager | 1 | -0/+27 | |
| 2023-12-01 | Rename MULLVAD_INTERFACE_NAME | Stephen Huan | 1 | -1/+1 | |
| 2023-11-13 | Remove unnecessary closure | Sebastian Holmin | 1 | -1/+1 | |
