Scroll to navigation

mapiproxy/libmapistore/mapistore.h(3) OpenChange mapistore library mapiproxy/libmapistore/mapistore.h(3)

NAME

mapiproxy/libmapistore/mapistore.h - MAPISTORE general API.

SYNOPSIS

#include <stdio.h>
 
#include <time.h>
 
#include <unistd.h>
 
#include <stdint.h>
 
#include <stdbool.h>
 
#include <tdb.h>
 
#include <ldb.h>
 
#include <talloc.h>
 
#include <util/debug.h>
 
#include 'libmapi/libmapi.h'
 

Functions


enum mapistore_error mapistore_add_context (struct mapistore_context *, const char *, const char *, uint64_t, uint32_t *, void **)
 
enum mapistore_error mapistore_add_context_ref_count (struct mapistore_context *, uint32_t)
 
const char * mapistore_backend_get_installdir (void)
 
init_backend_fn * mapistore_backend_load (TALLOC_CTX *, const char *)
 
struct backend_context * mapistore_backend_lookup (struct backend_context_list *, uint32_t)
 
struct backend_context * mapistore_backend_lookup_by_name (TALLOC_CTX *, const char *)
 
struct backend_context * mapistore_backend_lookup_by_uri (struct backend_context_list *, const char *)
 
enum mapistore_error mapistore_backend_register (const void *)
 
bool mapistore_backend_run_init (init_backend_fn *)
 
enum mapistore_error mapistore_del_context (struct mapistore_context *, uint32_t)
 
const char * mapistore_errstr (enum mapistore_error)
 
enum mapistore_error mapistore_folder_create_folder (struct mapistore_context *, uint32_t, void *, TALLOC_CTX *, uint64_t, struct SRow *, void **)
 
enum mapistore_error mapistore_folder_create_message (struct mapistore_context *, uint32_t, void *, TALLOC_CTX *, uint64_t, uint8_t, void **)
 
enum mapistore_error mapistore_folder_delete (struct mapistore_context *, uint32_t, void *, uint8_t)
 
enum mapistore_error mapistore_folder_delete_message (struct mapistore_context *, uint32_t, void *, uint64_t, uint8_t)
 
enum mapistore_error mapistore_folder_get_child_count (struct mapistore_context *, uint32_t, void *, enum mapistore_table_type, uint32_t *)
 
enum mapistore_error mapistore_folder_get_deleted_fmids (struct mapistore_context *, uint32_t, void *, TALLOC_CTX *, enum mapistore_table_type, uint64_t, struct UI8Array_r **, uint64_t *)
 
enum mapistore_error mapistore_folder_open_folder (struct mapistore_context *, uint32_t, void *, TALLOC_CTX *, uint64_t, void **)
 
enum mapistore_error mapistore_folder_open_message (struct mapistore_context *, uint32_t, void *, TALLOC_CTX *, uint64_t, bool, void **)
 
enum mapistore_error mapistore_get_queued_notifications (struct mapistore_context *, struct mapistore_subscription *, struct mapistore_notification_list **)
 
enum mapistore_error mapistore_get_queued_notifications_named (struct mapistore_context *, const char *, struct mapistore_notification_list **)
 
enum mapistore_error mapistore_indexing_get_new_folderID (struct mapistore_context *, uint64_t *)
 
enum mapistore_error mapistore_indexing_get_new_folderID_as_user (struct mapistore_context *, const char *, uint64_t *)
 
enum mapistore_error mapistore_indexing_get_new_folderIDs (struct mapistore_context *, TALLOC_CTX *, uint64_t, struct UI8Array_r **)
 
enum mapistore_error mapistore_indexing_record_add_fid (struct mapistore_context *, uint32_t, const char *, uint64_t)
 
enum mapistore_error mapistore_indexing_record_add_mid (struct mapistore_context *, uint32_t, const char *, uint64_t)
 
enum mapistore_error mapistore_indexing_record_del_fid (struct mapistore_context *, uint32_t, const char *, uint64_t, uint8_t)
 
enum mapistore_error mapistore_indexing_record_del_mid (struct mapistore_context *, uint32_t, const char *, uint64_t, uint8_t)
 
enum mapistore_error mapistore_indexing_record_get_uri (struct mapistore_context *, const char *, TALLOC_CTX *, uint64_t, char **, bool *)
 
enum mapistore_error mapistore_indexing_reserve_fmid_range (struct mapistore_context *, uint64_t, uint64_t *)
 
struct mapistore_context * mapistore_init (TALLOC_CTX *, struct loadparm_context *, const char *)
 
enum mapistore_error mapistore_message_get_message_data (struct mapistore_context *, uint32_t, void *, TALLOC_CTX *, struct mapistore_message **)
 
enum mapistore_error mapistore_message_modify_recipients (struct mapistore_context *, uint32_t, void *, struct SPropTagArray *, uint16_t, struct mapistore_message_recipient *)
 
enum mapistore_error mapistore_message_save (struct mapistore_context *, uint32_t, void *, TALLOC_CTX *)
 
enum mapistore_error mapistore_message_set_read_flag (struct mapistore_context *, uint32_t, void *, uint8_t)
 
enum mapistore_error mapistore_message_submit (struct mapistore_context *, uint32_t, void *, enum SubmitFlags)
 
enum mapistore_error mapistore_namedprops_create_id (struct namedprops_context *, struct MAPINAMEID, uint16_t)
 
enum mapistore_error mapistore_namedprops_get_mapped_id (struct namedprops_context *, struct MAPINAMEID, uint16_t *)
 
enum mapistore_error mapistore_namedprops_get_nameid (struct namedprops_context *, uint16_t, TALLOC_CTX *mem_ctx, struct MAPINAMEID **)
 
enum mapistore_error mapistore_namedprops_get_nameid_type (struct namedprops_context *, uint16_t, uint16_t *)
 
enum mapistore_error mapistore_namedprops_next_unused_id (struct namedprops_context *, uint16_t *)
 
enum mapistore_error mapistore_release (struct mapistore_context *)
 
enum mapistore_error mapistore_replica_mapping_guid_to_replid (struct mapistore_context *, const char *username, const struct GUID *, uint16_t *)
 
enum mapistore_error mapistore_replica_mapping_replid_to_guid (struct mapistore_context *, const char *username, uint16_t, struct GUID *)
 
enum mapistore_error mapistore_search_context_by_uri (struct mapistore_context *, const char *, uint32_t *, void **)
 
enum mapistore_error mapistore_set_connection_info (struct mapistore_context *, struct ldb_context *, struct openchangedb_context *, const char *)
 
void mapistore_set_default_indexing_url (const char *)
 
enum mapistore_error mapistore_set_mapping_path (const char *)
 

Detailed Description

MAPISTORE general API.
This header contains general functions, primarily for users of the store (rather than storage providers).

Function Documentation

enum mapistore_error mapistore_add_context (struct mapistore_context *mstore_ctx, const char *owner, const char *uri, uint64_tfid, uint32_t *context_id, void **backend_object)

Add a new connection context to mapistore
Parameters:
mstore_ctx pointer to the mapistore context
 
uri the connection context URI
 
context_id pointer to the context identifier the function returns
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References mapistore_backend_create_context(), MAPISTORE_ERR_CONTEXT_FAILED, MAPISTORE_ERR_INVALID_NAMESPACE, mapistore_indexing_add(), and MAPISTORE_SUCCESS.

enum mapistore_error mapistore_add_context_ref_count (struct mapistore_context *mstore_ctx, uint32_tcontext_id)

Increase the reference counter of an existing context
Parameters:
mstore_ctx pointer to the mapistore context
 
contex_id the context identifier referencing the context to update
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References mapistore_backend_add_ref_count(), mapistore_backend_lookup(), MAPISTORE_ERR_INVALID_PARAMETER, and MAPISTORE_ERROR.

const char* mapistore_backend_get_installdir (void)

Return the full path where mapistore backends are installed.
Returns:
Pointer to the full path where backends are installed.
Referenced by mapistore_backend_load().

init_backend_fn* mapistore_backend_load (TALLOC_CTX *mem_ctx, const char *path)

Load the initialization functions from backends DSO
Parameters:
mem_ctx pointer to the memory context
 
path pointer to the backend's DSO folder
Returns:
allocated array of functions pointers to initialization functions on success, otherwise NULL.
References mapistore_backend_get_installdir().
Referenced by mapistore_backend_init().

struct backend_context* mapistore_backend_lookup (struct backend_context_list *backend_list_ctx, uint32_tcontext_id)

find the context matching given context identifier
Parameters:
backend_list_ctx pointer to the backend context list
 
context_id the context identifier to search
Returns:
Pointer to the mapistore_backend context on success, otherwise NULL
Referenced by mapistore_add_context_ref_count(), mapistore_del_context(), mapistore_folder_create_folder(), mapistore_folder_create_message(), mapistore_folder_delete(), mapistore_folder_delete_message(), mapistore_folder_get_child_count(), mapistore_folder_get_deleted_fmids(), mapistore_folder_open_folder(), mapistore_folder_open_message(), mapistore_indexing_record_add_fmid(), mapistore_indexing_record_del_fmid(), mapistore_message_get_message_data(), mapistore_message_modify_recipients(), mapistore_message_save(), mapistore_message_set_read_flag(), and mapistore_message_submit().

struct backend_context* mapistore_backend_lookup_by_name (TALLOC_CTX *mem_ctx, const char *name)

Return a pointer on backend functions given its name
Parameters:
mem_ctx pointer to the memory context
 
name the backend name to lookup
Returns:
Allocated pointer to the mapistore_backend context on success, otherwise NULL
Referenced by mapistore_mgmt_generate_uri().

struct backend_context* mapistore_backend_lookup_by_uri (struct backend_context_list *backend_list_ctx, const char *uri)

find the context matching given uri string
Parameters:
backend_list_ctx pointer to the backend context list
 
uri the uri string to search
Returns:
Pointer to the mapistore_backend context on success, otherwise NULL
Referenced by mapistore_search_context_by_uri().

enum mapistore_error mapistore_backend_register (const void *_backend)

Register mapistore backends
Parameters:
backend pointer to the mapistore backend to register
Returns:
MAPISTORE_SUCCESS on success
References MAPISTORE_ERR_INVALID_PARAMETER, and MAPISTORE_SUCCESS.

bool mapistore_backend_run_init (init_backend_fn *fns)

Run specified initialization functions.
Parameters:
fns pointer to an array of mapistore backends initialization functions
Returns:
true on success, otherwise false
Referenced by mapistore_backend_init().

enum mapistore_error mapistore_del_context (struct mapistore_context *mstore_ctx, uint32_tcontext_id)

Delete an existing connection context from mapistore
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the context to delete
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References mapistore_backend_delete_context(), mapistore_backend_lookup(), MAPISTORE_ERR_INVALID_PARAMETER, MAPISTORE_ERR_REF_COUNT, MAPISTORE_ERROR, and MAPISTORE_SUCCESS.

const char* mapistore_errstr (enum mapistore_errormapistore_err)

return a string explaining what a mapistore error constant means.
Parameters:
mapistore_err the mapistore error constant
Returns:
constant string
References MAPISTORE_ERR_ALREADY_INITIALIZED, MAPISTORE_ERR_BACKEND_INIT, MAPISTORE_ERR_BACKEND_REGISTER, MAPISTORE_ERR_CONTEXT_FAILED, MAPISTORE_ERR_CORRUPTED, MAPISTORE_ERR_DATABASE_INIT, MAPISTORE_ERR_DATABASE_OPS, MAPISTORE_ERR_DENIED, MAPISTORE_ERR_EXIST, MAPISTORE_ERR_INVALID_DATA, MAPISTORE_ERR_INVALID_NAMESPACE, MAPISTORE_ERR_INVALID_PARAMETER, MAPISTORE_ERR_INVALID_URI, MAPISTORE_ERR_MSG_RCV, MAPISTORE_ERR_MSG_SEND, MAPISTORE_ERR_NO_DIRECTORY, MAPISTORE_ERR_NO_MEMORY, MAPISTORE_ERR_NOT_FOUND, MAPISTORE_ERR_NOT_IMPLEMENTED, MAPISTORE_ERR_NOT_INITIALIZED, MAPISTORE_ERR_REF_COUNT, MAPISTORE_ERROR, and MAPISTORE_SUCCESS.
Referenced by mapistore_init().

enum mapistore_error mapistore_folder_create_folder (struct mapistore_context *mstore_ctx, uint32_tcontext_id, void *folder, TALLOC_CTX *mem_ctx, uint64_tfid, struct SRow *aRow, void **child_folder)

Create a directory in mapistore
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the backend where the directory will be created
 
parent_fid the parent folder identifier
 
new_fid the folder identifier for the new folder
 
aRow pointer to MAPI data structures with properties to be added to the new folder
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE errors
References mapistore_backend_lookup(), and MAPISTORE_ERR_INVALID_PARAMETER.

enum mapistore_error mapistore_folder_create_message (struct mapistore_context *mstore_ctx, uint32_tcontext_id, void *folder, TALLOC_CTX *mem_ctx, uint64_tmid, uint8_tassociated, void **messagep)

Create a message in mapistore
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the backend where the messagewill be created
 
parent_fid the parent folder identifier
 
mid the message identifier to create
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE errors
References mapistore_backend_lookup(), and MAPISTORE_ERR_INVALID_PARAMETER.

enum mapistore_error mapistore_folder_delete (struct mapistore_context *mstore_ctx, uint32_tcontext_id, void *folder, uint8_tflags)

Remove a directory in mapistore
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the backend
 
parent_fid the parent folder identifier
 
fid the folder identifier representing the folder to delete
 
flags flags that control the behaviour of the operation
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE errors
References mapistore_backend_lookup(), MAPISTORE_ERR_EXIST, MAPISTORE_ERR_INVALID_PARAMETER, and MAPISTORE_SUCCESS.

enum mapistore_error mapistore_folder_delete_message (struct mapistore_context *mstore_ctx, uint32_tcontext_id, void *folder, uint64_tmid, uint8_tflags)

Delete a message from mapistore
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the backend where the message's to be located is stored
 
mid the message identifier of the folder to delete
 
flags flags that control the behaviour of the operation (MAPISTORE_SOFT_DELETE or MAPISTORE_PERMANENT_DELETE)
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE errors
References mapistore_backend_lookup(), and MAPISTORE_ERR_INVALID_PARAMETER.

enum mapistore_error mapistore_folder_get_child_count (struct mapistore_context *mstore_ctx, uint32_tcontext_id, void *folder, enum mapistore_table_typetable_type, uint32_t *RowCount)

Retrieve the number of child messages within a mapistore folder
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the backend
 
fid the folder identifier
 
RowCount pointer to the count result to return
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE errors
References mapistore_backend_lookup(), and MAPISTORE_ERR_INVALID_PARAMETER.

enum mapistore_error mapistore_folder_get_deleted_fmids (struct mapistore_context *mstore_ctx, uint32_tcontext_id, void *folder, TALLOC_CTX *mem_ctx, enum mapistore_table_typetable_type, uint64_tchange_num, struct UI8Array_r **fmidsp, uint64_t *cnp)

Get the array of deleted items following a specific change number
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the backend where the message's to be located is stored
 
folder the folder backend object
 
mem_ctx the TALLOC_CTX that should be used as parent for the returned array
 
table_type the type of object that we want to take into account
 
change_num the reference change number
 
fmidsp a pointer to the returned array
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE errors
References mapistore_backend_lookup(), and MAPISTORE_ERR_INVALID_PARAMETER.

enum mapistore_error mapistore_folder_open_folder (struct mapistore_context *mstore_ctx, uint32_tcontext_id, void *folder, TALLOC_CTX *mem_ctx, uint64_tfid, void **child_folder)

Open a directory in mapistore
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the backend where the directory will be opened
 
parent_fid the parent folder identifier
 
fid folder identifier to open
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE errors
References mapistore_backend_lookup(), and MAPISTORE_ERR_INVALID_PARAMETER.

enum mapistore_error mapistore_folder_open_message (struct mapistore_context *mstore_ctx, uint32_tcontext_id, void *folder, TALLOC_CTX *mem_ctx, uint64_tmid, boolread_write, void **messagep)

Open a message in mapistore
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the backend where the directory will be opened
 
parent_fid the parent folder identifier
 
mid the message identifier to open
 
pointer to the mapistore_message structure
Returns:
MAPISTORE SUCCESS on success, otherwise MAPISTORE errors
References mapistore_backend_lookup(), and MAPISTORE_ERR_INVALID_PARAMETER.

enum mapistore_error mapistore_get_queued_notifications (struct mapistore_context *mstore_ctx, struct mapistore_subscription *s, struct mapistore_notification_list **nl)

Return the list of pending mapistore notifications within the queue pointed by the mapistore subscription structure.
Parameters:
mstore_ctx pointer to the mapistore context
 
s pointer to the mapistore subscription where the mqueue file descriptor is stored
 
