diff options
| author | Jon Petersson <jon.petersson@mullvad.net> | 2025-01-16 15:52:16 +0100 |
|---|---|---|
| committer | Jon Petersson <jon.petersson@mullvad.net> | 2025-02-21 15:08:01 +0100 |
| commit | 041bf3f20f3cb0ed6703065eee4d09b5f938f730 (patch) | |
| tree | 13ed3e3895269a8bb6980b5d6eab3238f1e09252 /mullvad-api/src/lib.rs | |
| parent | 9a8535ef787d784d2d75dbd1474e1a1846413e83 (diff) | |
| download | mullvadvpn-041bf3f20f3cb0ed6703065eee4d09b5f938f730.tar.xz mullvadvpn-041bf3f20f3cb0ed6703065eee4d09b5f938f730.zip | |
Implement an FFI to fetch API IP addresses using mullvad-api
Diffstat (limited to 'mullvad-api/src/lib.rs')
| -rw-r--r-- | mullvad-api/src/lib.rs | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/mullvad-api/src/lib.rs b/mullvad-api/src/lib.rs index 997a0635c7..950ce10345 100644 --- a/mullvad-api/src/lib.rs +++ b/mullvad-api/src/lib.rs @@ -2,6 +2,7 @@ use async_trait::async_trait; #[cfg(target_os = "android")] use futures::channel::mpsc; +use hyper::body::Incoming; #[cfg(target_os = "android")] use mullvad_types::account::{PlayPurchase, PlayPurchasePaymentToken}; use mullvad_types::{ @@ -746,13 +747,17 @@ impl ApiProxy { } pub async fn get_api_addrs(&self) -> Result<Vec<SocketAddr>, rest::Error> { + self.get_api_addrs_response().await?.deserialize().await + } + + pub async fn get_api_addrs_response(&self) -> Result<rest::Response<Incoming>, rest::Error> { let request = self .handle .factory .get(&format!("{APP_URL_PREFIX}/api-addrs"))? .expected_status(&[StatusCode::OK]); - let response = self.handle.service.request(request).await?; - response.deserialize().await + + self.handle.service.request(request).await } /// Check the availablility of `{APP_URL_PREFIX}/api-addrs`. |
