diff --git a/src/managesieve/cmd-deletescript.c b/src/managesieve/cmd-deletescript.c index ec1b369f5..f70b6b278 100644 --- a/src/managesieve/cmd-deletescript.c +++ b/src/managesieve/cmd-deletescript.c @@ -18,7 +18,7 @@ bool cmd_deletescript(struct client_command_context *cmd) struct sieve_script *script; /* */ - if ( !client_read_string_args(cmd, 1, TRUE, &scriptname) ) + if ( !client_read_string_args(cmd, TRUE, 1, &scriptname) ) return FALSE; script = sieve_storage_open_script diff --git a/src/managesieve/cmd-getscript.c b/src/managesieve/cmd-getscript.c index e84b3513d..920ee8a86 100644 --- a/src/managesieve/cmd-getscript.c +++ b/src/managesieve/cmd-getscript.c @@ -96,7 +96,7 @@ bool cmd_getscript(struct client_command_context *cmd) enum sieve_error error; /* */ - if ( !client_read_string_args(cmd, 1, TRUE, &scriptname) ) + if ( !client_read_string_args(cmd, TRUE, 1, &scriptname) ) return FALSE; ctx = p_new(cmd->pool, struct cmd_getscript_context, 1); diff --git a/src/managesieve/cmd-putscript.c b/src/managesieve/cmd-putscript.c index 5ba372eac..4bfb21d8b 100644 --- a/src/managesieve/cmd-putscript.c +++ b/src/managesieve/cmd-putscript.c @@ -478,7 +478,7 @@ bool cmd_putscript(struct client_command_context *cmd) const char *scriptname; /* */ - if ( !client_read_string_args(cmd, 1, FALSE, &scriptname) ) + if ( !client_read_string_args(cmd, FALSE, 1, &scriptname) ) return FALSE; return cmd_putscript_start(cmd, scriptname); diff --git a/src/managesieve/cmd-renamescript.c b/src/managesieve/cmd-renamescript.c index ff3a4a1ac..fa3f5414c 100644 --- a/src/managesieve/cmd-renamescript.c +++ b/src/managesieve/cmd-renamescript.c @@ -19,7 +19,7 @@ bool cmd_renamescript(struct client_command_context *cmd) struct sieve_script *script; /* */ - if (!client_read_string_args(cmd, 2, TRUE, &scriptname, &newname)) + if (!client_read_string_args(cmd, TRUE, 2, &scriptname, &newname)) return FALSE; script = sieve_storage_open_script diff --git a/src/managesieve/cmd-setactive.c b/src/managesieve/cmd-setactive.c index ae2963208..318b7685e 100644 --- a/src/managesieve/cmd-setactive.c +++ b/src/managesieve/cmd-setactive.c @@ -20,7 +20,7 @@ bool cmd_setactive(struct client_command_context *cmd) int ret; /* */ - if ( !client_read_string_args(cmd, 1, TRUE, &scriptname) ) + if ( !client_read_string_args(cmd, TRUE, 1, &scriptname) ) return FALSE; /* Activate, or .. */ diff --git a/src/managesieve/managesieve-client.c b/src/managesieve/managesieve-client.c index 7e05372a4..486cadf3e 100644 --- a/src/managesieve/managesieve-client.c +++ b/src/managesieve/managesieve-client.c @@ -482,7 +482,7 @@ bool client_read_args(struct client_command_context *cmd, unsigned int count, } bool client_read_string_args(struct client_command_context *cmd, - unsigned int count, bool no_more, ...) + bool no_more, unsigned int count, ...) { const struct managesieve_arg *msieve_args; va_list va; @@ -493,7 +493,7 @@ bool client_read_string_args(struct client_command_context *cmd, if ( !client_read_args(cmd, count, 0, no_more, &msieve_args) ) return FALSE; - va_start(va, no_more); + va_start(va, count); for ( i = 0; i < count; i++ ) { const char **ret = va_arg(va, const char **); diff --git a/src/managesieve/managesieve-client.h b/src/managesieve/managesieve-client.h index b3dac94f5..85da6e3e8 100644 --- a/src/managesieve/managesieve-client.h +++ b/src/managesieve/managesieve-client.h @@ -131,7 +131,7 @@ bool client_read_args /* Reads a number of string arguments. ... is a list of pointers where to store the arguments. */ bool client_read_string_args - (struct client_command_context *cmd, unsigned int count, bool no_more, ...); + (struct client_command_context *cmd, bool no_more, unsigned int count, ...); static inline bool client_read_no_args (struct client_command_context *cmd)