mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-01-03 15:10:14 +01:00
device/vlan: fix failed assertion in parent_hwaddr_changed()
Parent MAC can be NULL if the interface has gone, fix the following
failed assertion:
[devices/nm-device-vlan.c:107] parent_hwaddr_changed(): (vlan1): parent hardware address changed
nm_device_set_hw_addr: assertion 'addr != NULL' failed
While at it, improve logging by printing the new MAC address.
Fixes: e6d7fee5a6
This commit is contained in:
parent
9dffc0228b
commit
e1d06d7a0b
1 changed files with 8 additions and 4 deletions
|
|
@ -88,7 +88,7 @@ parent_hwaddr_changed (NMDevice *parent,
|
|||
NMDeviceVlan *self = NM_DEVICE_VLAN (user_data);
|
||||
NMConnection *connection;
|
||||
NMSettingWired *s_wired;
|
||||
const char *cloned_mac = NULL;
|
||||
const char *cloned_mac = NULL, *new_mac;
|
||||
|
||||
/* Never touch assumed devices */
|
||||
if (nm_device_uses_assumed_connection (self))
|
||||
|
|
@ -104,9 +104,13 @@ parent_hwaddr_changed (NMDevice *parent,
|
|||
cloned_mac = nm_setting_wired_get_cloned_mac_address (s_wired);
|
||||
|
||||
if (!cloned_mac) {
|
||||
_LOGD (LOGD_VLAN, "parent hardware address changed");
|
||||
nm_device_set_hw_addr (self, nm_device_get_hw_address (parent),
|
||||
"set", LOGD_VLAN);
|
||||
new_mac = nm_device_get_hw_address (parent);
|
||||
_LOGD (LOGD_VLAN, "parent hardware address changed to %s%s%s",
|
||||
NM_PRINT_FMT_QUOTE_STRING (new_mac));
|
||||
if (new_mac) {
|
||||
nm_device_set_hw_addr (self, nm_device_get_hw_address (parent),
|
||||
"set", LOGD_VLAN);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue