about summary refs log tree commit diff
path: root/elf
diff options
context:
space:
mode:
authorRoland McGrath <roland@hack.frob.com>2011-06-11 03:35:31 -0700
committerRoland McGrath <roland@hack.frob.com>2011-07-02 15:12:19 -0700
commit31fffa6b0700f9cc0f903a53489b829290168b4c (patch)
treede9c10931e9d246c3a4f65ac330cc80996b5aaff /elf
parent4e34ac6a1e256f40ab0d8eeed37aa1ea83440e76 (diff)
downloadglibc-31fffa6b0700f9cc0f903a53489b829290168b4c.tar.gz
glibc-31fffa6b0700f9cc0f903a53489b829290168b4c.tar.xz
glibc-31fffa6b0700f9cc0f903a53489b829290168b4c.zip
Make asserts accept DT_FLAGS/DT_FLAGS_1 with zero flags.
Diffstat (limited to 'elf')
-rw-r--r--elf/dynamic-link.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/elf/dynamic-link.h b/elf/dynamic-link.h
index 6d7e14282f..9c16da4ebe 100644
--- a/elf/dynamic-link.h
+++ b/elf/dynamic-link.h
@@ -1,5 +1,5 @@
 /* Inline functions for dynamic linking.
-   Copyright (C) 1995-2005, 2006, 2008 Free Software Foundation, Inc.
+   Copyright (C) 1995-2005,2006,2008,2011 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
@@ -201,9 +201,9 @@ elf_get_dynamic_info (struct link_map *l, ElfW(Dyn) *temp)
 #ifdef RTLD_BOOTSTRAP
   /* Only the bind now flags are allowed.  */
   assert (info[VERSYMIDX (DT_FLAGS_1)] == NULL
-	  || info[VERSYMIDX (DT_FLAGS_1)]->d_un.d_val == DF_1_NOW);
+	  || (info[VERSYMIDX (DT_FLAGS_1)]->d_un.d_val & ~DF_1_NOW) == 0);
   assert (info[DT_FLAGS] == NULL
-	  || info[DT_FLAGS]->d_un.d_val == DF_BIND_NOW);
+	  || (info[DT_FLAGS]->d_un.d_val & ~DF_BIND_NOW) == 0);
   /* Flags must not be set for ld.so.  */
   assert (info[DT_RUNPATH] == NULL);
   assert (info[DT_RPATH] == NULL);