#include "libmapi/libmapi.h"
#include "libmapi/libmapi_private.h"
#include "mapiproxy/libmapiproxy/libmapiproxy.h"
#include "mapiproxy/libmapistore/mapistore_errors.h"
#include "mapiproxy/libmapistore/mapistore.h"
#include <util/debug.h>
Data Structures | |
struct | emsmdbp_context |
struct | emsmdbp_object |
struct | emsmdbp_object_folder |
struct | emsmdbp_object_mailbox |
struct | emsmdbp_object_message |
struct | emsmdbp_object_stream |
struct | emsmdbp_object_table |
union | emsmdbp_objects |
struct | exchange_emsmdb_session |
Defines | |
#define | EMSMDB_PCMSPOLLMAX 60000 |
#define | EMSMDB_PCRETRY 6 |
#define | EMSMDB_PCRETRYDELAY 10000 |
#define | EMSMDBP_COMMON_VIEWS 0xA |
#define | EMSMDBP_DEFERRED_ACTIONS 0x2 |
#define | EMSMDBP_DELETED_ITEMS 0x9 |
#define | EMSMDBP_INBOX 0x6 |
#define | EMSMDBP_MAILBOX_ROOT 0x1 |
#define | EMSMDBP_OUTBOX 0x7 |
#define | EMSMDBP_PF_EFORMSREGISTRY 0x3 |
#define | EMSMDBP_PF_FREEBUSY 0x4 |
#define | EMSMDBP_PF_IPMSUBTREE 0x1 |
#define | EMSMDBP_PF_LOCALEFORMS 0x6 |
#define | EMSMDBP_PF_LOCALFREEBUSY 0x7 |
#define | EMSMDBP_PF_LOCALOAB 0x8 |
#define | EMSMDBP_PF_NONIPMSUBTREE 0x2 |
#define | EMSMDBP_PF_OAB 0x5 |
#define | EMSMDBP_PF_ROOT 0x0 |
#define | EMSMDBP_SCHEDULE 0xB |
#define | EMSMDBP_SEARCH 0xC |
#define | EMSMDBP_SENT_ITEMS 0x8 |
#define | EMSMDBP_SHORTCUTS 0xE |
#define | EMSMDBP_SPOOLER_QUEUE 0x3 |
#define | EMSMDBP_TABLE_FOLDER_TYPE 0x1 |
#define | EMSMDBP_TABLE_MESSAGE_TYPE 0x2 |
#define | EMSMDBP_TODO_SEARCH 0x4 |
#define | EMSMDBP_TOP_INFORMATION_STORE 0x5 |
#define | EMSMDBP_VIEWS 0xD |
Enumerations | |
enum | emsmdbp_object_type { EMSMDBP_OBJECT_UNDEF = 0x0, EMSMDBP_OBJECT_MAILBOX = 0x1, EMSMDBP_OBJECT_FOLDER = 0x2, EMSMDBP_OBJECT_MESSAGE = 0x3, EMSMDBP_OBJECT_TABLE = 0x4, EMSMDBP_OBJECT_STREAM = 0x5 } |
Functions | |
enum MAPISTATUS | EcDoRpc_RopCreateFolder (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopCreateMessage (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopDeleteFolder (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopDeleteMessages (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopDeleteProperties (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopEmptyFolder (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopFindRow (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopGetAddressTypes (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopGetAttachmentTable (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopGetContentsTable (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopGetHierarchyTable (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopGetPermissionsTable (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopGetPerUserGuid (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopGetPerUserLongTermIds (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopGetPropertiesSpecific (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopGetPropertyIdsFromNames (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopGetReceiveFolder (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopGetRulesTable (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopGetSearchCriteria (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopGetTransportFolder (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopLogon (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopModifyRecipients (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopModifyRules (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopOpenFolder (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopOpenMessage (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopOpenStream (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopOptionsData (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopQueryPosition (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopQueryRows (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopReadPerUserInformation (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopReadStream (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopRegisterNotification (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopRelease (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopReloadCachedInformation (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopRestrict (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopSaveChangesMessage (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopSeekRow (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopSetColumns (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopSetMessageReadFlag (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopSetProperties (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopSetReceiveFolder (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopSetSearchCriteria (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopSetSpooler (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopSortTable (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopSubmitMessage (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
enum MAPISTATUS | EcDoRpc_RopWriteStream (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, struct EcDoRpc_MAPI_REPL *, uint32_t *, uint16_t *) |
bool | emsmdbp_destructor (void *) |
uint32_t | emsmdbp_get_contextID (struct mapi_handles *) |
const char * | emsmdbp_getstr_type (struct emsmdbp_object *) |
struct emsmdbp_context * | emsmdbp_init (struct loadparm_context *, const char *, void *) |
bool | emsmdbp_is_mailboxstore (struct mapi_handles *) |
bool | emsmdbp_is_mapistore (struct mapi_handles *) |
struct emsmdbp_object * | emsmdbp_object_folder_init (TALLOC_CTX *, struct emsmdbp_context *, uint64_t, struct mapi_handles *) |
struct mapi_handles * | emsmdbp_object_get_folder_handle_by_fid (struct mapi_handles_context *, uint64_t) |
struct emsmdbp_object * | emsmdbp_object_init (TALLOC_CTX *, struct emsmdbp_context *) |
struct emsmdbp_object * | emsmdbp_object_mailbox_init (TALLOC_CTX *, struct emsmdbp_context *, struct EcDoRpc_MAPI_REQ *, bool) |
struct emsmdbp_object * | emsmdbp_object_message_init (TALLOC_CTX *, struct emsmdbp_context *, uint64_t, struct mapi_handles *) |
struct emsmdbp_object * | emsmdbp_object_stream_init (TALLOC_CTX *, struct emsmdbp_context *, uint32_t, struct mapi_handles *) |
struct emsmdbp_object * | emsmdbp_object_table_init (TALLOC_CTX *, struct emsmdbp_context *, struct mapi_handles *) |
void * | emsmdbp_openchange_ldb_init (struct loadparm_context *) |
enum MAPISTATUS | emsmdbp_resolve_recipient (TALLOC_CTX *, struct emsmdbp_context *, char *, struct mapi_SPropTagArray *, struct RecipientRow *) |
bool | emsmdbp_verify_user (struct dcesrv_call_state *, struct emsmdbp_context *) |
bool | emsmdbp_verify_userdn (struct dcesrv_call_state *, struct emsmdbp_context *, const char *, struct ldb_message **) |
__BEGIN_DECLS NTSTATUS | samba_init_module (void) |
struct ldb_context * | samdb_connect (TALLOC_CTX *, struct tevent_context *, struct loadparm_context *, struct auth_session_info *, int) |
#define EMSMDB_PCMSPOLLMAX 60000 |
Referenced by dcesrv_EcDoConnect(), and dcesrv_EcDoConnectEx().
#define EMSMDB_PCRETRY 6 |
Referenced by dcesrv_EcDoConnect(), and dcesrv_EcDoConnectEx().
#define EMSMDB_PCRETRYDELAY 10000 |
Referenced by dcesrv_EcDoConnect(), and dcesrv_EcDoConnectEx().
#define EMSMDBP_COMMON_VIEWS 0xA |
Referenced by RopLogon_Mailbox().
#define EMSMDBP_DEFERRED_ACTIONS 0x2 |
Referenced by RopLogon_Mailbox().
#define EMSMDBP_DELETED_ITEMS 0x9 |
Referenced by RopLogon_Mailbox().
#define EMSMDBP_INBOX 0x6 |
Referenced by RopLogon_Mailbox().
#define EMSMDBP_MAILBOX_ROOT 0x1 |
Referenced by RopLogon_Mailbox().
#define EMSMDBP_OUTBOX 0x7 |
Referenced by RopLogon_Mailbox().
#define EMSMDBP_PF_EFORMSREGISTRY 0x3 |
Referenced by RopLogon_PublicFolder().
#define EMSMDBP_PF_FREEBUSY 0x4 |
Referenced by RopLogon_PublicFolder().
#define EMSMDBP_PF_IPMSUBTREE 0x1 |
Referenced by RopLogon_PublicFolder().
#define EMSMDBP_PF_LOCALEFORMS 0x6 |
#define EMSMDBP_PF_LOCALFREEBUSY 0x7 |
Referenced by RopLogon_PublicFolder().
#define EMSMDBP_PF_LOCALOAB 0x8 |
Referenced by RopLogon_PublicFolder().
#define EMSMDBP_PF_NONIPMSUBTREE 0x2 |
Referenced by RopLogon_PublicFolder().
#define EMSMDBP_PF_OAB 0x5 |
Referenced by RopLogon_PublicFolder().
#define EMSMDBP_PF_ROOT 0x0 |
Referenced by RopLogon_PublicFolder().
#define EMSMDBP_SCHEDULE 0xB |
Referenced by RopLogon_Mailbox().
#define EMSMDBP_SEARCH 0xC |
Referenced by RopLogon_Mailbox().
#define EMSMDBP_SENT_ITEMS 0x8 |
Referenced by RopLogon_Mailbox().
#define EMSMDBP_SHORTCUTS 0xE |
Referenced by RopLogon_Mailbox().
#define EMSMDBP_SPOOLER_QUEUE 0x3 |
Referenced by RopLogon_Mailbox().
#define EMSMDBP_TABLE_FOLDER_TYPE 0x1 |
Referenced by EcDoRpc_RopGetHierarchyTable().
#define EMSMDBP_TABLE_MESSAGE_TYPE 0x2 |
Referenced by EcDoRpc_RopGetContentsTable().
#define EMSMDBP_TODO_SEARCH 0x4 |
#define EMSMDBP_TOP_INFORMATION_STORE 0x5 |
Referenced by RopLogon_Mailbox().
#define EMSMDBP_VIEWS 0xD |
Referenced by RopLogon_Mailbox().
enum emsmdbp_object_type |
enum MAPISTATUS EcDoRpc_RopCreateFolder | ( | 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 CreateFolder (0x1c) Rop. This operation creates a folder on the remote server.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the CreateFolder EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the CreateFolder EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapi_handles::handle, mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_FOLDER, emsmdbp_object::object, emsmdbp_objects::folder, emsmdbp_object_folder::folderID, libmapiserver_ROP_request_to_properties(), emsmdbp_is_mapistore(), EcDoRpc_RopCreateSystemSpecialFolder(), EcDoRpc_RopCreateGenericFolder(), mapi_handles_add(), emsmdbp_object_folder_init(), mapi_handles_set_private_data(), and libmapiserver_RopCreateFolder_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopCreateMessage | ( | 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 CreateMessage (0x06) Rop. This operation creates a message object in the mailbox.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the CreateMessage EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the CreateMessage EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapi_handles::parent_handle, mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), emsmdbp_object_get_folder_handle_by_fid(), emsmdbp_get_contextID(), emsmdbp_is_mapistore(), openchangedb_get_new_folderID(), emsmdbp_context::oc_ctx, emsmdbp_context::mstore_ctx, mapi_handles_add(), mapi_handles::handle, emsmdbp_object_message_init(), mapi_handles_set_private_data(), and libmapiserver_RopCreateMessage_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopDeleteFolder | ( | 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 DeleteFolder (0x1d) Rop. This operation deletes a folder on the remote server.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the DeleteFolder EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the DeleteFolder EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapi_handles::handle, mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_FOLDER, emsmdbp_object::object, emsmdbp_objects::folder, emsmdbp_object_folder::folderID, emsmdbp_object_folder::contextID, emsmdbp_is_mapistore(), DoDeleteSystemFolder(), emsmdbp_context::mstore_ctx, and libmapiserver_RopDeleteFolder_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopDeleteMessages | ( | 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 DeleteMessage (0x1e) Rop. This operation (soft) deletes a message on the server.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the DeleteMessage EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the DeleteMessage EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_FOLDER, emsmdbp_is_mapistore(), emsmdbp_object::object, emsmdbp_objects::folder, emsmdbp_object_folder::folderID, emsmdbp_object_folder::contextID, emsmdbp_context::mstore_ctx, and libmapiserver_RopDeleteMessage_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopDeleteProperties | ( | 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 DeleteProperties (0x0b) Rop. This operation deletes property values for an object.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the DeleteProperties EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the DeleteProperties EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References libmapiserver_RopDeleteProperties_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopEmptyFolder | ( | 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 EmptyFolder (0x58) Rop. This operation removes the sub-folders and messages from a given parent folder.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the EmptyFolder EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the EmptyFolder EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapi_handles_search(), emsmdbp_context::handles_ctx, emsmdbp_is_mapistore(), RopEmptyFolder_GenericFolder(), and libmapiserver_RopEmptyFolder_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopFindRow | ( | 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 FindRow (0x4f) Rop. This operation moves the cursor to a row in a table that matches specific search criteria.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the FindRow EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the FindRow EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References emsmdbp_object::object, mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_TABLE, emsmdbp_object_table::folderID, emsmdbp_object_table::mapistore, and libmapiserver_RopFindRow_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopGetAddressTypes | ( | 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 GetAddressTypes (0x49) Rop. This operation gets the valid address types (e.g. "SMTP", "X400", "EX")
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the AddressTypes EcDoRpc_MAPI_REQ |
mapi_repl | pointer to the AddressTypes EcDoRpc_MAPI_REPL |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapiserver_get_org_dn(), emsmdbp_context::samdb_ctx, emsmdbp_context::userLanguage, and libmapiserver_RopGetAddressTypes_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopGetAttachmentTable | ( | 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 GetAttachmentTable (0x21) Rop. This operation gets the attachment table of a message.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the GetAttachmentTable EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the GetAttachmentTable EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapi_handles::handle, libmapiserver_RopGetAttachmentTable_size(), mapi_handles_add(), and emsmdbp_context::handles_ctx.
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopGetContentsTable | ( | 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 GetContentsTable (0x05) Rop. This operation get the content table of a container.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the GetContentsTable EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the GetContentsTable EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapi_handles_search(), emsmdbp_context::handles_ctx, libmapiserver_RopGetContentsTable_size(), mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_FOLDER, emsmdbp_is_mapistore(), emsmdbp_context::mstore_ctx, mapi_handles_add(), mapi_handles::handle, emsmdbp_object_table_init(), mapi_handles_set_private_data(), and EMSMDBP_TABLE_MESSAGE_TYPE.
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopGetHierarchyTable | ( | 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 GetHierarchyTable (0x04) Rop. This operation gets the subfolder hierarchy table for a folder.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the GetHierarchyTable EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the GetHierarchyTable EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), libmapiserver_RopGetHierarchyTable_size(), emsmdbp_object::type, EMSMDBP_OBJECT_MAILBOX, EMSMDBP_OBJECT_FOLDER, emsmdbp_is_mapistore(), openchangedb_get_folder_count(), emsmdbp_context::oc_ctx, emsmdbp_context::mstore_ctx, mapi_handles_add(), mapi_handles::handle, emsmdbp_object_table_init(), mapi_handles_set_private_data(), and EMSMDBP_TABLE_FOLDER_TYPE.
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopGetPermissionsTable | ( | 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 GetPermissionsTable (0x3e) Rop. This operation get the permissions table of a folder.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the GetPermissionsTable EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the GetPermissionsTable EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapi_handles::handle, libmapiserver_RopGetPermissionsTable_size(), mapi_handles_add(), and emsmdbp_context::handles_ctx.
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopGetPerUserGuid | ( | 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 GetPerUserGuid (0x61) Rop. This operation gets the GUID of a public folder's per-user information.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the GetPerUserLongTermIds EcDoRpc_MAPI_REQ |
mapi_repl | pointer to the GetPerUserLongTermIds EcDoRpc_MAPI_REPL |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References libmapiserver_RopGetPerUserGuid_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopGetPerUserLongTermIds | ( | 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 GetPerUserLongTermIds (0x60) Rop. This operations gets the long-term ID of a public folder that is identified by the per-user GUID of the logged on user.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the GetPerUserLongTermIds EcDoRpc_MAPI_REQ |
mapi_repl | pointer to the GetPerUserLongTermIds EcDoRpc_MAPI_REPL |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References libmapiserver_RopGetPerUserLongTermIds_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopGetPropertiesSpecific | ( | 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 GetPropertiesSpecific (0x07) Rop. This operation retrieves from properties data from specified object.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the GetPropertiesSpecific EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the GetPropertiesSpecific EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapi_handles::private_data, emsmdbp_object::object, mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), emsmdbp_is_mapistore(), emsmdbp_object::type, EMSMDBP_OBJECT_FOLDER, emsmdbp_objects::folder, emsmdbp_object_folder::mapistore_root, RopGetPropertiesSpecific_SystemSpecialFolder(), EMSMDBP_OBJECT_MAILBOX, RopGetPropertiesSpecific_Mailbox(), RopGetPropertiesSpecific_mapistore(), and libmapiserver_RopGetPropertiesSpecific_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopGetPropertyIdsFromNames | ( | 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 GetPropertyIdsFromNames (0x56) Rop. This operation gets property IDs for specified property names.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the GetPropertyIdsFromNames EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the GetPropertyIdsFromNames EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References emsmdbp_context::mstore_ctx, and libmapiserver_RopGetPropertyIdsFromNames_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopGetReceiveFolder | ( | 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 GetReceiveFolder (0x27) Rop. This operation gets the receive folder for incoming messages of a particular message class
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the GetReceiveFolder EcDoRpc_MAPI_REQ |
mapi_repl | pointer to the GetReceiveFolder EcDoRpc_MAPI_REPL |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References RopGetReceiveFolder(), and libmapiserver_RopGetReceiveFolder_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopGetRulesTable | ( | 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 GetRulesTable (0x3f) Rop. This operation gets the rules table of a folder.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the GetRulesTable EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the GetRulesTable EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References emsmdbp_object::object, mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_FOLDER, mapi_handles_add(), mapi_handles::handle, and libmapiserver_RopGetRulesTable_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopGetSearchCriteria | ( | 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 GetSearchCriteria (0x31) Rop. This operation gets the search criteria for a search folder.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the GetSearchCriteria EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the GetSearchCriteria EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References libmapiserver_RopGetSearchCriteria_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopGetTransportFolder | ( | 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 GetTransportFolder (0x6d) ROP.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the GetTransportFolder EcDoRpc_MAPI_REQ |
mapi_repl | pointer to the GetTransportFolder EcDoRpc_MAPI_REPL |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References libmapiserver_RopGetTransportFolder_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopLogon | ( | 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 Logon (0xFE) Rop. This operation logs on to a private mailbox or public folder.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the Logon EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the Logon EcDoRpc_MAPI_REPL structure the function returns |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References emsmdbp_object::object, RopLogon_Mailbox(), libmapiserver_RopLogon_size(), RopLogon_PublicFolder(), mapi_handles_add(), emsmdbp_context::handles_ctx, emsmdbp_object_mailbox_init(), and mapi_handles_set_private_data().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopModifyRecipients | ( | 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 ModifyRecipients (0x0e) Rop. This operation modifies an existing message to add recipients (TO, CC, BCC).
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the ModifyRecipients EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the ModifyRecipients EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References libmapiserver_RopModifyRecipients_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopModifyRules | ( | 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 ModifyRules (0x41) Rop. This operation modifies the rules associated with a folder
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the ModifyRules EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the ModifyRules EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References emsmdbp_object::object, mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_FOLDER, and libmapiserver_RopModifyRules_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopOpenFolder | ( | 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 OpenFolder (0x02) Rop. This operation opens an existing folder.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the OpenFolder EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the OpenFolder EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References emsmdbp_object::object, mapi_handles_search(), emsmdbp_context::handles_ctx, emsmdbp_is_mapistore(), RopOpenFolder_SystemSpecialFolder(), RopOpenFolder_GenericFolder(), libmapiserver_RopOpenFolder_size(), mapi_handles_add(), emsmdbp_object_folder_init(), mapi_handles_set_private_data(), and mapi_handles::handle.
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopOpenMessage | ( | 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 OpenMessage (0x03) Rop. This operation opens an existing message in a mailbox.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the OpenMessage EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the OpenMessage EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapi_handles::parent_handle, mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), libmapiserver_RopOpenMessage_size(), emsmdbp_object::type, EMSMDBP_OBJECT_MAILBOX, emsmdbp_context::mstore_ctx, emsmdbp_context::username, emsmdbp_object_get_folder_handle_by_fid(), emsmdbp_object::object, emsmdbp_objects::folder, emsmdbp_object_folder::folderID, emsmdbp_object_folder::contextID, mapi_handles_add(), mapi_handles::handle, emsmdbp_object_folder_init(), mapi_handles_set_private_data(), EMSMDBP_OBJECT_FOLDER, libmapiserver_RopGetHierarchyTable_size(), emsmdbp_is_mapistore(), emsmdbp_resolve_recipient(), and emsmdbp_object_message_init().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopOpenStream | ( | 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 OpenStream (0x2b) Rop. This operation opens a property for streaming access.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the OpenStream EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the OpenStream EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi response size to update |
References mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_add(), emsmdbp_object_stream_init(), mapi_handles_set_private_data(), and libmapiserver_RopOpenStream_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopOptionsData | ( | 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 OptionsData (0x6f) Rop. This doesn't really do anything, but could be used to provide HelpData if we wanted to do something like that later.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the OptionsData EcDoRpc_MAPI_REQ |
mapi_repl | pointer to the OptionsData EcDoRpc_MAPI_REPL |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References libmapiserver_RopOptionsData_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopQueryPosition | ( | 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 QueryPosition (0x17) Rop. This operation returns the location of cursor in the table.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the QueryPosition EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the QueryPosition EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References emsmdbp_object::object, mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_TABLE, emsmdbp_object_table::folderID, emsmdbp_object_table::numerator, emsmdbp_object_table::denominator, and libmapiserver_RopQueryPosition_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopQueryRows | ( | 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 QueryRows (0x15) Rop. This operation retrieves rows from a table.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the QueryRows EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the QueryRows EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References emsmdbp_object::object, mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_TABLE, emsmdbp_object_table::folderID, emsmdbp_object_table::numerator, emsmdbp_object_table::denominator, emsmdbp_object_table::mapistore, emsmdbp_object_table::prop_count, emsmdbp_context::mstore_ctx, emsmdbp_object_table::contextID, emsmdbp_object_table::ulType, emsmdbp_object_table::properties, libmapiserver_push_property(), openchangedb_get_table_property(), emsmdbp_context::oc_ctx, emsmdbp_context::szDisplayName, and libmapiserver_RopQueryRows_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopReadPerUserInformation | ( | 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 ReadPerUserInformation (0x63) Rop. This operation gets per-user information for a public folder.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the ReadPerUserInformation EcDoRpc_MAPI_REQ |
mapi_repl | pointer to the ReadPerUserInformation EcDoRpc_MAPI_REPL |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References libmapiserver_RopReadPerUserInformation_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopReadStream | ( | 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 ReadStream (0x2c) Rop. This operation reads bytes from a stream.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the ReadStream EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the ReadStream EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi response size to update |
References mapi_handles::private_data, mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_STREAM, and libmapiserver_RopReadStream_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopRegisterNotification | ( | 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 RegisterNotification (0x29) Rop. This operation subscribes for specified notifications on the server and returns a handle of the subscription to the client.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the RegisterNotification EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the RegisterNotification EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapi_handles::handle, mapi_handles_add(), emsmdbp_context::handles_ctx, and libmapiserver_RopRegisterNotification_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopRelease | ( | TALLOC_CTX * | mem_ctx, |
struct emsmdbp_context * | emsmdbp_ctx, | ||
struct EcDoRpc_MAPI_REQ * | request, | ||
uint32_t * | handles, | ||
uint16_t * | size | ||
) |
EcDoRpc Release (0x01) Rop. This operation releases an existing MAPI handle.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
request | pointer to the Release EcDoRpc_MAPI_REQ |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapi_handles_delete(), and emsmdbp_context::handles_ctx.
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopReloadCachedInformation | ( | 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 ReloadCachedInformation (0x10) Rop. This operation gets message and recipient information from a message.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the ReloadCachedInformation EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the ReloadCachedInformation EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapi_handles::private_data, emsmdbp_object::object, mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_MESSAGE, emsmdbp_is_mapistore(), emsmdbp_context::mstore_ctx, emsmdbp_resolve_recipient(), and libmapiserver_RopReloadCachedInformation_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopRestrict | ( | 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 SortTable (0x14) Rop. This operation establishes a filter for a table.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the Restrict EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the Restrict EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References libmapiserver_RopRestrict_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopSaveChangesMessage | ( | 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 SaveChangesMessage (0x0c) Rop. This operation operation commits the changes made to a message.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the SaveChangesMessage EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the SaveChangesMessage EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapi_handles::private_data, emsmdbp_object::object, mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_MESSAGE, emsmdbp_is_mapistore(), emsmdbp_context::mstore_ctx, and libmapiserver_RopSaveChangesMessage_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopSeekRow | ( | 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 SeekRow (0x18) Rop. This operation moves the cursor to a specific position in a table.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the SeekRow EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the SeekRow EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References libmapiserver_RopSeekRow_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopSetColumns | ( | 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 SetColumns (0x12) Rop. This operation sets the properties to be included in the table.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the SetColumns EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the SetColumns EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References emsmdbp_object::object, libmapiserver_RopSetColumns_size(), mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), emsmdbp_object_table::prop_count, and emsmdbp_object_table::properties.
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopSetMessageReadFlag | ( | 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 SetMessageReadFlag (0x11) Rop. This operation sets or clears the message read flag.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the SetMessageReadFlag EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the SetMessageReadFlag EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References libmapiserver_RopSetMessageReadFlag_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopSetProperties | ( | 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 SetProperties (0x0a) Rop. This operation sets property values for an object.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the SetProperties EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the SetProperties EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapi_handles::private_data, emsmdbp_object::object, mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), emsmdbp_is_mapistore(), emsmdbp_object::type, EMSMDBP_OBJECT_MESSAGE, emsmdbp_context::mstore_ctx, and libmapiserver_RopSetProperties_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopSetReceiveFolder | ( | 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 SetReceiveFolder (0x26) Rop. This operation sets the receive folder for incoming messages of a particular message class
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the SetReceiveFolder EcDoRpc_MAPI_REQ |
mapi_repl | pointer to the SetReceiveFolder EcDoRpc_MAPI_REPL |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References RopSetReceiveFolder(), and libmapiserver_RopSetReceiveFolder_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopSetSearchCriteria | ( | 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 SetSearchCriteria (0x30) Rop. This operation sets the search criteria for a search folder.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the SetSearchCriteria EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the SetSearchCriteria EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References libmapiserver_RopSetSearchCriteria_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopSetSpooler | ( | 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 SetSpooler (0x47) Rop. This operation informs the server that the client intends to act as a mail spooler
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdbp provider context |
mapi_req | pointer to the SeSpooler EcDoRpc_MAPI_REQ |
mapi_repl | pointer to the SetSpooler EcDoRpc_MAPI_REPL |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References libmapiserver_RopSetSpooler_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopSortTable | ( | 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 SortTable (0x13) Rop. This operation defines the order of rows of a table based on sort criteria.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the SortTable EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the SortTable EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References libmapiserver_RopSortTable_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopSubmitMessage | ( | 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 SubmitMessage (0x32) Rop. This operation marks a message as being ready to send (subject to some flags).
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the SubmitMessage EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the SubmitMessage EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi_response size to update |
References mapi_handles::private_data, emsmdbp_object::object, mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_MESSAGE, emsmdbp_is_mapistore(), emsmdbp_context::mstore_ctx, and libmapiserver_RopSubmitMessage_size().
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopWriteStream | ( | 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 WriteStream (0x2d) Rop. This operation writes bytes to a stream.
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
mapi_req | pointer to the WriteStream EcDoRpc_MAPI_REQ structure |
mapi_repl | pointer to the WriteStream EcDoRpc_MAPI_REPL structure |
handles | pointer to the MAPI handles array |
size | pointer to the mapi response size to update |
References mapi_handles::private_data, mapi_handles_search(), emsmdbp_context::handles_ctx, mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_STREAM, and libmapiserver_RopWriteStream_size().
Referenced by EcDoRpc_process_transaction().
bool emsmdbp_destructor | ( | void * | ) |
Referenced by dcesrv_EcDoConnect(), and dcesrv_EcDoConnectEx().
uint32_t emsmdbp_get_contextID | ( | struct mapi_handles * | handles | ) |
Return the contextID associated to a handle
handles | pointer to the MAPI handle to lookup |
References emsmdbp_object::object, mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_MAILBOX, EMSMDBP_OBJECT_FOLDER, EMSMDBP_OBJECT_MESSAGE, and EMSMDBP_OBJECT_STREAM.
Referenced by emsmdbp_object_folder_init(), emsmdbp_object_stream_init(), and EcDoRpc_RopCreateMessage().
const char* emsmdbp_getstr_type | ( | struct emsmdbp_object * | ) |
References emsmdbp_object::type, EMSMDBP_OBJECT_UNDEF, EMSMDBP_OBJECT_MAILBOX, EMSMDBP_OBJECT_FOLDER, EMSMDBP_OBJECT_MESSAGE, EMSMDBP_OBJECT_TABLE, and EMSMDBP_OBJECT_STREAM.
Referenced by emsmdbp_object_destructor().
struct emsmdbp_context* emsmdbp_init | ( | struct loadparm_context * | lp_ctx, |
const char * | username, | ||
void * | ldb_ctx | ||
) | [read] |
Initialize the EMSMDBP context and open connections to Samba databases.
lp_ctx | pointer to the loadparm_context |
username | account name for current session |
ldb_ctx | pointer to the openchange dispatcher ldb database |
References emsmdbp_context::mem_ctx, emsmdbp_context::lp_ctx, emsmdbp_context::samdb_ctx, samdb_connect(), emsmdbp_context::oc_ctx, emsmdbp_context::mstore_ctx, emsmdbp_mapi_store_destructor(), emsmdbp_context::handles_ctx, mapi_handles_init(), and emsmdbp_mapi_handles_destructor().
Referenced by dcesrv_EcDoConnect(), and dcesrv_EcDoConnectEx().
bool emsmdbp_is_mailboxstore | ( | struct mapi_handles * | handles | ) |
Convenient function to determine whether specified mapi_handles refers to object within mailbox or public folders store.
handles | pointer to the MAPI handle to lookup |
References emsmdbp_object::object, mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_MAILBOX, and EMSMDBP_OBJECT_FOLDER.
Referenced by emsmdbp_object_folder_init().
bool emsmdbp_is_mapistore | ( | struct mapi_handles * | handles | ) |
Convenient function to determine whether specified mapi_handles refers to object using mapistore or not
handles | pointer to the MAPI handle to lookup |
References emsmdbp_object::object, mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_MAILBOX, EMSMDBP_OBJECT_FOLDER, EMSMDBP_OBJECT_TABLE, EMSMDBP_OBJECT_MESSAGE, and EMSMDBP_OBJECT_STREAM.
Referenced by emsmdbp_object_folder_init(), emsmdbp_object_table_init(), emsmdbp_object_message_init(), emsmdbp_object_stream_init(), EcDoRpc_RopOpenFolder(), EcDoRpc_RopGetHierarchyTable(), EcDoRpc_RopGetContentsTable(), EcDoRpc_RopCreateFolder(), EcDoRpc_RopDeleteFolder(), EcDoRpc_RopDeleteMessages(), EcDoRpc_RopEmptyFolder(), EcDoRpc_RopOpenMessage(), EcDoRpc_RopCreateMessage(), EcDoRpc_RopSaveChangesMessage(), EcDoRpc_RopReloadCachedInformation(), EcDoRpc_RopGetPropertiesSpecific(), EcDoRpc_RopSetProperties(), and EcDoRpc_RopSubmitMessage().
struct emsmdbp_object* emsmdbp_object_folder_init | ( | TALLOC_CTX * | mem_ctx, |
struct emsmdbp_context * | emsmdbp_ctx, | ||
uint64_t | folderID, | ||
struct mapi_handles * | parent | ||
) | [read] |
Initialize a folder object
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
folderID | the folder identifier |
parent | handle to the parent folder for this folder |
References emsmdbp_object::object, emsmdbp_object_init(), emsmdbp_objects::folder, EMSMDBP_OBJECT_FOLDER, emsmdbp_is_mailboxstore(), openchangedb_get_mapistoreURI(), emsmdbp_context::oc_ctx, emsmdbp_object_folder::folderID, emsmdbp_object_folder::mailboxstore, emsmdbp_context::mstore_ctx, emsmdbp_context::login_user, emsmdbp_context::username, emsmdbp_is_mapistore(), emsmdbp_get_contextID(), and emsmdbp_object_folder::contextID.
Referenced by EcDoRpc_RopOpenFolder(), EcDoRpc_RopCreateFolder(), and EcDoRpc_RopOpenMessage().
struct mapi_handles* emsmdbp_object_get_folder_handle_by_fid | ( | struct mapi_handles_context * | handles_ctx, |
uint64_t | fid | ||
) | [read] |
Retrieve the folder handle matching given fid
handles_ctx | pointer to the handles context |
fid | folder identifier to lookup |
References mapi_handles::handle, emsmdbp_object::object, mapi_handles_context::handles, mapi_handles::next, mapi_handles_get_private_data(), emsmdbp_object::type, EMSMDBP_OBJECT_FOLDER, emsmdbp_objects::folder, and emsmdbp_object_folder::folderID.
Referenced by EcDoRpc_RopOpenMessage(), and EcDoRpc_RopCreateMessage().
struct emsmdbp_object* emsmdbp_object_init | ( | TALLOC_CTX * | mem_ctx, |
struct emsmdbp_context * | emsmdbp_ctx | ||
) | [read] |
Initialize an emsmdbp_object
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
References emsmdbp_object_destructor(), EMSMDBP_OBJECT_UNDEF, emsmdbp_context::mstore_ctx, and emsmdbp_object::object.
Referenced by emsmdbp_object_mailbox_init(), emsmdbp_object_folder_init(), emsmdbp_object_table_init(), emsmdbp_object_message_init(), and emsmdbp_object_stream_init().
struct emsmdbp_object* emsmdbp_object_mailbox_init | ( | TALLOC_CTX * | mem_ctx, |
struct emsmdbp_context * | emsmdbp_ctx, | ||
struct EcDoRpc_MAPI_REQ * | request, | ||
bool | mailboxstore | ||
) | [read] |
Initialize a mailbox object
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
request | pointer to the Logon MAPI request |
mailboxstore | boolean which specifies whether the mailbox object is a PF store or a private mailbox store |
References emsmdbp_object::object, emsmdbp_object_init(), emsmdbp_objects::mailbox, EMSMDBP_OBJECT_MAILBOX, emsmdbp_context::samdb_ctx, emsmdbp_object_mailbox::owner_EssDN, openchangedb_get_SystemFolderID(), emsmdbp_context::oc_ctx, emsmdbp_object_mailbox::owner_Name, emsmdbp_object_mailbox::folderID, openchangedb_get_PublicFolderID(), and emsmdbp_context::szUserDN.
Referenced by EcDoRpc_RopLogon().
struct emsmdbp_object* emsmdbp_object_message_init | ( | TALLOC_CTX * | mem_ctx, |
struct emsmdbp_context * | emsmdbp_ctx, | ||
uint64_t | messageID, | ||
struct mapi_handles * | parent | ||
) | [read] |
Initialize a message object
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
messageID | the message identifier |
parent | pointer to the parent MAPI handle |
References emsmdbp_object::object, mapi_handles_get_private_data(), emsmdbp_object_init(), emsmdbp_objects::message, EMSMDBP_OBJECT_MESSAGE, emsmdbp_objects::folder, emsmdbp_object_folder::folderID, emsmdbp_is_mapistore(), emsmdbp_object_folder::contextID, and emsmdbp_context::mstore_ctx.
Referenced by EcDoRpc_RopOpenMessage(), and EcDoRpc_RopCreateMessage().
struct emsmdbp_object* emsmdbp_object_stream_init | ( | TALLOC_CTX * | mem_ctx, |
struct emsmdbp_context * | emsmdbp_ctx, | ||
uint32_t | property, | ||
struct mapi_handles * | parent | ||
) | [read] |
Initialize a stream object
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider cotnext |
property | the stream property identifier |
parent | pointer to the parent MAPI handle |
References emsmdbp_object::object, mapi_handles_get_private_data(), emsmdbp_object_init(), emsmdbp_objects::stream, EMSMDBP_OBJECT_STREAM, emsmdbp_is_mapistore(), and emsmdbp_get_contextID().
Referenced by EcDoRpc_RopOpenStream().
struct emsmdbp_object* emsmdbp_object_table_init | ( | TALLOC_CTX * | mem_ctx, |
struct emsmdbp_context * | emsmdbp_ctx, | ||
struct mapi_handles * | parent | ||
) | [read] |
Initialize a table object
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the emsmdb provider context |
parent | pointer to the parent MAPI handle |
References emsmdbp_object::object, mapi_handles_get_private_data(), emsmdbp_object_init(), emsmdbp_objects::table, EMSMDBP_OBJECT_TABLE, emsmdbp_objects::folder, emsmdbp_object_folder::folderID, emsmdbp_is_mapistore(), emsmdbp_object_folder::contextID, and emsmdbp_context::mstore_ctx.
Referenced by EcDoRpc_RopGetHierarchyTable(), and EcDoRpc_RopGetContentsTable().
void* emsmdbp_openchange_ldb_init | ( | struct loadparm_context * | lp_ctx | ) |
Open openchange.ldb database
lp_ctx | pointer on the loadparm_context |
References mapiproxy_server_openchange_ldb_init().
Referenced by dcesrv_exchange_emsmdb_init().
enum MAPISTATUS emsmdbp_resolve_recipient | ( | TALLOC_CTX * | mem_ctx, |
struct emsmdbp_context * | emsmdbp_ctx, | ||
char * | recipient, | ||
struct mapi_SPropTagArray * | properties, | ||
struct RecipientRow * | row | ||
) |
Resolve a recipient and build the associated RecipientRow structure
mem_ctx | pointer to the memory context |
emsmdbp_ctx | pointer to the EMSMDBP context |
recipient | pointer to the recipient string |
properties | array of properties to lookup for a recipient |
row | the RecipientRow to fill in |
References emsmdbp_context::samdb_ctx, and libmapiserver_push_property().
Referenced by EcDoRpc_RopOpenMessage(), and EcDoRpc_RopReloadCachedInformation().
bool emsmdbp_verify_user | ( | struct dcesrv_call_state * | dce_call, |
struct emsmdbp_context * | emsmdbp_ctx | ||
) |
Check if the authenticated user belongs to the Exchange organization and is enabled
dce_call | pointer to the session context |
emsmdbp_ctx | pointer to the EMSMDBP context |
References emsmdbp_context::username, and emsmdbp_context::samdb_ctx.
Referenced by dcesrv_EcDoConnect(), and dcesrv_EcDoConnectEx().
bool emsmdbp_verify_userdn | ( | struct dcesrv_call_state * | dce_call, |
struct emsmdbp_context * | emsmdbp_ctx, | ||
const char * | legacyExchangeDN, | ||
struct ldb_message ** | msg | ||
) |
Check if the user record which legacyExchangeDN points to belongs to the Exchange organization and is enabled
dce_call | pointer to the session context |
emsmdbp_ctx | pointer to the EMSMDBP context |
legacyExchangeDN | pointer to the userDN to lookup |
msg | pointer on pointer to the LDB message matching the record |
References emsmdbp_context::samdb_ctx.
Referenced by dcesrv_EcDoConnect(), and dcesrv_EcDoConnectEx().
__BEGIN_DECLS NTSTATUS samba_init_module | ( | void | ) |
Register mapiproxy dynamic shared object modules
This function registers mapiproxy modules located
Entry point of mapiproxy dynamic shared object.
This function first registers exchange endpoints and ndr tables, then attempts to register the mapiproxy interface.
Entry point for the pack mapiproxy module
Entry point for the cache mapiproxy module
Entry point for the downgrade mapiproxy module
Register mapiproxy dynamic shared object modules
This function registers mapiproxy modules located
Entry point of mapiproxy dynamic shared object.
This function first registers exchange endpoints and ndr tables, then attempts to register the mapiproxy interface.
Entry point for the pack mapiproxy module
Entry point for the cache mapiproxy module
Entry point for the downgrade mapiproxy module
Entry point for the pack mapiproxy module
Entry point for the default OpenChange EMSMDB server
Entry point for the default OpenChange NSPI server
Entry point for the default OpenChange RFR server
struct ldb_context* samdb_connect | ( | TALLOC_CTX * | , |
struct tevent_context * | , | ||
struct loadparm_context * | , | ||
struct auth_session_info * | , | ||
int | |||
) | [read] |
Referenced by emsmdbp_init(), and emsabp_init().
![]() ![]() ![]() |
This content is licensed under the Creative Commons Attribution ShareAlike License v. 3.0: http://creativecommons.org/licenses/by-sa/3.0/ |