From 14102a0c5db8828ca8c7751ec96587fadc97a0bc Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Fri, 19 Feb 2016 16:36:00 +0200 Subject: [PATCH] doveadm: Use char type for short options instead of a string. The ":" = "has parameters" can be determined from the type. Also removed "?" checks since it wasn't actually used. --- src/doveadm/doveadm-cmd.c | 26 ++++++------------- src/doveadm/doveadm-cmd.h | 6 ++--- src/doveadm/doveadm-mail-mailbox-metadata.c | 16 ++++++------ src/doveadm/doveadm-mail-mailbox-status.c | 8 +++--- src/doveadm/doveadm-mail-mailbox.c | 28 ++++++++++----------- src/doveadm/doveadm-mail.c | 5 ++-- src/doveadm/doveadm-mail.h | 8 +++--- 7 files changed, 42 insertions(+), 55 deletions(-) diff --git a/src/doveadm/doveadm-cmd.c b/src/doveadm/doveadm-cmd.c index c0e3f58765..cb3bdedb5b 100644 --- a/src/doveadm/doveadm-cmd.c +++ b/src/doveadm/doveadm-cmd.c @@ -250,9 +250,8 @@ doveadm_cmd_params_to_argv(const char *name, int pargc, const struct doveadm_cmd i_assert(array_count(argv) == 0); array_append(argv, &name, 1); for(i=0;iservice_flags |= MAIL_STORAGE_SERVICE_FLAG_USERDB_LOOKUP; wildcard_user = "*"; ctx->users_list_input = argv[i].value.v_istream; - } else if (ctx->v.parse_arg != NULL && argv[i].opt != NULL && - *(argv[i]).opt != '?' && *(argv[i]).opt != ':') { + } else if (ctx->v.parse_arg != NULL && argv[i].short_opt != '\0') { optarg = (char*)argv[i].value.v_string; - ctx->v.parse_arg(ctx, *(argv[i].opt)); + ctx->v.parse_arg(ctx, argv[i].short_opt); } else if ((argv[i].flags & CMD_PARAM_FLAG_POSITIONAL) != 0) { /* feed this into pargv */ if (argv[i].type == CMD_PARAM_ARRAY) diff --git a/src/doveadm/doveadm-mail.h b/src/doveadm/doveadm-mail.h index a70e982033..aed7848e0c 100644 --- a/src/doveadm/doveadm-mail.h +++ b/src/doveadm/doveadm-mail.h @@ -197,9 +197,9 @@ extern struct doveadm_cmd_ver2 doveadm_cmd_mailbox_subscribe_ver2; extern struct doveadm_cmd_ver2 doveadm_cmd_mailbox_unsubscribe_ver2; #define DOVEADM_CMD_MAIL_COMMON \ -DOVEADM_CMD_PARAM("A", "all-users", CMD_PARAM_BOOL, 0) \ -DOVEADM_CMD_PARAM("S:", "socket-path", CMD_PARAM_STR, 0) \ -DOVEADM_CMD_PARAM("u:", "user", CMD_PARAM_STR, 0) \ -DOVEADM_CMD_PARAM("F:", "user-file", CMD_PARAM_ISTREAM, 0) +DOVEADM_CMD_PARAM('A', "all-users", CMD_PARAM_BOOL, 0) \ +DOVEADM_CMD_PARAM('S', "socket-path", CMD_PARAM_STR, 0) \ +DOVEADM_CMD_PARAM('u', "user", CMD_PARAM_STR, 0) \ +DOVEADM_CMD_PARAM('F', "user-file", CMD_PARAM_ISTREAM, 0) #endif -- 2.47.3