MAPIProxy 2.0 API Documentation

- Main Page
- Related Pages
- Data Structures
- Files

- File List
- Globals

Functions
oxcmsg.c File Reference

Message and Attachment 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
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopCreateAttach (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_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)
_PUBLIC_ 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)
_PUBLIC_ 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)
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopOpenAttach (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_RopOpenEmbeddedMessage (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_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)
_PUBLIC_ 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)
_PUBLIC_ enum MAPISTATUS | EcDoRpc_RopRemoveAllRecipients (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_RopSaveChangesAttachment (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_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)
_PUBLIC_ 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)

## Detailed Description

Message and Attachment object routines and Rops.

## Function Documentation

_PUBLIC_ enum MAPISTATUS EcDoRpc_RopCreateAttach | ( | 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 CreateAttach (0x23) Rop. This operation open an attachment from the message handle.

Parameters

  mem_ctx | pointer to the memory context
  emsmdbp_ctx | pointer to the emsmdb provider context
  mapi_req | pointer to the CreateAttach EcDoRpc_MAPI_REQ structure
  mapi_repl | pointer to the CreateAttach EcDoRpc_MAPI_REPL structure
  handles | pointer to the MAPI handles array
  size | pointer to the mapi_response size to update

Returns
  MAPI_E_SUCCESS on success, otherwise MAPI error

References emsmdbp_get_contextID(), emsmdbp_is_mapistore(), emsmdbp_object_attachment_init(), libmapiserver_RopCreateAttach_size(), mapi_handles_add(), mapi_handles_delete(), mapi_handles_get_private_data(), mapi_handles_search(), and mapi_handles_set_private_data().

_PUBLIC_ 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.

Parameters

  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

Returns
  MAPI_E_SUCCESS on success, otherwise MAPI error

References emsmdbp_get_contextID(), emsmdbp_is_mapistore(), emsmdbp_object_message_init(), emsmdbp_object_open_folder_by_fid(), entryid_set_AB_EntryID(), libmapiserver_RopCreateMessage_size(), mapi_handles_add(), mapi_handles_get_private_data(), mapi_handles_search(), mapi_handles_set_private_data(), openchangedb_get_new_folderID(), and openchangedb_message_create().

_PUBLIC_ 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.

Parameters

  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

Returns
  MAPI_E_SUCCESS on success, otherwise MAPI error

References libmapiserver_RopGetAttachmentTable_size(), mapi_handles_add(), mapi_handles_delete(), mapi_handles_get_private_data(), mapi_handles_search(), and mapi_handles_set_private_data().

_PUBLIC_ 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).

Parameters

  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

Returns
  MAPI_E_SUCCESS on success, otherwise MAPI error

References emsmdbp_get_contextID(), emsmdbp_is_mapistore(), libmapiserver_RopModifyRecipients_size(), mapi_handles_get_private_data(), and mapi_handles_search().

