diff options
Diffstat (limited to 'libnm-util/nm-setting-bond.c')
| -rw-r--r-- | libnm-util/nm-setting-bond.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/libnm-util/nm-setting-bond.c b/libnm-util/nm-setting-bond.c index a3dbd766..e8e7b639 100644 --- a/libnm-util/nm-setting-bond.c +++ b/libnm-util/nm-setting-bond.c @@ -257,11 +257,16 @@ gboolean nm_setting_bond_add_option (NMSettingBond *setting, g_hash_table_insert (priv->options, g_strdup (name), g_strdup (value)); - if (!strcmp (name, NM_SETTING_BOND_OPTION_MIIMON)) { + if ( !strcmp (name, NM_SETTING_BOND_OPTION_MIIMON) + && strcmp (value, "0") != 0) { g_hash_table_remove (priv->options, NM_SETTING_BOND_OPTION_ARP_INTERVAL); g_hash_table_remove (priv->options, NM_SETTING_BOND_OPTION_ARP_IP_TARGET); - } else if (!strcmp (name, NM_SETTING_BOND_OPTION_ARP_INTERVAL)) + } else if ( !strcmp (name, NM_SETTING_BOND_OPTION_ARP_INTERVAL) + && strcmp (value, "0") != 0) { g_hash_table_remove (priv->options, NM_SETTING_BOND_OPTION_MIIMON); + g_hash_table_remove (priv->options, NM_SETTING_BOND_OPTION_DOWNDELAY); + g_hash_table_remove (priv->options, NM_SETTING_BOND_OPTION_UPDELAY); + } return TRUE; } @@ -293,7 +298,7 @@ nm_setting_bond_remove_option (NMSettingBond *setting, * * Returns a list of valid bond options. * - * Returns: (transfer none): a NULL-terminated array of strings of valid bond options. + * Returns: (transfer none): a %NULL-terminated array of strings of valid bond options. **/ const char ** nm_setting_bond_get_valid_options (NMSettingBond *setting) |