diff options
| author | Markus Pettersson <markus.pettersson@mullvad.net> | 2023-11-16 15:17:11 +0100 |
|---|---|---|
| committer | Markus Pettersson <markus.pettersson@mullvad.net> | 2023-12-04 09:06:48 +0100 |
| commit | e31d9e01fa4e4635c4ddead14b18fa7e8381e3f6 (patch) | |
| tree | 354f6c42b13bcbe5e28181936e3a3de6aab7c026 /mullvad-daemon/src/lib.rs | |
| parent | 9358da4abff1855b6ffacee9b9bdbe7f89349198 (diff) | |
| download | mullvadvpn-e31d9e01fa4e4635c4ddead14b18fa7e8381e3f6.tar.xz mullvadvpn-e31d9e01fa4e4635c4ddead14b18fa7e8381e3f6.zip | |
Construct `AccessModeSelectorHandle` by calling `AccessModeSelector::spawn`
Construct an `AccessModeSelectorHandle` by calling
`AccessModeSelector::spawn`, which is consistent with how actors are
spawned in other parts of the `mullvad-daemon`.
Diffstat (limited to 'mullvad-daemon/src/lib.rs')
| -rw-r--r-- | mullvad-daemon/src/lib.rs | 31 |
1 files changed, 2 insertions, 29 deletions
diff --git a/mullvad-daemon/src/lib.rs b/mullvad-daemon/src/lib.rs index ee3e75d7d6..90dbd1f4f4 100644 --- a/mullvad-daemon/src/lib.rs +++ b/mullvad-daemon/src/lib.rs @@ -683,36 +683,9 @@ where .set_config(new_selector_config(settings)); }); - let connection_modes: Vec<_> = settings - .api_access_methods - .access_method_settings - .iter() - // We only care about the access methods which are set to 'enabled' by the user. - .filter(|api_access_method| api_access_method.enabled()) - .cloned() - .collect(); - let proxy_provider = match api::ApiConnectionModeProvider::new( - cache_dir.clone(), - relay_selector.clone(), - connection_modes, - ) { - Ok(provider) => provider, - Err(api::Error::NoAccessMethods) => { - // No settings seem to have been found. Default to using the the - // direct access method. - let default = mullvad_types::access_method::Settings::direct(); - api::ApiConnectionModeProvider::new( - cache_dir.clone(), - relay_selector.clone(), - vec![default], - ) - .expect( - "Failed to create the data structure responsible for managing access methods", - ) - } - }; + let connection_modes = settings.api_access_methods.collect_enabled(); - let connection_modes_handler = api::AccessModeSelectorHandle::new( + let connection_modes_handler = api::AccessModeSelector::spawn( cache_dir.clone(), relay_selector.clone(), connection_modes, |
