[uClibc 0002354]: Fixing uClibc-0.9.29 ldso bug
bugs at busybox.net
bugs at busybox.net
Tue Feb 26 00:12:56 PST 2008
The following issue has been CLOSED
======================================================================
http://busybox.net/bugs/view.php?id=2354
======================================================================
Reported By: Joe Lin
Assigned To: uClibc
======================================================================
Project: uClibc
Issue ID: 2354
Category: Architecture Specific
Reproducibility: always
Severity: minor
Priority: normal
Status: closed
Resolution: fixed
Fixed in Version:
======================================================================
Date Submitted: 02-25-2008 20:57 PST
Last Modified: 02-26-2008 00:12 PST
======================================================================
Summary: Fixing uClibc-0.9.29 ldso bug
Description:
When a program is a shard executable (PT_DYNAMIC), ld-uClibc fails to
execute, resulting in a Segmentation Fault. I have located and fixed the
bug. Here is the patch.
------------------------------------------
diff -Naurd uClibc-0.9.29/ldso/ldso/ldso.c
uClibc-0.9.29-p1/ldso/ldso/ldso.c
--- uClibc-0.9.29/ldso/ldso/ldso.c 2007-03-31 21:42:48.000000000
+0800
+++ uClibc-0.9.29-p1/ldso/ldso/ldso.c 2008-02-25 14:15:22.000000000
+0800
@@ -286,6 +286,7 @@
_dl_debug_early("calling mprotect on the
application program\n");
/* Now cover the application program. */
if (app_tpnt->dynamic_info[DT_TEXTREL]) {
+ ElfW(Phdr) *ppnt; /* Don't affect
outside ppnt */
ppnt = (ElfW(Phdr) *)
auxvt[AT_PHDR].a_un.a_val;
for (i = 0; i <
auxvt[AT_PHNUM].a_un.a_val; i++, ppnt++) {
if (ppnt->p_type == PT_LOAD &&
!(ppnt->p_flags & PF_W))
------------------------------------------
======================================================================
----------------------------------------------------------------------
carmelo73 - 02-26-08 00:10
----------------------------------------------------------------------
Already fixed in SVN r20438
See change at
http://www.uclibc.org/cgi-bin/viewcvs.cgi/trunk/uClibc/ldso/ldso/ldso.c?rev=20438&r1=18293&r2=20438&diff_format=h
Issue History
Date Modified Username Field Change
======================================================================
02-25-08 20:57 Joe Lin New Issue
02-25-08 20:57 Joe Lin Status new => assigned
02-25-08 20:57 Joe Lin Assigned To => uClibc
02-26-08 00:10 carmelo73 Status assigned => resolved
02-26-08 00:10 carmelo73 Resolution open => fixed
02-26-08 00:10 carmelo73 Note Added: 0005324
02-26-08 00:12 carmelo73 Status resolved => closed
======================================================================
More information about the uClibc-cvs
mailing list