nl pointer on pointer to the list of mapistore noficiations to return
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References MAPISTORE_ERR_INVALID_PARAMETER, MAPISTORE_ERR_NOT_FOUND, MAPISTORE_ERR_NOT_INITIALIZED, and MAPISTORE_SUCCESS.

enum mapistore_error mapistore_get_queued_notifications_named (struct mapistore_context *mstore_ctx, const char *mqueue_name, struct mapistore_notification_list **nl)

Return the list of pending mapistore notifications available on the queue name specified in argument.
Parameters:
mstore_ctx pointer to the mapistore context
 
mqueue_name the name of the queue to open
 
nl pointer on pointer to the list of mapistore notifications to return
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error.
References MAPISTORE_ERR_INVALID_PARAMETER, MAPISTORE_ERR_NOT_FOUND, MAPISTORE_ERR_NOT_INITIALIZED, and MAPISTORE_SUCCESS.

enum mapistore_error mapistore_indexing_get_new_folderID (struct mapistore_context *mstore_ctx, uint64_t *fid)

Allocates a new FolderID and returns it
Parameters:
mstore_ctx pointer to the mapistore context
 
fid pointer to the fid value the function returns
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References mapistore_indexing_get_new_folderID_as_user().

enum mapistore_error mapistore_indexing_get_new_folderID_as_user (struct mapistore_context *mstore_ctx, const char *username, uint64_t *fid)

Allocates a new FolderID for a specific user and returns it
Parameters:
mstore_ctx pointer to the mapistore context
 
username name of the mailbox
 
fid pointer to the fid value the function returns
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References MAPISTORE_SUCCESS.
Referenced by mapistore_indexing_get_new_folderID().

enum mapistore_error mapistore_indexing_get_new_folderIDs (struct mapistore_context *mstore_ctx, TALLOC_CTX *mem_ctx, uint64_tmax, struct UI8Array_r **fids_p)

Allocates a batch of new folder ids and returns them
Parameters:
mstore_ctx pointer to the mapistore context
 
mem_ctx memory context where the fid will be allocated
 
max number of fids to allocate
 
fids_p pointer array of fids values the function returns
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References MAPISTORE_SUCCESS.

enum mapistore_error mapistore_indexing_record_add_fid (struct mapistore_context *mstore_ctx, uint32_tcontext_id, const char *username, uint64_tfid)

Add a fid record to the indexing database
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the indexing database to update
 
fid the fid to add
Note:
This is a wrapper to the internal common mapistore_indexing_record_add_fmid function.
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References mapistore_indexing_record_add_fmid().

enum mapistore_error mapistore_indexing_record_add_mid (struct mapistore_context *mstore_ctx, uint32_tcontext_id, const char *username, uint64_tmid)

Add a mid record to the indexing database
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the indexing database to update
 
mid the mid to add
Note:
This is a wrapper to the internal common mapistore_indexing_record_add_fmid function.
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References mapistore_indexing_record_add_fmid().

enum mapistore_error mapistore_indexing_record_del_fid (struct mapistore_context *mstore_ctx, uint32_tcontext_id, const char *username, uint64_tfid, uint8_tflags)

Delete a fid record from the indexing database
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the indexing database to update
 
fid the fid to remove
 
flags the type of deletion MAPISTORE_SOFT_DELETE or MAPISTORE_PERMANENT_DELETE
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References mapistore_indexing_record_del_fmid().

enum mapistore_error mapistore_indexing_record_del_mid (struct mapistore_context *mstore_ctx, uint32_tcontext_id, const char *username, uint64_tmid, uint8_tflags)

Delete a mid record from the indexing database
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the indexing database to update
 
mid the mid to remove
 
flags the type of deletion MAPISTORE_SOFT_DELETE or MAPISTORE_PERMANENT_DELETE
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References mapistore_indexing_record_del_fmid().

enum mapistore_error mapistore_indexing_record_get_uri (struct mapistore_context *mstore_ctx, const char *username, TALLOC_CTX *mem_ctx, uint64_tfmid, char **urip, bool *soft_deletedp)

Returns record data
Parameters:
mstore_ctx pointer to the mapistore context
 
username the name of the account where to look for the indexing database
 
mem_ctx pointer to the memory context
 
fmid the fmid/key to the record
 
urip pointer to the uri pointer
 
soft_deletedp pointer to the soft deleted pointer
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References MAPISTORE_ERR_NOT_INITIALIZED, MAPISTORE_ERROR, and mapistore_indexing_add().

