summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBeniamino Galvani <bgalvani@redhat.com>2022-02-25 10:06:48 +0100
committerBeniamino Galvani <bgalvani@redhat.com>2022-02-28 10:08:24 +0100
commitb2e559fab2fa5adbf4e159fc1c2cadd3d965b01b (patch)
tree6b3646aa3e92e497d3134ee88a3bbe9fad7bf504
parent1a5b85ad5e5c8411cb9c36dec9fb114d05c1f032 (diff)
core: initialize l3cd dns-priority for ppp and wwan
For devices that configure IP by themselves (by returning "->ready_for_ip_config() = TRUE" and implementing ->act_stage3_ip_config()), we skip manual configuration. Currently, manual configuration is the only one that sets flag HAS_DNS_PRIORITY into the resulting l3cd. So, the merged l3cd for such devices misses a dns-priority and is ignored by the DNS manager. Explicitly initialize the priority to 0; in this way, the default value for the device will be set in the final l3cd during the merge. Fixes: 58287cbcc0c8 ('core: rework IP configuration in NetworkManager using layer 3 configuration') https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/931
-rw-r--r--src/core/devices/wwan/nm-modem-broadband.c2
-rw-r--r--src/core/ppp/nm-ppp-manager.c1
2 files changed, 3 insertions, 0 deletions
diff --git a/src/core/devices/wwan/nm-modem-broadband.c b/src/core/devices/wwan/nm-modem-broadband.c
index f5336d3750..b585652e5d 100644
--- a/src/core/devices/wwan/nm-modem-broadband.c
+++ b/src/core/devices/wwan/nm-modem-broadband.c
@@ -1032,6 +1032,7 @@ stage3_ip_config_start(NMModem *modem, int addr_family, NMModemIPMethod ip_metho
l3cd = nm_l3_config_data_new(nm_platform_get_multi_idx(NM_PLATFORM_GET),
ifindex,
NM_IP_CONFIG_SOURCE_WWAN);
+ nm_l3_config_data_set_dns_priority(l3cd, AF_INET, 0);
address = (NMPlatformIP4Address){
.address = address_network,
@@ -1118,6 +1119,7 @@ stage3_ip_config_start(NMModem *modem, int addr_family, NMModemIPMethod ip_metho
l3cd = nm_l3_config_data_new(nm_platform_get_multi_idx(NM_PLATFORM_GET),
ifindex,
NM_IP_CONFIG_SOURCE_WWAN);
+ nm_l3_config_data_set_dns_priority(l3cd, AF_INET6, 0);
do_auto = TRUE;
diff --git a/src/core/ppp/nm-ppp-manager.c b/src/core/ppp/nm-ppp-manager.c
index 213e3761cc..896c233d6d 100644
--- a/src/core/ppp/nm-ppp-manager.c
+++ b/src/core/ppp/nm-ppp-manager.c
@@ -545,6 +545,7 @@ impl_ppp_manager_set_ip4_config(NMDBusObject *obj,
NM_IP_CONFIG_SOURCE_PPP);
nm_l3_config_data_set_mtu(l3cd, mtu);
+ nm_l3_config_data_set_dns_priority(l3cd, AF_INET, 0);
address = (NMPlatformIP4Address){
.plen = 32,