diff --git a/cli/src/connections.c b/cli/src/connections.c index 4776e1a6a..409bf2ba6 100644 --- a/cli/src/connections.c +++ b/cli/src/connections.c @@ -197,7 +197,9 @@ usage (void) " up id | uuid [iface ] [ap ] [--nowait] [--timeout ]\n" #endif " down id | uuid \n" - " delete id | uuid \n")); + " delete id | uuid \n" + "\n" + )); } /* The real commands that do something - i.e. not 'help', etc. */ @@ -1987,10 +1989,13 @@ parse_cmd (NmCli *nmc, int argc, char **argv) else if (matches(*argv, "delete") == 0) { nmc->return_value = do_connection_delete (nmc, argc-1, argv+1); } - else if (matches (*argv, "help") == 0) { + else if ( matches (*argv, "help") == 0 + || (g_str_has_prefix (*argv, "-") && matches ((*argv)+1, "help") == 0) + || (g_str_has_prefix (*argv, "--") && matches ((*argv)+2, "help") == 0)) { usage (); nmc->should_wait = FALSE; - } else { + } + else { usage (); g_string_printf (nmc->return_text, _("Error: 'con' command '%s' is not valid."), *argv); nmc->return_value = NMC_RESULT_ERROR_USER_INPUT; diff --git a/cli/src/devices.c b/cli/src/devices.c index fefb533ae..23ed1bfc7 100644 --- a/cli/src/devices.c +++ b/cli/src/devices.c @@ -253,8 +253,9 @@ usage (void) " wifi connect <(B)SSID> [password ] [wep-key-type key|phrase] [iface ] [bssid ] [name ]\n" " [--private] [--nowait] [--timeout ]\n" #if WITH_WIMAX - " wimax [list [iface ] [nsp ]]\n\n" + " wimax [list [iface ] [nsp ]]\n" #endif + "\n" )); } @@ -2104,10 +2105,13 @@ do_devices (NmCli *nmc, int argc, char **argv) nmc->return_value = do_device_wimax (nmc, argc-1, argv+1); } #endif - else if (strcmp (*argv, "help") == 0) { + else if ( matches (*argv, "help") == 0 + || (g_str_has_prefix (*argv, "-") && matches ((*argv)+1, "help") == 0) + || (g_str_has_prefix (*argv, "--") && matches ((*argv)+2, "help") == 0)) { usage (); } else { + usage (); g_string_printf (nmc->return_text, _("Error: 'dev' command '%s' is not valid."), *argv); nmc->return_value = NMC_RESULT_ERROR_USER_INPUT; } diff --git a/cli/src/network-manager.c b/cli/src/network-manager.c index 927eadd19..8fb5f6cf6 100644 --- a/cli/src/network-manager.c +++ b/cli/src/network-manager.c @@ -578,10 +578,13 @@ do_network_manager (NmCli *nmc, int argc, char **argv) } } #endif - else if (strcmp (*argv, "help") == 0) { + else if ( matches (*argv, "help") == 0 + || (g_str_has_prefix (*argv, "-") && matches ((*argv)+1, "help") == 0) + || (g_str_has_prefix (*argv, "--") && matches ((*argv)+2, "help") == 0)) { usage (); } else { + usage (); g_string_printf (nmc->return_text, _("Error: 'nm' command '%s' is not valid."), *argv); nmc->return_value = NMC_RESULT_ERROR_USER_INPUT; }