Skip to content

Conversation

@nate-desimone
Copy link

According to the UEFI Platform Initialization (PI) Specification 1.8A, Volume 3, Section 3.2.1.1, the ExtHeaderOffset field can be zero. In which case,
the Extended FV Header does not exist.

If ExtHeaderOffset is zero, do not attempt to parse the Extended FV Header.

Spec Reference: https://uefi.org/specs/PI/1.8A/V3_Code_Definitions.html#efi-firmware-volume-header

According to the UEFI Platform Initialization (PI)
Specification 1.8A, Volume 3, Section 3.2.1.1, the
ExtHeaderOffset field can be zero. In which case,
the Extended FV Header does not exist.

If ExtHeaderOffset is zero, do not attempt to parse
the Extended FV Header.

Spec Reference: https://uefi.org/specs/PI/1.8A/V3_Code_Definitions.html#efi-firmware-volume-header

Signed-off-by: Nate DeSimone <[email protected]>
When decoding headers, fetch 200 bytes instead of 100 bytes. This prevents
"Error invalid FV header data" errors when parsing firmware volumes that
contain an extended header. Often, the extended header on such firmware
volumes extends past the first 100 bytes.

Signed-off-by: Nate DeSimone <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant