asan: segfault in coff_write_auxent_fname

Alan Modra amodra@gmail.com
Sat Aug 6 09:12:46 GMT 2022


More fuzzed input file nonsense.

	* coffgen.c (coff_write_symbol): Don't call coff_write_auxent_fname
	when extrap is NULL.

diff --git a/bfd/coffgen.c b/bfd/coffgen.c
index 07b3fb446aa..4d2b82e4a6f 100644
--- a/bfd/coffgen.c
+++ b/bfd/coffgen.c
@@ -1058,7 +1058,8 @@ coff_write_symbol (bfd *abfd,
 	  /* Adjust auxent only if this isn't the filename
 	     auxiliary entry.  */
 	  if (native->u.syment.n_sclass == C_FILE
-	      && (native + j + 1)->u.auxent.x_file.x_ftype)
+	      && (native + j + 1)->u.auxent.x_file.x_ftype
+	      && (native + j + 1)->extrap)
 	    coff_write_auxent_fname (abfd, (char *) (native + j + 1)->extrap,
 				     &(native + j + 1)->u.auxent, strtab, hash);
 

-- 
Alan Modra
Australia Development Lab, IBM


More information about the Binutils mailing list