mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-01-13 19:00:28 +01:00
dhcp: ignore hostname when invalid
The hostname used for DHCP can be the one obtained from the hostnamed
service and is not guaranteed to be valid, at least with systemd
239. Instead of sending an invalid DHCP option to the server or
failing due to later checks in clients, ignore the hostname and log a
warning when it is invalid.
https://bugzilla.redhat.com/show_bug.cgi?id=1744427
(cherry picked from commit 2da4d54ac3)
This commit is contained in:
parent
7a08b29a3d
commit
9c7859d05b
1 changed files with 12 additions and 0 deletions
|
|
@ -32,6 +32,7 @@
|
|||
#include <stdio.h>
|
||||
|
||||
#include "nm-glib-aux/nm-dedup-multi.h"
|
||||
#include "systemd/nm-sd-utils-shared.h"
|
||||
|
||||
#include "nm-config.h"
|
||||
#include "NetworkManagerUtils.h"
|
||||
|
|
@ -251,6 +252,17 @@ client_start (NMDhcpManager *self,
|
|||
g_return_val_if_reached (NULL) ;
|
||||
}
|
||||
|
||||
if (hostname) {
|
||||
if ( (hostname_use_fqdn && !nm_sd_dns_name_is_valid (hostname))
|
||||
|| (!hostname_use_fqdn && !nm_sd_hostname_is_valid (hostname, FALSE))) {
|
||||
nm_log_warn (LOGD_DHCP , "dhcp%c: %s '%s' is invalid, will be ignored",
|
||||
nm_utils_addr_family_to_char (addr_family),
|
||||
hostname_use_fqdn ? "FQDN" : "hostname",
|
||||
hostname);
|
||||
hostname = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
nm_assert (g_bytes_get_size (hwaddr) == g_bytes_get_size (bcast_hwaddr));
|
||||
|
||||
priv = NM_DHCP_MANAGER_GET_PRIVATE (self);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue