[uClibc] was initfini, crt[in].S changes and ET_DYN

Peter S. Mazinger ps.m at gmx.net
Thu Nov 6 14:37:47 UTC 2003


On Thu, 6 Nov 2003 pageexec at freemail.hu wrote:

> > Now, that the initfini file was removed and replaced with separate 
> > crt[in].S files (in uClibc-cvs), could someone please check, why the 
> > ET_DYN binary creation does not work?
> 
> hello all,
> 
> i'm sorry for not replying before, but it's been busy weeks...
> 
> the good news is that i've found and sort of fixed the problem, it has
> no longer to do with crt1S but uClibc's own ld.so (dynamic linker).
> 
> the problem i found is that it assumes that the virtual addresses in
> the ELF header of the main executable will be the runtime load
> addresses. this is a wrong assumption, and it breaks badly for ET_DYN
> executables since they're linked at a base of 0 but loaded elsewhere
> (under PaX that would even be a random address). the fix is of course
> to learn the runtime load address and make use of it instead of the
> one in the ELF header.
> 
> now the 'sort of fixed' means that i did some of these modifications
> myself but then i ran into compilation problems. i'll give the cvs
> HEAD a try and hopefully can submit a working patch.
buildroot as of cvs does not work for now, and there are also problems 
with uClibc cvs (I can build it with some patches, but it is binary 
incompatible with the earlier one, so it won't work either). If you need 
an earlier version, I can send you a diff from 0.9.21 to the last working 
and compatible one.

Peter

-- 
Peter S. Mazinger <ps.m at gmx.net>   ID: 0xA5F059F2    NIC: IXUYHSKQLI
Key fingerprint = 92A4 31E1 56BC 3D5A 2D08  BB6E C389 975E A5F0 59F2



____________________________________________________________________
Miert fizetsz az internetert? Korlatlan, ingyenes internet hozzaferes a FreeStarttol.
Probald ki most! http://www.freestart.hu



More information about the uClibc mailing list