Each deleted object in the middle sector of the file gets a new header.
deleted objects are organized in a single linked list.
Deleted message und tree objects always have the same size. They are easy to reuse. Only on single linked list is needed for each. You can find the pointers to the roots at position (12) and (13) in the file header.
All other deleted objects (indexed info, conditions, folder list) from the variable segments have no unique length. They are organized in several single linked lists. For each length one. You can find the pointers to the roots at position (a7) and following in the file header.
The header | ||
---|---|---|
position | type | description |
(1) | int4 | object marker |
(2) | int4 | length of field (6) |
(3) | int4 | length of this object, (2) + 0x14 |
(4) | int4 | not used, not cleared |
(5) | int4 | pointer to the next deleted object |
The body | ||
position | type | description |
(6) | data | free space, not cleared, length (2) |