This is the mail archive of the binutils-cvs@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] Fix an illegal memory access parsing corrupt STABD debug information.


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=92134dc19b4bf6407a88a306b771c9c6c88658d6

commit 92134dc19b4bf6407a88a306b771c9c6c88658d6
Author: Nick Clifton <nickc@redhat.com>
Date:   Tue Feb 14 14:17:09 2017 +0000

    Fix an illegal memory access parsing corrupt STABD debug information.
    
    	PR binutils/21158
    	* rddbg.c (read_symbol_stabs_debugging_info): Check for a null or
    	empty symbol name.

Diff:
---
 binutils/ChangeLog | 6 ++++++
 binutils/rddbg.c   | 3 +++
 2 files changed, 9 insertions(+)

diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index 99774b6..4f9bdfa 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -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.
diff --git a/binutils/rddbg.c b/binutils/rddbg.c
index ae25dec..1d8c447 100644
--- a/binutils/rddbg.c
+++ b/binutils/rddbg.c
@@ -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)
 	    {


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]