const char *fts_plugin_version = DOVECOT_ABI_VERSION;
static struct mail_storage_hooks fts_mail_storage_hooks = {
- .mail_namespaces_added = fts_mail_namespaces_added,
+ .mailbox_list_created = fts_mailbox_list_created,
.mailbox_allocated = fts_mailbox_allocated,
.mail_allocated = fts_mail_allocated
};
flist->module_ctx.super.deinit(list);
}
-
-
-static void
-fts_mailbox_list_init(struct mailbox_list *list, const char *name)
+void
+fts_mailbox_list_created(struct mailbox_list *list)
{
struct fts_backend *backend;
const char *path, *error;
+ const char *name = mail_user_plugin_getenv(list->ns->user, "fts");
+
+ if (name == NULL || name[0] == '\0') {
+ if (list->mail_set->mail_debug)
+ i_debug("fts: No fts setting - plugin disabled");
+ return;
+ }
if (!mailbox_list_get_root_path(list, MAILBOX_LIST_PATH_TYPE_INDEX, &path)) {
if (list->mail_set->mail_debug) {
}
}
-void fts_mail_namespaces_added(struct mail_namespace *namespaces)
-{
- struct mail_namespace *ns;
- const char *name;
-
- name = mail_user_plugin_getenv(namespaces->user, "fts");
- if (name == NULL || name[0] == '\0') {
- if (namespaces->user->mail_debug)
- i_debug("fts: No fts setting - plugin disabled");
- return;
- }
-
- for (ns = namespaces; ns != NULL; ns = ns->next)
- fts_mailbox_list_init(ns->list, name);
-}
-
struct fts_backend *fts_mailbox_backend(struct mailbox *box)
{
struct fts_mailbox_list *flist = FTS_LIST_CONTEXT(box->list);
void fts_mail_allocated(struct mail *mail);
void fts_mailbox_allocated(struct mailbox *box);
-void fts_mail_namespaces_added(struct mail_namespace *namespaces);
-
+void fts_mailbox_list_created(struct mailbox_list *list);
#endif