cbfs: Restore 32-bit padding in cbfs_header

It was changed from a fixed size-1 array to a flexible array
in commit 242bac0e16 ("…: Use C99 flexible arrays") which resulted
in a change to the serialized format as the header size was no longer
the same.

That broke other tools that read CBFS files, like diffoscope
https://github.com/NixOS/nixpkgs/issues/256896

Change-Id: I4199dcc4823469c5986ac967a55b1c85cc62f780
Signed-off-by: Ivan Jager <aij+git@mrph.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/78239
Reviewed-by: Julius Werner <jwerner@chromium.org>
Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-by: Patrick Georgi <patrick@coreboot.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Ivan Jager 2023-09-23 08:34:32 -05:00 committed by Patrick Georgi
parent 20a332a30e
commit 6a249d688e
1 changed files with 1 additions and 1 deletions

View File

@ -60,7 +60,7 @@ struct cbfs_header {
uint32_t align; /* fixed to 64 bytes */ uint32_t align; /* fixed to 64 bytes */
uint32_t offset; uint32_t offset;
uint32_t architecture; uint32_t architecture;
uint32_t pad[]; uint32_t pad[1];
} __packed; } __packed;
/* this used to be flexible, but wasn't ever set to something different. */ /* this used to be flexible, but wasn't ever set to something different. */