mapiproxy/libmapiserver/libmapiserver_oxcprpt.c File Reference

OXCPRPT ROP Response size calculations. More...

#include "libmapiserver.h"
#include "libmapi/libmapi.h"
#include "libmapi/mapidefs.h"

Functions

_PUBLIC_ int libmapiserver_push_property (TALLOC_CTX *mem_ctx, struct smb_iconv_convenience *iconv_convenience, uint32_t property, const void *value, DATA_BLOB *blob, uint8_t layout, uint8_t flagged)
_PUBLIC_ struct SRow * libmapiserver_ROP_request_to_properties (TALLOC_CTX *mem_ctx, void *request, uint8_t opnum)
_PUBLIC_ uint16_t libmapiserver_RopDeleteProperties_size (struct EcDoRpc_MAPI_REPL *response)
_PUBLIC_ uint16_t libmapiserver_RopGetPropertiesSpecific_size (struct EcDoRpc_MAPI_REQ *request, struct EcDoRpc_MAPI_REPL *response)
_PUBLIC_ uint16_t libmapiserver_RopGetPropertyIdsFromNames_size (struct EcDoRpc_MAPI_REPL *response)
_PUBLIC_ uint16_t libmapiserver_RopOpenStream_size (struct EcDoRpc_MAPI_REPL *response)
_PUBLIC_ uint16_t libmapiserver_RopReadStream_size (struct EcDoRpc_MAPI_REPL *response)
_PUBLIC_ uint16_t libmapiserver_RopSetProperties_size (struct EcDoRpc_MAPI_REPL *response)
_PUBLIC_ uint16_t libmapiserver_RopWriteStream_size (struct EcDoRpc_MAPI_REPL *response)

Detailed Description

OXCPRPT ROP Response size calculations.


Function Documentation

_PUBLIC_ int libmapiserver_push_property ( TALLOC_CTX *  mem_ctx,
struct smb_iconv_convenience *  iconv_convenience,
uint32_t  property,
const void *  value,
DATA_BLOB *  blob,
uint8_t  layout,
uint8_t  flagged 
)

Add a property value to a DATA blob. This convenient function should be used when creating a GetPropertiesSpecific reply response blob.

Parameters:
mem_ctx pointer to the memory context
iconv_convenience pointer to the iconv_convenience context
property the property tag which value is meant to be appended to the blob
value generic pointer on the property value
blob the data blob the function uses to return the blob
layout whether values should be prefixed by a layout
flagged define if the properties are flagged or not
Note:
blob.length must be set to 0 before this function is called the first time. Also the function only supports a limited set of property types at the moment.
Returns:
0 on success;

Referenced by EcDoRpc_RopQueryRows(), emsmdbp_resolve_recipient(), RopGetPropertiesSpecific_Mailbox(), RopGetPropertiesSpecific_mapistore(), and RopGetPropertiesSpecific_SystemSpecialFolder().

_PUBLIC_ struct SRow* libmapiserver_ROP_request_to_properties ( TALLOC_CTX *  mem_ctx,
void *  request,
uint8_t  opnum 
) [read]

Turn request parameters to SPropValue array. This convenient function should be used among MAPI ROPs that have parameters which can be turned to MAPI properties and are stored within backends.

Parameters:
mem_ctx pointer to the memory context
request generic pointer to the ROP request
opnum MAPI opnum identifying ROP contents
Note:
Developers must talloc_free returned SRow after they finish using it.
Returns:
Allocated SRow on success, otherwise NULL

Referenced by EcDoRpc_RopCreateFolder().

_PUBLIC_ uint16_t libmapiserver_RopDeleteProperties_size ( struct EcDoRpc_MAPI_REPL *  response  ) 

Calculate SetProperties Rop size

Parameters:
response pointer to the SetProperties EcDoRpc_MAPI_REPL structure
Returns:
Size of SetProperties response

Referenced by EcDoRpc_RopDeleteProperties().

_PUBLIC_ uint16_t libmapiserver_RopGetPropertiesSpecific_size ( struct EcDoRpc_MAPI_REQ *  request,
struct EcDoRpc_MAPI_REPL *  response 
)

Calculate GetPropertiesSpecific Rop size

Parameters:
request pointer to the GetPropertiesSpecific EcDoRpc_MAPI_REQ structure
response pointer to the GetPropertiesSpecific EcDoRpc_MAPI_REPL structure
Returns:
Size of GetPropsSpecific response

Referenced by EcDoRpc_RopGetPropertiesSpecific().

_PUBLIC_ uint16_t libmapiserver_RopGetPropertyIdsFromNames_size ( struct EcDoRpc_MAPI_REPL *  response  ) 

Calculate GetPropertyIdsFromNames Rop size

Parameters:
response pointer to the GetPropertyIdsFromNames EcDoRpc_MAPI_REPL structure
Returns:
Size of GetPropertyIdsFromNames response

Referenced by EcDoRpc_RopGetPropertyIdsFromNames().

_PUBLIC_ uint16_t libmapiserver_RopOpenStream_size ( struct EcDoRpc_MAPI_REPL *  response  ) 

Calculate OpenStream Rop size

Parameters:
response pointer to the OpenStream EcDoRpc_MAPI_REPL structure
Returns:
Size of OpenStream response

Referenced by EcDoRpc_RopOpenStream().

_PUBLIC_ uint16_t libmapiserver_RopReadStream_size ( struct EcDoRpc_MAPI_REPL *  response  ) 

Calculate ReadStream Rop size

Parameters:
response pointer to the ReadStream EcDoRpc_MAPI_REPL structure
Returns:
Size of ReadStream response

Referenced by EcDoRpc_RopReadStream().

_PUBLIC_ uint16_t libmapiserver_RopSetProperties_size ( struct EcDoRpc_MAPI_REPL *  response  ) 

Calculate SetProperties Rop size

Parameters:
response pointer to the SetProperties EcDoRpc_MAPI_REPL structure
Returns:
Size of SetProperties response

Referenced by EcDoRpc_RopSetProperties().

_PUBLIC_ uint16_t libmapiserver_RopWriteStream_size ( struct EcDoRpc_MAPI_REPL *  response  ) 

Calculate WriteStream Rop size

Parameters:
response pointer to the WriteStream EcDoRpc_MAPI_REPL structure
Returns:
Size of WriteStream response

Referenced by EcDoRpc_RopWriteStream().


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