Fix an illegal memory access parsing corrupt STABD debug information.
authorNick Clifton <nickc@redhat.com>
Tue, 14 Feb 2017 14:17:09 +0000 (14:17 +0000)
committerNick Clifton <nickc@redhat.com>
Tue, 14 Feb 2017 14:17:09 +0000 (14:17 +0000)
PR binutils/21158
* rddbg.c (read_symbol_stabs_debugging_info): Check for a null or
empty symbol name.

binutils/ChangeLog
binutils/rddbg.c

index 99774b6..4f9bdfa 100644 (file)
@@ -1,5 +1,11 @@
 2017-02-14  Nick Clifton  <nickc@redhat.com>
 
+       PR binutils/21158
+       * rddbg.c (read_symbol_stabs_debugging_info): Check for a null or
+       empty symbol name.
+
+2017-02-14  Nick Clifton  <nickc@redhat.com>
+
        PR binutils/21157
        * stabs.c (parse_stab_enum_type): Check for corrupt NAME:VALUE
        pairs.
index ae25dec..1d8c447 100644 (file)
@@ -299,7 +299,10 @@ read_symbol_stabs_debugging_info (bfd *abfd, asymbol **syms, long symcount,
          *pfound = TRUE;
 
          s = i.name;
+         if (s == NULL || strlen (s) < 1)
+           return FALSE;
          f = NULL;
+
          while (s[strlen (s) - 1] == '\\'
                 && ps + 1 < symend)
            {