What does HRESULT 0x8009700D (MSSIPOTF_E_FILE_CHECKSUM) mean?

 
Previous Next
MSSIPOTF_E_TABLE_CHECKSUM MSSIPOTF_E_FAILED_POLICY

MSSIPOTF_E_FILE_CHECKSUM

The whole-font checksum adjustment is wrong

MSSIPOTF_E_FILE_CHECKSUM concerns the complete font rather than one directory entry. The OpenType specification defines checkSumAdjustment in the head table so that the sum of the entire font reaches the prescribed constant after the adjustment is stored.

This error commonly appears after a tool modifies table data, changes a directory offset, strips a DSIG table, or appends data without recalculating the header. It does not identify the original alteration: first validate table ranges and individual checksums, then rebuild the file-wide adjustment as the final structural step.

How to investigate

  • Set the adjustment field to zero during the prescribed checksum calculation, then store the derived value.
  • Check the head table offset before editing the field; a bad directory can make the apparent field meaningless.
  • Recreate digital signatures only after the binary layout and checksum adjustment are final.

References


Looking for a different code? Search another status or error code.