From b115cf96d30141e7694bb322f30644d4667495c6 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Thu, 18 Mar 2010 17:46:19 +0000 Subject: [PATCH] Avoid buffer overflow. 2010-03-18 H.J. Lu * readelf.c (decode_arm_unwind): Increase buf size to 9 byte. --- binutils/ChangeLog | 4 ++++ binutils/readelf.c | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 506ab55e13d..8058db3b3b4 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,7 @@ +2010-03-18 H.J. Lu + + * readelf.c (decode_arm_unwind): Increase buf size to 9 byte. + 2010-03-17 Alan Modra * readelf.c (dump_arm_unwind): Warning fix. diff --git a/binutils/readelf.c b/binutils/readelf.c index c76fc178c23..beaf9477b06 100644 --- a/binutils/readelf.c +++ b/binutils/readelf.c @@ -6194,10 +6194,10 @@ decode_arm_unwind (struct arm_unw_aux_info *aux, } else if (op == 0xb2) { - unsigned char buf[5]; + unsigned char buf[9]; unsigned int i, len; unsigned long offset; - for (i = 0; i < 9; i++) + for (i = 0; i < sizeof (buf); i++) { GET_OP (buf[i]); if ((buf[i] & 0x80) == 0) -- 2.30.2