_PUBLIC_ enum MAPISTATUS EcDoRpc_RopOpenAttach | ( | 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 OpenAttach (0x22) Rop. This operation open an attachment from the message handle.

Parameters

  mem_ctx | pointer to the memory context
  emsmdbp_ctx | pointer to the emsmdb provider context
  mapi_req | pointer to the OpenAttach EcDoRpc_MAPI_REQ structure
  mapi_repl | pointer to the OpenAttach EcDoRpc_MAPI_REPL structure
  handles | pointer to the MAPI handles array
  size | pointer to the mapi_response size to update

Returns
  MAPI_E_SUCCESS on success, otherwise MAPI error

References emsmdbp_get_contextID(), emsmdbp_is_mapistore(), emsmdbp_object_attachment_init(), libmapiserver_RopOpenAttach_size(), mapi_handles_add(), mapi_handles_delete(), mapi_handles_get_private_data(), mapi_handles_search(), and mapi_handles_set_private_data().

_PUBLIC_ enum MAPISTATUS EcDoRpc_RopOpenEmbeddedMessage | ( | 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 OpenEmbeddedMessage (0x46) Rop. This operation open an attachment from the message handle.

Parameters

  mem_ctx | pointer to the memory context
  emsmdbp_ctx | pointer to the emsmdb provider context
  mapi_req | pointer to the OpenEmbeddedMessage EcDoRpc_MAPI_REQ structure
  mapi_repl | pointer to the OpenEmbeddedMessage EcDoRpc_MAPI_REPL structure
  handles | pointer to the MAPI handles array
  size | pointer to the mapi_response size to update

Returns
  MAPI_E_SUCCESS on success, otherwise MAPI error

References emsmdbp_get_contextID(), emsmdbp_is_mapistore(), emsmdbp_object_message_init(), libmapiserver_RopOpenEmbeddedMessage_size(), mapi_handles_add(), mapi_handles_get_private_data(), mapi_handles_search(), mapi_handles_set_private_data(), and openchangedb_get_new_folderID().

_PUBLIC_ 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.

Parameters

  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

Returns
  MAPI_E_SUCCESS on success, otherwise MAPI error

References libmapiserver_RopOpenMessage_size(), mapi_handles_add(), mapi_handles_delete(), mapi_handles_get_private_data(), mapi_handles_search(), and mapi_handles_set_private_data().

_PUBLIC_ 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.

Parameters

  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

Returns
  MAPI_E_SUCCESS on success, otherwise MAPI error

References emsmdbp_get_contextID(), emsmdbp_is_mapistore(), libmapiserver_RopReloadCachedInformation_size(), mapi_handles_get_private_data(), and mapi_handles_search().

_PUBLIC_ enum MAPISTATUS EcDoRpc_RopRemoveAllRecipients | ( | 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 RemoveAllRecipients (0x0d) Rop. This operation removes all recipients from a message.

Parameters

  mem_ctx | pointer to the memory context
  emsmdbp_ctx | pointer to the emsmdb provider context
  mapi_req | pointer to the RemoveAllRecipients EcDoRpc_MAPI_REQ structure
  mapi_repl | pointer to the RemoveAllRecipients EcDoRpc_MAPI_REPL structure
  handles | pointer to the MAPI handles array
  size | pointer to the mapi_response size to update

Returns
  MAPI_E_SUCCESS on success, otherwise MAPI error

References emsmdbp_get_contextID(), emsmdbp_is_mapistore(), libmapiserver_RopRemoveAllRecipients_size(), mapi_handles_get_private_data(), and mapi_handles_search().

_PUBLIC_ enum MAPISTATUS EcDoRpc_RopSaveChangesAttachment | ( | 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 SaveChangesAttachment (0x25) Rop. This operation open an attachment from the message handle.

Parameters

  mem_ctx | pointer to the memory context
  emsmdbp_ctx | pointer to the emsmdb provider context
  mapi_req | pointer to the SaveChangesAttachment EcDoRpc_MAPI_REQ structure
  mapi_repl | pointer to the SaveChangesAttachment EcDoRpc_MAPI_REPL structure
  handles | pointer to the MAPI handles array
  size | pointer to the mapi_response size to update

Returns
  MAPI_E_SUCCESS on success, otherwise MAPI error

References libmapiserver_RopSaveChangesAttachment_size().

_PUBLIC_ 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.

Parameters

  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

Returns
  MAPI_E_SUCCESS on success, otherwise MAPI error

References emsmdbp_get_contextID(), emsmdbp_get_owner(), emsmdbp_is_mapistore(), libmapiserver_RopSaveChangesMessage_size(), mapi_handles_get_private_data(), mapi_handles_search(), and openchangedb_message_save().

_PUBLIC_ 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.

Parameters

  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

Returns
  MAPI_E_SUCCESS on success, otherwise MAPI error

References emsmdbp_get_contextID(), emsmdbp_is_mapistore(), libmapiserver_RopSetMessageReadFlag_size(), mapi_handles_get_private_data(), and mapi_handles_search().

| This content is licensed under the Creative Commons Attribution ShareAlike License v. 3.0: http://creativecommons.org/licenses/by-sa/3.0/