diff options
author | Beniamino Galvani <bgalvani@redhat.com> | 2016-08-25 21:07:24 +0200 |
---|---|---|
committer | Beniamino Galvani <bgalvani@redhat.com> | 2016-10-13 16:28:06 +0200 |
commit | 10fbc47d320164c11e3532aef033997d71e14eed (patch) | |
tree | da6312c58ac3405a898792691c008d0b90ee51f5 | |
parent | 41823a0774974eb17672aeb0d86d091292a640e2 (diff) | |
download | NetworkManager-10fbc47d320164c11e3532aef033997d71e14eed.tar.gz |
cli: connections: fail the activation if the ac deactivates
Since commit ac888de15103 ("cli/connections: fail the activation when
the active connection disappears") we rely only on the disappearing of
the active-connection to determine the failure of an activation.
libnm can collapse a 'added' and a 'removed' signal if they are
received closer enough and thus we may miss the removal of the active
connection. Restore the detection of failure based on
active-connection state.
(cherry picked from commit 79a357b07a2d038ddd8ee08a65a3996d0e9d7a69)
-rw-r--r-- | clients/cli/connections.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/clients/cli/connections.c b/clients/cli/connections.c index fe367a3f4a..36c41ace8a 100644 --- a/clients/cli/connections.c +++ b/clients/cli/connections.c @@ -2179,6 +2179,10 @@ active_connection_state_cb (NMActiveConnection *active, GParamSpec *pspec, Activ g_print (_("Connection successfully activated (D-Bus active path: %s)\n"), nm_object_get_path (NM_OBJECT (active))); activate_connection_info_finish (info); + } else if (state == NM_ACTIVE_CONNECTION_STATE_DEACTIVATED) { + g_string_printf (nmc->return_text, _("Error: Connection activation failed.")); + nmc->return_value = NMC_RESULT_ERROR_CON_ACTIVATION; + activate_connection_info_finish (info); } else if (state == NM_ACTIVE_CONNECTION_STATE_ACTIVATING) { /* activating master connection does not automatically activate any slaves, so their * active connection state will not progress beyond ACTIVATING state. |