diff options
-rw-r--r-- | src/core/devices/nm-device.c | 27 |
1 files changed, 16 insertions, 11 deletions
diff --git a/src/core/devices/nm-device.c b/src/core/devices/nm-device.c index d1ec707c7d..d5c173a550 100644 --- a/src/core/devices/nm-device.c +++ b/src/core/devices/nm-device.c @@ -3467,25 +3467,26 @@ _dev_l3_get_config_settings(NMDevice * self, case L3_CONFIG_DATA_TYPE_DHCP_6: case L3_CONFIG_DATA_TYPE_DEVIP_6: *out_acd_timeout_msec = _prop_get_ipv4_dad_timeout(self); - break; + goto after_acd_timeout; case L3_CONFIG_DATA_TYPE_DHCP_4: /* For DHCP, we perform ACD separately, because we want to decline the * lease in case of a conflict. */ *out_acd_timeout_msec = 0; - break; + goto after_acd_timeout; case _L3_CONFIG_DATA_TYPE_NUM: case _L3_CONFIG_DATA_TYPE_NONE: case _L3_CONFIG_DATA_TYPE_ACD_ONLY: - *out_acd_timeout_msec = nm_assert_unreachable_val(0); break; } + *out_acd_timeout_msec = nm_assert_unreachable_val(0); +after_acd_timeout: switch (type) { case L3_CONFIG_DATA_TYPE_LL_4: *out_acd_defend_type = NM_L3_ACD_DEFEND_TYPE_ONCE; - break; + goto after_acd_defend_type; case L3_CONFIG_DATA_TYPE_DEVIP_UNSPEC: case L3_CONFIG_DATA_TYPE_MANUALIP: @@ -3498,15 +3499,16 @@ _dev_l3_get_config_settings(NMDevice * self, case L3_CONFIG_DATA_TYPE_DHCP_6: case L3_CONFIG_DATA_TYPE_DEVIP_6: *out_acd_defend_type = NM_L3_ACD_DEFEND_TYPE_ALWAYS; - break; + goto after_acd_defend_type; case _L3_CONFIG_DATA_TYPE_NUM: case _L3_CONFIG_DATA_TYPE_NONE: case _L3_CONFIG_DATA_TYPE_ACD_ONLY: - *out_acd_defend_type = nm_assert_unreachable_val(NM_L3_ACD_DEFEND_TYPE_ALWAYS); break; } + *out_acd_defend_type = nm_assert_unreachable_val(NM_L3_ACD_DEFEND_TYPE_ALWAYS); +after_acd_defend_type: switch (type) { case L3_CONFIG_DATA_TYPE_DEVIP_UNSPEC: case L3_CONFIG_DATA_TYPE_MANUALIP: @@ -3515,25 +3517,28 @@ _dev_l3_get_config_settings(NMDevice * self, case L3_CONFIG_DATA_TYPE_PD_6: case L3_CONFIG_DATA_TYPE_SHARED_4: *out_merge_flags = NM_L3_CONFIG_MERGE_FLAGS_NONE; - break; + goto after_merge_flags; case L3_CONFIG_DATA_TYPE_DHCP_4: case L3_CONFIG_DATA_TYPE_DEVIP_4: *out_merge_flags = priv->l3config_merge_flags_4; - break; + goto after_merge_flags; case L3_CONFIG_DATA_TYPE_AC_6: case L3_CONFIG_DATA_TYPE_DHCP_6: case L3_CONFIG_DATA_TYPE_DEVIP_6: *out_merge_flags = priv->l3config_merge_flags_6; - break; + goto after_merge_flags; case _L3_CONFIG_DATA_TYPE_NUM: case _L3_CONFIG_DATA_TYPE_NONE: case _L3_CONFIG_DATA_TYPE_ACD_ONLY: - *out_merge_flags = nm_assert_unreachable_val(NM_L3_CONFIG_MERGE_FLAGS_NONE); break; } + *out_merge_flags = nm_assert_unreachable_val(NM_L3_CONFIG_MERGE_FLAGS_NONE); + +after_merge_flags: + return; } static gboolean @@ -3542,7 +3547,7 @@ _dev_l3_register_l3cds_add_config(NMDevice *self, L3ConfigDataType l3cd_type) NMDevicePrivate * priv = NM_DEVICE_GET_PRIVATE(self); NML3ConfigMergeFlags merge_flags; NML3AcdDefendType acd_defend_type; - guint32 acd_timeout_msec = 0; + guint32 acd_timeout_msec; _dev_l3_get_config_settings(self, l3cd_type, &merge_flags, &acd_defend_type, &acd_timeout_msec); return nm_l3cfg_add_config(priv->l3cfg, |