From 873efb4f82f4088a31a0f56e412b31896b870982 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrien=20Gallou=C3=ABt?= Date: Thu, 10 May 2018 13:48:20 +0000 Subject: [PATCH] Show help when no arguments MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Adrien Gallouët --- README.md | 18 ++++++++++++++++++ src/main.c | 13 ++++++------- 2 files changed, 24 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index a2edb2b..5ffb77c 100644 --- a/README.md +++ b/README.md @@ -22,6 +22,24 @@ To build and install the latest version with [meson](http://mesonbuild.com): The more classical autotools suite is also available but not recommended. +### Usage + +Just run `glorytun` with no arguments to view the list of available commands: + +``` +$ glorytun +available commands: + + show show all running tunnels + bench start a crypto bench + bind start a new tunnel + set change tunnel properties + keygen generate a new secret key + path manage paths + version show version + +``` + ### Mini HowTo Glorytun does not touch network configuration of its interface, diff --git a/src/main.c b/src/main.c index b96be12..8209514 100644 --- a/src/main.c +++ b/src/main.c @@ -69,15 +69,14 @@ main(int argc, char **argv) {"version", "show version", gt_version}, {NULL}}; - if (argc < 2) - return gt_show(argc, argv); - - for (int k = 0; cmd[k].name; k++) { - if (!str_cmp(cmd[k].name, argv[1])) - return cmd[k].call(argc - 1, argv + 1); + if (argv[1]) { + for (int k = 0; cmd[k].name; k++) { + if (!str_cmp(cmd[k].name, argv[1])) + return cmd[k].call(argc - 1, argv + 1); + } } - printf("unknown command `%s', available commands:\n\n", argv[1]); + printf("available commands:\n\n"); int len = 0;