Browse Source

XCOFF64 uninitialised read

Like git commit 67338173a4.

	* coff64-rs6000.c (xcoff64_slurp_armap): Ensure size is large
	enough to read number of symbols.
binutils-2_35-branch
Alan Modra 6 years ago
parent
commit
c15a8f173e
  1. 5
      bfd/ChangeLog
  2. 4
      bfd/coff64-rs6000.c

5
bfd/ChangeLog

@ -1,3 +1,8 @@
2020-03-22 Alan Modra <amodra@gmail.com>
* coff64-rs6000.c (xcoff64_slurp_armap): Ensure size is large
enough to read number of symbols.
2020-03-20 H.J. Lu <hongjiu.lu@intel.com>
* configure.ac (HAVE_EXECUTABLE_SUFFIX): Removed.

4
bfd/coff64-rs6000.c

@ -1933,9 +1933,9 @@ xcoff64_slurp_armap (bfd *abfd)
return FALSE;
sz = bfd_scan_vma (hdr.size, (const char **) NULL, 10);
if (sz == (bfd_size_type) -1)
if (sz + 1 < 9)
{
bfd_set_error (bfd_error_no_memory);
bfd_set_error (bfd_error_bad_value);
return FALSE;
}

Loading…
Cancel
Save