Edward O'Callaghan has submitted this change. ( https://review.coreboot.org/c/flashrom/+/67722 )
Change subject: layout.c: Validate _layout_entry_by_name() arguments before use ......................................................................
layout.c: Validate _layout_entry_by_name() arguments before use
It may be the case that a layout could not be derived which would result in layout logic being fed a NULL pointer. Validate this case and be defensive to validate the name argument as well.
BUG=b:247055486 TEST=builds
Change-Id: I2a19c0e586f8575b8b3c2c02b5afad312efacfc9 Signed-off-by: Edward O'Callaghan quasisec@google.com Reviewed-on: https://review.coreboot.org/c/flashrom/+/67722 Tested-by: build bot (Jenkins) no-reply@coreboot.org Reviewed-by: Angel Pons th3fanbus@gmail.com Reviewed-by: Felix Singer felixsinger@posteo.net --- M layout.c 1 file changed, 23 insertions(+), 0 deletions(-)
Approvals: build bot (Jenkins): Verified Felix Singer: Looks good to me, approved Angel Pons: Looks good to me, approved
diff --git a/layout.c b/layout.c index 5916d66..0212699 100644 --- a/layout.c +++ b/layout.c @@ -58,6 +58,8 @@ const struct flashrom_layout *const layout, const char *name) { struct romentry *entry = NULL; + if (!layout || !name) + return NULL; while ((entry = mutable_layout_next(layout, entry))) { if (!strcmp(entry->name, name)) return entry;