summaryrefslogtreecommitdiff
path: root/cross
diff options
context:
space:
mode:
authorwennmach <wennmach@pkgsrc.org>2003-10-21 14:19:37 +0000
committerwennmach <wennmach@pkgsrc.org>2003-10-21 14:19:37 +0000
commitb3ed2fe8a4b55da9327a07080fb4547fe43d3756 (patch)
tree6ffff2bf633cd77e3c1c06f01e3581408557cb80 /cross
parent22f5e9c5f13a8eed48b6febe520046d7299e5b44 (diff)
downloadpkgsrc-b3ed2fe8a4b55da9327a07080fb4547fe43d3756.tar.gz
Add bounds checking for prologue buffer. This avoids avr-gdb crashes
when debugging programs without prologue. Patch provided by Karl Janmar < karl -AT- utopiafoundation -DOT- org > in PR pkg/23154
Diffstat (limited to 'cross')
-rw-r--r--cross/avr-gdb/Makefile3
-rw-r--r--cross/avr-gdb/distinfo3
-rw-r--r--cross/avr-gdb/patches/patch-ab16
3 files changed, 20 insertions, 2 deletions
diff --git a/cross/avr-gdb/Makefile b/cross/avr-gdb/Makefile
index e663ef27c16..acf78f61496 100644
--- a/cross/avr-gdb/Makefile
+++ b/cross/avr-gdb/Makefile
@@ -1,8 +1,9 @@
-# $NetBSD: Makefile,v 1.3 2003/07/22 18:09:13 wennmach Exp $
+# $NetBSD: Makefile,v 1.4 2003/10/21 14:19:37 wennmach Exp $
# FreeBSD Id: ports/devel/avr-gdb/Makefile,v 1.2 2003/03/07 06:00:08 ade Exp
DISTNAME= gdb-5.3
PKGNAME= avr-gdb-5.3
+PKGREVISION= 1
CATEGORIES= cross
MASTER_SITES= ${MASTER_SITE_SOURCEWARE:=gdb/releases/}
diff --git a/cross/avr-gdb/distinfo b/cross/avr-gdb/distinfo
index 7fe7fef958f..19246922be6 100644
--- a/cross/avr-gdb/distinfo
+++ b/cross/avr-gdb/distinfo
@@ -1,3 +1,4 @@
-$NetBSD: distinfo,v 1.3 2003/07/24 08:39:58 wennmach Exp $
+$NetBSD: distinfo,v 1.4 2003/10/21 14:19:37 wennmach Exp $
SHA1 (gdb-5.3.tar.gz) = 24a6c9da6e89b1b82b7508f27f94098d989ff662
+SHA1 (patch-ab) = b74ff228047ccb45267e1302e4bef20716b255f4
diff --git a/cross/avr-gdb/patches/patch-ab b/cross/avr-gdb/patches/patch-ab
new file mode 100644
index 00000000000..1cdd5e88314
--- /dev/null
+++ b/cross/avr-gdb/patches/patch-ab
@@ -0,0 +1,16 @@
+$NetBSD: patch-ab,v 1.1 2003/10/21 14:19:37 wennmach Exp $
+
+*** gdb/avr-tdep.c.org Sun Oct 12 02:35:53 2003
+--- gdb/avr-tdep.c Sun Oct 12 02:58:30 2003
+***************
+*** 480,485 ****
+--- 480,488 ----
+ prologue_end = fi->pc;
+ else if (sal.end < prologue_end) /* next line begins after fn end */
+ prologue_end = sal.end; /* (probably means no prologue) */
++
++ /* Check that we don't use a prologue larger then AVR_MAX_PROLOGUE_SIZE */
++ prologue_end = min (prologue_end, prologue_start + AVR_MAX_PROLOGUE_SIZE);
+ }
+ else
+ /* We're in the boondocks: allow for */