Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Compute MAPI PR_ENTRYID for messages and folders
In e-discovery applications, messages will often be referred to by a MAPI PR_ENTRYID. This is a computed property, as described here: http://pstsdk.codeplex.com/Thread/View.aspx?ThreadId=215111 This patch adds support for computing PR_ENTRYID for top-level messages and folders. As suggested by Terry Mahaffey, all computations are done in the PST layer. All of the PR_ENTRYID values in the test suite were generated using MFCMAPI, so we're comparing the computed values against known-good values. This patch does not include the corresponding functions for looking up messages and folders using their PR_ENTRYID values. While these would be highly desirable, the current patch stands on its own. According to Terry Mahaffey, OST files have a different and undocumented algorithm for calculating PR_ENTRYID. This patch adds an 'is_pst' function to the database_context interface to detect this case, and throws an error. Note that it would be relatively easy to export the database_type value directly (instead of a less-general 'is_pst') function, but that this would require including disk.h into database_iface.h and exposing the disk-level database_type enumeration directly.
- Loading branch information
Showing
6 changed files
with
100 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters