[nelson] 31.20260429.103.9300 u-boot source GitOrigin-RevId: 21f9a0a9775ab411a8f2cd970d4bdf4c9a823475 Change-Id: Ifeea713527e8aabca1d233ffcfb0f7bb10f2ad1e Reviewed-on: https://turquoise-internal-review.googlesource.com/c/third_party/u-boot/+/1649105 Reviewed-by: David Pursell <dpursell@google.com>
diff --git a/lib/fuchsia/firmware_sdk/pkg/zbi/zbi.c b/lib/fuchsia/firmware_sdk/pkg/zbi/zbi.c index 112fbba..5b901dc 100644 --- a/lib/fuchsia/firmware_sdk/pkg/zbi/zbi.c +++ b/lib/fuchsia/firmware_sdk/pkg/zbi/zbi.c
@@ -137,6 +137,10 @@ const uint32_t totalSize = (uint32_t)sizeof(zbi_header_t) + header->length; uint32_t offset = sizeof(zbi_header_t); while (offset < totalSize) { + if (offset + sizeof(zbi_header_t) > totalSize) { + return ZBI_RESULT_ERR_TRUNCATED; + } + zbi_header_t* entryHeader = (zbi_header_t*)(base + offset); zbi_result_t result = callback(entryHeader, entryHeader + 1, cookie);