mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2025-12-25 04:50:07 +01:00
device: reset MAC address in NMDevice's deactivate()
Instead of letting different subclasses call reset in their virtual deactivate() function, do it in the parent class. This works nicely, because the parent know whether the MAC address is currently modified.
This commit is contained in:
parent
96cabbcbb8
commit
4b2e375b33
4 changed files with 2 additions and 16 deletions
|
|
@ -1352,8 +1352,6 @@ deactivate (NMDevice *device)
|
|||
/* Set last PPPoE connection time */
|
||||
if (nm_device_get_applied_setting (device, NM_TYPE_SETTING_PPPOE))
|
||||
NM_DEVICE_ETHERNET_GET_PRIVATE (device)->last_pppoe_time = nm_utils_get_monotonic_timestamp_s ();
|
||||
|
||||
nm_device_hw_addr_reset (device, "deactivate");
|
||||
}
|
||||
|
||||
static gboolean
|
||||
|
|
|
|||
|
|
@ -541,12 +541,6 @@ realize_start_notify (NMDevice *device, const NMPlatformLink *plink)
|
|||
update_properties (device);
|
||||
}
|
||||
|
||||
static void
|
||||
deactivate (NMDevice *device)
|
||||
{
|
||||
nm_device_hw_addr_reset (device, "deactivate");
|
||||
}
|
||||
|
||||
/******************************************************************/
|
||||
|
||||
static void
|
||||
|
|
@ -627,7 +621,6 @@ nm_device_macvlan_class_init (NMDeviceMacvlanClass *klass)
|
|||
device_class->complete_connection = complete_connection;
|
||||
device_class->connection_type = NM_SETTING_MACVLAN_SETTING_NAME;
|
||||
device_class->create_and_realize = create_and_realize;
|
||||
device_class->deactivate = deactivate;
|
||||
device_class->get_generic_capabilities = get_generic_capabilities;
|
||||
device_class->ip4_config_pre_commit = ip4_config_pre_commit;
|
||||
device_class->is_available = is_available;
|
||||
|
|
|
|||
|
|
@ -613,12 +613,6 @@ ip4_config_pre_commit (NMDevice *device, NMIP4Config *config)
|
|||
}
|
||||
}
|
||||
|
||||
static void
|
||||
deactivate (NMDevice *device)
|
||||
{
|
||||
nm_device_hw_addr_reset (device, "deactivate");
|
||||
}
|
||||
|
||||
/******************************************************************/
|
||||
|
||||
static void
|
||||
|
|
@ -682,7 +676,6 @@ nm_device_vlan_class_init (NMDeviceVlanClass *klass)
|
|||
parent_class->bring_up = bring_up;
|
||||
parent_class->act_stage1_prepare = act_stage1_prepare;
|
||||
parent_class->ip4_config_pre_commit = ip4_config_pre_commit;
|
||||
parent_class->deactivate = deactivate;
|
||||
parent_class->is_available = is_available;
|
||||
parent_class->notify_new_device_added = notify_new_device_added;
|
||||
|
||||
|
|
|
|||
|
|
@ -10653,6 +10653,8 @@ nm_device_cleanup (NMDevice *self, NMDeviceStateReason reason, CleanupType clean
|
|||
nm_device_ipv6_sysctl_set (self, "use_tempaddr", "0");
|
||||
}
|
||||
|
||||
nm_device_hw_addr_reset (self, "deactivate");
|
||||
|
||||
/* Call device type-specific deactivation */
|
||||
if (NM_DEVICE_GET_CLASS (self)->deactivate)
|
||||
NM_DEVICE_GET_CLASS (self)->deactivate (self);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue