summaryrefslogtreecommitdiffstats
path: root/src/lib-storage/index/shared/shared-storage.h
blob: 5463b1c54812992337d0e90dbd3930e34492aa7c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#ifndef SHARED_STORAGE_H
#define SHARED_STORAGE_H

struct shared_storage {
	struct mail_storage storage;
	union mailbox_list_module_context list_module_ctx;

	const char *ns_prefix_pattern;
	const char *location, *unexpanded_location;

	const char *storage_class_name;
};

#define SHARED_STORAGE(s)	container_of(s, struct shared_storage, storage)

struct mailbox_list *shared_mailbox_list_alloc(void);

/* Returns -1 = error, 0 = user doesn't exist, 1 = ok */
int shared_storage_get_namespace(struct mail_namespace **_ns,
				 const char **_name);

#endif