libmapi/property.c File Reference
Functions for manipulating MAPI properties.
More...
#include "libmapi/libmapi.h"
#include "libmapi/libmapi_private.h"
Functions |
| _PUBLIC_ uint32_t | cast_mapi_SPropValue (TALLOC_CTX *mem_ctx, struct mapi_SPropValue *mapi_sprop, struct SPropValue *sprop) |
| _PUBLIC_ uint32_t | cast_SPropValue (TALLOC_CTX *mem_ctx, struct mapi_SPropValue *mapi_sprop, struct SPropValue *sprop) |
| _PUBLIC_ struct GlobalObjectId * | get_GlobalObjectId (TALLOC_CTX *mem_ctx, struct Binary_r *bin) |
| _PUBLIC_ struct RecurrencePattern * | get_RecurrencePattern (TALLOC_CTX *mem_ctx, struct Binary_r *bin) |
| _PUBLIC_ struct TimeZoneStruct * | get_TimeZoneStruct (TALLOC_CTX *mem_ctx, struct Binary_r *bin) |
| _PUBLIC_ const char * | get_TypedString (struct TypedString *tstring) |
| size_t | get_utf8_utf16_conv_length (const char *inbuf) |
| _PUBLIC_ struct SPropTagArray * | set_SPropTagArray (TALLOC_CTX *mem_ctx, uint32_t PropCount,...) |
| _PUBLIC_ enum MAPISTATUS | SPropTagArray_add (TALLOC_CTX *mem_ctx, struct SPropTagArray *SPropTagArray, uint32_t aulPropTag) |
| _PUBLIC_ enum MAPISTATUS | SRow_addprop (struct SRow *aRow, struct SPropValue spropvalue) |
| _PUBLIC_ uint32_t | SRowSet_propcpy (TALLOC_CTX *mem_ctx, struct SRowSet *SRowSet, struct SPropValue spropvalue) |
Detailed Description
Functions for manipulating MAPI properties.
Function Documentation
| _PUBLIC_ uint32_t cast_mapi_SPropValue |
( |
TALLOC_CTX * |
mem_ctx, |
|
|
struct mapi_SPropValue * |
mapi_sprop, |
|
|
struct SPropValue * |
sprop | |
|
) |
| | |
Convenience function to convert a SPropValue structure into a mapi_SPropValue structure and return the associated size.
- Parameters:
-
| mem_ctx | pointer to the memory context to use for allocation |
| mapi_sprop | pointer to the MAPI SPropValue structure to copy data to |
| sprop | pointer to the SPropValue structure to copy data from |
- Returns:
- size of the converted data on success, otherwise 0
References get_utf8_utf16_conv_length().
Referenced by AddUserPermission(), ModifyRecipients(), SetPropertiesNoReplicate(), and SetProps().
| _PUBLIC_ uint32_t cast_SPropValue |
( |
TALLOC_CTX * |
mem_ctx, |
|
|
struct mapi_SPropValue * |
mapi_sprop, |
|
|
struct SPropValue * |
sprop | |
|
) |
| | |
Convenience function to convert a mapi_SPropValue structure into a SPropValue structure and return the associated size
- Parameters:
-
| mem_ctx | pointer to the memory context to use for allocation |
| mapi_sprop | pointer to the MAPI SPropValue structure to copy data from |
| sprop | pointer to the SPropValue structure to copy data to |
- Returns:
- size of the converted data on success, otherwise 0
| _PUBLIC_ struct GlobalObjectId* get_GlobalObjectId |
( |
TALLOC_CTX * |
mem_ctx, |
|
|
struct Binary_r * |
bin | |
|
) |
| | [read] |
Retrieve a GlobalObjectId structure from a binary blob
- Parameters:
-
| mem_ctx | pointer to the memory context |
| bin | pointer to the Binary_r structure with raw GlobalObjectId data |
- Returns:
- Allocated GlobalObjectId structure on success, otherwise NULL
- Note:
- Developers must free the allocated GlobalObjectId when finished.
| _PUBLIC_ struct RecurrencePattern* get_RecurrencePattern |
( |
TALLOC_CTX * |
mem_ctx, |
|
|
struct Binary_r * |
bin | |
|
) |
| | [read] |
Retrieve a RecurrencePattern structure from a binary blob
- Parameters:
-
| mem_ctx | pointer to the memory context |
| bin | pointer to the Binary_r structure with non-mapped reccurrence data |
- Returns:
- Allocated RecurrencePattern structure on success, otherwise NULL
- Note:
- Developers must free the allocated RecurrencePattern when finished.
| _PUBLIC_ struct TimeZoneStruct* get_TimeZoneStruct |
( |
TALLOC_CTX * |
mem_ctx, |
|
|
struct Binary_r * |
bin | |
|
) |
| | [read] |
Retrieve a TimeZoneStruct structure from a binary blob
- Parameters:
-
| mem_ctx | pointer to the memory context |
| bin | pointer to the Binary_r structure with raw TimeZoneStruct data |
- Returns:
- Allocated TimeZoneStruct structure on success, otherwise NULL
- Note:
- Developers must free the allocated TimeZoneStruct when finished.
| _PUBLIC_ const char* get_TypedString |
( |
struct TypedString * |
tstring |
) |
|
Return the effective value used in a TypedString structure.
- Parameters:
-
| tstring | pointer to TypedString structure |
- Returns:
- pointer to a valid string on success, otherwise NULL
Referenced by OpenMessage().
| size_t get_utf8_utf16_conv_length |
( |
const char * |
inbuf |
) |
|
Return the expected size of the utf8 string after conversion to utf16 by iconv() function.
- Parameters:
-
| inbuf | pointer to the input string |
- Returns:
- expected length of the converted string
- Note:
- This routine is based upon utf8_pull() function from samba4/lib/util/charset/iconv.c
Referenced by cast_mapi_SPropValue().
| _PUBLIC_ struct SPropTagArray* set_SPropTagArray |
( |
TALLOC_CTX * |
mem_ctx, |
|
|
uint32_t |
PropCount, |
|
|
|
... | |
|
) |
| | [read] |
Create a property tag array
- Parameters:
-
| mem_ctx | talloc memory context to use for allocation |
| PropCount | the number of properties in the array |
The varargs (the third and subsequent arguments) are the property tags to make up the array. So the normal way to use this to create an array of two tags is like:
struct SPropTagArray *array
array = set_SPropTagArray(mem_ctx, 2, PR_ENTRYID, PR_DISPLAY_NAME);
- Examples:
- fetchappointment.c, and fetchmail.c.
Referenced by AddUserPermission(), GetABRecipientInfo(), GetBestBody(), GetFolderItemsCount(), GetUserFreeBusyData(), ModifyUserPermission(), ProcessNetworkProfile(), and RemoveUserPermission().
| _PUBLIC_ enum MAPISTATUS SPropTagArray_add |
( |
TALLOC_CTX * |
mem_ctx, |
|
|
struct SPropTagArray * |
SPropTagArray, |
|
|
uint32_t |
aulPropTag | |
|
) |
| | |
Add a property tag to an existing properties array
- Parameters:
-
| mem_ctx | talloc memory context to use for allocation |
| SPropTagArray | existing properties array to add to |
| aulPropTag | the property tag to add |
- Returns:
- MAPI_E_SUCCESS on success, otherwise MAPI error.
- Note:
- Possible MAPI error codes are:
- MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized
- MAPI_E_INVALID_PARAMETER: SPropTagArray parameter is not correctly set
Referenced by OpenEmbeddedMessage(), OpenMessage(), and ReloadCachedInformation().
| _PUBLIC_ enum MAPISTATUS SRow_addprop |
( |
struct SRow * |
aRow, |
|
|
struct SPropValue |
spropvalue | |
|
) |
| | |
| _PUBLIC_ uint32_t SRowSet_propcpy |
( |
TALLOC_CTX * |
mem_ctx, |
|
|
struct SRowSet * |
SRowSet, |
|
|
struct SPropValue |
spropvalue | |
|
) |
| | |
Append a SPropValue structure to given SRowSet
- Parameters:
-
| mem_ctx | pointer to the memory context |
| SRowSet | pointer to the SRowSet array to update |
| spropvalue | the SPropValue to append within SRowSet |
- Returns:
- 0 on success, otherwise 1