[fdt] Allow for parsing device trees where the length is known in advance

Allow for parsing device trees where an external factor (such as a
downloaded image length) determines the maximum length, which must be
validated against the length within the device tree header.

Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
Michael Brown
2025-03-28 14:08:18 +00:00
parent 2399c79980
commit 3860313dd5
4 changed files with 20 additions and 4 deletions

View File

@@ -54,7 +54,7 @@ static void efi_fdt_init ( void ) {
DBGC ( &efi_fdt, "EFIFDT configuration table at %p\n", efi_fdt );
/* Parse as system device tree */
if ( ( rc = fdt_parse ( &sysfdt, efi_fdt ) ) != 0 ) {
if ( ( rc = fdt_parse ( &sysfdt, efi_fdt, -1UL ) ) != 0 ) {
DBGC ( &efi_fdt, "EFIFDT could not parse: %s\n",
strerror ( rc ) );
return;