diff options
| author | Emīls <emils@mullvad.net> | 2020-11-25 10:59:59 +0000 |
|---|---|---|
| committer | Emīls <emils@mullvad.net> | 2020-11-25 10:59:59 +0000 |
| commit | cb814e5a467d929d989b5499dd54f779c09d67e1 (patch) | |
| tree | 1442228f47134a0c987141d664f0a80fa221be3d | |
| parent | f1a1084f42f53d3047617619849af63caf5e8e33 (diff) | |
| parent | 54b700b98126670a5a4a1a5c17aa26328526c99a (diff) | |
| download | mullvadvpn-cb814e5a467d929d989b5499dd54f779c09d67e1.tar.xz mullvadvpn-cb814e5a467d929d989b5499dd54f779c09d67e1.zip | |
Merge branch 'linux-disallow-nm-dnsmasq'
| -rw-r--r-- | CHANGELOG.md | 1 | ||||
| -rw-r--r-- | talpid-core/src/linux/network_manager.rs | 5 |
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), _ => (), |
