PR29807, SIGSEGV when linking fuzzed PE object

Message ID Y3vyL3UATztRRM8v@squeak.grove.modra.org
State Repeat Merge
Headers
Series PR29807, SIGSEGV when linking fuzzed PE object |

Checks

Context Check Description
snail/binutils-gdb-check warning Git am fail log

Commit Message

Alan Modra Nov. 21, 2022, 9:48 p.m. UTC
  PR 29807
	* cofflink.c (_bfd_coff_generic_relocate_section): Skip relocs
	against symbols with a NULL section.
  

Patch

diff --git a/bfd/cofflink.c b/bfd/cofflink.c
index a5b936fd7c1..cd117a445c6 100644
--- a/bfd/cofflink.c
+++ b/bfd/cofflink.c
@@ -2961,8 +2961,10 @@  _bfd_coff_generic_relocate_section (bfd *output_bfd,
 	      sec = sections[symndx];
 
 	      /* PR 19623: Relocations against symbols in
-		 the absolute sections should ignored.  */
-	      if (bfd_is_abs_section (sec))
+		 the absolute sections should ignored.
+		 PR 29807: Also ignore relocs against file symbols or
+		 other such nonsense in fuzzed objects.  */
+	      if (sec == NULL || bfd_is_abs_section (sec))
 		continue;
 
 	      val = (sec->output_section->vma