From b11a20ded0d43eacecdb87ef2b97497c664be7ad Mon Sep 17 00:00:00 2001 From: Beniamino Galvani Date: Sat, 12 Jan 2019 10:23:30 +0100 Subject: [PATCH] clients: remove the same dns-option before adding it nmcli connection modify t ipv4.dns-options ndots:2 nmcli connection modify t +ipv4.dns-options ndots:4 should set dns-options to 'ndots:4', so we must remove other occurences of the same option before adding it, otherwise the setting refuses to set the same option again. --- clients/common/nm-meta-setting-desc.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/clients/common/nm-meta-setting-desc.c b/clients/common/nm-meta-setting-desc.c index b2622750a5..4befce259a 100644 --- a/clients/common/nm-meta-setting-desc.c +++ b/clients/common/nm-meta-setting-desc.c @@ -3392,14 +3392,18 @@ static gboolean _set_fcn_ip_config_dns_options (ARGS_SET_FCN) { gs_free const char **strv = NULL; + NMSettingIPConfig *s_ip; gsize i; nm_assert (!error || !*error); + s_ip = NM_SETTING_IP_CONFIG (setting); strv = nm_utils_strsplit_set (value, " \t,", FALSE); if (strv) { - for (i = 0; strv[i]; i++) - nm_setting_ip_config_add_dns_option (NM_SETTING_IP_CONFIG (setting), strv[i]); + for (i = 0; strv[i]; i++) { + nm_setting_ip_config_remove_dns_option_by_value (s_ip, strv[i]); + nm_setting_ip_config_add_dns_option (s_ip, strv[i]); + } } return TRUE; }