manager: ensure proper disposal of unrealized devices

When remove_device() is called on an already unrealized device, we
should release it from master if necessary and clear its IP
configurations to avoid leaks.

https://bugzilla.redhat.com/show_bug.cgi?id=1433303
This commit is contained in:
Beniamino Galvani 2017-03-17 23:30:43 +01:00
parent 714504faf2
commit 2e0c3d1dac

View file

@ -1070,7 +1070,12 @@ remove_device (NMManager *self,
g_signal_emit (self, signals[DEVICE_REMOVED], 0, device);
_notify (self, PROP_DEVICES);
} else {
/* unrealize() does not release a slave device from master and
* clear IP configurations, do it here */
nm_device_removed (device, TRUE);
}
g_signal_emit (self, signals[INTERNAL_DEVICE_REMOVED], 0, device);
_notify (self, PROP_ALL_DEVICES);