#include "mail-index.h"
#include "mail-storage.h"
#include "mail-namespace.h"
-#include "mail-search-build.h"
-#include "mail-search-parser.h"
+#include "mail-search.h"
#include "doveadm-mail-list-iter.h"
#include "doveadm-mail.h"
-static struct mail_search_args *build_search_args(const char *const args[])
-{
- struct mail_search_parser *parser;
- struct mail_search_args *sargs;
- const char *error;
-
- parser = mail_search_parser_init_cmdline(args);
- if (mail_search_build(mail_search_register_human, parser, "UTF-8",
- &sargs, &error) < 0)
- i_fatal("%s", error);
- mail_search_parser_deinit(&parser);
- return sargs;
-}
-
static int
cmd_altmove_box(struct mailbox *box, struct mail_search_args *search_args)
{
if (args[0] == NULL)
doveadm_mail_help_name("altmove");
- search_args = build_search_args(args);
+ search_args = doveadm_mail_build_search_args(args);
t_array_init(&purged_storages, 8);
iter = doveadm_mail_list_iter_init(user, search_args, iter_flags);
#include "imap-util.h"
#include "mail-namespace.h"
#include "mail-storage.h"
-#include "mail-search-build.h"
-#include "mail-search-parser.h"
+#include "mail-search.h"
#include "doveadm-mail.h"
#include "doveadm-mail-list-iter.h"
{ "date.saved", MAIL_FETCH_SAVE_DATE, fetch_date_saved }
};
-static struct mail_search_args *build_search_args(const char *const args[])
-{
- struct mail_search_parser *parser;
- struct mail_search_args *sargs;
- const char *error;
-
- parser = mail_search_parser_init_cmdline(args);
- if (mail_search_build(mail_search_register_human, parser, "UTF-8",
- &sargs, &error) < 0)
- i_fatal("%s", error);
- mail_search_parser_deinit(&parser);
- return sargs;
-}
-
static const struct fetch_field *fetch_field_find(const char *name)
{
unsigned int i;
if (fetch_fields == NULL || args[1] == NULL)
doveadm_mail_help_name("fetch");
parse_fetch_fields(&ctx, fetch_fields);
- ctx.search_args = build_search_args(args + 1);
+ ctx.search_args = doveadm_mail_build_search_args(args + 1);
ctx.output = o_stream_create_fd(STDOUT_FILENO, 0, FALSE);
#include "mail-storage.h"
#include "mail-storage-settings.h"
#include "mail-storage-service.h"
+#include "mail-search-build.h"
+#include "mail-search-parser.h"
#include "doveadm.h"
#include "doveadm-settings.h"
#include "doveadm-mail.h"
return box;
}
+struct mail_search_args *
+doveadm_mail_build_search_args(const char *const args[])
+{
+ struct mail_search_parser *parser;
+ struct mail_search_args *sargs;
+ const char *error;
+
+ parser = mail_search_parser_init_cmdline(args);
+ if (mail_search_build(mail_search_register_human, parser, "UTF-8",
+ &sargs, &error) < 0)
+ i_fatal("%s", error);
+ mail_search_parser_deinit(&parser);
+ return sargs;
+}
+
static void cmd_force_resync(struct mail_user *user, const char *const args[])
{
const char *mailbox = args[0];
struct mailbox *
doveadm_mailbox_find_and_sync(struct mail_user *user, const char *mailbox);
+struct mail_search_args *
+doveadm_mail_build_search_args(const char *const args[]);
void cmd_fetch(struct mail_user *user, const char *const args[]);
void cmd_altmove(struct mail_user *user, const char *const args[]);