Patrick Georgi has submitted this change. ( https://review.coreboot.org/c/coreboot/+/78239?usp=email )
Change subject: cbfs: Restore 32-bit padding in cbfs_header ......................................................................
cbfs: Restore 32-bit padding in cbfs_header
It was changed from a fixed size-1 array to a flexible array in commit 242bac0e162c ("…: 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 --- M src/commonlib/bsd/include/commonlib/bsd/cbfs_serialized.h 1 file changed, 1 insertion(+), 1 deletion(-)
Approvals: Patrick Georgi: Looks good to me, approved Kyösti Mälkki: Looks good to me, approved Julius Werner: Looks good to me, approved build bot (Jenkins): Verified
diff --git a/src/commonlib/bsd/include/commonlib/bsd/cbfs_serialized.h b/src/commonlib/bsd/include/commonlib/bsd/cbfs_serialized.h index 07d3d9d..cebaf83 100644 --- a/src/commonlib/bsd/include/commonlib/bsd/cbfs_serialized.h +++ b/src/commonlib/bsd/include/commonlib/bsd/cbfs_serialized.h @@ -60,7 +60,7 @@ uint32_t align; /* fixed to 64 bytes */ uint32_t offset; uint32_t architecture; - uint32_t pad[]; + uint32_t pad[1]; } __packed;
/* this used to be flexible, but wasn't ever set to something different. */