enum mapistore_error mapistore_indexing_reserve_fmid_range (struct mapistore_context *mstore_ctx, uint64_trange_len, uint64_t *first_fmidp)

Reserve a range of FMID
Parameters:
mstore_ctx pointer to the mapistore context
 
range_len size of the range of fmids to reserve
 
first_fmidp pointer to the first reserved fid value the function returns
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References MAPISTORE_ERR_INVALID_PARAMETER, mapistore_indexing_search(), and MAPISTORE_SUCCESS.

struct mapistore_context* mapistore_init (TALLOC_CTX *mem_ctx, struct loadparm_context *lp_ctx, const char *path)

Initialize the mapistore context
Parameters:
mem_ctx pointer to the memory context
 
lp_ctx loadparm_context to get smb.conf options
 
path the path to the location to load the backend providers from (NULL for default)
Returns:
allocate mapistore context on success, otherwise NULL
References mapistore_backend_init(), mapistore_errstr(), mapistore_set_default_indexing_url(), mapistore_set_mapping_path(), and MAPISTORE_SUCCESS.

enum mapistore_error mapistore_message_get_message_data (struct mapistore_context *mstore_ctx, uint32_tcontext_id, void *message, TALLOC_CTX *mem_ctx, struct mapistore_message **msg)

Modify recipients of a message in mapistore
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the backend where properties will be stored
 
mid the identifier referencing the message the array of recipient rows the number of elements in the array
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE errors
References mapistore_backend_lookup(), and MAPISTORE_ERR_INVALID_PARAMETER.

enum mapistore_error mapistore_message_modify_recipients (struct mapistore_context *mstore_ctx, uint32_tcontext_id, void *message, struct SPropTagArray *columns, uint16_tcount, struct mapistore_message_recipient *recipients)

Modify recipients of a message in mapistore
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the backend where properties will be stored
 
mid the identifier referencing the message the array of recipient rows the number of elements in the array
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE errors
References mapistore_backend_lookup(), and MAPISTORE_ERR_INVALID_PARAMETER.

enum mapistore_error mapistore_message_save (struct mapistore_context *mstore_ctx, uint32_tcontext_id, void *message, TALLOC_CTX *mem_ctx)

Commit the changes made to a message in mapistore
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the backend where the message's changes will be saved
 
mid the message identifier to save
 
flags flags associated to the commit operation
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE errors
References mapistore_backend_lookup(), and MAPISTORE_ERR_INVALID_PARAMETER.

enum mapistore_error mapistore_message_set_read_flag (struct mapistore_context *mstore_ctx, uint32_tcontext_id, void *message, uint8_tflag)

Commit the changes made to a message in mapistore
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the backend where the message's changes will be saved
 
mid the message identifier to save
 
flags flags associated to the commit operation
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE errors
References mapistore_backend_lookup(), and MAPISTORE_ERR_INVALID_PARAMETER.

enum mapistore_error mapistore_message_submit (struct mapistore_context *mstore_ctx, uint32_tcontext_id, void *message, enum SubmitFlagsflags)

Submits a message for sending.
Parameters:
mstore_ctx pointer to the mapistore context
 
context_id the context identifier referencing the backend where the message will be submitted
 
mid the message identifier representing the message to submit
 
flags flags associated to the submit operation
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE errors
References mapistore_backend_lookup(), and MAPISTORE_ERR_INVALID_PARAMETER.

enum mapistore_error mapistore_namedprops_create_id (struct namedprops_context *nprops, struct MAPINAMEIDnameid, uint16_tmapped_id)

return the mapped property ID matching the nameid structure passed in parameter.
Parameters:
ldb_ctx pointer to the namedprops ldb context
 
nameid the MAPINAMEID structure to lookup
 
propID pointer to the property ID the function returns
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE_ERROR
References MAPISTORE_ERROR.

enum mapistore_error mapistore_namedprops_get_mapped_id (struct namedprops_context *nprops, struct MAPINAMEIDnameid, uint16_t *propID)

return the mapped property ID matching the nameid structure passed in parameter.
Parameters:
ldb_ctx pointer to the namedprops ldb context
 
nameid the MAPINAMEID structure to lookup
 
propID pointer to the property ID the function returns
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE_ERROR
References MAPISTORE_ERROR.

