summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorEmīls <emils@mullvad.net>2020-11-25 10:59:59 +0000
committerEmīls <emils@mullvad.net>2020-11-25 10:59:59 +0000
commitcb814e5a467d929d989b5499dd54f779c09d67e1 (patch)
tree1442228f47134a0c987141d664f0a80fa221be3d
parentf1a1084f42f53d3047617619849af63caf5e8e33 (diff)
parent54b700b98126670a5a4a1a5c17aa26328526c99a (diff)
downloadmullvadvpn-cb814e5a467d929d989b5499dd54f779c09d67e1.tar.xz
mullvadvpn-cb814e5a467d929d989b5499dd54f779c09d67e1.zip
Merge branch 'linux-disallow-nm-dnsmasq'
-rw-r--r--CHANGELOG.md1
-rw-r--r--talpid-core/src/linux/network_manager.rs5
2 files changed, 6 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index acef112297..a80a06862f 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -101,6 +101,7 @@ Line wrap the file at 100 chars. Th
- Fix memory leak in firewall code via updating `nftnl` dependency.
- Handle IPv6 traffic correctly using `mullvad-exclude` when there is no default route to any
non-tunnel interface.
+- Fix issues managing DNS when dnsmasq is used with NetworkManager.
### Security
- Restore the last target state if the daemon crashes. Previously, if auto-connect and
diff --git a/talpid-core/src/linux/network_manager.rs b/talpid-core/src/linux/network_manager.rs
index 6cc811dacb..a09acb7e11 100644
--- a/talpid-core/src/linux/network_manager.rs
+++ b/talpid-core/src/linux/network_manager.rs
@@ -83,6 +83,9 @@ pub enum Error {
#[error(display = "NetworkManager not detected")]
NetworkManagerNotDetected,
+ #[error(display = "NetworkManager is using dnsmasq to manage DNS")]
+ UsingDnsmasq,
+
#[error(display = "NetworkManager is too old: {}", 0)]
TooOldNetworkManager(String),
@@ -491,6 +494,8 @@ impl NetworkManager {
.map_err(Error::Dbus)?;
match dns_mode.as_ref() {
+ // NM can't setup config for multiple interfaces with dnsmasq
+ "dnsmasq" => return Err(Error::UsingDnsmasq),
// If NetworkManager isn't managing DNS for us, it's useless.
"none" => return Err(Error::NetworkManagerNotManagingDns),
_ => (),