Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 52 additions & 0 deletions include/libpff.h.in
Original file line number Diff line number Diff line change
Expand Up @@ -1449,6 +1449,32 @@ int libpff_item_get_entry_multi_value(
uint8_t flags,
libpff_error_t **error );

/* Retrieves the size of the UTF-16 encoded item Message-ID
* Size includes the end of string character
* Returns 1 if successful, 0 if not available or -1 on error
*/
#define libpff_item_get_utf16_internet_message_id_size( item, utf16_string_size, error ) \
libpff_item_get_entry_value_utf16_string_size( item, 0, LIBPFF_ENTRY_TYPE_INTERNET_MESSAGE_ID, utf16_string_size, 0, error )

/* Retrieves the UTF-16 encoded item Message-ID
* Returns 1 if successful, 0 if not available or -1 on error
*/
#define libpff_item_get_utf16_internet_message_id( item, utf16_string, utf16_string_size, error ) \
libpff_item_get_entry_value_utf16_string( item, 0, LIBPFF_ENTRY_TYPE_INTERNET_MESSAGE_ID, utf16_string, utf16_string_size, 0, error )

/* Retrieves the size of the UTF-16 encoded item In-Reply-To
* Size includes the end of string character
* Returns 1 if successful, 0 if not available or -1 on error
*/
#define libpff_item_get_utf16_in_reply_to_id_size( item, utf16_string_size, error ) \
libpff_item_get_entry_value_utf16_string_size( item, 0, LIBPFF_ENTRY_TYPE_IN_REPLY_TO_ID, utf16_string_size, 0, error )

/* Retrieves the UTF-16 encoded item In-Reply-To
* Returns 1 if successful, 0 if not available or -1 on error
*/
#define libpff_item_get_utf16_in_reply_to_id( item, utf16_string, utf16_string_size, error ) \
libpff_item_get_entry_value_utf16_string( item, 0, LIBPFF_ENTRY_TYPE_IN_REPLY_TO_ID, utf16_string, utf16_string_size, 0, error )

/* Retrieves the size of the UTF-16 encoded item display name
* Size includes the end of string character
* Returns 1 if successful, 0 if not available or -1 on error
Expand Down Expand Up @@ -1488,6 +1514,20 @@ int libpff_item_get_entry_multi_value(
#define libpff_item_get_utf16_email_address( item, utf16_string, size, error ) \
libpff_item_get_entry_value_utf16_string( item, 0, LIBPFF_ENTRY_TYPE_EMAIL_ADDRESS, utf16_string, utf16_string_size, 0, error )

/* Retrieves the size of the UTF-8 encoded item Message-ID
* Size includes the end of string character
* Returns 1 if successful, 0 if not available or -1 on error
*/
#define libpff_item_get_utf8_internet_message_id_size( item, utf8_string_size, error ) \
libpff_item_get_entry_value_utf8_string_size( item, 0, LIBPFF_ENTRY_TYPE_INTERNET_MESSAGE_ID, utf8_string_size, 0, error )

/* Retrieves the size of the UTF-8 encoded item In-Reply-To
* Size includes the end of string character
* Returns 1 if successful, 0 if not available or -1 on error
*/
#define libpff_item_get_utf8_in_reply_to_id_size( item, utf8_string_size, error ) \
libpff_item_get_entry_value_utf8_string_size( item, 0, LIBPFF_ENTRY_TYPE_IN_REPLY_TO_ID, utf8_string_size, 0, error )

/* Retrieves the size of the UTF-8 encoded item display name
* Size includes the end of string character
* Returns 1 if successful, 0 if not available or -1 on error
Expand All @@ -1509,6 +1549,18 @@ int libpff_item_get_entry_multi_value(
#define libpff_item_get_utf8_email_address_size( item, utf8_string_size, error ) \
libpff_item_get_entry_value_utf8_string_size( item, 0, LIBPFF_ENTRY_TYPE_EMAIL_ADDRESS, utf8_string_size, 0, error )

/* Retrieves the UTF-8 encoded item Message-ID
* Returns 1 if successful, 0 if not available or -1 on error
*/
#define libpff_item_get_utf8_internet_message_id( item, utf8_string, utf8_string_size, error ) \
libpff_item_get_entry_value_utf8_string( item, 0, LIBPFF_ENTRY_TYPE_INTERNET_MESSAGE_ID, utf8_string, utf8_string_size, 0, error )

/* Retrieves the UTF-8 encoded item In-Reply-To
* Returns 1 if successful, 0 if not available or -1 on error
*/
#define libpff_item_get_utf8_in_reply_to_id( item, utf8_string, utf8_string_size, error ) \
libpff_item_get_entry_value_utf8_string( item, 0, LIBPFF_ENTRY_TYPE_IN_REPLY_TO_ID, utf8_string, utf8_string_size, 0, error )

