mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2025-12-27 10:30:13 +01:00
dhcp: always require hwaddr in internal DHCP clint ip6_start()
Note how client_start() in NMDhcpManager already asserts that we have a MAC address. It's always present, like for the IPv6 case.
This commit is contained in:
parent
5ef93c3323
commit
dfdd4e3bd3
1 changed files with 16 additions and 19 deletions
|
|
@ -898,6 +898,9 @@ ip6_start (NMDhcpClient *client,
|
|||
const guint8 *duid_arr;
|
||||
gsize duid_len;
|
||||
GBytes *duid;
|
||||
const uint8_t *hwaddr_arr;
|
||||
gsize hwaddr_len;
|
||||
guint16 arptype;
|
||||
|
||||
g_return_val_if_fail (!priv->client4, FALSE);
|
||||
g_return_val_if_fail (!priv->client6, FALSE);
|
||||
|
|
@ -941,25 +944,19 @@ ip6_start (NMDhcpClient *client,
|
|||
}
|
||||
|
||||
hwaddr = nm_dhcp_client_get_hw_addr (client);
|
||||
if (hwaddr) {
|
||||
const uint8_t *hwaddr_arr;
|
||||
gsize hwaddr_len;
|
||||
guint16 arptype;
|
||||
|
||||
if ( !(hwaddr_arr = g_bytes_get_data (hwaddr, &hwaddr_len))
|
||||
|| (arptype = get_arp_type (hwaddr_len)) == ARPHRD_NONE) {
|
||||
nm_utils_error_set_literal (error, NM_UTILS_ERROR_UNKNOWN, "invalid MAC address");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
r = sd_dhcp6_client_set_mac (sd_client,
|
||||
hwaddr_arr,
|
||||
hwaddr_len,
|
||||
arptype);
|
||||
if (r < 0) {
|
||||
nm_utils_error_set_errno (error, r, "failed to set MAC address: %s");
|
||||
return FALSE;
|
||||
}
|
||||
if ( !hwaddr
|
||||
|| !(hwaddr_arr = g_bytes_get_data (hwaddr, &hwaddr_len))
|
||||
|| (arptype = get_arp_type (hwaddr_len)) == ARPHRD_NONE) {
|
||||
nm_utils_error_set_literal (error, NM_UTILS_ERROR_UNKNOWN, "invalid MAC address");
|
||||
return FALSE;
|
||||
}
|
||||
r = sd_dhcp6_client_set_mac (sd_client,
|
||||
hwaddr_arr,
|
||||
hwaddr_len,
|
||||
arptype);
|
||||
if (r < 0) {
|
||||
nm_utils_error_set_errno (error, r, "failed to set MAC address: %s");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
r = sd_dhcp6_client_set_ifindex (sd_client,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue