From 7e8a84ae10c4868f299e136f183c0f574bb907e1 Mon Sep 17 00:00:00 2001 From: Lubomir Rintel Date: Tue, 23 Jan 2018 14:49:15 +0100 Subject: [PATCH] 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. --- clients/cli/agent.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/clients/cli/agent.c b/clients/cli/agent.c index 2088648aa0..46725c94f3 100644 --- a/clients/cli/agent.c +++ b/clients/cli/agent.c @@ -201,10 +201,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;