util/amdfwtool: Allow 0-length blobs
A side effect of the change 8e0dca05 "util/amdfwtool: Add generic image copy function" was to treat a read operation of zero bytes as a failure. Some implementations exist that use zero length files as a means of removing functionality. This causes amdfwtool to exit with an error. Put the zero length capability back in, and generate the requested table entry with a length field of 0x0. TEST=Boot google/grunt, inspect PSP directory table BUG=b:128507639 Change-Id: Ifc9204dbbf6b107f06116362358ab9d22caa71df Signed-off-by: Marshall Dawson <marshalldawson3rd@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/31891 Reviewed-by: Patrick Georgi <pgeorgi@google.com> Reviewed-by: Martin Roth <martinroth@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
d004dac7f6
commit
02bd77379b
@ -424,7 +424,7 @@ static void integrate_firmwares(context *ctx,
|
||||
|
||||
bytes = copy_blob(BUFF_CURRENT(*ctx),
|
||||
fw_table[i].filename, BUFF_ROOM(*ctx));
|
||||
if (bytes <= 0) {
|
||||
if (bytes < 0) {
|
||||
free(ctx->rom);
|
||||
exit(1);
|
||||
}
|
||||
@ -455,7 +455,7 @@ static void integrate_psp_firmwares(context *ctx,
|
||||
} else if (fw_table[i].filename != NULL) {
|
||||
bytes = copy_blob(BUFF_CURRENT(*ctx),
|
||||
fw_table[i].filename, BUFF_ROOM(*ctx));
|
||||
if (bytes <= 0) {
|
||||
if (bytes < 0) {
|
||||
free(ctx->rom);
|
||||
exit(1);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user