summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2021-02-10 14:37:50 +0100
committerThomas Haller <thaller@redhat.com>2021-02-11 09:23:14 +0100
commit2be43d79f7d9e78594ee9b932bdc8dfd53303fee (patch)
tree957ad0bdbd545b46ed62b71a8e0c65eb77bf64fd
parentf986d409f9829e99866aacb30fc47902169e871e (diff)
downloadNetworkManager-2be43d79f7d9e78594ee9b932bdc8dfd53303fee.tar.gz
dhcp/nettools: refactor parsing of DHCP lease (ntps)
-rw-r--r--src/core/dhcp/nm-dhcp-nettools.c31
1 files changed, 3 insertions, 28 deletions
diff --git a/src/core/dhcp/nm-dhcp-nettools.c b/src/core/dhcp/nm-dhcp-nettools.c
index b899ede095..9f6f3497d9 100644
--- a/src/core/dhcp/nm-dhcp-nettools.c
+++ b/src/core/dhcp/nm-dhcp-nettools.c
@@ -471,6 +471,8 @@ lease_parse_address_list(NDhcp4ClientLease * lease,
case NM_DHCP_OPTION_DHCP4_NETBIOS_NAMESERVER:
nm_ip4_config_add_wins(ip4_config, addr);
break;
+ case NM_DHCP_OPTION_DHCP4_NTP_SERVER:
+ break;
default:
nm_assert_not_reached();
}
@@ -644,33 +646,6 @@ lease_parse_routes(NDhcp4ClientLease *lease,
}
}
-static void
-lease_parse_ntps(NDhcp4ClientLease *lease, GHashTable *options)
-{
- nm_auto_free_gstring GString *str = NULL;
- char addr_str[NM_UTILS_INET_ADDRSTRLEN];
- struct in_addr addr;
- uint8_t * data;
- size_t n_data;
- int r;
-
- r = n_dhcp4_client_lease_query(lease, NM_DHCP_OPTION_DHCP4_NTP_SERVER, &data, &n_data);
- if (r)
- return;
-
- nm_gstring_prepare(&str);
-
- while (lease_option_next_in_addr(&addr, &data, &n_data)) {
- _nm_utils_inet4_ntop(addr.s_addr, addr_str);
- g_string_append(nm_gstring_add_space_delimiter(str), addr_str);
- }
-
- nm_dhcp_option_add_option(options,
- _nm_dhcp_option_dhcp4_options,
- NM_DHCP_OPTION_DHCP4_NTP_SERVER,
- str->str);
-}
-
char **
nm_dhcp_parse_search_list(guint8 *data, size_t n_data)
{
@@ -877,7 +852,7 @@ lease_to_ip4_config(NMDedupMultiIndex *multi_idx,
}
}
- lease_parse_ntps(lease, options);
+ lease_parse_address_list(lease, ip4_config, NM_DHCP_OPTION_DHCP4_NTP_SERVER, options, &sbuf);
r = n_dhcp4_client_lease_query(lease, NM_DHCP_OPTION_DHCP4_ROOT_PATH, &l_data, &l_data_len);
if (r == 0 && nm_dhcp_lease_data_parse_cstr(l_data, l_data_len, &l_data_len)) {