summaryrefslogtreecommitdiffstats
path: root/ldso/libdl/libdl.c
Commit message (Collapse)AuthorAgeFilesLines
* ldso: clean up breakage in tls mergeMike Frysinger2009-10-161-25/+14
| | | | | | | | | | | The TLS merge 534661b91c9849 introduced multiple style problems as well as random breakage: - missing _dl_free - incomplete parametrization of _dl_lookup_hash - restore FDPIC handling in _dl_lookup_hash Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
* fix coding styleBernhard Reutner-Fischer2009-10-161-25/+16
| | | | | | | TODO: use likely/unlikely Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
* tls: test for DTV vs TCB at TP correctlyAustin Foxley2009-09-231-2/+2
| | | | Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
* guard tls.h includeAustin Foxley2009-09-201-0/+3
| | | | Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
* Synch with trunk: miscellaneous changes, mostly cleanup,Carmelo Amoroso2009-01-221-9/+9
| | | | | | | code styling, comments. No object-code changes. Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
* simple optimizations and style fixes in dynamic loadingDenis Vlasenko2009-01-101-28/+30
| | | | | | | | | | | text data bss dec hex filename - 16709 240 92 17041 4291 lib/ld-uClibc.so + 16634 236 92 16962 4242 lib/ld-uClibc.so - 4602 344 4 4950 1356 lib/libdl-0.9.30-svn.so + 4571 328 4 4903 1327 lib/libdl-0.9.30-svn.so - 4602 344 4 4950 1356 lib/libdl.so + 4571 328 4 4903 1327 lib/libdl.so
* BIG BIG commit: all left files merged from trunk [rev 22714]. Currenntly ↵Carmelo Amoroso2008-07-091-33/+52
| | | | NPTL sh4 port build and work fine. All committed to allow Khem Ray working on a working branch to integrate the ARM nptl port. MIPS nptl port not tested but should still building and working fine. There are some other part non yet merged with trunk (misc/internals and some headers file that need some more work). Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
* Merge ldso tree with trunk. Carmelo Amoroso2008-03-051-23/+35
| | | | | | Step 1: basically code formatting and minor changes Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
* This patch solves a problem in dladdr caused by the wrong valueCarmelo Amoroso2008-01-181-15/+44
| | | | | | | of elf_resolve's loadaddr field for the main application. Signed-off-by: Filippo Arcidiacono <filippo.arcidiacono@st.com> Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
* Removed #if USE_TLS guard around tls_tpnt, otherwise it will not compileCarmelo Amoroso2007-11-221-4/+1
| | | | | | | if TLS is disabled (once merged into the trunk) Pointed out by Peter Mazinger. Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
* Added GNU hash support to ld.soCarmelo Amoroso2007-11-191-104/+141
| | | | | | | | | | | Added TLS support to sh4 Replaced _dl_find_hash implementation with sh4 based code. Merged some fixes into libdl.c Changes committes as requested by sjhill for the mips-sh4 nptl merge. Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
* Add missing dl_error_names string for TLS relocation error. Submitted by ↵"Steven J. Hill"2007-03-051-0/+1
| | | | Khem Raj.
* Check in all code for TLS relocations. There is still clean up that"Steven J. Hill"2006-08-211-41/+358
| | | | | needs to be done, but I would rather wait until after merging with the other architectures.
* Bring in changes from trunk."Steven J. Hill"2005-10-041-9/+9
|
* More TLS stuff for ld.so."Steven J. Hill"2005-09-231-0/+3
|
* Finish merge from trunk."Steven J. Hill"2005-09-131-0/+7
|
* Sync with trunk."Steven J. Hill"2005-08-251-2/+3
|
* Merge/sync with trunk."Steven J. Hill"2005-08-171-0/+1
|
* Merge with latest changes from the trunk."Steven J. Hill"2005-08-041-19/+15
|
* Finalize the merge from the trunk. There are more files to be"Steven J. Hill"2005-07-301-98/+75
| | | | merged, but they will be done manually.
* Fix dlopen to handle circular dependency libs. Wouldn't surprise me if ↵Joakim Tjernlund2005-04-231-5/+18
| | | | | | something else broke. I hate libdl :(
* Cleanup library loading.Joakim Tjernlund2005-04-231-16/+6
|
* Fix bug 214, reported by aurel. This is a major update thatJoakim Tjernlund2005-04-131-58/+107
| | | | | possibly break other apps. Please test. Send a LD_DEBUG=1 log if there is a problem.
* Moved the addition of load address from the fast pathJoakim Tjernlund2005-03-291-3/+3
| | | | | where possible. This will also make ldso smaller. However the patch touches all archs and I have only tested PPC and x86.
* Avoid compiler warnings.Peter Kjellerstedt2005-01-191-3/+3
|
* Fixup function prototypes to match definitions in include/dlfcn.hEric Andersen2005-01-101-2/+4
|
* fix eriks e-mail addressMike Frysinger2005-01-051-1/+1
|
* Add BIND NOW support to MIPS.Joakim Tjernlund2004-11-171-8/+10
| | | | | Mips did not honour the LD_BIND_NOW env. variable or the DT_BIND_NOW flag in the dynamic section.
* Add RTLD_LOCAL support for dlopened libs. Reported byJoakim Tjernlund2004-11-101-11/+25
| | | | | | | 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.
* - Remove dynamic_size from struct elf_resolve.Joakim Tjernlund2004-11-021-1/+9
| | | | | | | | | | - 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.
* unmap ld.so.cache when dlopen() returns.Joakim Tjernlund2004-10-141-0/+1
|
* Don't SEGV if library not found.Joakim Tjernlund2004-10-141-10/+9
|
* This patch from Mike Frysinger, extended from an earlier patch from Peter S.Eric Andersen2004-10-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mazinger implements the changes suggested by me on the uclibc list. On Tuesday 28 September 2004 02:24 pm, Erik Andersen wrote: > What I think should be done is > > *) Someone that cares about USE_CACHE should fix that option > up to be sure it works, and give it a proper config entry > in extra/Configs/Config.in, and rename it to something > more appropriate such as LDSO_CACHE_SUPPORT. > > *) When LDSO_CACHE_SUPPORT=n, UCLIBC_RUNTIME_PREFIX /usr/X11R6/lib > should be included in the default library search path in > dl-elf.c, ldd, and ldconfig. > > *) When LDSO_CACHE_SUPPORT=y, UCLIBC_RUNTIME_PREFIX /usr/X11R6/lib > should be excluded from the default library search path in > dl-elf.c, ldd, and ldconfig, and those wishing to include > X11 stuff should add that into /etc/ld.so.conf and re-run > ldconfig. > > *) At present, LDSO_CONF and LDSO_CACHE use the same names > and same structure as glibc. This precludes > LDSO_CACHE_SUPPORT being uses in any sane fashion on a > dial glibc and uClibc system. Just as it was necessary > for use to use a different name for 'libuClibc' rather > than 'libc', and 'ld-uClibc.so.0' rather than > 'ld-linux.so.2' it seems that these configuration files > really ought to be given different names. >
* Second attempt to fix the INIT/FINI order. This time I think I got it right :)Joakim Tjernlund2004-09-081-26/+59
| | | | This needs testing with apps that have complex dependencies.
* Use a more appealing name, matching the function prototypeEric Andersen2004-09-071-6/+6
|
* First attempt to fix the INIT/FINI ordering. Fingers crossed :)Joakim Tjernlund2004-09-031-19/+41
|
* Remove unused variables. From Peter Mazinger.Joakim Tjernlund2004-09-021-1/+0
|
* Let ldso find libc's malloc function and set _dl_malloc_function.Joakim Tjernlund2004-08-261-8/+0
| | | | | | This removes some crap in libdl.c(and future libs which needs to access ldso functions). What do you think?
* Added test for RTLD_GLOBAL flag in _dl_find_hash().Joakim Tjernlund2004-08-261-2/+3
| | | | | Fixed a bug in libdl.c where the RTLD_GLOBAL was assigned wronly.
* Hopefully fix Laszlo and Jacobs dlopen problem.Joakim Tjernlund2004-08-251-1/+4
|
* Let ldso decide if it should relocate itselft a second time. ThisJoakim Tjernlund2004-08-171-2/+7
| | | | | | | is needed if ldso should use libcs malloc whenever possible. Fix RTLD_LAZY propagation to RTLD_NOW relocation when requested by libdl.
* Fix usage_count in ldso/libdl.Joakim Tjernlund2004-08-131-75/+34
| | | | | | | Don't' use atexit in libdl. Make destrutor in libdl actually run and to dlclose all dlopened libs. Remove dlclosed libs from the _dl_symbol_tables list.
* This should fix the dlsym problem Peter van Hoyweghen reported.Joakim Tjernlund2004-08-091-32/+19
| | | | However RTLD_LOCAL still doesn't work. Everything is RTLD_GLOBAL.
* Teach libdl to use normal libc symbols whenever possible, i.e. mallocEric Andersen2004-07-301-54/+31
| | | | | rather than _dl_malloc, fprintf rather than _dl_printf, etc. -Erik
* Fix screwed up indentingEric Andersen2004-07-301-51/+51
|
* Revert this stuff for nowEric Andersen2004-07-161-8/+0
|
* Sigh. I got things working this morning, then checked stuff in from the wrongEric Andersen2004-07-141-0/+5
| | | | | tree. Bad boy, No doughnut. -Erik
* Based on a patch from Alexandre Oliva, make sure _dl_malloc returns a nicelyEric Andersen2004-07-141-0/+3
| | | | aligned pointer that may be aligned up to page_size. Also add _dl_free,
* update libdl so it also groks the new _dl_errnoEric Andersen2004-05-131-0/+2
|
* Per discussion with Joakim Tjernlund, all the horrible weak declarations junkEric Andersen2004-02-201-78/+96
| | | | | | in libdl pointing to the local 'foobar' function is garbage. This cleans all that up and makes the code much less horrible. Now it is only really really ugly (which is a marked improvement),