summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorDavid Lönnhager <david.l@mullvad.net>2021-04-22 17:56:20 +0200
committerDavid Lönnhager <david.l@mullvad.net>2021-04-29 12:17:19 +0200
commitcbb2171c2fb145dc291df5cf794e103959fcc3e0 (patch)
tree1d363975b45c03d81cf3c10bdeac0898100ab0dc
parent8f3b01dd351fde598d54de7ed9ab126a572b54c1 (diff)
downloadmullvadvpn-cbb2171c2fb145dc291df5cf794e103959fcc3e0.tar.xz
mullvadvpn-cbb2171c2fb145dc291df5cf794e103959fcc3e0.zip
Implement From for Settings
-rw-r--r--mullvad-daemon/src/management_interface.rs22
-rw-r--r--mullvad-management-interface/src/types.rs16
2 files changed, 20 insertions, 18 deletions
diff --git a/mullvad-daemon/src/management_interface.rs b/mullvad-daemon/src/management_interface.rs
index a5c6dcfd0c..83557b48fe 100644
--- a/mullvad-daemon/src/management_interface.rs
+++ b/mullvad-daemon/src/management_interface.rs
@@ -342,7 +342,7 @@ impl ManagementService for ManagementServiceImpl {
self.send_command_to_daemon(DaemonCommand::GetSettings(tx))?;
self.wait_for_result(rx)
.await
- .map(|settings| Response::new(convert_settings(&settings)))
+ .map(|settings| Response::new(types::Settings::from(&settings)))
}
async fn set_allow_lan(&self, request: Request<bool>) -> ServiceResult<()> {
@@ -761,22 +761,6 @@ impl ManagementServiceImpl {
}
}
-fn convert_settings(settings: &Settings) -> types::Settings {
- types::Settings {
- account_token: settings.get_account_token().unwrap_or_default(),
- relay_settings: Some(types::RelaySettings::from(settings.get_relay_settings())),
- bridge_settings: Some(types::BridgeSettings::from(
- settings.bridge_settings.clone(),
- )),
- bridge_state: Some(types::BridgeState::from(settings.get_bridge_state())),
- allow_lan: settings.allow_lan,
- block_when_disconnected: settings.block_when_disconnected,
- auto_connect: settings.auto_connect,
- tunnel_options: Some(types::TunnelOptions::from(&settings.tunnel_options)),
- show_beta_releases: settings.show_beta_releases,
- }
-}
-
fn convert_relay_settings_update(
settings: &types::RelaySettingsUpdate,
) -> Result<RelaySettingsUpdate, Status> {
@@ -1376,7 +1360,9 @@ impl EventListener for ManagementInterfaceEventBroadcaster {
fn notify_settings(&self, settings: Settings) {
log::debug!("Broadcasting new settings");
self.notify(types::DaemonEvent {
- event: Some(daemon_event::Event::Settings(convert_settings(&settings))),
+ event: Some(daemon_event::Event::Settings(types::Settings::from(
+ &settings,
+ ))),
})
}
diff --git a/mullvad-management-interface/src/types.rs b/mullvad-management-interface/src/types.rs
index bd7d64ee07..58d1b107d6 100644
--- a/mullvad-management-interface/src/types.rs
+++ b/mullvad-management-interface/src/types.rs
@@ -119,6 +119,22 @@ impl From<mullvad_types::relay_constraints::LocationConstraint> for RelayLocatio
}
}
+impl From<&mullvad_types::settings::Settings> for Settings {
+ fn from(settings: &mullvad_types::settings::Settings) -> Self {
+ Self {
+ account_token: settings.get_account_token().unwrap_or_default(),
+ relay_settings: Some(RelaySettings::from(settings.get_relay_settings())),
+ bridge_settings: Some(BridgeSettings::from(settings.bridge_settings.clone())),
+ bridge_state: Some(BridgeState::from(settings.get_bridge_state())),
+ allow_lan: settings.allow_lan,
+ block_when_disconnected: settings.block_when_disconnected,
+ auto_connect: settings.auto_connect,
+ tunnel_options: Some(TunnelOptions::from(&settings.tunnel_options)),
+ show_beta_releases: settings.show_beta_releases,
+ }
+ }
+}
+
impl From<mullvad_types::relay_constraints::BridgeState> for BridgeState {
fn from(state: mullvad_types::relay_constraints::BridgeState) -> Self {
use mullvad_types::relay_constraints::BridgeState;