aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2010-04-08 02:09:59 +0000
committerAlan Modra <amodra@gmail.com>2010-04-08 02:09:59 +0000
commit9957b18fba5800ffed38d04de237f8b642dc46dc (patch)
tree7c1fe5976c5679936230432e6664386907d37aa3
parent9e3d2e08c0274e346a28c4736b5fa1575553d60a (diff)
downloadgdb-9957b18fba5800ffed38d04de237f8b642dc46dc.zip
gdb-9957b18fba5800ffed38d04de237f8b642dc46dc.tar.gz
gdb-9957b18fba5800ffed38d04de237f8b642dc46dc.tar.bz2
* internal.h (ELF_IS_SECTION_IN_SEGMENT): PT_PHDR program headers
cannot contain any sections.
-rw-r--r--include/elf/ChangeLog5
-rw-r--r--include/elf/internal.h5
2 files changed, 8 insertions, 2 deletions
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog
index 52e1024..631fe35 100644
--- a/include/elf/ChangeLog
+++ b/include/elf/ChangeLog
@@ -1,3 +1,8 @@
+2010-04-08 David Stubbs <stubbs@icerasemi.com>
+
+ * internal.h (ELF_IS_SECTION_IN_SEGMENT): PT_PHDR program headers
+ cannot contain any sections.
+
2010-03-25 Joseph Myers <joseph@codesourcery.com>
* common.h (ELFOSABI_C6000_ELFABI, ELFOSABI_C6000_LINUX): Define.
diff --git a/include/elf/internal.h b/include/elf/internal.h
index 9ea175c..e2334cb 100644
--- a/include/elf/internal.h
+++ b/include/elf/internal.h
@@ -1,6 +1,6 @@
/* ELF support for BFD.
Copyright 1991, 1992, 1993, 1994, 1995, 1997, 1998, 2000, 2001, 2002,
- 2003, 2006, 2007, 2008 Free Software Foundation, Inc.
+ 2003, 2006, 2007, 2008, 2010 Free Software Foundation, Inc.
Written by Fred Fish @ Cygnus Support, from information published
in "UNIX System V Release 4, Programmers Guide: ANSI C and
@@ -306,7 +306,8 @@ struct elf_segment_map
|| segment->p_type == PT_GNU_RELRO \
|| segment->p_type == PT_LOAD)) \
|| ((sec_hdr->sh_flags & SHF_TLS) == 0 \
- && segment->p_type != PT_TLS)) \
+ && segment->p_type != PT_TLS \
+ && segment->p_type != PT_PHDR)) \
/* Any section besides one of type SHT_NOBITS must have a file \
offset within the segment. */ \
&& (sec_hdr->sh_type == SHT_NOBITS \