| Age | Commit message (Collapse) | Author | Files | Lines | |
|---|---|---|---|---|---|
| 2025-10-21 | Add support for multihop entry filters in daemon | Kalle Lindström | 1 | -0/+81 | |
| In the upcoming re-design of select location, separate sets of filters can now be picked for the entry and the exit relays. This commit adds support for that in the relay selector. In order to not affect the current behavior of the desktop and Android apps before the new UI is implemented, the entry filters are set to the same as the exit filters when the relay settings are updated via gRPC. | |||||
| 2025-10-09 | Enable lwo in the relay selector | Jonatan Rhodin | 1 | -1/+0 | |
| 2025-10-02 | Enable quic in the relay selector for android | Jonatan Rhodin | 1 | -1/+0 | |
| 2025-10-02 | Append LWO to retry order | David Lönnhager | 1 | -0/+3 | |
| 2025-09-30 | Add relay list selector test for LWO | David Lönnhager | 1 | -1/+28 | |
| 2025-09-18 | Add multiplexer POC to daemon, TSM, and relay selector | David Lönnhager | 1 | -10/+11 | |
| 2025-09-18 | Add WG over IPv6 test | David Lönnhager | 1 | -0/+31 | |
| 2025-09-15 | Add LWO obfuscator | David Lönnhager | 1 | -1/+2 | |
| 2025-08-22 | Add regression test for enabling both OpenVPN and QUIC | David Lönnhager | 1 | -0/+13 | |
| 2025-08-19 | Reproduce failing scenario as unit test | Markus Pettersson | 1 | -0/+94 | |
| Add a test case demonstrating an absurd scenario where the relay selector is unable to select a proper circuit even though it should be able to resolve a valid multihop configuration. | |||||
| 2025-08-18 | Fail if QUIC address set is empty | David Lönnhager | 1 | -1/+2 | |
| 2025-07-23 | Refactor Relay protobuf type | Markus Pettersson | 1 | -83/+47 | |
| Remove the dependency on google/protobuf/any.proto. | |||||
| 2025-07-16 | Remove QUIC obfuscation from automatic retry order on Android | Markus Pettersson | 1 | -0/+1 | |
| 2025-07-10 | Run `cargo fmt` | Sebastian Holmin | 1 | -50/+80 | |
| 2025-07-09 | Add support for QUIC in the relay selector | Markus Pettersson | 1 | -7/+53 | |
| Parse new 'features' key from relay list API, and add Quic obfuscation to automatic retry order | |||||
| 2025-07-09 | Inline format arguments | Linus Färnstrand | 1 | -2/+2 | |
| 2025-07-09 | Use std::iter::repeat_n | Linus Färnstrand | 1 | -2/+1 | |
| 2025-05-08 | Add QUIC obfuscation to mullvad daemon and management interface | David Lönnhager | 1 | -2/+3 | |
| 2025-03-25 | Avoid using an unavailable ip version to connect to a relay | Jonatan Rhodin | 1 | -10/+81 | |
| Co-authored-by: Sebastian Holmin <sebastian.holmin@mullvad.net> | |||||
| 2025-03-13 | Remove "Any" tunnel protocol from query builder | Sebastian Holmin | 1 | -113/+57 | |
| 2025-03-05 | Remove automatic tunnel type | David Lönnhager | 1 | -107/+99 | |
| Co-authored-by: Markus Pettersson <markus.pettersson@mullvad.net> | |||||
| 2024-10-18 | Run nightly formatter | Markus Pettersson | 1 | -2/+2 | |
| 2024-10-18 | Add test case for smart routing overriding multihop | Markus Pettersson | 1 | -0/+74 | |
| 2024-10-07 | Replace `smart_routing` with `use_multihop_if_necessary` in daemon | Sebastian Holmin | 1 | -10/+10 | |
| Simplify the logic for feature indicators | |||||
| 2024-09-17 | Align Smart routing GUI with design spec | Joakim Hulthe | 1 | -10/+10 | |
| 2024-09-17 | Add unit test for daita_use_anywhere with singlehop | Joakim Hulthe | 1 | -1/+23 | |
| 2024-09-17 | Fix relay_selector daita tests | Joakim Hulthe | 1 | -1/+31 | |
| 2024-09-17 | Remove Option from Relay::location | Joakim Hulthe | 1 | -10/+20 | |
| 2024-09-02 | Replace footgunny From implementations for RelayQuery | David Lönnhager | 1 | -3/+4 | |
| 2024-08-28 | Filter out OpenVPN relays when a core privacy feature is enabled | David Lönnhager | 1 | -126/+134 | |
| Core privacy features currently include PQ, multihop, and DAITA | |||||
| 2024-08-27 | Use std LazyLock instead of once_cell Lazy | David Lönnhager | 1 | -5/+5 | |
| 2024-08-27 | Add Shadowsocks to retry order | David Lönnhager | 1 | -5/+7 | |
| Co-authored-by: Sebastian Holmin <sebastian.holmin@mullvad.net> | |||||
| 2024-08-22 | Improve IP override testing | Sebastian Holmin | 1 | -2/+7 | |
| 2024-08-22 | Fix IP-override feature indicator | Sebastian Holmin | 1 | -2/+28 | |
| It was trigger by any overrides existing in the settings, not by the current endpoint being overridden. Add flag to `Relay` to specify if its IPv4 and/or IPv6 has been overridden and use that in combination with the endpoint IP version to derive if the current connection is overridden. | |||||
| 2024-08-16 | Use range types for all port ranges | David Lönnhager | 1 | -14/+14 | |
| Breaks backwards compatibility with relays.json (which is acceptable) | |||||
| 2024-08-16 | Add tests for Shadowsocks | David Lönnhager | 1 | -7/+174 | |
| 2024-08-16 | Add Shadowsocks obfuscation support to mullvad-daemon | David Lönnhager | 1 | -4/+11 | |
| 2024-08-16 | Parse shadowsocks ports in relay list | David Lönnhager | 1 | -0/+6 | |
| 2024-07-30 | Ignore obfuscation protocol specific constraints when 'auto' is selected | David Lönnhager | 1 | -11/+9 | |
| 2024-04-17 | Add test | Sebastian Holmin | 1 | -0/+27 | |
| 2024-04-16 | Add DAITA relay selection tests | David Lönnhager | 1 | -4/+177 | |
| 2024-04-16 | Add DAITA to relay selection | David Lönnhager | 1 | -4/+4 | |
| 2024-04-16 | Add DAITA Windows client and updated tuncfg | David Lönnhager | 1 | -0/+6 | |
| 2024-04-04 | Format docstrings | Markus Pettersson | 1 | -18/+25 | |
| 2024-03-27 | Refactor `mullvad-relay-selector` | Markus Pettersson | 1 | -0/+1112 | |
| 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. | |||||
