From f7617511bb94bbae2dbf99231a7d6be29575aa4d Mon Sep 17 00:00:00 2001 From: Lubomir Rintel Date: Thu, 1 Oct 2015 17:17:52 +0200 Subject: [PATCH] nm-vpn-service-plugin: increase the quit timer MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We now (since 3272ff6 libnm/libnm-glib: don't quit in the middle of asking for secrets) always hook on the quit timer when NM asks the plugin if it needs secrets. The timer is 20 seconds, which seems too short. Let's make it three minutes. Don't bother adding another timer or using a distinct timeout: it does no harm for the plugin to remain unused for three minutes on a bus. Another option would be to completely unhook it; however the plugin wouldn't learn if the user cancelled the NM's secrets request and would remain unused on the bus forever. (cherry picked from commit b1512221bc29f24b86d464dc5117439c366fd299) Signed-off-by: Jiří Klimeš --- libnm-glib/nm-vpn-plugin.c | 2 +- libnm/nm-vpn-plugin-old.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libnm-glib/nm-vpn-plugin.c b/libnm-glib/nm-vpn-plugin.c index f40ea80..a9c4a1f 100644 --- a/libnm-glib/nm-vpn-plugin.c +++ b/libnm-glib/nm-vpn-plugin.c @@ -69,7 +69,7 @@ static gboolean impl_vpn_plugin_set_failure (NMVPNPlugin *plugin, #include "nm-vpn-plugin-glue.h" -#define NM_VPN_PLUGIN_QUIT_TIMER 20 +#define NM_VPN_PLUGIN_QUIT_TIMER 180 G_DEFINE_ABSTRACT_TYPE (NMVPNPlugin, nm_vpn_plugin, G_TYPE_OBJECT) diff --git a/libnm/nm-vpn-plugin-old.c b/libnm/nm-vpn-plugin-old.c index 24d8e40..deaa07d 100644 --- a/libnm/nm-vpn-plugin-old.c +++ b/libnm/nm-vpn-plugin-old.c @@ -44,7 +44,7 @@ #include "nmdbus-vpn-plugin.h" -#define NM_VPN_PLUGIN_OLD_QUIT_TIMER 20 +#define NM_VPN_PLUGIN_OLD_QUIT_TIMER 180 static void nm_vpn_plugin_old_initable_iface_init (GInitableIface *iface); -- 2.1.0 From 0a95f003a9b0cad71d8fcb88562f4050881e0ace Mon Sep 17 00:00:00 2001 From: Lubomir Rintel Date: Tue, 20 Oct 2015 19:41:19 +0200 Subject: [PATCH] agent-manager: cancel secrets requests on an error MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It might be that the user didn't supply the secrets in time and the dbus call timed out. The agent should now hide the secrets dialog and we must let it know. https://bugzilla.redhat.com/show_bug.cgi?id=1272023 (cherry picked from commit 5d1cac81a0bcc66b891bc38f1a2cc4b84d47f08b) Signed-off-by: Jiří Klimeš --- src/settings/nm-agent-manager.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/settings/nm-agent-manager.c b/src/settings/nm-agent-manager.c index 8dcda06..d59173a 100644 --- a/src/settings/nm-agent-manager.c +++ b/src/settings/nm-agent-manager.c @@ -816,6 +816,9 @@ get_done_cb (NMSecretAgent *agent, req_complete_error (parent, error); g_error_free (error); } else { + /* Tell the failed agent we're no longer interested. */ + nm_secret_agent_cancel_secrets (parent->current, parent->current_call_id); + /* Try the next agent */ request_next_agent (parent); } -- 2.1.0 From 24195884cd953966776074cb6d8df6bf01641845 Mon Sep 17 00:00:00 2001 From: Lubomir Rintel Date: Thu, 22 Oct 2015 14:27:45 +0200 Subject: [PATCH] libnm-glib,vpn-plugin: remove old connect timer when adding new one MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit If the plugin didn't succeed connecting once, don't let the old timer fire during a subsequent connection. https://bugzilla.redhat.com/show_bug.cgi?id=1271973 (cherry picked from commit 842889bc5b588d191aa2c2cbcb73452ac8971cf5) Signed-off-by: Jiří Klimeš --- libnm-glib/nm-vpn-plugin.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libnm-glib/nm-vpn-plugin.c b/libnm-glib/nm-vpn-plugin.c index a9c4a1f..4350e60 100644 --- a/libnm-glib/nm-vpn-plugin.c +++ b/libnm-glib/nm-vpn-plugin.c @@ -426,6 +426,7 @@ connect_timer_start (NMVPNPlugin *plugin) { NMVPNPluginPrivate *priv = NM_VPN_PLUGIN_GET_PRIVATE (plugin); + nm_clear_g_source (&priv->connect_timer); priv->connect_timer = g_timeout_add_seconds (60, connect_timer_expired, plugin); } -- 2.1.0 From 8c8e88ae2882ee544e9058729f046e66642ca2c7 Mon Sep 17 00:00:00 2001 From: Lubomir Rintel Date: Wed, 4 Nov 2015 14:28:01 +0100 Subject: [PATCH] agent-manager: don't try to cancel requests that already finished MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes: 5d1cac81a0bcc66b891bc38f1a2cc4b84d47f08b (cherry picked from commit f5585022787a57275687c7a1ec0ed3eaccaf5001) Signed-off-by: Jiří Klimeš --- src/settings/nm-agent-manager.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/settings/nm-agent-manager.c b/src/settings/nm-agent-manager.c index d59173a..0ca8ce8 100644 --- a/src/settings/nm-agent-manager.c +++ b/src/settings/nm-agent-manager.c @@ -816,8 +816,10 @@ get_done_cb (NMSecretAgent *agent, req_complete_error (parent, error); g_error_free (error); } else { - /* Tell the failed agent we're no longer interested. */ - nm_secret_agent_cancel_secrets (parent->current, parent->current_call_id); + if (parent->current_call_id) { + /* Tell the failed agent we're no longer interested. */ + nm_secret_agent_cancel_secrets (parent->current, parent->current_call_id); + } /* Try the next agent */ request_next_agent (parent); -- 2.1.0