/* Retrieves the UTF-8 encoded item display name
* Returns 1 if successful, 0 if not available or -1 on error
*/
Expand Down
3 changes: 3 additions & 0 deletions include/libpff/mapi.h
Original file line number Diff line number Diff line change
Expand Up @@ -265,6 +265,9 @@ enum LIBPFF_ENTRY_TYPES

LIBPFF_ENTRY_TYPE_MESSAGE_BODY_HTML = 0x1013,

LIBPFF_ENTRY_TYPE_INTERNET_MESSAGE_ID = 0x1035,
LIBPFF_ENTRY_TYPE_IN_REPLY_TO_ID = 0x1042,

LIBPFF_ENTRY_TYPE_EMAIL_EML_FILENAME = 0x10f3,

LIBPFF_ENTRY_TYPE_DISPLAY_NAME = 0x3001,
Expand Down
3 changes: 3 additions & 0 deletions libpff/libpff_mapi.h
Original file line number Diff line number Diff line change
Expand Up @@ -273,6 +273,9 @@ enum LIBPFF_ENTRY_TYPES

LIBPFF_ENTRY_TYPE_MESSAGE_BODY_HTML = 0x1013,

LIBPFF_ENTRY_TYPE_INTERNET_MESSAGE_ID = 0x1035,
LIBPFF_ENTRY_TYPE_IN_REPLY_TO_ID = 0x1042,

LIBPFF_ENTRY_TYPE_EMAIL_EML_FILENAME = 0x10f3,

LIBPFF_ENTRY_TYPE_DISPLAY_NAME = 0x3001,
Expand Down
6 changes: 4 additions & 2 deletions pfftools/export_handle.c
Original file line number Diff line number Diff line change
Expand Up @@ -4946,7 +4946,7 @@ int export_handle_export_message_header_to_item_file(
item_file_t *item_file,
libcerror_error_t **error )
{
mapi_property_definitions_t property_definitions[ 21 ] = {
mapi_property_definitions_t property_definitions[ 23 ] = {
{ _SYSTEM_STRING( "Client submit time:\t\t\t" ), LIBPFF_ENTRY_TYPE_MESSAGE_CLIENT_SUBMIT_TIME, LIBPFF_VALUE_TYPE_FILETIME, 0, NULL },
{ _SYSTEM_STRING( "Delivery time:\t\t\t\t" ), LIBPFF_ENTRY_TYPE_MESSAGE_DELIVERY_TIME, LIBPFF_VALUE_TYPE_FILETIME, 0, NULL },
{ _SYSTEM_STRING( "Creation time:\t\t\t\t" ), LIBPFF_ENTRY_TYPE_MESSAGE_CREATION_TIME, LIBPFF_VALUE_TYPE_FILETIME, 0, NULL },
Expand All @@ -4967,6 +4967,8 @@ int export_handle_export_message_header_to_item_file(
{ _SYSTEM_STRING( "Reminder time:\t\t\t\t" ), LIBPFF_ENTRY_TYPE_MESSAGE_REMINDER_TIME, LIBPFF_VALUE_TYPE_FILETIME, 0, NULL },
{ _SYSTEM_STRING( "Reminder signal time:\t\t\t" ), LIBPFF_ENTRY_TYPE_MESSAGE_REMINDER_SIGNAL_TIME, LIBPFF_VALUE_TYPE_FILETIME, 0, NULL },
{ _SYSTEM_STRING( "Is private:\t\t\t\t" ), LIBPFF_ENTRY_TYPE_MESSAGE_IS_PRIVATE, LIBPFF_VALUE_TYPE_BOOLEAN, 0, NULL },
{ _SYSTEM_STRING( "Message-ID:\t\t\t\t" ), LIBPFF_ENTRY_TYPE_INTERNET_MESSAGE_ID, LIBPFF_VALUE_TYPE_STRING, 0, NULL },
{ _SYSTEM_STRING( "In-Reply-To:\t\t\t\t" ), LIBPFF_ENTRY_TYPE_IN_REPLY_TO_ID, LIBPFF_VALUE_TYPE_STRING, 0, NULL },
{ _SYSTEM_STRING( "Status:\t\t\t\t\t" ), LIBPFF_ENTRY_TYPE_MESSAGE_STATUS, LIBPFF_VALUE_TYPE_INTEGER_32BIT_SIGNED, 0, &export_handle_export_message_status_to_item_file } };

static char *function = "export_handle_export_message_header_to_item_file";
Expand All @@ -4978,7 +4980,7 @@ int export_handle_export_message_header_to_item_file(
message,
0,
(mapi_property_definitions_t *) &property_definitions,
21,
23,
error ) != 1 )
{
libcerror_error_set(
Expand Down
Loading