/usr/include/dovecot/fts-storage.h is in dovecot-dev 1:2.2.22-1ubuntu2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | #ifndef FTS_STORAGE_H
#define FTS_STORAGE_H
#include "mail-storage-private.h"
#include "fts-api.h"
struct fts_scores {
int refcount;
ARRAY_TYPE(fts_score_map) score_map;
};
struct fts_search_level {
ARRAY_TYPE(seq_range) definite_seqs, maybe_seqs;
buffer_t *args_matches;
ARRAY_TYPE(fts_score_map) score_map;
};
struct fts_search_context {
union mail_search_module_context module_ctx;
struct fts_backend *backend;
struct mailbox *box;
struct mailbox_transaction_context *t;
struct mail_search_args *args;
enum fts_lookup_flags flags;
pool_t result_pool;
ARRAY(struct fts_search_level) levels;
buffer_t *orig_matches;
uint32_t first_unindexed_seq;
/* final scores, combined from all levels */
struct fts_scores *scores;
struct fts_indexer_context *indexer_ctx;
unsigned int virtual_mailbox:1;
unsigned int fts_lookup_success:1;
unsigned int indexing_timed_out:1;
unsigned int enforced:1;
};
/* Figure out if we want to use full text search indexes and update
backends in fctx accordingly. */
void fts_search_analyze(struct fts_search_context *fctx);
/* Perform the actual index lookup and update definite_uids and maybe_uids. */
void fts_search_lookup(struct fts_search_context *fctx);
/* Returns FTS backend for the given mailbox (assumes it has one). */
struct fts_backend *fts_mailbox_backend(struct mailbox *box);
/* Returns FTS backend for the given mailbox list, or NULL if it has none. */
struct fts_backend *fts_list_backend(struct mailbox_list *list);
void fts_mail_allocated(struct mail *mail);
void fts_mailbox_allocated(struct mailbox *box);
void fts_mail_namespaces_added(struct mail_namespace *namespaces);
#endif
|