From ac71c620fd8584da5370d548d4a3d6820a2069d3 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Thu, 10 Nov 2022 09:37:36 +1030 Subject: mach-o reloc size overflow * mach-o.c (bfd_mach_o_canonicalize_reloc): Set bfd_error on multiply overflow. --- bfd/mach-o.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bfd/mach-o.c b/bfd/mach-o.c index 664ff44..bacb1a6 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; -- cgit v1.1