summaryrefslogtreecommitdiff
path: root/ldso/ldso/ldso.c
AgeCommit message (Collapse)Author
2005-11-02Move __SSP__ check to headerPeter S. Mazinger
2005-11-01Add check, so we are sure that the file is correctly built, if the system is ↵Peter S. Mazinger
ssp enabled
2005-10-29Hopefully fix the bug Oleg reported in ↵Joakim Tjernlund
http://uclibc.org/lists/uclibc/2005-October/012809.html This will only fix powerpc. Should be easy to fix the other arches.
2005-10-27Moved guard_setup to dl-osinfo.h (used commonly by ldso and libc). Renamed ↵Peter S. Mazinger
to _dl_setup_stack_chk_guard, as in glibc. SSP requires now binutils-2.16.1 and newer. Add NOT_IN_libc/IS_IN_libc. Began using -DSHARED in uClibc_main.c, there are more candidates in there. Move back dl_protect_relro to it's earlier place.
2005-10-03Move _dl_protect_relro after INIT to allow using attribute_relro within ↵Peter S. Mazinger
uClibc_init
2005-09-08punt _DL_FINI_CRT_COMPAT option now that 0.9.28 has been releasedMike Frysinger
2005-09-08Fix by Martin Schlemmer:Mike Frysinger
If _DL_FINI_CRT_COMPAT is defined, _dl_fini is setup to run at exit via atexit(), but this makes it run _before_ the fini (__app_fini()) of the app, causing stuff like sandbox that frees structs, etc via its fini to segfault. http://bugs.gentoo.org/98187
2005-08-12Remove hardcoded ld-uClibc.so.0 name in ldso.Joakim Tjernlund
2005-07-12use wrapper debug macros to improve readabilityMike Frysinger
2005-07-07rip out all the duplicated debug code and move into a shared fileMike Frysinger
2005-07-04use the a_val member instead of a_ptr/a_fcn since newer elf defines dropped ↵Mike Frysinger
the other values
2005-06-30change all Elf32_* usage to ElfW(*) usage since we shouldnt care about the ↵Mike Frysinger
bitsize
2005-06-30Quick and dirty hack to prevent ld.so from beeing loaded twice.Joakim Tjernlund
Bug exposed by the new __libc_stack_end feature in libc.so.
2005-06-30err revert %p->%x change since _dl_printf() is not fprintf()Mike Frysinger
2005-06-30use %p instead of %x to show addresses so we dont have to worry about the ↵Mike Frysinger
sizeof pointers
2005-06-25use _dl_debug_file instead of hardcode 2Mike Frysinger
2005-05-28Add Peter Mazinger fini/crt compat patch. Select DL_FINI_CRT_COMPAT toJoakim Tjernlund
be able to run apps built with 0.9.27. This also renames __uClibc_start_main to __uClibc_main. This compat option should be removed some time after 0.9.28 is released. Let me know if you don't like this change.
2005-05-21Enable new FINI processing. ldso now passes a FINI functionJoakim Tjernlund
ptr to crt. Only PowerPC and x86 support this currently.
2005-04-27Get rid of extern references to ldso variables."Steven J. Hill"
2005-04-27GCC-4.1.0 doesn't like it when you reference 'extern' one place and then try"Steven J. Hill"
and declare the variable static in another. Let's not do that.
2005-04-23Cleanup library loading.Joakim Tjernlund
2005-04-12early debug stuff goes to stderr, not _dl_debug_fileEric Andersen
2005-04-12fix a thinko -- we cant use Eric Andersen
2005-04-12Only dl-startup.c should be using the SEND_STDERR macros,Eric Andersen
which are intended only for early debugging support.
2005-04-03Prepare PowerPC some more for standalone exection of ldso.Joakim Tjernlund
Note that every arch that wants to support standalone execution needs to align its stack pointer in crtX since ldso will adjust the stack pointer when adjusting argc and argv in standalone mode.
2005-04-01minor cosmetic cleanupEric Andersen
2005-03-29Moved the addition of load address from the fast pathJoakim Tjernlund
where possible. This will also make ldso smaller. However the patch touches all archs and I have only tested PPC and x86.
2005-03-20Move ldso FINI handling into _dl_fini(). Add #ifndef _DL_DO_FINI_IN_LIBC aroundJoakim Tjernlund
registering _dl_fini with atexit(). This is a preparation to move the FINI handling to libc.
2005-03-17Corrected a typo (exection -> execution).Peter Kjellerstedt
2005-03-17General arch cleanup and prepare support for standaloneJoakim Tjernlund
execution of ldso. Added new asm for MIPS to be tested. All arches should retest.
2005-03-14Fix up x86 so it compiles again.Eric Andersen
2005-03-14Simplify PT_INTERP handling.Joakim Tjernlund
Add prototype for _dl_boot()
2005-03-14Force suid apps to do unlazy binding of the PLT relocs.Joakim Tjernlund
See http://bugs.gentoo.org/show_bug.cgi?id=71609 for more details. Reported by Peter Mazinger.
2005-01-05fix eriks e-mail addressMike Frysinger
2004-11-17Add BIND NOW support to MIPS.Joakim Tjernlund
Mips did not honour the LD_BIND_NOW env. variable or the DT_BIND_NOW flag in the dynamic section.
2004-11-10Add RTLD_LOCAL support for dlopened libs. Reported byJoakim Tjernlund
Andrew de Quincey, who has been most helpful getting this sorted out, thanks. Thanks also to Peter Mazinger who did alot of testing. Removed all traces of dl_parse_copy_information() since it is no longer used.
2004-11-02- Remove dynamic_size from struct elf_resolve.Joakim Tjernlund
- Replace all open coded dynamic handling with a function. Reduces size. - Fold special MIPS dynamic code into the dynamic_info item. - Add RELRO support. - Support linking with "-z now". - prepare for DT_RELACOUNT/DT_RELCOUNT optimization. - Add -z now to ld.so linking, this is what ld.so does anyway so let the linker know that.
2004-10-27Jocke's patch was almost right. Just needed move the DT_MIPS_RLD_MAP testManuel Novoa III
up a bit. Native and remote debugging of shared libs and threaded apps now works on mips.
2004-10-07Remove usage of _dl_parse_copy_information() from generic code.Joakim Tjernlund
Remove definition of _dl_parse_copy_information() for powerpc. Remaining archs can do the same. Make debugging output of "relocation processing: xxx" a bit more sane.
2004-10-06Peter S. Mazinger writes:Joakim Tjernlund
Hello! Here is the modified unsecvars patch that applies to cvs.
2004-10-06Remove unneeded -D<somedefine>, and use instead #ifdef __somedefine__Joakim Tjernlund
From Peter Mazinger.
2004-10-05Peter Kjellerstedt writes:Joakim Tjernlund
After the addition of a configuration option for enabling the support of /etc/ld.so.cache, I thought it might be a good idea to add one for the support of the /etc/ld.so.preload file too. So here it is. While doing this, I also noticed that the dynamic linker would hang indefinitely if either LD_PRELOAD or /etc/ld.so.preload contained a library which was already loaded, so I made a patch for that too. And of course, I could not resist from doing a little clean up of comments and indentation, so here is a patch for that too.
2004-09-08Second attempt to fix the INIT/FINI order. This time I think I got it right :)Joakim Tjernlund
This needs testing with apps that have complex dependencies.
2004-09-03First attempt to fix the INIT/FINI ordering. Fingers crossed :)Joakim Tjernlund
2004-08-31Dont mess with __curbrk in ldsoEric Andersen
2004-08-27#include "dl-startup.c into ldso.c, making ldso one compilation unit.Joakim Tjernlund
Now all functions and vaiables can be made static to reduce relocs. Basicly, all variables should be merged into one struct variable and then export that struct. Exported functions should be exported as functions pointers in the above struct. This will reduce the number of relocs inside ldso to a handful. Add -Bsymbolic to linker for ldso. This will resolve all functions (all JMP_SLOT goes away) and the remaining relocs are transformed into RELATIVE relocs.
2004-08-27As Mike Frysinger notes, this code is still needed. IJoakim Tjernlund
misread this code and removed it, sorry. I printed the values of _dl_brkp and _dl_envp in ldso and got this when executing: ls: __curbrk: 0x300c16e0 __environ: 0x1008372c ldd: __curbrk: 0x300776e0 __environ: 0x3007759c why is__environ in the app when executing ls but not ldd?
2004-08-26Fixup a couple of warningsEric Andersen
2004-08-26Avoid multiple passes to perform mips GOT relocations, and doEric Andersen
the whole lot in a single pass. -Erik
2004-08-26Let ldso find libc's malloc function and set _dl_malloc_function.Joakim Tjernlund
This removes some crap in libdl.c(and future libs which needs to access ldso functions). What do you think?