summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--mullvad-cli/src/cmds/dns.rs16
-rw-r--r--mullvad-management-interface/src/types.rs1
2 files changed, 16 insertions, 1 deletions
diff --git a/mullvad-cli/src/cmds/dns.rs b/mullvad-cli/src/cmds/dns.rs
index 4dc06c855e..91eb7854f6 100644
--- a/mullvad-cli/src/cmds/dns.rs
+++ b/mullvad-cli/src/cmds/dns.rs
@@ -1,5 +1,7 @@
use crate::{new_rpc_client, Command, Result};
use mullvad_management_interface::types;
+use mullvad_types::settings::DnsOptions;
+use std::convert::TryFrom;
pub struct Dns;
@@ -109,7 +111,19 @@ impl Dns {
.dns_options
.unwrap();
- println!("DNS: {:?}", options);
+ match DnsOptions::try_from(options).unwrap() {
+ DnsOptions::Default(options) => {
+ println!("Custom DNS: no");
+ println!("Block ads: {}", options.block_ads);
+ println!("Block trackers: {}", options.block_trackers);
+ }
+ DnsOptions::Custom(options) => {
+ println!("Custom DNS: yes\nServers:");
+ for server in &options.addresses {
+ println!("{}", server);
+ }
+ }
+ }
Ok(())
}
diff --git a/mullvad-management-interface/src/types.rs b/mullvad-management-interface/src/types.rs
index c2c363ff23..e7d0fd8063 100644
--- a/mullvad-management-interface/src/types.rs
+++ b/mullvad-management-interface/src/types.rs
@@ -624,6 +624,7 @@ impl From<TransportProtocol> for talpid_types::net::TransportProtocol {
}
}
+#[derive(Debug)]
pub enum FromProtobufTypeError {
InvalidArgument(&'static str),
}