diff options
| author | Markus Pettersson <markus.pettersson@mullvad.net> | 2023-08-11 11:09:37 +0200 |
|---|---|---|
| committer | David Lönnhager <david.l@mullvad.net> | 2023-08-21 17:02:27 +0200 |
| commit | a9a865487ae2de69e51679560b6473d4d7e66ebe (patch) | |
| tree | 108f6f2e513f789ac8b15fcdc70747bb52fc3c1d /mullvad-cli/src | |
| parent | cc7c0943039c2ed5e3e7176e747792d3ba2c6a41 (diff) | |
| download | mullvadvpn-a9a865487ae2de69e51679560b6473d4d7e66ebe.tar.xz mullvadvpn-a9a865487ae2de69e51679560b6473d4d7e66ebe.zip | |
Add servers to a custom list by hostname
Diffstat (limited to 'mullvad-cli/src')
| -rw-r--r-- | mullvad-cli/src/cmds/custom_lists.rs | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/mullvad-cli/src/cmds/custom_lists.rs b/mullvad-cli/src/cmds/custom_lists.rs index 04efd8a967..d30f29f62d 100644 --- a/mullvad-cli/src/cmds/custom_lists.rs +++ b/mullvad-cli/src/cmds/custom_lists.rs @@ -1,4 +1,7 @@ -use super::relay_constraints::LocationArgs; +use super::{ + relay::{find_relay_by_hostname, get_filtered_relays}, + relay_constraints::LocationArgs, +}; use anyhow::Result; use clap::Subcommand; use mullvad_management_interface::MullvadProxyClient; @@ -106,7 +109,9 @@ impl CustomList { } async fn add_location(name: String, location_args: LocationArgs) -> Result<()> { - let location = Constraint::<GeographicLocationConstraint>::from(location_args); + let countries = get_filtered_relays().await?; + let location = find_relay_by_hostname(&countries, &location_args.country) + .map_or(Constraint::from(location_args), Constraint::Only); let update = CustomListLocationUpdate::Add { name, location }; let mut rpc = MullvadProxyClient::new().await?; rpc.update_custom_list_location(update).await?; |
