From 9c2e039dfbacb3835a06fcf7394c9acbcc4ada1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pavel=20B=C5=99ezina?= Date: Wed, 1 Jun 2016 14:38:11 +0200 Subject: [PATCH 06/23] sss_tools: add command description --- src/tools/common/sss_tools.c | 7 ++++++- src/tools/common/sss_tools.h | 3 +++ src/tools/sss_override.c | 26 +++++++++++++------------- 3 files changed, 22 insertions(+), 14 deletions(-) diff --git a/src/tools/common/sss_tools.c b/src/tools/common/sss_tools.c index b916f772b7333e23119aa417a74a6897ba1f8e4d..a3280066fd6a5245714e3602b3f92d253c61aa70 100644 --- a/src/tools/common/sss_tools.c +++ b/src/tools/common/sss_tools.c @@ -228,7 +228,12 @@ int sss_tool_usage(const char *tool_name, fprintf(stderr, _("Available commands:\n")); for (i = 0; commands[i].command != NULL; i++) { - fprintf(stderr, "* %s\n", commands[i].command); + if (commands[i].description == NULL) { + fprintf(stderr, "* %s\n", commands[i].command); + } else { + fprintf(stderr, "* %s\t\t %s\n", + commands[i].command, commands[i].description); + } } fprintf(stderr, _("\n")); diff --git a/src/tools/common/sss_tools.h b/src/tools/common/sss_tools.h index cfe11d06e1dadf8e49efe155c8a53f99a31e97fb..77a9645125f0fe6098373130fc83f5e254dd0ddd 100644 --- a/src/tools/common/sss_tools.h +++ b/src/tools/common/sss_tools.h @@ -43,8 +43,11 @@ typedef int struct sss_tool_ctx *tool_ctx, void *pvt); +#define SSS_TOOL_COMMAND(cmd, msg, fn) {cmd, _(msg), fn} + struct sss_route_cmd { const char *command; + const char *description; sss_route_fn fn; }; diff --git a/src/tools/sss_override.c b/src/tools/sss_override.c index f911ce8806228d3b1b9fb113cc5b451a04a44140..572cdf899131a325bd81fb08b6c71b392d1c1eb3 100644 --- a/src/tools/sss_override.c +++ b/src/tools/sss_override.c @@ -1905,19 +1905,19 @@ static int override_group_export(struct sss_cmdline *cmdline, int main(int argc, const char **argv) { struct sss_route_cmd commands[] = { - {"user-add", override_user_add}, - {"user-del", override_user_del}, - {"user-find", override_user_find}, - {"user-show", override_user_show}, - {"user-import", override_user_import}, - {"user-export", override_user_export}, - {"group-add", override_group_add}, - {"group-del", override_group_del}, - {"group-find", override_group_find}, - {"group-show", override_group_show}, - {"group-import", override_group_import}, - {"group-export", override_group_export}, - {NULL, NULL} + {"user-add", NULL, override_user_add}, + {"user-del", NULL, override_user_del}, + {"user-find", NULL, override_user_find}, + {"user-show", NULL, override_user_show}, + {"user-import", NULL, override_user_import}, + {"user-export", NULL, override_user_export}, + {"group-add", NULL, override_group_add}, + {"group-del", NULL, override_group_del}, + {"group-find", NULL, override_group_find}, + {"group-show", NULL, override_group_show}, + {"group-import", NULL, override_group_import}, + {"group-export", NULL, override_group_export}, + {NULL, NULL, NULL} }; return sss_tool_main(argc, argv, commands, NULL); -- 2.4.11