[binutils-gdb] Fix PR binutils/22923.

Paul Pluzhnikov ppluzhnikov@sourceware.org
Thu Mar 8 02:19:00 GMT 2018


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

commit 6d4f21f6eee9933a2883f2a214953432c13ee1c2
Author: Paul Pluzhnikov <ppluzhnikov@google.com>
Date:   Wed Mar 7 18:16:34 2018 -0800

    Fix PR binutils/22923.
    
    A static buffer in get_ver_flags may overflow when e.g. German translation
    is longer than English original. Avoid that by expanding the buffer.

Diff:
---
 binutils/ChangeLog | 6 ++++++
 binutils/readelf.c | 2 +-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index 3f3a9dd..52fe2d3 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,9 @@
+2018-03-07  Paul Pluzhnikov  <ppluzhnikov@google.com>
+
+	PR binutils/22923
+	* binutils/readelf.c (get_ver_flags): Expand buffer to avoid
+	overflow.
+
 2018-03-07  Alan Modra  <amodra@gmail.com>
 
 	* configure.ac: Add objdump_private_desc_xcoff for rs6000.
diff --git a/binutils/readelf.c b/binutils/readelf.c
index e3af50a..b85db9f 100644
--- a/binutils/readelf.c
+++ b/binutils/readelf.c
@@ -10212,7 +10212,7 @@ process_dynamic_section (Filedata * filedata)
 static char *
 get_ver_flags (unsigned int flags)
 {
-  static char buff[32];
+  static char buff[128];
 
   buff[0] = 0;



More information about the Binutils-cvs mailing list