What does HRESULT 0x80097016 (MSSIPOTF_E_DSIG_STRUCTURE) mean?

 
Previous Next
MSSIPOTF_E_BADVERSION MSSIPOTF_E_PCONST_CHECK

MSSIPOTF_E_DSIG_STRUCTURE

The DSIG table is structurally invalid

MSSIPOTF_E_DSIG_STRUCTURE applies when a digital-signature table is present but cannot be parsed as a valid DSIG structure. DSIG is optional for a font, yet once it is present its header, signature records, offsets, lengths, and signed-content layout must be consistent.

This is distinct from MSSIPOTF_E_FAILED_POLICY and MSSIPOTF_E_CRYPT. Those can occur after the signature structure is readable. Here, repair begins with container and DSIG record layout. Do not try to validate the cryptographic signature until the DSIG table and the surrounding font layout are structurally sound.

How to investigate

  • Confirm whether the font is a single font or a collection, because DSIG placement rules differ for collections.
  • Check the DSIG tag, table record, signature block offsets and lengths against the file size.
  • Recreate the signature only after rebuilding table layout, checksums, and the final binary image.

References


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