| Age | Commit message (Collapse) | Author | Files | Lines | |
|---|---|---|---|---|---|
| 2024-10-31 | Do not fallback to direct API connections when testing access methods | Markus Pettersson | 1 | -0/+6 | |
| 2024-10-23 | Do not implement `std::fmt::Display` for `ProxyConfig` | Markus Pettersson | 1 | -26/+1 | |
| Use the Debug implementation in the one case where the Display implementation was used. | |||||
| 2024-10-23 | Enable Encrypted DNS proxy access method in the daemon | Markus Pettersson | 2 | -1/+12 | |
| 2024-10-23 | Wire up Mullvad Encrypted DNS proxy in `mullvad-api` | Markus Pettersson | 1 | -0/+21 | |
| 2024-10-16 | Replace old client with `hyper_util` legacy client | Sebastian Holmin | 4 | -48/+54 | |
| 2024-10-16 | Add `impl From<Infallible> for Error` | Sebastian Holmin | 1 | -0/+7 | |
| 2024-10-16 | Replace occurrences of old `Body` type in `rest` mod | Sebastian Holmin | 3 | -77/+153 | |
| Use `Empty<Bytes>` for outgoing, `Incoming` for responses and generic paras for our type wrapping `Request`. | |||||
| 2024-10-16 | Update `rustls` in `tls_stream.rs` | Sebastian Holmin | 1 | -11/+12 | |
| 2024-10-02 | Fix bug when overriding API with only MULLVAD_API_HOST | Linus Färnstrand | 1 | -0/+1 | |
| 2024-10-01 | Rename account "token" to account "number" | Joakim Hulthe | 4 | -33/+31 | |
| 2024-09-26 | Add unit tests to `availability` module | Markus Pettersson | 1 | -0/+36 | |
| 2024-09-26 | Implement `Default` for `ApiAvailibility` | Markus Pettersson | 2 | -11/+19 | |
| 2024-09-26 | Fix regression in API timer logic | David Lönnhager | 1 | -2/+10 | |
| 2024-09-25 | Consolidate two mutexes into one | Markus Pettersson | 3 | -149/+149 | |
| 2024-09-17 | Remove Option from Relay::location | Joakim Hulthe | 1 | -1/+1 | |
| 2024-08-27 | Use std LazyLock instead of once_cell Lazy | David Lönnhager | 1 | -2/+2 | |
| 2024-08-22 | Fix IP-override feature indicator | Sebastian Holmin | 1 | -0/+2 | |
| 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 | -2/+16 | |
| Breaks backwards compatibility with relays.json (which is acceptable) | |||||
| 2024-08-16 | Parse shadowsocks ports in relay list | David Lönnhager | 1 | -1/+8 | |
| 2024-07-30 | Ignore obfuscation protocol specific constraints when 'auto' is selected | David Lönnhager | 1 | -2/+1 | |
| 2024-07-26 | Fix `doc list item missing indentation` | Sebastian Holmin | 1 | -1/+1 | |
| 2024-06-10 | Use configured hostname for access token | Emīls | 4 | -11/+11 | |
| 2024-04-22 | Fix broken lints in rustdocs | Sebastian Holmin | 2 | -3/+3 | |
| I ran `cargo doc` and fixed as many broken links as I could find. | |||||
| 2024-04-16 | Add DAITA Windows client and updated tuncfg | David Lönnhager | 1 | -0/+3 | |
| 2024-04-03 | Wrap AbortableStream abort receiver in Fuse | David Lönnhager | 1 | -2/+4 | |
| The contract of FusedFuture says that a future may not be polled when resolved, not that it is safe to poll it afterwards | |||||
| 2024-03-07 | Add comments explaining decisions | Bug Magnet | 1 | -0/+2 | |
| 2024-03-07 | Force environment variables when running on iOS | Bug Magnet | 1 | -0/+4 | |
| 2024-02-27 | Replace err_derive with thiserror | Joakim Hulthe | 6 | -37/+36 | |
| `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-21 | Create device proxy on tokio runtime | David Lönnhager | 1 | -2/+4 | |
| 2024-02-19 | Fix redundant imports | David Lönnhager | 1 | -1/+1 | |
| 2024-02-19 | Move responsibility of updating the API IP from REST handle to the daemon | David Lönnhager | 3 | -73/+10 | |
| 2024-02-19 | Fix pointless API method rotations when concurrent requests fail | David Lönnhager | 1 | -4/+14 | |
| 2024-02-16 | Refactor API access methods | David Lönnhager | 4 | -60/+82 | |
| 2024-02-16 | Only force direct mode by default when overriding the API host/addr | David Lönnhager | 1 | -7/+8 | |
| 2024-02-15 | Add `force_direct` flag to API override | Markus Pettersson | 1 | -21/+46 | |
| 2024-02-15 | Fix the mullvad API ffi, consume the header after building it | Bug Magnet | 1 | -4/+2 | |
| 2024-02-15 | Fix off-by-one error when choosing access method candidates | Markus Pettersson | 3 | -34/+30 | |
| 2024-02-15 | Fix `mullvad-api` build on android | Markus Pettersson | 1 | -3/+1 | |
| 2024-02-14 | Add MullvadApi to MullvadVPNUITetsts | Emīls | 1 | -2/+2 | |
| 2024-02-14 | Fix talpid-time for iOS, add FFI for mullvad-api | Emīls | 6 | -4/+666 | |
| 2024-01-23 | Use infallible HeaderValue::from() when converting from usize | Andrej Mihajlov | 1 | -6/+2 | |
| 2024-01-16 | Do not try to resolve API address if `MULLVAD_API_HOST` is not set | Markus Pettersson | 1 | -17/+24 | |
| If the `api-override` feature is enabled, we allow overriding the ip address to the Mullvad API by settings the `MULLVAD_API_ADDRESS` env variable or have it be resolved automatically if `MULLVAD_API_HOST` is overriden. This commit fixes a bug where we would try to resolve the API address when `MULLVAD_API_ADDRESS` was not set even if `MULLVAD_API_ADDRESS` was not set either. | |||||
| 2024-01-12 | Validate SOCKS5 credentials | Markus Pettersson | 1 | -26/+13 | |
| Validate SOCKS credentials by checking that both `username` and `password` both have a length between 1 and 255 bytes. Link to RFC detailing SOCKS5 username/password authentication: https://datatracker.ietf.org/doc/html/rfc1929 | |||||
| 2024-01-11 | Synchronize `mullvad-api` and `mullvad-daemon` when the `api-override` | Markus Pettersson | 4 | -91/+149 | |
| feature is enabled Move the logic for using overridden API endpoints for API calls from `mullvad-api::rest` to `mullvad_daemon::api`. This is in line with how the interaction between the two crates work for a normal release build, i.e. when the `api-override` feature is disabled. This commit also removes references to `force_direct_connection` in the Android code. The flag does not exist in the `mullvad-*` rust crates anymore, so it would be erroneous to try to serialize/deserialize the value from the Android client. | |||||
| 2024-01-08 | Remove `ApiEndpointUpdateHandler` | Markus Pettersson | 4 | -86/+23 | |
| Previously, the `mullvad-api` would tell the `mullvad-daemon` that it wanted a new API endpoint by calling a certain callback (`ApiEndpointUpdateCallback`), which would asynchronously resolve a new API endpoint and tell the daemon to punch an appropriate hole in the firewall for that particular endpoint before the `mullvad-api` crate would consume it. The logic of the callback can be moved inside `AccessModeSelector`, which simplifies the contract between `mullvad-daemon` and `mullvad-api` somewhat. | |||||
| 2024-01-05 | Run `cargo +nightly fmt` | Sebastian Holmin | 2 | -3/+2 | |
| 2024-01-04 | Add workspace level lints | Linus Färnstrand | 1 | -2/+0 | |
| 2024-01-03 | Allow app to use custom socks5 and shadwosocks proxies | Jonathan | 2 | -47/+33 | |
| This PR has a couple of different purposes - Allow users to use socks5 local proxies with the CLI without having to be root nor use split-tunneling. This only works for OpenVPN. - Unify the types used by different proxy parts of the codebase, such as the Access Methods as well as some already existing OpenVPN proxy code. This PR changes the firewall on all desktop platforms as well as changes the routing table slightly on MacOS and Windows. On Linux the firewall code is modified to apply the appropriate firewall marks to all packages that go to a remote endpoint corresponding to the remote part of a local socks5 proxy. The firewall marks will allow the routing to be done without having to modify the routing table. On MacOS and Windows the routing table is modified to allow packages to go to that same endpoint to pass outside the VPN tunnel, it will additionally punch a hole in the firewall. The PR also migrates the settings file from version 7 to version 8 in order to properly and neatly unify Proxy related types. Finally it provides some slight extensions to the gRPC interface in order to allow for control over the custom proxy settings. | |||||
| 2024-01-02 | Fix clippy lints | David Lönnhager | 1 | -1/+1 | |
| 2023-12-29 | Fetch account ID from API | David Lönnhager | 1 | -11/+4 | |
