PR27844, Unstable symbol name in objdump outputs
authorAlan Modra <amodra@gmail.com>
Tue, 11 May 2021 12:00:14 +0000 (21:30 +0930)
committerAlan Modra <amodra@gmail.com>
Tue, 11 May 2021 12:08:39 +0000 (21:38 +0930)
Special care for fuzzers.

PR 27844
* pdp11.c (aout_get_external_symbols): Clear first four bytes of
strings array, not just the first byte.
* aoutx.h (aout_get_external_symbols): Likewise.

bfd/ChangeLog
bfd/aoutx.h
bfd/pdp11.c

index 6af8c1abdfc66984c719435a80986d9114e6d309..bd5d4f7b2ccc715d5688176ead63039173355260 100644 (file)
@@ -1,3 +1,10 @@
+2021-05-11  Alan Modra  <amodra@gmail.com>
+
+       PR 27844
+       * pdp11.c (aout_get_external_symbols): Clear first four bytes of
+       strings array, not just the first byte.
+       * aoutx.h (aout_get_external_symbols): Likewise.
+
 2021-05-10  H.J. Lu  <hongjiu.lu@intel.com>
 
        PR binutils/27839
index 76bb13c8e8d989a871d3530352611871e18f8595..17560bd8f54a55d7cf8bd1c09019c60d969e648b 100644 (file)
@@ -1364,7 +1364,7 @@ aout_get_external_symbols (bfd *abfd)
            }
        }
       /* Ensure that a zero index yields an empty string.  */
-      strings[0] = '\0';
+      memset (strings, 0, BYTES_IN_WORD);
 
       /* Ensure that the string buffer is NUL terminated.  */
       strings[stringsize] = 0;
index 75ddf2038c294e51335ca79e495345ad85e2bb4e..2c9fe0ae56bf9546251339b0604b4e74078dd70c 100644 (file)
@@ -1344,7 +1344,7 @@ aout_get_external_symbols (bfd *abfd)
            }
        }
       /* Ensure that a zero index yields an empty string.  */
-      strings[0] = '\0';
+      memset (strings, 0, BYTES_IN_LONG);
 
       /* Ensure that the string buffer is NUL terminated.  */
       strings[stringsize] = 0;