summaryrefslogtreecommitdiff
path: root/clients/common/nm-secret-agent-simple.c
diff options
context:
space:
mode:
Diffstat (limited to 'clients/common/nm-secret-agent-simple.c')
-rw-r--r--clients/common/nm-secret-agent-simple.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/clients/common/nm-secret-agent-simple.c b/clients/common/nm-secret-agent-simple.c
index 5e68aa4f28..420d2e79e4 100644
--- a/clients/common/nm-secret-agent-simple.c
+++ b/clients/common/nm-secret-agent-simple.c
@@ -754,6 +754,7 @@ try_spawn_vpn_auth_helper (RequestData *request,
char *auth_dialog_request_str;
gsize auth_dialog_request_len;
AuthDialogData *data;
+ int i;
plugin_info = nm_vpn_plugin_info_list_find_by_service (nm_vpn_get_plugin_infos (),
nm_setting_vpn_get_service_type (s_vpn));
@@ -780,6 +781,14 @@ try_spawn_vpn_auth_helper (RequestData *request,
if (request->flags & NM_SECRET_AGENT_GET_SECRETS_FLAG_REQUEST_NEW)
g_ptr_array_add (auth_dialog_argv, "-r");
+ s = nm_vpn_plugin_info_lookup_property (plugin_info, "GNOME", "supports-hints");
+ if (_nm_utils_ascii_str_to_bool (s, FALSE)) {
+ for (i = 0; request->hints[i]; i++) {
+ g_ptr_array_add (auth_dialog_argv, "-t");
+ g_ptr_array_add (auth_dialog_argv, request->hints[i]);
+ }
+ }
+
g_ptr_array_add (auth_dialog_argv, NULL);
if (!g_spawn_async_with_pipes (NULL, (char **) auth_dialog_argv->pdata, NULL,
G_SPAWN_DO_NOT_REAP_CHILD,