summaryrefslogtreecommitdiffhomepage
path: root/talpid-dbus/src
AgeCommit message (Collapse)AuthorFilesLines
2021-03-02Watch DNS config changes in systemd-resolvedEmīls3-0/+411
Certain NM versions will overwrite systemd-resovled config when they're reapplying existing config, this can be invoked `nmcli general reload dns-full` or by receiving a new DHCP lease. NM will just wipe the config for interfaces it doesn't have the config for in systemd-resolved, and since our daemon prefers systemd-resolved over NM, our config would be wiped. To fix this, I've changed the systemd-resolved DNS code to listen to changes to the global DNS config and reapply the tunnel interface DNS config if it's changed in any way. To better seperate the conecrns, the systemd-resolved DBus specific code was moved to the `talpid-dbus` crate, and the DNS code that manages the state and applies changes remains in `talpid-core`. One other solution that was considered was to just prefer NM over systemd-resolved, and we already kind of could do that, but the coming NM versions (1.28 and up) seem to not be able to manage DNS via it's own /etc/resolv.conf.
2021-03-01Stop using NM if it's too newEmīls1-18/+64
2021-01-12Expose NM versionEmīls1-4/+8
2021-01-12Add talpid-dbus crateEmīls2-0/+731