alpha-ecoff: check archive element size
Alan Modra
amodra@gmail.com
Mon Oct 6 11:22:11 GMT 2025
If we run out of file before decompression finishes, the archive is
broken. Don't allow the buffer to be returned with uninitialised data.
* coff-alpha.c (alpha_ecoff_get_elt_at_filepos): Return an
error if the full element size can't be decompressed.
diff --git a/bfd/coff-alpha.c b/bfd/coff-alpha.c
index fcc8aef6673..9a621e93c5b 100644
--- a/bfd/coff-alpha.c
+++ b/bfd/coff-alpha.c
@@ -2204,6 +2204,8 @@ alpha_ecoff_get_elt_at_filepos (bfd *archive, file_ptr filepos,
if (left == 0)
break;
}
+ if (left != 0)
+ goto error_return;
}
/* Now the uncompressed file contents are in buf. */
--
Alan Modra
More information about the Binutils
mailing list