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: 58287cbcc0
('core: rework IP configuration in NetworkManager using layer 3 configuration')
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/931
This commit is contained in:
@@ -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),
|
l3cd = nm_l3_config_data_new(nm_platform_get_multi_idx(NM_PLATFORM_GET),
|
||||||
ifindex,
|
ifindex,
|
||||||
NM_IP_CONFIG_SOURCE_WWAN);
|
NM_IP_CONFIG_SOURCE_WWAN);
|
||||||
|
nm_l3_config_data_set_dns_priority(l3cd, AF_INET, 0);
|
||||||
|
|
||||||
address = (NMPlatformIP4Address){
|
address = (NMPlatformIP4Address){
|
||||||
.address = address_network,
|
.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),
|
l3cd = nm_l3_config_data_new(nm_platform_get_multi_idx(NM_PLATFORM_GET),
|
||||||
ifindex,
|
ifindex,
|
||||||
NM_IP_CONFIG_SOURCE_WWAN);
|
NM_IP_CONFIG_SOURCE_WWAN);
|
||||||
|
nm_l3_config_data_set_dns_priority(l3cd, AF_INET6, 0);
|
||||||
|
|
||||||
do_auto = TRUE;
|
do_auto = TRUE;
|
||||||
|
|
||||||
|
@@ -545,6 +545,7 @@ impl_ppp_manager_set_ip4_config(NMDBusObject *obj,
|
|||||||
NM_IP_CONFIG_SOURCE_PPP);
|
NM_IP_CONFIG_SOURCE_PPP);
|
||||||
|
|
||||||
nm_l3_config_data_set_mtu(l3cd, mtu);
|
nm_l3_config_data_set_mtu(l3cd, mtu);
|
||||||
|
nm_l3_config_data_set_dns_priority(l3cd, AF_INET, 0);
|
||||||
|
|
||||||
address = (NMPlatformIP4Address){
|
address = (NMPlatformIP4Address){
|
||||||
.plen = 32,
|
.plen = 32,
|
||||||
|
Reference in New Issue
Block a user