Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 3 Aug 2012 17:04:41 +0000 (UTC)
From:      Alexander Kabaev <kan@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r239019 - head/libexec/rtld-elf
Message-ID:  <201208031704.q73H4fW1047908@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kan
Date: Fri Aug  3 17:04:41 2012
New Revision: 239019
URL: http://svn.freebsd.org/changeset/base/239019

Log:
  Parse notes only after object structure had been allocated.
  
  Reported by: kargl
  Reviewed by: kib (sans whitespace)

Modified:
  head/libexec/rtld-elf/map_object.c

Modified: head/libexec/rtld-elf/map_object.c
==============================================================================
--- head/libexec/rtld-elf/map_object.c	Fri Aug  3 16:18:20 2012	(r239018)
+++ head/libexec/rtld-elf/map_object.c	Fri Aug  3 17:04:41 2012	(r239019)
@@ -153,7 +153,6 @@ map_object(int fd, const char *path, con
 		break;
 	    note_start = (Elf_Addr)(char *)hdr + phdr->p_offset;
 	    note_end = note_start + phdr->p_filesz;
-	    digest_notes(obj, note_start, note_end);
 	    break;
 	}
 
@@ -291,7 +290,8 @@ map_object(int fd, const char *path, con
     obj->stack_flags = stack_flags;
     obj->relro_page = obj->relocbase + trunc_page(relro_page);
     obj->relro_size = round_page(relro_size);
-
+    if (note_start < note_end)
+	digest_notes(obj, note_start, note_end);
     munmap(hdr, PAGE_SIZE);
     return (obj);
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201208031704.q73H4fW1047908>