diff options
Diffstat (limited to 'libnm-core')
| -rw-r--r-- | libnm-core/nm-connection.c | 14 | ||||
| -rw-r--r-- | libnm-core/nm-setting-team.c | 1 | ||||
| -rw-r--r-- | libnm-core/nm-setting-team.h | 1 | ||||
| -rw-r--r-- | libnm-core/tests/test-setting.c | 14 |
4 files changed, 19 insertions, 11 deletions
diff --git a/libnm-core/nm-connection.c b/libnm-core/nm-connection.c index 9c88cfd6..f70be09f 100644 --- a/libnm-core/nm-connection.c +++ b/libnm-core/nm-connection.c @@ -1576,10 +1576,8 @@ nm_connection_update_secrets (NMConnection *connection, } } - if (updated) { + if (updated) g_signal_emit (connection, signals[SECRETS_UPDATED], 0, setting_name); - g_signal_emit (connection, signals[CHANGED], 0); - } return success; } @@ -1657,20 +1655,17 @@ nm_connection_clear_secrets (NMConnection *connection) { GHashTableIter iter; NMSetting *setting; - gboolean changed = FALSE; g_return_if_fail (NM_IS_CONNECTION (connection)); g_hash_table_iter_init (&iter, NM_CONNECTION_GET_PRIVATE (connection)->settings); while (g_hash_table_iter_next (&iter, NULL, (gpointer) &setting)) { g_signal_handlers_block_by_func (setting, (GCallback) setting_changed_cb, connection); - changed |= _nm_setting_clear_secrets (setting); + _nm_setting_clear_secrets (setting); g_signal_handlers_unblock_by_func (setting, (GCallback) setting_changed_cb, connection); } g_signal_emit (connection, signals[SECRETS_CLEARED], 0); - if (changed) - g_signal_emit (connection, signals[CHANGED], 0); } /** @@ -1689,20 +1684,17 @@ nm_connection_clear_secrets_with_flags (NMConnection *connection, { GHashTableIter iter; NMSetting *setting; - gboolean changed = FALSE; g_return_if_fail (NM_IS_CONNECTION (connection)); g_hash_table_iter_init (&iter, NM_CONNECTION_GET_PRIVATE (connection)->settings); while (g_hash_table_iter_next (&iter, NULL, (gpointer) &setting)) { g_signal_handlers_block_by_func (setting, (GCallback) setting_changed_cb, connection); - changed |= _nm_setting_clear_secrets_with_flags (setting, func, user_data); + _nm_setting_clear_secrets_with_flags (setting, func, user_data); g_signal_handlers_unblock_by_func (setting, (GCallback) setting_changed_cb, connection); } g_signal_emit (connection, signals[SECRETS_CLEARED], 0); - if (changed) - g_signal_emit (connection, signals[CHANGED], 0); } /** diff --git a/libnm-core/nm-setting-team.c b/libnm-core/nm-setting-team.c index 60bdf5f6..1db2428d 100644 --- a/libnm-core/nm-setting-team.c +++ b/libnm-core/nm-setting-team.c @@ -1171,6 +1171,7 @@ verify (NMSetting *setting, NMConnection *connection, GError **error) if ( priv->runner && g_ascii_strcasecmp (priv->runner, NM_SETTING_TEAM_RUNNER_BROADCAST) && g_ascii_strcasecmp (priv->runner, NM_SETTING_TEAM_RUNNER_ROUNDROBIN) + && g_ascii_strcasecmp (priv->runner, NM_SETTING_TEAM_RUNNER_RANDOM) && g_ascii_strcasecmp (priv->runner, NM_SETTING_TEAM_RUNNER_ACTIVEBACKUP) && g_ascii_strcasecmp (priv->runner, NM_SETTING_TEAM_RUNNER_LOADBALANCE) && g_ascii_strcasecmp (priv->runner, NM_SETTING_TEAM_RUNNER_LACP)) { diff --git a/libnm-core/nm-setting-team.h b/libnm-core/nm-setting-team.h index d423901f..8e5178a4 100644 --- a/libnm-core/nm-setting-team.h +++ b/libnm-core/nm-setting-team.h @@ -131,6 +131,7 @@ NMTeamLinkWatcherArpPingFlags nm_team_link_watcher_get_flags (NMTeamLinkWatcher #define NM_SETTING_TEAM_RUNNER_BROADCAST "broadcast" #define NM_SETTING_TEAM_RUNNER_ROUNDROBIN "roundrobin" +#define NM_SETTING_TEAM_RUNNER_RANDOM "random" #define NM_SETTING_TEAM_RUNNER_ACTIVEBACKUP "activebackup" #define NM_SETTING_TEAM_RUNNER_LOADBALANCE "loadbalance" #define NM_SETTING_TEAM_RUNNER_LACP "lacp" diff --git a/libnm-core/tests/test-setting.c b/libnm-core/tests/test-setting.c index efdcee25..a7282f91 100644 --- a/libnm-core/tests/test-setting.c +++ b/libnm-core/tests/test-setting.c @@ -968,6 +968,18 @@ test_runner_broadcast_sync_from_config (void) } static void +test_runner_random_sync_from_config (void) +{ + _test_team_config_sync ("{\"runner\": {\"name\": \"random\"}}", + 0, 0, 0, 0, + NM_SETTING_TEAM_RUNNER_RANDOM, + NULL, + NULL, NULL, -1, + FALSE, FALSE, -1, -1, NULL, + NULL); +} + +static void test_runner_activebackup_sync_from_config (void) { _test_team_config_sync ("{\"runner\": {\"name\": \"activebackup\"}}", @@ -1603,6 +1615,8 @@ main (int argc, char **argv) test_runner_roundrobin_sync_from_config); g_test_add_func ("/libnm/settings/team/sync_runner_from_config_broadcast", test_runner_broadcast_sync_from_config); + g_test_add_func ("/libnm/settings/team/sync_runner_from_config_random", + test_runner_random_sync_from_config); g_test_add_func ("/libnm/settings/team/sync_runner_from_config_activebackup", test_runner_activebackup_sync_from_config); g_test_add_func ("/libnm/settings/team/sync_runner_from_config_loadbalance", |