summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLubomir Rintel <lkundrak@v3.sk>2018-01-23 14:49:15 +0100
committerLubomir Rintel <lkundrak@v3.sk>2018-01-24 09:56:18 +0100
commit848894b83257cba21c0ab456cb155b12da954cc1 (patch)
tree2d4eb5eaea6475f03966c46e23e69b48adb373a6
parent40a50599499e5b44181d084d90302593e1e89ce6 (diff)
downloadNetworkManager-848894b83257cba21c0ab456cb155b12da954cc1.tar.gz
nmcli/agent: fix handling of polkit agent failure
On "nmcli agent all", when the polkit agent fails (while the NM agent succeeds), the failure is not communicated until the client exits. (cherry picked from commit 7e8a84ae10c4868f299e136f183c0f574bb907e1)
-rw-r--r--clients/cli/agent.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/clients/cli/agent.c b/clients/cli/agent.c
index 23582f49e9..5a0648fe2b 100644
--- a/clients/cli/agent.c
+++ b/clients/cli/agent.c
@@ -200,10 +200,16 @@ do_agent_all (NmCli *nmc, int argc, char **argv)
/* Run both secret and polkit agent */
secret_res = do_agent_secret (nmc, argc, argv);
- if (secret_res != NMC_RESULT_SUCCESS)
+ if (secret_res != NMC_RESULT_SUCCESS) {
g_printerr ("%s\n", nmc->return_text->str);
+ g_string_truncate (nmc->return_text, 0);
+ }
nmc->return_value = do_agent_polkit (nmc, argc, argv);
+ if (nmc->return_value != NMC_RESULT_SUCCESS) {
+ g_printerr ("%s\n", nmc->return_text->str);
+ g_string_truncate (nmc->return_text, 0);
+ }
if (nmc->return_value == NMC_RESULT_SUCCESS && secret_res != NMC_RESULT_SUCCESS)
nmc->return_value = secret_res;