This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch, master, updated. glibc-2.13-216-gde7ce8f


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  de7ce8f171b88b2db025fdb6c8cca89c16e541dc (commit)
      from  05bb4a68ad7b05e16f942552a867da6ffb88278f (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=de7ce8f171b88b2db025fdb6c8cca89c16e541dc

commit de7ce8f171b88b2db025fdb6c8cca89c16e541dc
Author: Ulrich Drepper <drepper@gmail.com>
Date:   Sun May 22 21:30:31 2011 -0400

    Fix flags parameter value passed to pltenter and pltexit

diff --git a/ChangeLog b/ChangeLog
index 8a55e9d..eb321b7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2011-05-22  Ulrich Drepper  <drepper@gmail.com>
+
+	* elf/dl-runtime.c (_dl_profile_fixup): Also store LA_SYMB_NOPLTENTER
+	and LA_SYMB_NOPLTEXIT in flags which are passed to pltenter and
+	pltexit.
+
 2011-05-21  Ulrich Drepper  <drepper@gmail.com>
 
 	* sysdeps/unix/sysv/linux/bits/time.h: Define CLOCK_REALTIME_ALARM
diff --git a/elf/dl-runtime.c b/elf/dl-runtime.c
index ae2d05c..b27cfbf 100644
--- a/elf/dl-runtime.c
+++ b/elf/dl-runtime.c
@@ -271,7 +271,7 @@ _dl_profile_fixup (
 	     interested in auditing.  */
 	  if ((l->l_audit_any_plt | result->l_audit_any_plt) != 0)
 	    {
-	      unsigned int altvalue = 0;
+	      unsigned int flags = 0;
 	      struct audit_ifaces *afct = GLRO(dl_audit);
 	      /* Synthesize a symbol record where the st_value field is
 		 the result.  */
@@ -294,7 +294,6 @@ _dl_profile_fixup (
 		  if ((l->l_audit[cnt].bindflags & LA_FLG_BINDFROM) != 0
 		      && (result->l_audit[cnt].bindflags & LA_FLG_BINDTO) != 0)
 		    {
-		      unsigned int flags = altvalue;
 		      if (afct->symbind != NULL)
 			{
 			  uintptr_t new_value
@@ -305,7 +304,7 @@ _dl_profile_fixup (
 					     strtab2 + defsym->st_name);
 			  if (new_value != (uintptr_t) sym.st_value)
 			    {
-			      altvalue = LA_SYMB_ALTVALUE;
+			      flags |= LA_SYMB_ALTVALUE;
 			      sym.st_value = new_value;
 			    }
 			}
@@ -328,7 +327,7 @@ _dl_profile_fixup (
 		  afct = afct->next;
 		}
 
-	      reloc_result->flags = altvalue;
+	      reloc_result->flags = flags;
 	      value = DL_FIXUP_ADDR_VALUE (sym.st_value);
 	    }
 	  else
@@ -366,7 +365,7 @@ _dl_profile_fixup (
       const char *symname = strtab + sym.st_name;
 
       /* Keep track of overwritten addresses.  */
-      unsigned int altvalue = reloc_result->flags;
+      unsigned int flags = reloc_result->flags;
 
       struct audit_ifaces *afct = GLRO(dl_audit);
       for (unsigned int cnt = 0; cnt < GLRO(dl_naudit); ++cnt)
@@ -375,7 +374,6 @@ _dl_profile_fixup (
 	      && (reloc_result->enterexit
 		  & (LA_SYMB_NOPLTENTER << (2 * (cnt + 1)))) == 0)
 	    {
-	      unsigned int flags = altvalue;
 	      long int new_framesize = -1;
 	      uintptr_t new_value
 		= afct->ARCH_LA_PLTENTER (&sym, reloc_result->boundndx,
@@ -385,7 +383,7 @@ _dl_profile_fixup (
 					  &new_framesize);
 	      if (new_value != (uintptr_t) sym.st_value)
 		{
-		  altvalue = LA_SYMB_ALTVALUE;
+		  flags |= LA_SYMB_ALTVALUE;
 		  sym.st_value = new_value;
 		}
 

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog        |    6 ++++++
 elf/dl-runtime.c |   12 +++++-------
 2 files changed, 11 insertions(+), 7 deletions(-)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]