diff options
| author | David Lönnhager <david.l@mullvad.net> | 2020-10-22 11:06:04 +0200 |
|---|---|---|
| committer | David Lönnhager <david.l@mullvad.net> | 2020-10-22 11:06:19 +0200 |
| commit | e201be8693584ffd3017f3e21ddff296b771aaf7 (patch) | |
| tree | 332ef84c8f3e82da06d8e0cd349ecee66327e1cc /mullvad-cli/src | |
| parent | d88d5f32768fe14c7aa6276e61104e66dd05d1fe (diff) | |
| download | mullvadvpn-e201be8693584ffd3017f3e21ddff296b771aaf7.tar.xz mullvadvpn-e201be8693584ffd3017f3e21ddff296b771aaf7.zip | |
Add 'reset' command for custom DNS instead of using 'set' without
additional arguments
Diffstat (limited to 'mullvad-cli/src')
| -rw-r--r-- | mullvad-cli/src/cmds/custom_dns.rs | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/mullvad-cli/src/cmds/custom_dns.rs b/mullvad-cli/src/cmds/custom_dns.rs index 1ae196f47c..daba881f36 100644 --- a/mullvad-cli/src/cmds/custom_dns.rs +++ b/mullvad-cli/src/cmds/custom_dns.rs @@ -19,9 +19,11 @@ impl Command for CustomDns { .arg( clap::Arg::with_name("servers") .multiple(true) - .required(false), + .help("One or more IP addresses pointing to DNS resolvers.") + .required(true), ), ) + .subcommand(clap::SubCommand::with_name("reset").about("Remove all custom DNS servers")) .subcommand( clap::SubCommand::with_name("get").about("Display the current custom DNS setting"), ) @@ -30,6 +32,8 @@ impl Command for CustomDns { async fn run(&self, matches: &clap::ArgMatches<'_>) -> Result<()> { if let Some(set_matches) = matches.subcommand_matches("set") { self.set(set_matches.values_of_lossy("servers")).await + } else if let Some(_matches) = matches.subcommand_matches("reset") { + self.reset().await } else if let Some(_matches) = matches.subcommand_matches("get") { self.get().await } else { @@ -49,6 +53,14 @@ impl CustomDns { Ok(()) } + async fn reset(&self) -> Result<()> { + let mut rpc = new_rpc_client().await?; + rpc.set_custom_dns(types::CustomDns { addresses: vec![] }) + .await?; + println!("Cleared list of custom DNS servers"); + Ok(()) + } + async fn get(&self) -> Result<()> { let mut rpc = new_rpc_client().await?; let custom_dns = rpc |