enum mapistore_error mapistore_namedprops_get_nameid (struct namedprops_context *nprops, uint16_tpropID, TALLOC_CTX *mem_ctx, struct MAPINAMEID **nameidp)

return the nameid structture matching the mapped property ID passed in parameter.
Parameters:
ldb_ctx pointer to the namedprops ldb context
 
propID the property ID to lookup
 
nameid pointer to the MAPINAMEID structure the function returns
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE_ERROR
References MAPISTORE_ERROR.

enum mapistore_error mapistore_namedprops_get_nameid_type (struct namedprops_context *nprops, uint16_tpropID, uint16_t *propTypeP)

return the type matching the mapped property ID passed in parameter.
Parameters:
ldb_ctx pointer to the namedprops ldb context
 
propID the property ID to lookup
 
propTypeP pointer to the uint16_t that will receive the property type
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE_ERROR
References MAPISTORE_ERROR, and MAPISTORE_SUCCESS.

enum mapistore_error mapistore_namedprops_next_unused_id (struct namedprops_context *nprops, uint16_t *highest_id)

Returns the next unmapped property ID
Parameters:
nprops pointer to the namedprops context
 
highest_id pointer to the next unused id to return
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References MAPISTORE_ERR_INVALID_PARAMETER, and MAPISTORE_SUCCESS.

enum mapistore_error mapistore_release (struct mapistore_context *mstore_ctx)

Release the mapistore context and destroy any data associated
Parameters:
mstore_ctx pointer to the mapistore context
Note:
The function needs to rely on talloc destructors which is not implemented in code yet.
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References MAPISTORE_ERR_NOT_INITIALIZED, and MAPISTORE_SUCCESS.

enum mapistore_error mapistore_replica_mapping_guid_to_replid (struct mapistore_context *mstore_ctx, const char *username, const struct GUID *guidP, uint16_t *replidP)

Search a replica guid in the database, creates it if it does not exist
Parameters:
mstore_ctx pointer to the mapistore context
 
guidP the replica guid
 
replidP pointer to the returned replica id
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References MAPISTORE_ERROR, and MAPISTORE_SUCCESS.

enum mapistore_error mapistore_replica_mapping_replid_to_guid (struct mapistore_context *mstore_ctx, const char *username, uint16_treplid, struct GUID *guidP)

Search a replica id in the database
Parameters:
mstore_ctx pointer to the mapistore context
 
replid the replica id
 
guidP pointer to the returned replica guid
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References MAPISTORE_ERROR, and MAPISTORE_SUCCESS.

enum mapistore_error mapistore_search_context_by_uri (struct mapistore_context *mstore_ctx, const char *uri, uint32_t *context_id, void **backend_object)

Search for an existing context given its uri
Parameters:
mstore_ctx pointer to the mapistore context
 
uri the URI to lookup
 
context_id pointer to the context identifier to return
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References mapistore_backend_lookup_by_uri(), MAPISTORE_ERR_NOT_FOUND, MAPISTORE_ERROR, and MAPISTORE_SUCCESS.

enum mapistore_error mapistore_set_connection_info (struct mapistore_context *mstore_ctx, struct ldb_context *sam_ctx, struct openchangedb_context *oc_ctx, const char *username)

Set connection info for current mapistore context
Parameters:
mstore_ctx pointer to the mapistore context
 
oc_ctx pointer to the openchange ldb database
 
username pointer to the current username
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References MAPISTORE_ERR_INVALID_PARAMETER, MAPISTORE_ERR_NOT_INITIALIZED, and MAPISTORE_SUCCESS.

void mapistore_set_default_indexing_url (const char *url)

Set the default backend url. If none is set, a tdb file per user will be used.
Parameters:
url default backend url to be used
Referenced by mapistore_init().

enum mapistore_error mapistore_set_mapping_path (const char *path)

Set the mapping path
Parameters:
path pointer to the mapping path
Note:
The mapping path can be set unless id_mapping_context is initialized. If path is NULL and mapping path is not yet initialized, then mapping_path will be reset to its default value when the initialization routine is called.
Returns:
MAPISTORE_SUCCESS on success, otherwise MAPISTORE error
References MAPISTORE_ERR_NO_DIRECTORY, and MAPISTORE_SUCCESS.
Referenced by mapistore_init().

Author

Generated automatically by Doxygen for OpenChange mapistore library from the source code.
Tue Apr 25 2017 Version 2.2