Folder object routines and Rops. More...
#include "mapiproxy/dcesrv_mapiproxy.h"
#include "mapiproxy/libmapiproxy/libmapiproxy.h"
#include "mapiproxy/libmapiserver/libmapiserver.h"
#include "dcesrv_exchange_emsmdb.h"
Functions | |
enum MAPISTATUS | EcDoRpc_RopCopyFolder (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_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) |
_PUBLIC_ 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) |
_PUBLIC_ 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) |
_PUBLIC_ 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) |
_PUBLIC_ 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) |
_PUBLIC_ 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) |
_PUBLIC_ 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) |
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopMoveCopyMessages (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) |
enum MAPISTATUS | EcDoRpc_RopMoveFolder (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_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) |
_PUBLIC_ 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) |
static enum MAPISTATUS | RopEmptyFolder_GenericFolder (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx, struct EmptyFolder_req request, struct EmptyFolder_repl *response, struct mapi_handles *folder) |
Folder object routines and Rops.
enum MAPISTATUS EcDoRpc_RopCopyFolder | ( | 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 emsmdbp_object::backend_object, emsmdbp_get_contextID(), emsmdbp_is_mapistore(), EMSMDBP_OBJECT_FOLDER, emsmdbp_object_open_folder(), emsmdbp_context::handles_ctx, libmapiserver_RopCopyFolder_size(), mapi_handles_get_private_data(), mapi_handles_search(), emsmdbp_context::mstore_ctx, mapi_handles::private_data, and emsmdbp_object::type.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ 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 emsmdbp_object_create_folder(), EMSMDBP_OBJECT_FOLDER, emsmdbp_object_get_fid_by_name(), EMSMDBP_OBJECT_MAILBOX, emsmdbp_object_open_folder_by_fid(), emsmdbp_objects::folder, emsmdbp_object_folder::folderID, mapi_handles::handle, emsmdbp_context::handles_ctx, libmapiserver_ROP_request_to_properties(), libmapiserver_RopCreateFolder_size(), mapi_handles_add(), mapi_handles_delete(), mapi_handles_get_private_data(), mapi_handles_search(), mapi_handles_set_private_data(), emsmdbp_object::object, emsmdbp_context::oc_ctx, openchangedb_get_new_changeNumber(), openchangedb_get_new_folderID(), emsmdbp_object::parent_object, and emsmdbp_object::type.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ 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 emsmdbp_folder_delete(), EMSMDBP_OBJECT_FOLDER, mapi_handles::handle, emsmdbp_context::handles_ctx, libmapiserver_RopDeleteFolder_size(), mapi_handles_get_private_data(), mapi_handles_search(), and emsmdbp_object::type.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ 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 emsmdbp_object::backend_object, emsmdbp_get_contextID(), emsmdbp_get_owner(), emsmdbp_is_mapistore(), EMSMDBP_OBJECT_FOLDER, emsmdbp_context::handles_ctx, libmapiserver_RopDeleteMessage_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_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 emsmdbp_is_mapistore(), emsmdbp_context::handles_ctx, libmapiserver_RopEmptyFolder_size(), mapi_handles_get_private_data(), mapi_handles_search(), and RopEmptyFolder_GenericFolder().
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ 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 emsmdbp_folder_open_table(), EMSMDBP_OBJECT_FOLDER, mapi_handles::handle, emsmdbp_context::handles_ctx, libmapiserver_RopGetContentsTable_size(), mapi_handles_add(), mapi_handles_get_private_data(), mapi_handles_search(), mapi_handles_set_private_data(), emsmdbp_context::mstore_ctx, emsmdbp_object::parent_object, and emsmdbp_context::username.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ 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 emsmdbp_folder_open_table(), EMSMDBP_OBJECT_FOLDER, EMSMDBP_OBJECT_MAILBOX, mapi_handles::handle, emsmdbp_context::handles_ctx, libmapiserver_RopGetHierarchyTable_size(), mapi_handles_add(), mapi_handles_get_private_data(), mapi_handles_search(), mapi_handles_set_private_data(), emsmdbp_context::mstore_ctx, emsmdbp_object::parent_object, and emsmdbp_context::username.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ 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().
_PUBLIC_ enum MAPISTATUS EcDoRpc_RopMoveCopyMessages | ( | 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, emsmdbp_get_contextID(), emsmdbp_is_mapistore(), emsmdbp_context::handles_ctx, libmapiserver_RopMoveCopyMessages_size(), mapi_handles_get_private_data(), mapi_handles_search(), emsmdbp_context::mstore_ctx, emsmdbp_context::oc_ctx, openchangedb_get_new_folderID(), and mapi_handles::private_data.
Referenced by EcDoRpc_process_transaction().
enum MAPISTATUS EcDoRpc_RopMoveFolder | ( | 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 emsmdbp_folder_move_folder(), EMSMDBP_OBJECT_FOLDER, emsmdbp_object_open_folder(), emsmdbp_context::handles_ctx, libmapiserver_RopMoveFolder_size(), mapi_handles_get_private_data(), mapi_handles_search(), mapi_handles::private_data, and emsmdbp_object::type.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ 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_FOLDER, EMSMDBP_OBJECT_MAILBOX, emsmdbp_object_open_folder_by_fid(), mapi_handles::handle, emsmdbp_context::handles_ctx, libmapiserver_RopOpenFolder_size(), mapi_handles_add(), mapi_handles_get_private_data(), mapi_handles_search(), mapi_handles_set_private_data(), emsmdbp_object::object, emsmdbp_object::parent_object, mapi_handles::private_data, and emsmdbp_object::type.
Referenced by EcDoRpc_process_transaction().
_PUBLIC_ 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().
|
static |
![]() ![]() ![]() |
This content is licensed under the Creative Commons Attribution ShareAlike License v. 3.0: http://creativecommons.org/licenses/by-sa/3.0/ |