Blame SOURCES/binutils-coffgen-buffer-overrun.patch

de02ff
--- binutils.orig/bfd/coffgen.c	2022-04-25 13:43:52.724745386 +0100
de02ff
+++ binutils-2.30/bfd/coffgen.c	2022-04-25 13:46:39.583596137 +0100
de02ff
@@ -1838,10 +1838,7 @@ coff_get_normalized_symtab (bfd *abfd)
de02ff
       internal_ptr->is_sym = TRUE;
de02ff
 
de02ff
       /* PR 17512: file: 1353-1166-0.004.  */
de02ff
-      if (symbol_ptr->u.syment.n_sclass == C_FILE
de02ff
-	  && symbol_ptr->u.syment.n_numaux > 0
de02ff
-	  && raw_src + symesz + symbol_ptr->u.syment.n_numaux
de02ff
-	  * symesz > raw_end)
de02ff
+      if (symbol_ptr->u.syment.n_numaux > ((raw_end - 1) - raw_src) / symesz)
de02ff
 	{
de02ff
 	  bfd_release (abfd, internal);
de02ff
 	  return NULL;