device: don't try to change MTU on a disconnected device

ip_config_merge_and_apply() can be called without an applied
connection, but then it calls nm_device_set_ip_config() and tries to
retrieve the configured MTU, throwing an assertion if the applied
connection is NULL.

src/devices/nm-device.c: line 8080 (nm_device_get_configured_mtu_for_wired): should not be reached

Since it doesn't make sense apply a MTU from the connection when there
is no connection, add a check against this.
This commit is contained in:
Beniamino Galvani 2018-06-01 15:03:27 +02:00
parent 357717c2aa
commit e86ea0240f

View file

@ -8139,8 +8139,10 @@ _commit_mtu (NMDevice *self, const NMIP4Config *config)
if (ifindex <= 0)
return;
if (nm_device_sys_iface_state_is_external_or_assume (self)) {
/* for assumed connections we don't tamper with the MTU. */
if ( !nm_device_get_applied_connection (self)
|| nm_device_sys_iface_state_is_external_or_assume (self)) {
/* we don't tamper with the MTU of disconnected and
* external/assumed devices. */
return;
}