PST File Format SDK v0.4
Loading...
Searching...
No Matches
Disk Layer
+ Collaboration diagram for Disk Layer:

Modules

 Header Structures
 
 Utility Functions
 
 Page Structures
 
 Block Structures
 
 Heap Structures
 
 BTH Structures
 
 Property Context Structures
 
 Table Context Structures
 
 Name to ID Mapping Structures
 

Files

file  disk.h
 Disk data structure definitions.
 

Classes

struct  pstsdk::disk::block_reference< T >
 The combination of the id and physical location of a block or page. More...
 

Functions

void pstsdk::disk::permute (void *pdata, ulong cb, bool encrypt)
 Modifies the data block in place, according to the permute method.
 
void pstsdk::disk::cyclic (void *pdata, ulong cb, ulong key)
 Modifies the data block in place, according to the cyclic method.
 

Detailed Description

Function Documentation

◆ cyclic()

void pstsdk::disk::cyclic ( void pdata,
ulong  cb,
ulong  key 
)
inline

Modifies the data block in place, according to the cyclic method.

This algorithm is called to "encrypt" external data if the crypt_method of the file is set to crypt_method_cyclic

Parameters
[in,out]pdataA pointer to the data to "encrypt". This data is modified in place
[in]cbThe size of the block of data
[in]keyThe key used in the cycle process. Typically this is the block_id of the data being "encrypted".
See also
[MS-PST] 5.2

Definition at line 1658 of file disk.h.

◆ permute()

void pstsdk::disk::permute ( void pdata,
ulong  cb,
bool  encrypt 
)
inline

Modifies the data block in place, according to the permute method.

This algorithm is called to "encrypt" external data if the crypt_method of the file is set to crypt_method_permute

Parameters
[in,out]pdataA pointer to the data to "encrypt". This data is modified in place
[in]cbThe size of the block of data
[in]encryptTrue if "encrypting", false is unencrypting
See also
[MS-PST] 5.1

Definition at line 1645 of file disk.h.