changeset 13177:8d25026689ca

doveadm server: Fixed handling command parameters
author Timo Sirainen <tss@iki.fi>
date Sun, 07 Aug 2011 20:47:59 +0300
parents 7dfa0ad16fa7
children 4babc93e87ea
files src/doveadm/client-connection.c src/doveadm/doveadm-mail.c src/doveadm/doveadm-mail.h
diffstat 3 files changed, 6 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/src/doveadm/client-connection.c	Fri Aug 05 12:07:48 2011 +0300
+++ b/src/doveadm/client-connection.c	Sun Aug 07 20:47:59 2011 +0300
@@ -100,7 +100,8 @@
 		doveadm_print_sticky("username", input->username);
 	}
 
-	doveadm_mail_single_user(ctx, argv, input, service_flags);
+	ctx->args = (const void *)argv;
+	doveadm_mail_single_user(ctx, input, service_flags);
 	doveadm_mail_server_flush();
 	ctx->v.deinit(ctx);
 	doveadm_print_flush();
--- a/src/doveadm/doveadm-mail.c	Fri Aug 05 12:07:48 2011 +0300
+++ b/src/doveadm/doveadm-mail.c	Sun Aug 07 20:47:59 2011 +0300
@@ -223,7 +223,7 @@
 	return 1;
 }
 
-void doveadm_mail_single_user(struct doveadm_mail_cmd_context *ctx, char *argv[],
+void doveadm_mail_single_user(struct doveadm_mail_cmd_context *ctx,
 			      const struct mail_storage_service_input *input,
 			      enum mail_storage_service_flags service_flags)
 {
@@ -234,7 +234,7 @@
 
 	ctx->storage_service = mail_storage_service_init(master_service, NULL,
 							 service_flags);
-	ctx->v.init(ctx, (const void *)argv);
+	ctx->v.init(ctx, ctx->args);
 	if (hook_doveadm_mail_init != NULL)
 		hook_doveadm_mail_init(ctx);
 
@@ -418,7 +418,7 @@
 		memset(&input, 0, sizeof(input));
 		input.service = "doveadm";
 		input.username = username;
-		doveadm_mail_single_user(ctx, argv, &input, service_flags);
+		doveadm_mail_single_user(ctx, &input, service_flags);
 	} else {
 		service_flags |= MAIL_STORAGE_SERVICE_FLAG_TEMP_PRIV_DROP;
 		doveadm_mail_all_users(ctx, argv, wildcard_user, service_flags);
--- a/src/doveadm/doveadm-mail.h	Fri Aug 05 12:07:48 2011 +0300
+++ b/src/doveadm/doveadm-mail.h	Sun Aug 07 20:47:59 2011 +0300
@@ -83,7 +83,7 @@
 struct doveadm_mail_cmd_context *
 doveadm_mail_cmd_init(const struct doveadm_mail_cmd *cmd,
 		      const struct doveadm_settings *set);
-void doveadm_mail_single_user(struct doveadm_mail_cmd_context *ctx, char *argv[],
+void doveadm_mail_single_user(struct doveadm_mail_cmd_context *ctx,
 			      const struct mail_storage_service_input *input,
 			      enum mail_storage_service_flags service_flags);
 int doveadm_mail_server_user(struct doveadm_mail_cmd_context *ctx,