FastTransfer and ICS object routines and Rops. More...
#include "mapiproxy/libmapiserver/libmapiserver.h"
#include "dcesrv_exchange_emsmdb.h"
Functions | |
static bool | convertIdToFMID (const struct GUID *replica_guid, uint8_t *data, uint32_t size, uint64_t *fmidP) |
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopFastTransferSourceCopyTo (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct EcDoRpc_MAPI_REQ *mapi_req, struct EcDoRpc_MAPI_REPL *mapi_repl, uint32_t *handles, uint16_t *size) |
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopFastTransferSourceGetBuffer (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct EcDoRpc_MAPI_REQ *mapi_req, struct EcDoRpc_MAPI_REPL *mapi_repl, uint32_t *handles, uint16_t *size) |
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopGetLocalReplicaIds (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct EcDoRpc_MAPI_REQ *mapi_req, struct EcDoRpc_MAPI_REPL *mapi_repl, uint32_t *handles, uint16_t *size) |
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopSetLocalReplicaMidsetDeleted (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct EcDoRpc_MAPI_REQ *mapi_req, struct EcDoRpc_MAPI_REPL *mapi_repl, uint32_t *handles, uint16_t *size) |
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopSyncConfigure (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct EcDoRpc_MAPI_REQ *mapi_req, struct EcDoRpc_MAPI_REPL *mapi_repl, uint32_t *handles, uint16_t *size) |
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopSyncGetTransferState (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct EcDoRpc_MAPI_REQ *mapi_req, struct EcDoRpc_MAPI_REPL *mapi_repl, uint32_t *handles, uint16_t *size) |
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopSyncImportDeletes (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct EcDoRpc_MAPI_REQ *mapi_req, struct EcDoRpc_MAPI_REPL *mapi_repl, uint32_t *handles, uint16_t *size) |
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopSyncImportHierarchyChange (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct EcDoRpc_MAPI_REQ *mapi_req, struct EcDoRpc_MAPI_REPL *mapi_repl, uint32_t *handles, uint16_t *size) |
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopSyncImportMessageChange (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct EcDoRpc_MAPI_REQ *mapi_req, struct EcDoRpc_MAPI_REPL *mapi_repl, uint32_t *handles, uint16_t *size) |
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopSyncImportMessageMove (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct EcDoRpc_MAPI_REQ *mapi_req, struct EcDoRpc_MAPI_REPL *mapi_repl, uint32_t *handles, uint16_t *size) |
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopSyncImportReadStateChanges (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct EcDoRpc_MAPI_REQ *mapi_req, struct EcDoRpc_MAPI_REPL *mapi_repl, uint32_t *handles, uint16_t *size) |
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopSyncOpenCollector (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct EcDoRpc_MAPI_REQ *mapi_req, struct EcDoRpc_MAPI_REPL *mapi_repl, uint32_t *handles, uint16_t *size) |
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopSyncUploadStateStreamBegin (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct EcDoRpc_MAPI_REQ *mapi_req, struct EcDoRpc_MAPI_REPL *mapi_repl, uint32_t *handles, uint16_t *size) |
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopSyncUploadStateStreamContinue (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct EcDoRpc_MAPI_REQ *mapi_req, struct EcDoRpc_MAPI_REPL *mapi_repl, uint32_t *handles, uint16_t *size) |
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopSyncUploadStateStreamEnd (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct EcDoRpc_MAPI_REQ *mapi_req, struct EcDoRpc_MAPI_REPL *mapi_repl, uint32_t *handles, uint16_t *size) |
static struct MessageReadState * | get_MessageReadState (TALLOC_CTX *mem_ctx, struct Binary_r *bin) |
static void | oxcfxics_fill_transfer_state_arrays (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct emsmdbp_object_synccontext *synccontext, const char *owner, struct oxcfxics_sync_data *sync_data, struct emsmdbp_object *folder_object) |
static int | oxcfxics_fmid_from_source_key (struct emsmdbp_context *emsmdbp_ctx, const char *owner, struct SBinary_short *source_key, uint64_t *fmidp) |
static struct Binary_r * | oxcfxics_make_gid (TALLOC_CTX *mem_ctx, struct GUID *replica_guid, uint64_t id) |
static struct Binary_r * | oxcfxics_make_xid (TALLOC_CTX *mem_ctx, struct GUID *replica_guid, uint64_t *id, uint8_t idlength) |
static void | oxcfxics_ndr_check (struct ndr_push *ndr, const char *label) |
static void | oxcfxics_ndr_push_properties (struct ndr_push *ndr, struct ndr_push *cutmarks_ndr, void *nprops_ctx, struct SPropTagArray *properties, void **data_pointers, enum MAPISTATUS *retvals) |
static void | oxcfxics_ndr_push_simple_data (struct ndr_push *ndr, uint16_t data_type, const void *value) |
static void | oxcfxics_ndr_push_transfer_state (struct ndr_push *ndr, const char *owner, struct emsmdbp_object *synccontext_object) |
static void | oxcfxics_prepare_synccontext_with_folderChange (struct emsmdbp_object *synccontext_object, const char *owner) |
static void | oxcfxics_prepare_synccontext_with_messageChange (TALLOC_CTX *mem_ctx, struct emsmdbp_object *synccontext_object, const char *owner) |
static void | oxcfxics_push_folderChange (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct emsmdbp_object_synccontext *synccontext, const char *owner, struct emsmdbp_object *topmost_folder_object, struct oxcfxics_sync_data *sync_data, struct emsmdbp_object *folder_object) |
static void | oxcfxics_push_messageChange (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct emsmdbp_object_synccontext *synccontext, const char *owner, struct oxcfxics_sync_data *sync_data, struct emsmdbp_object *folder_object) |
static void | oxcfxics_push_messageChange_attachments (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct oxcfxics_sync_data *sync_data, struct emsmdbp_object *message_object) |
static void | oxcfxics_push_messageChange_recipients (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct oxcfxics_sync_data *sync_data, struct emsmdbp_object *message_object, struct mapistore_message *msg) |
static void | oxcfxics_table_set_cn_restriction (struct emsmdbp_context *emsmdbp_ctx, struct emsmdbp_object *table_object, const char *owner, struct idset *cnset_seen) |
FastTransfer and ICS object routines and Rops.
static bool convertIdToFMID | ( | const struct GUID * | replica_guid, | |
uint8_t * | data, | |||
uint32_t | size, | |||
uint64_t * | fmidP | |||
) | [static] |
EcDoRpc SyncImportMessageMove (0x78) Rop.
mem_ctx | pointer to the memory context | |
emsmdbp_ctx | pointer to the emsmdb provider context | |
mapi_req | pointer to the SyncImportMessageMove EcDoRpc_MAPI_REQ | |
mapi_repl | pointer to the SyncImportMessageMove EcDoRpc_MAPI_REPL | |
handles | pointer to the MAPI handles array | |
size | pointer to the mapi_response size to update |
Referenced by EcDoRpc_RopSyncImportMessageMove().
_PUBLIC_ enum MAPISTATUS EcDoRpc_RopFastTransferSourceCopyTo | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct EcDoRpc_MAPI_REQ * | mapi_req, | |||
struct EcDoRpc_MAPI_REPL * | mapi_repl, | |||
uint32_t * | handles, | |||
uint16_t * | size | |||
) |
EcDoRpc EcDoRpc_RopFastTransferSourceCopyTo (0x4d) Rop. This operation initializes a FastTransfer operation to download content from a given messaging object and its descendant subobjects.
mem_ctx | pointer to the memory context | |
emsmdbp_ctx | pointer to the emsmdb provider context | |
mapi_req | pointer to the EcDoRpc_RopFastTransferSourceCopyTo EcDoRpc_MAPI_REQ structure | |
mapi_repl | pointer to the EcDoRpc_RopFastTransferSourceCopyTo EcDoRpc_MAPI_REPL structure | |
handles | pointer to the MAPI handles array | |
size | pointer to the mapi_response size to update |
References emsmdbp_object_ftcontext_init(), emsmdbp_object_get_available_properties(), emsmdbp_object_get_properties(), emsmdbp_context::handles_ctx, libmapiserver_RopFastTransferSourceCopyTo_size(), mapi_handles_add(), mapi_handles_get_private_data(), mapi_handles_search(), mapi_handles_set_private_data(), emsmdbp_context::mstore_ctx, emsmdbp_object::object, oxcfxics_ndr_push_properties(), and emsmdbp_object::parent_object.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ enum MAPISTATUS EcDoRpc_RopFastTransferSourceGetBuffer | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct EcDoRpc_MAPI_REQ * | mapi_req, | |||
struct EcDoRpc_MAPI_REPL * | mapi_repl, | |||
uint32_t * | handles, | |||
uint16_t * | size | |||
) |
EcDoRpc EcDoRpc_RopFastTransferSourceGetBuffer (0x4e) Rop. This operation downloads the next portion of a FastTransfer stream that is produced by a previously configured download operation.
mem_ctx | pointer to the memory context | |
emsmdbp_ctx | pointer to the emsmdb provider context | |
mapi_req | pointer to the FastTransferSourceGetBuffer EcDoRpc_MAPI_REQ structure | |
mapi_repl | pointer to the FastTransferSourceGetBuffer EcDoRpc_MAPI_REPL structure | |
handles | pointer to the MAPI handles array | |
size | pointer to the mapi_response size to update |
References emsmdbp_stream::buffer, emsmdbp_get_owner(), EMSMDBP_OBJECT_FTCONTEXT, EMSMDBP_OBJECT_SYNCCONTEXT, emsmdbp_stream_read_buffer(), emsmdbp_objects::ftcontext, emsmdbp_context::handles_ctx, libmapiserver_RopFastTransferSourceGetBuffer_size(), mapi_handles_get_private_data(), mapi_handles_search(), emsmdbp_object::object, oxcfxics_prepare_synccontext_with_folderChange(), oxcfxics_prepare_synccontext_with_messageChange(), emsmdbp_stream::position, emsmdbp_object_ftcontext::stream, and emsmdbp_object::type.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ enum MAPISTATUS EcDoRpc_RopGetLocalReplicaIds | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct EcDoRpc_MAPI_REQ * | mapi_req, | |||
struct EcDoRpc_MAPI_REPL * | mapi_repl, | |||
uint32_t * | handles, | |||
uint16_t * | size | |||
) |
EcDoRpc EcDoRpc_RopGetLocalReplicaIds (0x7f) Rop. This operation reserves a range of IDs to be used by a local replica.
mem_ctx | pointer to the memory context | |
emsmdbp_ctx | pointer to the emsmdb provider context | |
mapi_req | pointer to the GetLocalReplicaIds EcDoRpc_MAPI_REQ structure | |
mapi_repl | pointer to the GetLocalReplicaIds EcDoRpc_MAPI_REPL structure | |
handles | pointer to the MAPI handles array | |
size | pointer to the mapi_response size to update |
References EMSMDBP_OBJECT_MAILBOX, emsmdbp_replid_to_guid(), emsmdbp_context::handles_ctx, libmapiserver_RopGetLocalReplicaIds_size(), emsmdbp_objects::mailbox, mapi_handles_get_private_data(), mapi_handles_search(), emsmdbp_object::object, emsmdbp_context::oc_ctx, openchangedb_reserve_fmid_range(), emsmdbp_object_mailbox::owner_username, and emsmdbp_object::type.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ enum MAPISTATUS EcDoRpc_RopSetLocalReplicaMidsetDeleted | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct EcDoRpc_MAPI_REQ * | mapi_req, | |||
struct EcDoRpc_MAPI_REPL * | mapi_repl, | |||
uint32_t * | handles, | |||
uint16_t * | size | |||
) |
EcDoRpc SetLocalReplicaMidsetDeleted (0x93) Rop.
mem_ctx | pointer to the memory context | |
emsmdbp_ctx | pointer to the emsmdb provider context | |
mapi_req | pointer to the SetLocalReplicaMidsetDeleted EcDoRpc_MAPI_REQ | |
mapi_repl | pointer to the SetLocalReplicaMidsetDeleted EcDoRpc_MAPI_REPL | |
handles | pointer to the MAPI handles array | |
size | pointer to the mapi_response size to update |
References libmapiserver_RopSetLocalReplicaMidsetDeleted_size().
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ enum MAPISTATUS EcDoRpc_RopSyncConfigure | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct EcDoRpc_MAPI_REQ * | mapi_req, | |||
struct EcDoRpc_MAPI_REPL * | mapi_repl, | |||
uint32_t * | handles, | |||
uint16_t * | size | |||
) |
EcDoRpc EcDoRpc_RopSyncConfigure (0x70) Rop.
mem_ctx | pointer to the memory context | |
emsmdbp_ctx | pointer to the emsmdb provider context | |
mapi_req | pointer to the SyncConfigure EcDoRpc_MAPI_REQ structure | |
mapi_repl | pointer to the SyncConfigure EcDoRpc_MAPI_REPL structure | |
handles | pointer to the MAPI handles array | |
size | pointer to the mapi_response size to update |
References emsmdbp_syncconfigure_request::best_body, emsmdbp_syncconfigure_request::contents_mode, emsmdbp_folder_open_table(), EMSMDBP_OBJECT_FOLDER, emsmdbp_object_synccontext_init(), emsmdbp_object_table_get_available_properties(), emsmdbp_syncconfigure_request::fai, emsmdbp_object_synccontext::fai_properties, emsmdbp_syncconfigure_request::force_unicode, mapi_handles::handle, emsmdbp_context::handles_ctx, emsmdbp_syncconfigure_request::ignore_no_longer_in_scope, emsmdbp_syncconfigure_request::ignored_specified_on_fai, libmapiserver_RopSyncConfigure_size(), mapi_handles_add(), mapi_handles_get_private_data(), mapi_handles_search(), mapi_handles_set_private_data(), emsmdbp_syncconfigure_request::no_deletions, emsmdbp_syncconfigure_request::no_foreign_identifiers, emsmdbp_syncconfigure_request::no_soft_deletions, emsmdbp_syncconfigure_request::normal, emsmdbp_object::object, emsmdbp_syncconfigure_request::order_by_delivery_time, emsmdbp_syncconfigure_request::partial_item, emsmdbp_syncconfigure_request::progress, emsmdbp_object_synccontext::properties, emsmdbp_syncconfigure_request::read_state, emsmdbp_syncconfigure_request::recover_mode, emsmdbp_object_synccontext::request, emsmdbp_syncconfigure_request::request_cn, emsmdbp_syncconfigure_request::request_eid, emsmdbp_syncconfigure_request::request_message_size, emsmdbp_objects::synccontext, emsmdbp_object::type, emsmdbp_syncconfigure_request::unicode, and emsmdbp_syncconfigure_request::use_cpid.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ enum MAPISTATUS EcDoRpc_RopSyncGetTransferState | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct EcDoRpc_MAPI_REQ * | mapi_req, | |||
struct EcDoRpc_MAPI_REPL * | mapi_repl, | |||
uint32_t * | handles, | |||
uint16_t * | size | |||
) |
EcDoRpc EcDoRpc_RopSyncGetTransferState (0x82) Rop.
mem_ctx | pointer to the memory context | |
emsmdbp_ctx | pointer to the emsmdb provider context | |
mapi_req | pointer to the SyncGetTransferState EcDoRpc_MAPI_REQ structure | |
mapi_repl | pointer to the SyncGetTransferState EcDoRpc_MAPI_REPL structure | |
handles | pointer to the MAPI handles array | |
size | pointer to the mapi_response size to update |
References emsmdbp_stream::buffer, emsmdbp_object_ftcontext::cutmarks, emsmdbp_get_owner(), emsmdbp_object_ftcontext_init(), EMSMDBP_OBJECT_SYNCCONTEXT, emsmdbp_objects::ftcontext, emsmdbp_context::handles_ctx, libmapiserver_RopSyncGetTransferState_size(), mapi_handles_add(), mapi_handles_get_private_data(), mapi_handles_search(), mapi_handles_set_private_data(), emsmdbp_object::object, oxcfxics_ndr_push_transfer_state(), emsmdbp_object_ftcontext::stream, and emsmdbp_object::type.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ enum MAPISTATUS EcDoRpc_RopSyncImportDeletes | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct EcDoRpc_MAPI_REQ * | mapi_req, | |||
struct EcDoRpc_MAPI_REPL * | mapi_repl, | |||
uint32_t * | handles, | |||
uint16_t * | size | |||
) |
EcDoRpc SyncImportDeletes (0x74) Rop.
mem_ctx | pointer to the memory context | |
emsmdbp_ctx | pointer to the emsmdb provider context | |
mapi_req | pointer to the SyncImportDeletes EcDoRpc_MAPI_REQ | |
mapi_repl | pointer to the SyncImportDeletes EcDoRpc_MAPI_REPL | |
handles | pointer to the MAPI handles array | |
size | pointer to the mapi_response size to update |
References emsmdbp_object::backend_object, emsmdbp_folder_delete(), emsmdbp_get_contextID(), emsmdbp_get_owner(), emsmdbp_is_mapistore(), EMSMDBP_OBJECT_SYNCCONTEXT, emsmdbp_context::handles_ctx, libmapiserver_RopSyncImportDeletes_size(), mapi_handles_get_private_data(), mapi_handles_search(), emsmdbp_context::mstore_ctx, emsmdbp_context::oc_ctx, openchangedb_get_MailboxReplica(), oxcfxics_fmid_from_source_key(), emsmdbp_object::parent_object, and emsmdbp_object::type.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ enum MAPISTATUS EcDoRpc_RopSyncImportHierarchyChange | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct EcDoRpc_MAPI_REQ * | mapi_req, | |||
struct EcDoRpc_MAPI_REPL * | mapi_repl, | |||
uint32_t * | handles, | |||
uint16_t * | size | |||
) |
EcDoRpc EcDoRpc_RopSyncImportHierarchyChange (0x73) Rop.
mem_ctx | pointer to the memory context | |
emsmdbp_ctx | pointer to the emsmdb provider context | |
mapi_req | pointer to the SyncImportHierarchyChange EcDoRpc_MAPI_REQ structure | |
mapi_repl | pointer to the SyncImportHierarchyChange EcDoRpc_MAPI_REPL structure | |
handles | pointer to the MAPI handles array | |
size | pointer to the mapi_response size to update |
References emsmdbp_get_owner(), emsmdbp_object_create_folder(), emsmdbp_object_open_folder(), emsmdbp_object_open_folder_by_fid(), emsmdbp_object_set_properties(), EMSMDBP_OBJECT_SYNCCONTEXT, emsmdbp_objects::folder, emsmdbp_object_folder::folderID, emsmdbp_context::handles_ctx, libmapiserver_RopSyncImportHierarchyChange_size(), mapi_handles_get_private_data(), mapi_handles_search(), emsmdbp_object::object, emsmdbp_context::oc_ctx, openchangedb_get_MailboxReplica(), openchangedb_get_new_changeNumber(), oxcfxics_fmid_from_source_key(), emsmdbp_object::parent_object, and emsmdbp_object::type.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ enum MAPISTATUS EcDoRpc_RopSyncImportMessageChange | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct EcDoRpc_MAPI_REQ * | mapi_req, | |||
struct EcDoRpc_MAPI_REPL * | mapi_repl, | |||
uint32_t * | handles, | |||
uint16_t * | size | |||
) |
EcDoRpc EcDoRpc_RopSyncImportMessageChange (0x72) Rop.
mem_ctx | pointer to the memory context | |
emsmdbp_ctx | pointer to the emsmdb provider context | |
mapi_req | pointer to the SyncImportMessageChange EcDoRpc_MAPI_REQ structure | |
mapi_repl | pointer to the SyncImportMessageChange EcDoRpc_MAPI_REPL structure | |
handles | pointer to the MAPI handles array | |
size | pointer to the mapi_response size to update |
References emsmdbp_object::backend_object, emsmdbp_get_contextID(), emsmdbp_get_owner(), emsmdbp_is_mapistore(), emsmdbp_object_message_init(), emsmdbp_object_message_open(), emsmdbp_object_set_properties(), EMSMDBP_OBJECT_SYNCCONTEXT, emsmdbp_objects::folder, emsmdbp_object_folder::folderID, emsmdbp_context::handles_ctx, libmapiserver_RopSyncImportMessageChange_size(), mapi_handles_add(), mapi_handles_delete(), mapi_handles_get_private_data(), mapi_handles_search(), mapi_handles_set_private_data(), emsmdbp_context::mstore_ctx, emsmdbp_object::object, emsmdbp_context::oc_ctx, openchangedb_get_MailboxReplica(), oxcfxics_fmid_from_source_key(), emsmdbp_object::parent_object, and emsmdbp_object::type.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ enum MAPISTATUS EcDoRpc_RopSyncImportMessageMove | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct EcDoRpc_MAPI_REQ * | mapi_req, | |||
struct EcDoRpc_MAPI_REPL * | mapi_repl, | |||
uint32_t * | handles, | |||
uint16_t * | size | |||
) |
References emsmdbp_object::backend_object, convertIdToFMID(), emsmdbp_get_contextID(), emsmdbp_get_owner(), emsmdbp_is_mapistore(), emsmdbp_object_open_folder_by_fid(), EMSMDBP_OBJECT_SYNCCONTEXT, emsmdbp_replid_to_guid(), emsmdbp_context::handles_ctx, libmapiserver_RopSyncImportMessageMove_size(), mapi_handles_get_private_data(), mapi_handles_search(), emsmdbp_context::mstore_ctx, emsmdbp_object::parent_object, and emsmdbp_object::type.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ enum MAPISTATUS EcDoRpc_RopSyncImportReadStateChanges | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct EcDoRpc_MAPI_REQ * | mapi_req, | |||
struct EcDoRpc_MAPI_REPL * | mapi_repl, | |||
uint32_t * | handles, | |||
uint16_t * | size | |||
) |
EcDoRpc SyncImportReadStateChanges (0x80) Rop.
mem_ctx | pointer to the memory context | |
emsmdbp_ctx | pointer to the emsmdb provider context | |
mapi_req | pointer to the SyncImportReadStateChanges EcDoRpc_MAPI_REQ | |
mapi_repl | pointer to the SyncImportReadStateChanges EcDoRpc_MAPI_REPL | |
handles | pointer to the MAPI handles array | |
size | pointer to the mapi_response size to update |
References emsmdbp_object::backend_object, emsmdbp_get_contextID(), emsmdbp_get_owner(), emsmdbp_guid_to_replid(), emsmdbp_is_mapistore(), emsmdbp_object_message_open(), EMSMDBP_OBJECT_SYNCCONTEXT, emsmdbp_objects::folder, emsmdbp_object_folder::folderID, get_MessageReadState(), emsmdbp_context::handles_ctx, libmapiserver_RopSyncImportReadStateChanges_size(), mapi_handles_get_private_data(), mapi_handles_search(), emsmdbp_context::mstore_ctx, emsmdbp_object::object, emsmdbp_object::parent_object, and emsmdbp_object::type.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ enum MAPISTATUS EcDoRpc_RopSyncOpenCollector | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct EcDoRpc_MAPI_REQ * | mapi_req, | |||
struct EcDoRpc_MAPI_REPL * | mapi_repl, | |||
uint32_t * | handles, | |||
uint16_t * | size | |||
) |
EcDoRpc EcDoRpc_RopSyncOpenCollector (0x7e) Rop.
mem_ctx | pointer to the memory context | |
emsmdbp_ctx | pointer to the emsmdb provider context | |
mapi_req | pointer to the SyncOpenCollector EcDoRpc_MAPI_REQ structure | |
mapi_repl | pointer to the SyncOpenCollector EcDoRpc_MAPI_REPL structure | |
handles | pointer to the MAPI handles array | |
size | pointer to the mapi_response size to update |
References emsmdbp_syncconfigure_request::contents_mode, EMSMDBP_OBJECT_FOLDER, emsmdbp_object_synccontext_init(), emsmdbp_context::handles_ctx, emsmdbp_object_synccontext::is_collector, libmapiserver_RopSyncOpenCollector_size(), mapi_handles_add(), mapi_handles_get_private_data(), mapi_handles_search(), mapi_handles_set_private_data(), emsmdbp_object::object, emsmdbp_object_synccontext::request, emsmdbp_objects::synccontext, and emsmdbp_object::type.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ enum MAPISTATUS EcDoRpc_RopSyncUploadStateStreamBegin | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct EcDoRpc_MAPI_REQ * | mapi_req, | |||
struct EcDoRpc_MAPI_REPL * | mapi_repl, | |||
uint32_t * | handles, | |||
uint16_t * | size | |||
) |
EcDoRpc EcDoRpc_RopSyncUploadStateStreamBegin (0x75) Rop.
mem_ctx | pointer to the memory context | |
emsmdbp_ctx | pointer to the emsmdb provider context | |
mapi_req | pointer to the SyncUploadStateStreamBegin EcDoRpc_MAPI_REQ structure | |
mapi_repl | pointer to the SyncUploadStateStreamBegin EcDoRpc_MAPI_REPL structure | |
handles | pointer to the MAPI handles array | |
size | pointer to the mapi_response size to update |
References emsmdbp_stream::buffer, EMSMDBP_OBJECT_SYNCCONTEXT, emsmdbp_context::handles_ctx, libmapiserver_RopSyncUploadStateStreamBegin_size(), mapi_handles_get_private_data(), mapi_handles_search(), emsmdbp_object::object, emsmdbp_object_synccontext::state_property, emsmdbp_object_synccontext::state_stream, emsmdbp_objects::synccontext, and emsmdbp_object::type.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ enum MAPISTATUS EcDoRpc_RopSyncUploadStateStreamContinue | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct EcDoRpc_MAPI_REQ * | mapi_req, | |||
struct EcDoRpc_MAPI_REPL * | mapi_repl, | |||
uint32_t * | handles, | |||
uint16_t * | size | |||
) |
EcDoRpc EcDoRpc_RopSyncUploadStateStreamContinue (0x76) Rop.
mem_ctx | pointer to the memory context | |
emsmdbp_ctx | pointer to the emsmdb provider context | |
mapi_req | pointer to the SyncUploadStateStreamContinue EcDoRpc_MAPI_REQ structure | |
mapi_repl | pointer to the SyncUploadStateStreamContinue EcDoRpc_MAPI_REPL structure | |
handles | pointer to the MAPI handles array | |
size | pointer to the mapi_response size to update |
References EMSMDBP_OBJECT_SYNCCONTEXT, emsmdbp_stream_write_buffer(), emsmdbp_context::handles_ctx, libmapiserver_RopSyncUploadStateStreamContinue_size(), mapi_handles_get_private_data(), mapi_handles_search(), emsmdbp_object::object, emsmdbp_object_synccontext::state_property, emsmdbp_object_synccontext::state_stream, emsmdbp_objects::synccontext, and emsmdbp_object::type.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ enum MAPISTATUS EcDoRpc_RopSyncUploadStateStreamEnd | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct EcDoRpc_MAPI_REQ * | mapi_req, | |||
struct EcDoRpc_MAPI_REPL * | mapi_repl, | |||
uint32_t * | handles, | |||
uint16_t * | size | |||
) |
EcDoRpc EcDoRpc_RopSyncUploadStateStreamEnd (0x77) Rop.
mem_ctx | pointer to the memory context | |
emsmdbp_ctx | pointer to the emsmdb provider context | |
mapi_req | pointer to the SyncUploadStateStreamEnd EcDoRpc_MAPI_REQ structure | |
mapi_repl | pointer to the SyncUploadStateStreamEnd EcDoRpc_MAPI_REPL structure | |
handles | pointer to the MAPI handles array | |
size | pointer to the mapi_response size to update |
References emsmdbp_stream::buffer, emsmdbp_object_synccontext::cnset_read, emsmdbp_object_synccontext::cnset_seen, emsmdbp_object_synccontext::cnset_seen_fai, EMSMDBP_OBJECT_SYNCCONTEXT, emsmdbp_context::handles_ctx, emsmdbp_object_synccontext::idset_given, emsmdbp_object_synccontext::is_collector, libmapiserver_RopSyncUploadStateStreamEnd_size(), mapi_handles_get_private_data(), mapi_handles_search(), emsmdbp_object::object, emsmdbp_object_synccontext::state_property, emsmdbp_object_synccontext::state_stream, emsmdbp_objects::synccontext, and emsmdbp_object::type.
Referenced by EcDoRpc_process_transaction().
static struct MessageReadState* get_MessageReadState | ( | TALLOC_CTX * | mem_ctx, | |
struct Binary_r * | bin | |||
) | [static, read] |
Retrieve a MessageReadState structure from a binary blob
mem_ctx | pointer to the memory context | |
bin | pointer to the Binary_r structure with raw MessageReadState data |
Referenced by EcDoRpc_RopSyncImportReadStateChanges().
static void oxcfxics_fill_transfer_state_arrays | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct emsmdbp_object_synccontext * | synccontext, | |||
const char * | owner, | |||
struct oxcfxics_sync_data * | sync_data, | |||
struct emsmdbp_object * | folder_object | |||
) | [static] |
References emsmdbp_object::backend_object, emsmdbp_folder_open_table(), emsmdbp_get_contextID(), emsmdbp_is_mapistore(), emsmdbp_object_get_properties(), emsmdbp_object_open_folder(), emsmdbp_object_table_get_row_props(), emsmdbp_replid_to_guid(), emsmdbp_context::mstore_ctx, emsmdbp_object::object, emsmdbp_object_table::prop_count, emsmdbp_object_synccontext::properties, and emsmdbp_objects::table.
Referenced by oxcfxics_ndr_push_transfer_state().
static int oxcfxics_fmid_from_source_key | ( | struct emsmdbp_context * | emsmdbp_ctx, | |
const char * | owner, | |||
struct SBinary_short * | source_key, | |||
uint64_t * | fmidp | |||
) | [static] |
References emsmdbp_guid_to_replid().
Referenced by EcDoRpc_RopSyncImportDeletes(), EcDoRpc_RopSyncImportHierarchyChange(), and EcDoRpc_RopSyncImportMessageChange().
static struct Binary_r* oxcfxics_make_gid | ( | TALLOC_CTX * | mem_ctx, | |
struct GUID * | replica_guid, | |||
uint64_t | id | |||
) | [static, read] |
References oxcfxics_make_xid().
Referenced by oxcfxics_push_folderChange().
static struct Binary_r* oxcfxics_make_xid | ( | TALLOC_CTX * | mem_ctx, | |
struct GUID * | replica_guid, | |||
uint64_t * | id, | |||
uint8_t | idlength | |||
) | [static, read] |
Referenced by oxcfxics_make_gid().
static void oxcfxics_ndr_check | ( | struct ndr_push * | ndr, | |
const char * | label | |||
) | [static] |
Referenced by oxcfxics_push_messageChange().
static void oxcfxics_ndr_push_properties | ( | struct ndr_push * | ndr, | |
struct ndr_push * | cutmarks_ndr, | |||
void * | nprops_ctx, | |||
struct SPropTagArray * | properties, | |||
void ** | data_pointers, | |||
enum MAPISTATUS * | retvals | |||
) | [static] |
static void oxcfxics_ndr_push_simple_data | ( | struct ndr_push * | ndr, | |
uint16_t | data_type, | |||
const void * | value | |||
) | [static] |
Referenced by oxcfxics_ndr_push_properties(), and oxcfxics_push_messageChange_recipients().
static void oxcfxics_ndr_push_transfer_state | ( | struct ndr_push * | ndr, | |
const char * | owner, | |||
struct emsmdbp_object * | synccontext_object | |||
) | [static] |
References emsmdbp_object_synccontext::cnset_seen, emsmdbp_syncconfigure_request::contents_mode, emsmdbp_object::emsmdbp_ctx, emsmdbp_syncconfigure_request::fai, emsmdbp_object_synccontext::idset_given, emsmdbp_syncconfigure_request::normal, emsmdbp_object::object, emsmdbp_context::oc_ctx, openchangedb_get_MailboxReplica(), oxcfxics_fill_transfer_state_arrays(), emsmdbp_object::parent_object, emsmdbp_object_synccontext::properties, emsmdbp_syncconfigure_request::read_state, emsmdbp_object_synccontext::request, and emsmdbp_objects::synccontext.
Referenced by EcDoRpc_RopSyncGetTransferState().
static void oxcfxics_prepare_synccontext_with_folderChange | ( | struct emsmdbp_object * | synccontext_object, | |
const char * | owner | |||
) | [static] |
References emsmdbp_stream::buffer, emsmdbp_object_synccontext::cnset_seen, emsmdbp_object_synccontext::cutmarks, emsmdbp_object::emsmdbp_ctx, emsmdbp_object_synccontext::idset_given, emsmdbp_object::object, emsmdbp_context::oc_ctx, openchangedb_get_MailboxReplica(), oxcfxics_push_folderChange(), emsmdbp_object::parent_object, emsmdbp_object_synccontext::properties, emsmdbp_object_synccontext::stream, and emsmdbp_objects::synccontext.
Referenced by EcDoRpc_RopFastTransferSourceGetBuffer().
static void oxcfxics_prepare_synccontext_with_messageChange | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_object * | synccontext_object, | |||
const char * | owner | |||
) | [static] |
References emsmdbp_stream::buffer, emsmdbp_object_synccontext::cnset_read, emsmdbp_object_synccontext::cnset_seen, emsmdbp_object_synccontext::cnset_seen_fai, emsmdbp_object_synccontext::cutmarks, emsmdbp_object::emsmdbp_ctx, emsmdbp_syncconfigure_request::fai, emsmdbp_object_synccontext::idset_given, emsmdbp_syncconfigure_request::no_deletions, emsmdbp_syncconfigure_request::normal, emsmdbp_object::object, emsmdbp_context::oc_ctx, openchangedb_get_MailboxReplica(), oxcfxics_push_messageChange(), emsmdbp_object::parent_object, emsmdbp_object_synccontext::properties, emsmdbp_syncconfigure_request::read_state, emsmdbp_object_synccontext::request, emsmdbp_object_synccontext::stream, and emsmdbp_objects::synccontext.
Referenced by EcDoRpc_RopFastTransferSourceGetBuffer().
static void oxcfxics_push_folderChange | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct emsmdbp_object_synccontext * | synccontext, | |||
const char * | owner, | |||
struct emsmdbp_object * | topmost_folder_object, | |||
struct oxcfxics_sync_data * | sync_data, | |||
struct emsmdbp_object * | folder_object | |||
) | [static] |
fixed header props
remaining props
References emsmdbp_object::backend_object, emsmdbp_object_synccontext::cnset_seen, emsmdbp_folder_open_table(), emsmdbp_get_contextID(), emsmdbp_is_mapistore(), emsmdbp_object_open_folder(), emsmdbp_object_table_get_row_props(), emsmdbp_replid_to_guid(), emsmdbp_source_key_from_fmid(), emsmdbp_context::mstore_ctx, emsmdbp_syncconfigure_request::no_foreign_identifiers, emsmdbp_object::object, oxcfxics_make_gid(), oxcfxics_ndr_push_properties(), oxcfxics_table_set_cn_restriction(), emsmdbp_object_table::prop_count, emsmdbp_object_synccontext::properties, emsmdbp_object_synccontext::request, emsmdbp_syncconfigure_request::request_eid, and emsmdbp_objects::table.
Referenced by oxcfxics_prepare_synccontext_with_folderChange().
static void oxcfxics_push_messageChange | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct emsmdbp_object_synccontext * | synccontext, | |||
const char * | owner, | |||
struct oxcfxics_sync_data * | sync_data, | |||
struct emsmdbp_object * | folder_object | |||
) | [static] |
fixed header props
remaining props
References emsmdbp_object::backend_object, emsmdbp_object_synccontext::cnset_seen, emsmdbp_object_synccontext::cnset_seen_fai, emsmdbp_folder_open_table(), emsmdbp_get_contextID(), emsmdbp_is_mapistore(), emsmdbp_object_message_open(), emsmdbp_object_table_get_row_props(), emsmdbp_replid_to_guid(), emsmdbp_source_key_from_fmid(), emsmdbp_object_synccontext::fai_properties, emsmdbp_objects::folder, emsmdbp_object_folder::folderID, emsmdbp_context::mstore_ctx, emsmdbp_object::object, oxcfxics_ndr_check(), oxcfxics_ndr_push_properties(), oxcfxics_push_messageChange_attachments(), oxcfxics_push_messageChange_recipients(), oxcfxics_table_set_cn_restriction(), emsmdbp_object_table::prop_count, emsmdbp_object_synccontext::properties, emsmdbp_object_synccontext::request, emsmdbp_syncconfigure_request::request_cn, emsmdbp_syncconfigure_request::request_eid, emsmdbp_syncconfigure_request::request_message_size, and emsmdbp_objects::table.
Referenced by oxcfxics_prepare_synccontext_with_messageChange().
static void oxcfxics_push_messageChange_attachments | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct oxcfxics_sync_data * | sync_data, | |||
struct emsmdbp_object * | message_object | |||
) | [static] |
References emsmdbp_object::backend_object, emsmdbp_get_contextID(), emsmdbp_is_mapistore(), emsmdbp_object_message_open_attachment_table(), emsmdbp_object_table_get_row_props(), emsmdbp_context::mstore_ctx, emsmdbp_object::object, oxcfxics_ndr_push_properties(), emsmdbp_object_table::prop_count, and emsmdbp_objects::table.
Referenced by oxcfxics_push_messageChange().
static void oxcfxics_push_messageChange_recipients | ( | TALLOC_CTX * | mem_ctx, | |
struct emsmdbp_context * | emsmdbp_ctx, | |||
struct oxcfxics_sync_data * | sync_data, | |||
struct emsmdbp_object * | message_object, | |||
struct mapistore_message * | msg | |||
) | [static] |
References emsmdbp_context::mstore_ctx, oxcfxics_ndr_push_properties(), and oxcfxics_ndr_push_simple_data().
Referenced by oxcfxics_push_messageChange().
static void oxcfxics_table_set_cn_restriction | ( | struct emsmdbp_context * | emsmdbp_ctx, | |
struct emsmdbp_object * | table_object, | |||
const char * | owner, | |||
struct idset * | cnset_seen | |||
) | [static] |
References emsmdbp_object::backend_object, emsmdbp_get_contextID(), emsmdbp_guid_to_replid(), emsmdbp_is_mapistore(), and emsmdbp_context::mstore_ctx.
Referenced by oxcfxics_push_folderChange(), and oxcfxics_push_messageChange().
![]() ![]() ![]() |
This content is licensed under the Creative Commons Attribution ShareAlike License v. 3.0: http://creativecommons.org/licenses/by-sa/3.0/ |