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_ void | cast_PropertyRow_to_SRow (TALLOC_CTX *mem_ctx, struct PropertyRow_r *proprow, struct SRow *srow) |
_PUBLIC_ void | cast_PropertyRowSet_to_SRowSet (TALLOC_CTX *mem_ctx, struct PropertyRowSet_r *prowset, struct SRowSet *srowset) |
_PUBLIC_ void | cast_PropertyValue_to_SPropValue (struct PropertyValue_r *propvalue, struct SPropValue *spropvalue) |
_PUBLIC_ uint32_t | cast_SPropValue (TALLOC_CTX *mem_ctx, struct mapi_SPropValue *mapi_sprop, struct SPropValue *sprop) |
_PUBLIC_ struct AddressBookEntryId * | get_AddressBookEntryId (TALLOC_CTX *mem_ctx, struct Binary_r *bin) |
_PUBLIC_ int | get_display_name_index_SPropTagArray (struct SPropTagArray *properties) |
_PUBLIC_ int | get_email_address_index_SPropTagArray (struct SPropTagArray *properties) |
_PUBLIC_ struct FolderEntryId * | get_FolderEntryId (TALLOC_CTX *mem_ctx, struct Binary_r *bin) |
_PUBLIC_ struct GlobalObjectId * | get_GlobalObjectId (TALLOC_CTX *mem_ctx, struct Binary_r *bin) |
_PUBLIC_ struct MessageEntryId * | get_MessageEntryId (TALLOC_CTX *mem_ctx, struct Binary_r *bin) |
_PUBLIC_ struct OneOffEntryId * | get_OneOffEntryId (TALLOC_CTX *mem_ctx, struct Binary_r *bin) |
_PUBLIC_ struct PersistData * | get_PersistData (TALLOC_CTX *mem_ctx, struct Binary_r *bin) |
_PUBLIC_ struct PersistDataArray * | get_PersistDataArray (TALLOC_CTX *mem_ctx, struct Binary_r *bin) |
_PUBLIC_ struct PtypServerId * | get_PtypServerId (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_ void | mapi_copy_spropvalues (TALLOC_CTX *mem_ctx, struct SPropValue *source_values, struct SPropValue *dest_values, uint32_t count) |
_PUBLIC_ enum MAPISTATUS | PropertyRow_addprop (struct PropertyRow_r *aRow, struct PropertyValue_r propValue) |
_PUBLIC_ uint32_t | PropertyRowSet_propcpy (TALLOC_CTX *mem_ctx, struct PropertyRowSet_r *RowSet, struct PropertyValue_r value) |
_PUBLIC_ struct SPropTagArray * | set_SPropTagArray (TALLOC_CTX *mem_ctx, uint32_t PropCount,...) |
_PUBLIC_ enum MAPISTATUS | SPropTagArray_add (TALLOC_CTX *mem_ctx, struct SPropTagArray *SPropTagArray, enum MAPITAGS aulPropTag) |
_PUBLIC_ enum MAPISTATUS | SPropTagArray_delete (TALLOC_CTX *mem_ctx, struct SPropTagArray *SPropTagArray, uint32_t aulPropTag) |
_PUBLIC_ enum MAPISTATUS | SPropTagArray_find (struct SPropTagArray SPropTagArray, enum MAPITAGS aulPropTag, uint32_t *propIdx) |
_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) |
Functions for manipulating MAPI properties.
_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.
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 |
References get_utf8_utf16_conv_length().
Referenced by ModifyRecipients(), SetPropertiesNoReplicate(), and SetProps().
_PUBLIC_ void cast_PropertyRow_to_SRow | ( | TALLOC_CTX * | mem_ctx, |
struct PropertyRow_r * | proprow, | ||
struct SRow * | srow | ||
) |
Convenience function to convert a PropertyRow_r structure into a SRow structure.
mem_ctx | pointer to the allocation context for structure members |
proprow | pointer to the PropertyRow_r structure to copy data to |
srow | pointer to the SRow structure to copy data from |
References cast_PropertyValue_to_SPropValue().
Referenced by cast_PropertyRowSet_to_SRowSet().
_PUBLIC_ void cast_PropertyRowSet_to_SRowSet | ( | TALLOC_CTX * | mem_ctx, |
struct PropertyRowSet_r * | prowset, | ||
struct SRowSet * | srowset | ||
) |
Convenience function to convert a PropertyRowSet_r structure into a SRowSet structure.
mem_ctx | pointer to the allocation context for structure members |
prowset | pointer to the PropertyRowSet_r structure to copy data to |
srowset | pointer to the SRowSet structure to copy data from |
References cast_PropertyRow_to_SRow().
_PUBLIC_ void cast_PropertyValue_to_SPropValue | ( | struct PropertyValue_r * | propvalue, |
struct SPropValue * | spropvalue | ||
) |
Convenience function to convert a PropertyValue_r structure into a SPropValue structure.
propvalue | pointer to the PropertyValue_r structure to copy data to |
spropvalue | pointer to the SPropValue structure to copy data from |
Referenced by cast_PropertyRow_to_SRow().
_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
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 |
References get_utf8_utf16_conv_length().
_PUBLIC_ struct AddressBookEntryId* get_AddressBookEntryId | ( | TALLOC_CTX * | mem_ctx, |
struct Binary_r * | bin | ||
) |
Retrieve a AddressBookEntryId structure from a binary blob
mem_ctx | pointer to the memory context |
bin | pointer to the Binary_r structure with raw AddressBookEntryId data |
_PUBLIC_ int get_display_name_index_SPropTagArray | ( | struct SPropTagArray * | properties | ) |
Return the index of the display in the properties array.
It looks for PR_DISPLAY_NAME_UNICODE, then for PR_7BIT_DISPLAY_NAME_UNICODE or finally for PR_RECIPIENT_DISPLAY_NAME_UNICODE in this order.
SPropTagArray | existing properties array to look for |
References SPropTagArray_find().
_PUBLIC_ int get_email_address_index_SPropTagArray | ( | struct SPropTagArray * | properties | ) |
Return the index of the email address in a properties array.
It looks for PR_EMAIL_ADDRESS_UNICODE or PR_SMTP_ADDRESS_UNICODE in this order.
SPropTagArray | existing properties array to look for |
References SPropTagArray_find().
_PUBLIC_ struct FolderEntryId* get_FolderEntryId | ( | TALLOC_CTX * | mem_ctx, |
struct Binary_r * | bin | ||
) |
Retrieve a FolderEntryId structure from a binary blob
mem_ctx | pointer to the memory context |
bin | pointer to the Binary_r structure with raw FolderEntryId data |
_PUBLIC_ struct GlobalObjectId* get_GlobalObjectId | ( | TALLOC_CTX * | mem_ctx, |
struct Binary_r * | bin | ||
) |
Retrieve a GlobalObjectId structure from a binary blob
mem_ctx | pointer to the memory context |
bin | pointer to the Binary_r structure with raw GlobalObjectId data |
_PUBLIC_ struct MessageEntryId* get_MessageEntryId | ( | TALLOC_CTX * | mem_ctx, |
struct Binary_r * | bin | ||
) |
Retrieve a MessageEntryId structure from a binary blob
mem_ctx | pointer to the memory context |
bin | pointer to the Binary_r structure with raw MessageEntryId data |
_PUBLIC_ struct OneOffEntryId* get_OneOffEntryId | ( | TALLOC_CTX * | mem_ctx, |
struct Binary_r * | bin | ||
) |
Retrieve a OneOffEntryId structure from a binary blob. This structure is meant to represent recipients that do not exist in the directory.
mem_ctx | pointer to the memory context |
bin | pointer to the Binary_r structure with raw OneOffEntryId data |
_PUBLIC_ struct PersistData* get_PersistData | ( | TALLOC_CTX * | mem_ctx, |
struct Binary_r * | bin | ||
) |
Retrieve a PersistData structure from a binary blob. This structure is meant to contain the entryID of a special folder and other data related to a special folder.
mem_ctx | pointer to the memory context |
bin | pointer to the Binary_r structure with raw PersistData data |
_PUBLIC_ struct PersistDataArray* get_PersistDataArray | ( | TALLOC_CTX * | mem_ctx, |
struct Binary_r * | bin | ||
) |
Retrieve a PersistData structure array from a binary blob. This structure is meant to contain entryIDs from special folders and other data related to special folders.
mem_ctx | pointer to the memory context |
bin | pointer to the Binary_r structure with a raw PersistData array |
_PUBLIC_ struct PtypServerId* get_PtypServerId | ( | TALLOC_CTX * | mem_ctx, |
struct Binary_r * | bin | ||
) |
Retrieve a PtypServerId structure from a binary blob
mem_ctx | pointer to the memory context |
bin | pointer to the Binary_r structure with raw PtypServerId data |
_PUBLIC_ struct RecurrencePattern* get_RecurrencePattern | ( | TALLOC_CTX * | mem_ctx, |
struct Binary_r * | bin | ||
) |
Retrieve a RecurrencePattern structure from a binary blob
mem_ctx | pointer to the memory context |
bin | pointer to the Binary_r structure with non-mapped reccurrence data |
_PUBLIC_ struct TimeZoneStruct* get_TimeZoneStruct | ( | TALLOC_CTX * | mem_ctx, |
struct Binary_r * | bin | ||
) |
Retrieve a TimeZoneStruct structure from a binary blob
mem_ctx | pointer to the memory context |
bin | pointer to the Binary_r structure with raw TimeZoneStruct data |
_PUBLIC_ const char* get_TypedString | ( | struct TypedString * | tstring | ) |
Return the effective value used in a TypedString structure.
tstring | pointer to TypedString structure |
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.
inbuf | pointer to the input string |
Referenced by cast_mapi_SPropValue(), cast_SPropValue(), CopyFolder(), CreateFolder(), GetIDsFromNames(), mapi_nameid_canonical_add(), mapi_nameid_custom_string_add(), mapi_nameid_lid_add(), mapi_nameid_OOM_add(), mapi_nameid_string_add(), ModifyRecipients(), and MoveFolder().
_PUBLIC_ void mapi_copy_spropvalues | ( | TALLOC_CTX * | mem_ctx, |
struct SPropValue * | source_values, | ||
struct SPropValue * | dest_values, | ||
uint32_t | count | ||
) |
Convenience function to copy an array of struct SPropValue or a part thereof into another array, by duplicating and properly parenting pointer data. The destination array is considered to be preallocated.
_PUBLIC_ enum MAPISTATUS PropertyRow_addprop | ( | struct PropertyRow_r * | aRow, |
struct PropertyValue_r | propValue | ||
) |
add a PropertyValue_r structure to a PropertyRow_r array
aRow | pointer to the PropertyRow_r array where propValue should be appended |
propValue | the PropertyValue_r structure to add to aRow |
_PUBLIC_ uint32_t PropertyRowSet_propcpy | ( | TALLOC_CTX * | mem_ctx, |
struct PropertyRowSet_r * | RowSet, | ||
struct PropertyValue_r | value | ||
) |
Append a PropertyValue_r structure to given PropertyRowSet_r
mem_ctx | pointer to the memory context |
RowSet | pointer to the PropertyRowSet_r array to update |
value | the PropertyValue_r to append within SRowSet |
_PUBLIC_ struct SPropTagArray* set_SPropTagArray | ( | TALLOC_CTX * | mem_ctx, |
uint32_t | PropCount, | ||
... | |||
) |
Create a property tag array
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:
Referenced by AddUserPermission(), DuplicateProfile(), EntryIDFromSourceIDForMessage(), GetABRecipientInfo(), GetBestBody(), GetFolderItemsCount(), GetUserFreeBusyData(), ModifyUserPermission(), ProcessNetworkProfile(), and RemoveUserPermission().
_PUBLIC_ enum MAPISTATUS SPropTagArray_add | ( | TALLOC_CTX * | mem_ctx, |
struct SPropTagArray * | SPropTagArray, | ||
enum MAPITAGS | aulPropTag | ||
) |
Add a property tag to an existing properties array
mem_ctx | talloc memory context to use for allocation |
SPropTagArray | existing properties array to add to |
aulPropTag | the property tag to add |
Referenced by OpenEmbeddedMessage(), OpenMessage(), and ReloadCachedInformation().
_PUBLIC_ enum MAPISTATUS SPropTagArray_delete | ( | TALLOC_CTX * | mem_ctx, |
struct SPropTagArray * | SPropTagArray, | ||
uint32_t | aulPropTag | ||
) |
Delete a property tag from an existing properties array
mem_ctx | talloc memory context to use for allocation |
SPropTagArray | existing properties array to remove from |
aulPropTag | the property tag to remove |
_PUBLIC_ enum MAPISTATUS SPropTagArray_find | ( | struct SPropTagArray SPropTagArray | , |
enum MAPITAGS | aulPropTag, | ||
uint32_t * | propIdx | ||
) |
Return the index of a property tag in an existing properties array
SPropTagArray | existing properties array to remove from |
aulPropTag | the property tag to find |
propIdx | the index of the found property (undefined when MAPI_E_NOT_FOUND is returned) |
Referenced by get_display_name_index_SPropTagArray(), and get_email_address_index_SPropTagArray().
_PUBLIC_ enum MAPISTATUS SRow_addprop | ( | struct SRow * | aRow, |
struct SPropValue | spropvalue | ||
) |
add a SPropValue structure to a SRow array
aRow | pointer to the SRow array where spropvalue should be appended |
spropvalue | reference to the SPropValue structure to add to aRow |
Referenced by OpenEmbeddedMessage(), OpenMessage(), ReloadCachedInformation(), and SetRecipientType().
_PUBLIC_ uint32_t SRowSet_propcpy | ( | TALLOC_CTX * | mem_ctx, |
struct SRowSet * | SRowSet, | ||
struct SPropValue | spropvalue | ||
) |
Append a SPropValue structure to given SRowSet
mem_ctx | pointer to the memory context |
SRowSet | pointer to the SRowSet array to update |
spropvalue | the SPropValue to append within SRowSet |
![]() ![]() ![]() |
This content is licensed under the Creative Commons Attribution ShareAlike License v. 3.0: http://creativecommons.org/licenses/by-sa/3.0/ |