diff options
| -rw-r--r-- | talpid-core/src/tunnel_state_machine/connected_state.rs | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/talpid-core/src/tunnel_state_machine/connected_state.rs b/talpid-core/src/tunnel_state_machine/connected_state.rs index a36093d51c..87068783e1 100644 --- a/talpid-core/src/tunnel_state_machine/connected_state.rs +++ b/talpid-core/src/tunnel_state_machine/connected_state.rs @@ -91,9 +91,16 @@ impl ConnectedState { } fn set_dns(&self, shared_values: &mut SharedTunnelStateValues) -> Result<(), BoxedError> { - let mut dns_ips = vec![self.metadata.ipv4_gateway.into()]; - if let Some(ipv6_gateway) = self.metadata.ipv6_gateway { - dns_ips.push(ipv6_gateway.into()); + let mut default_dns = vec![]; + + let dns_ips = if let Some(ref servers) = shared_values.custom_dns { + servers + } else { + default_dns.push(self.metadata.ipv4_gateway.into()); + if let Some(ipv6_gateway) = self.metadata.ipv6_gateway { + default_dns.push(ipv6_gateway.into()); + }; + &default_dns }; shared_values |
