From d4c8a3fbf2bf7a2b67b606cc38562ea6a6d42a0c Mon Sep 17 00:00:00 2001 From: Francesco Giudici Date: Thu, 20 Apr 2017 10:17:34 +0200 Subject: [PATCH] nmcli: show secrets when the --show-secrets option is put after the connection id 'nmcli connection show --show-secrets' secrets were not shown. 'nmcli connection show --show-secrets ' secrets were shown only for connection ids following the "--show-secrets" option (so only for 'con_id2'). Fix these behaviors showing secrets for all connections also if the "--show-secrets" option is put after the connection ids. (cherry picked from commit 4bdb6b026a808ab718258e17d20d0472f3fcdd76) --- clients/cli/connections.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/clients/cli/connections.c b/clients/cli/connections.c index 8fdf62ee9..16fadfc96 100644 --- a/clients/cli/connections.c +++ b/clients/cli/connections.c @@ -1834,6 +1834,23 @@ do_connections_show (NmCli *nmc, int argc, char **argv) g_free (nmc->required_fields); nmc->required_fields = NULL; + /* Before printing the connections check if we have a "--show-secret" + * option after the connection ids */ + if (!nmc->nmc_config.show_secrets && !nmc->complete) { + int argc_cp = argc; + char **argv_cp = argv; + + do { + if ( nm_streq (*argv_cp, "id") + || nm_streq (*argv_cp, "uuid") + || nm_streq (*argv_cp, "path") + || nm_streq (*argv_cp, "apath")) { + argc_cp--; + argv_cp++; + } + } while (next_arg (nmc, &argc_cp, &argv_cp, NULL) != -1); + } + while (argc > 0) { const GPtrArray *connections; gboolean res;