diff options
author | Andreas Schwab <schwab@redhat.com> | 2010-01-11 10:31:49 +0100 |
---|---|---|
committer | Andreas Schwab <schwab@redhat.com> | 2010-01-11 10:31:49 +0100 |
commit | c14a0516dbea2e1b794f9a09a8ea182fbe0dc349 (patch) | |
tree | aea6ef619b1bb3ee704d5904f8209c33933c4822 /elf | |
parent | a5683508bcdcfcbe8e486cbcdcaa3830d9ab22e8 (diff) | |
parent | 33780b6d332af9d94216eff880734be7748c2269 (diff) | |
download | glibc-c14a0516dbea2e1b794f9a09a8ea182fbe0dc349.tar.gz glibc-c14a0516dbea2e1b794f9a09a8ea182fbe0dc349.tar.xz glibc-c14a0516dbea2e1b794f9a09a8ea182fbe0dc349.zip |
Merge remote branch 'origin/master' into fedora/master
Diffstat (limited to 'elf')
-rw-r--r-- | elf/dl-sysdep.c | 5 | ||||
-rw-r--r-- | elf/elf.h | 8 |
2 files changed, 10 insertions, 3 deletions
diff --git a/elf/dl-sysdep.c b/elf/dl-sysdep.c index 5700272f10..49c5dfb27d 100644 --- a/elf/dl-sysdep.c +++ b/elf/dl-sysdep.c @@ -1,5 +1,6 @@ /* Operating system support for run-time dynamic linker. Generic Unix version. - Copyright (C) 1995-1998, 2000-2008, 2009 Free Software Foundation, Inc. + Copyright (C) 1995-1998,2000-2008,2009,2010 + Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -390,7 +391,7 @@ _dl_important_hwcaps (const char *platform, size_t platform_len, size_t *sz, while ((ElfW(Addr)) (note + 1) - start < phdr[i].p_memsz) { #define ROUND(len) (((len) + sizeof (ElfW(Word)) - 1) & -sizeof (ElfW(Word))) - if (note->type == 2 + if (note->type == NT_GNU_HWCAP && note->vendorlen == sizeof "GNU" && !memcmp ((note + 1), "GNU", sizeof "GNU") && note->datalen > 2 * sizeof (ElfW(Word)) + 2) diff --git a/elf/elf.h b/elf/elf.h index c772ff41ad..1bc8ef3489 100644 --- a/elf/elf.h +++ b/elf/elf.h @@ -1,5 +1,5 @@ /* This file defines standard ELF types, structures, and macros. - Copyright (C) 1995-2003,2004,2005,2006,2007,2008,2009 + Copyright (C) 1995-2003,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -558,6 +558,12 @@ typedef struct Elf64_Xword p_align; /* Segment alignment */ } Elf64_Phdr; +/* Special value for e_phnum. This indicates that the real number of + program headers is too large to fit into e_phnum. Instead the real + value is in the field sh_info of section 0. */ + +#define PN_XNUM 0xffff + /* Legal values for p_type (segment type). */ #define PT_NULL 0 /* Program header table entry unused */ |