The TransactionEntry structure specifies either the file node list (section 2.4) included in the current transaction and the number of FileNode structures (section 2.4.3) in the list, or the sentinel entry of the current transaction.
This structure has the following format.
srcID (4 bytes): An unsigned integer that specifies the identity of the file node list modified by this transaction, or the sentinel entry for the transaction. A value of 0x00000001 specifies the sentinel entry. Otherwise, MUST be equal to the value of the FileNodeListFragment.header.FileNodeListID field (section 2.4.2) of a file node list in the file.
TransactionEntrySwitch (4 bytes): An unsigned integer of 4 bytes in size. The meaning depends on the value of srcID.
Value of srcID
Value of TransactionEntrySwitch
MUST be equal to CRC (section 2.1.2) of all TransactionEntry structures in the current transaction.
MUST be equal to the new number of FileNode structures in the file node list with a FileNodeListFragment.header.FileNodeListID field value equal to the value of the srcID field after the file node list is added or modified by the transaction.
A non-sentinel TransactionEntry structure MUST add one or more FileNode structures to the file node list it adds or modifies.