diff options
author | Alan Modra <amodra@gmail.com> | 2022-11-10 09:37:36 +1030 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2022-11-10 20:29:03 +1030 |
commit | ac71c620fd8584da5370d548d4a3d6820a2069d3 (patch) | |
tree | 04d70bbb1f106813f49316680c2ed4a587704af5 | |
parent | a3eb71adfea201f9e14980d8a96ea2e27ef52ad1 (diff) | |
download | binutils-gdb-ac71c620fd8584da5370d548d4a3d6820a2069d3.tar.gz |
mach-o reloc size overflow
* mach-o.c (bfd_mach_o_canonicalize_reloc): Set bfd_error on
multiply overflow.
-rw-r--r-- | bfd/mach-o.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/bfd/mach-o.c b/bfd/mach-o.c index 664ff44a8e7..bacb1a6252d 100644 --- a/bfd/mach-o.c +++ b/bfd/mach-o.c @@ -1663,7 +1663,10 @@ bfd_mach_o_canonicalize_reloc (bfd *abfd, asection *asect, size_t amt; if (_bfd_mul_overflow (asect->reloc_count, sizeof (arelent), &amt)) - return -1; + { + bfd_set_error (bfd_error_file_too_big); + return -1; + } res = bfd_malloc (amt); if (res == NULL) return -1; |