123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- From 4562a431ad976a3e0df38889d48bb7898f91c672 Mon Sep 17 00:00:00 2001
- From: Lubomir Rintel <lkundrak@v3.sk>
- Date: Tue, 26 Jan 2016 17:31:34 +0100
- Subject: NetworkAgent: correctly identify the VPN secret requests
- The non-interactive requests for 'vpn' settings are forwarded to the UI because
- it is able to talk to the auth helpers. However, the VPN requests are identified
- by the connection type instead of setting type. That is incorrect and the UI
- is not prepared to handle such requests; tries to construct a dialog and fails
- miserably:
- Gjs-Message: JS LOG: Invalid connection type: vpn
- (gnome-shell:13133): Gjs-WARNING **: JS ERROR: Error: No property 'text' in property list (or its value was undefined)
- NetworkSecretDialog<._init@resource:///org/gnome/shell/ui/components/networkAgent.js:60
- wrapper@resource:///org/gnome/gjs/modules/lang.js:169
- _Base.prototype._construct@resource:///org/gnome/gjs/modules/lang.js:110
- Class.prototype._construct/newClass@resource:///org/gnome/gjs/modules/lang.js:204
- NetworkAgent<._handleRequest@resource:///org/gnome/shell/ui/components/networkAgent.js:724
- wrapper@resource:///org/gnome/gjs/modules/lang.js:169
- NetworkAgent<._newRequest@resource:///org/gnome/shell/ui/components/networkAgent.js:715
- wrapper@resource:///org/gnome/gjs/modules/lang.js:169
- https://bugzilla.gnome.org/show_bug.cgi?id=760999
- ---
- src/shell-network-agent.c | 7 +------
- 1 file changed, 1 insertion(+), 6 deletions(-)
- diff --git a/src/shell-network-agent.c b/src/shell-network-agent.c
- index c6f4b79..8e8c548 100644
- --- a/src/shell-network-agent.c
- +++ b/src/shell-network-agent.c
- @@ -366,8 +366,6 @@ shell_network_agent_get_secrets (NMSecretAgent *agent,
- {
- ShellNetworkAgent *self = SHELL_NETWORK_AGENT (agent);
- ShellAgentRequest *request;
- - NMSettingConnection *setting_connection;
- - const char *connection_type;
- GHashTable *attributes;
- char *request_id;
-
- @@ -381,9 +379,6 @@ shell_network_agent_get_secrets (NMSecretAgent *agent,
- shell_agent_request_cancel (request);
- }
-
- - setting_connection = nm_connection_get_setting_connection (connection);
- - connection_type = nm_setting_connection_get_connection_type (setting_connection);
- -
- request = g_slice_new (ShellAgentRequest);
- request->self = g_object_ref (self);
- request->cancellable = g_cancellable_new ();
- @@ -393,7 +388,7 @@ shell_network_agent_get_secrets (NMSecretAgent *agent,
- request->flags = flags;
- request->callback = callback;
- request->callback_data = callback_data;
- - request->is_vpn = !strcmp(connection_type, NM_SETTING_VPN_SETTING_NAME);
- + request->is_vpn = !strcmp(setting_name, NM_SETTING_VPN_SETTING_NAME);
- request->entries = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, gvalue_destroy_notify);
-
- if (request->is_vpn)
- --
- cgit v0.11.2
|