summaryrefslogtreecommitdiffhomepage
path: root/mullvad-api/src
AgeCommit message (Collapse)AuthorFilesLines
2025-02-21Implement an FFI to fetch API IP addresses using mullvad-apiJon Petersson2-2/+11
2025-02-12Format workspaceSebastian Holmin1-1/+1
The 2024 edition contains new formatting rules. All of these are not compatible with the 2021 formatting style, but most of them are. To change the formatting to be as close to the new style as possible while remaining compatible with the 2021 edition, I first ran `cargo +beta fmt` with the edition set to 2024, then, with the edition set to 2021, I ran `cargo fmt`.
2025-02-12Fix "RPIT lifetime capture rules"Sebastian Holmin4-20/+29
2025-02-12Replace `#[no_mangle]` with `#[unsafe(no_mangle)]`Sebastian Holmin3-14/+14
2025-01-22Reduce log verbosity of API checkSebastian Holmin1-2/+2
2025-01-02Remove global API endpointEmīls7-129/+208
2024-12-02Make SNI hostname implicitDavid Lönnhager3-19/+6
2024-12-02Remove DNS fallback except for conncheckDavid Lönnhager5-70/+59
2024-12-02Make address cache constructor infallibleDavid Lönnhager1-7/+5
2024-12-02Make `EncryptedDNSForwarder::from_stream` infallibeMarkus Pettersson1-1/+2
2024-11-26Fix clippy lints in mullvad-apiDavid Lönnhager2-32/+43
2024-11-26Add missing resolver for iOS testsDavid Lönnhager1-0/+1
2024-11-22Add non-blocking DNS resolver for Android API requestsDavid Lönnhager4-21/+76
2024-10-31Do not fallback to direct API connections when testing access methodsMarkus Pettersson1-0/+6
2024-10-23Do not implement `std::fmt::Display` for `ProxyConfig`Markus Pettersson1-26/+1
Use the Debug implementation in the one case where the Display implementation was used.
2024-10-23Enable Encrypted DNS proxy access method in the daemonMarkus Pettersson2-1/+12
2024-10-23Wire up Mullvad Encrypted DNS proxy in `mullvad-api`Markus Pettersson1-0/+21
2024-10-16Replace old client with `hyper_util` legacy clientSebastian Holmin4-48/+54
2024-10-16Add `impl From<Infallible> for Error`Sebastian Holmin1-0/+7
2024-10-16Replace occurrences of old `Body` type in `rest` modSebastian Holmin3-77/+153
Use `Empty<Bytes>` for outgoing, `Incoming` for responses and generic paras for our type wrapping `Request`.
2024-10-16Update `rustls` in `tls_stream.rs`Sebastian Holmin1-11/+12
2024-10-02Fix bug when overriding API with only MULLVAD_API_HOSTLinus Färnstrand1-0/+1
2024-10-01Rename account "token" to account "number"Joakim Hulthe4-33/+31
2024-09-26Add unit tests to `availability` moduleMarkus Pettersson1-0/+36
2024-09-26Implement `Default` for `ApiAvailibility`Markus Pettersson2-11/+19
2024-09-26Fix regression in API timer logicDavid Lönnhager1-2/+10
2024-09-25Consolidate two mutexes into oneMarkus Pettersson3-149/+149
2024-09-17Remove Option from Relay::locationJoakim Hulthe1-1/+1
2024-08-27Use std LazyLock instead of once_cell LazyDavid Lönnhager1-2/+2
2024-08-22Fix IP-override feature indicatorSebastian Holmin1-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-16Use range types for all port rangesDavid Lönnhager1-2/+16
Breaks backwards compatibility with relays.json (which is acceptable)
2024-08-16Parse shadowsocks ports in relay listDavid Lönnhager1-1/+8
2024-07-30Ignore obfuscation protocol specific constraints when 'auto' is selectedDavid Lönnhager1-2/+1
2024-07-26Fix `doc list item missing indentation`Sebastian Holmin1-1/+1
2024-06-10Use configured hostname for access tokenEmīls4-11/+11
2024-04-22Fix broken lints in rustdocsSebastian Holmin2-3/+3
I ran `cargo doc` and fixed as many broken links as I could find.
2024-04-16Add DAITA Windows client and updated tuncfgDavid Lönnhager1-0/+3
2024-04-03Wrap AbortableStream abort receiver in FuseDavid Lönnhager1-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-07Add comments explaining decisionsBug Magnet1-0/+2
2024-03-07Force environment variables when running on iOSBug Magnet1-0/+4
2024-02-27Replace err_derive with thiserrorJoakim Hulthe6-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-21Create device proxy on tokio runtimeDavid Lönnhager1-2/+4
2024-02-19Fix redundant importsDavid Lönnhager1-1/+1
2024-02-19Move responsibility of updating the API IP from REST handle to the daemonDavid Lönnhager3-73/+10
2024-02-19Fix pointless API method rotations when concurrent requests failDavid Lönnhager1-4/+14
2024-02-16Refactor API access methodsDavid Lönnhager4-60/+82
2024-02-16Only force direct mode by default when overriding the API host/addrDavid Lönnhager1-7/+8
2024-02-15Add `force_direct` flag to API overrideMarkus Pettersson1-21/+46
2024-02-15Fix the mullvad API ffi, consume the header after building itBug Magnet1-4/+2
2024-02-15Fix off-by-one error when choosing access method candidatesMarkus Pettersson3-34/+30