summaryrefslogtreecommitdiff
path: root/libexec/ld.so
AgeCommit message (Collapse)Author
2008-11-09typo fixed (overriden -> overridden)Tobias Stoeckmann
ok espie, jmc
2008-10-02Fix mmap() error checking to be correct 64-bit addresses. ConsistentlyKurt Miller
use _dl_mmap_error() to check for mmap() errors. Adjust datatypes of some local vars for 64-bit safety. okay millert@ drahn@
2008-08-24prepends, not overrides default search path. with/ok kurt@Martynas Venckus
2008-07-28Only optimize away plt relocation when obj_base == 0. CorrectsKurt Miller
pie relocation. Assembly debugging help from kettenis@. okay kettenis@ miod@
2008-07-24release the bind lock before resetting the signal maskPhilip Guenthe
ok kurt@
2008-07-16Fix several of the 'large offset' PLT entries. With help from kurt.Dale Rahn
ok kurt@
2008-06-27Remove again the old _dl_md_reloc() calls-through-plt workaround: it isMiod Vallat
no longer necessary now that libgcc is built correctly, and it caused the elfbug regress test to fail.
2008-06-25Make ldd grok pie binaries.Kurt Miller
2008-06-13Pass relocated Elf_Dyn * to _dl_finalize_object(). Needed for pieKurt Miller
executables. Debugged and okay drahn@
2008-06-13Completing the executable elf_object_t data exposed a bug inKurt Miller
dl_iterate_phdr(3) which was returning the load base not the object base. Problem noted in the misc/exceptions regress by David Krause. okay drahn@
2008-06-12- rename _dl_boot argument loff to dyn_loff to differentiate it fromKurt Miller
exe_loff - calculate minva, maxva, exe_loff for the executable for passing to _dl_finialize_object and completing the executable elf_object_t data. this fixes ldd output for the exe object and prepares for PIE support. - calculate the interpreter path pointer in a way that allows for the possibility that PT_INTERP comes before PT_PHDR - fix an off by one in the init of dl_data input and okay drahn@
2008-06-08When prebind_newfile() is called the input file is replaced with the newDale Rahn
file, thus leaking the file descriptor, close the input file when it done.
2008-05-05Constantly fill in the program header pointer and count in elf_object_tKurt Miller
for all objects which simplifies phdr usage in a few places. "go for it" drahn@
2008-04-11Correct a bug where _dl_error was set to DL_NOT_FOUND when a shared libKurt Miller
was found but failed to load. Adjust _dl_load_shlib() to only attempt to load the first matching shared lib which allows the correct _dl_error to propagate out upon load failure. okay drahn@
2008-04-09Improve support for shared libs linked at non-zero addreses:Kurt Miller
- rename private values in struct elf_object to better describe their meaning: s/load_offs/obj_base/ "object's address '0' base" s/load_addr/load_base/ "The base address of the loadable segments" - gdb needs the obj_base value so swap positions with load_base in struct elf_object - fix a few occurrences of where load_base was used instead of obj_base. With help and okay drahn@
2008-04-03Use the libgcc version of these functions, no point in having extra copies.Dale Rahn
2008-04-02Use the proper define for this address, not a incorrect (on 64bit) define.Dale Rahn
ok kurt@
2008-02-24Use rounded down address when changing memory protections on the GOT, suchDale Rahn
that we don't accidentally touch the page after the GOT. Bug found on sparc64 affected other platforms as well. ok kettenis@
2008-02-24Use rounded down address when changing memory protections on the GOT, suchMark Kettenis
that we don't accidentally touch the page after the GOT. ok drahn@
2007-11-27Fix dlsym w/special handles when called from an executable that has beenKurt Miller
linked without -E. dlsym issues reported by Pedro Martelletto <pedro at ambientworks.net>. okay tedu@
2007-11-27Make _dl_md_reloc_got() report errors, and take them into account.Miod Vallat
Fixes PR #5579.
2007-09-02use calloc() to avoid malloc(n * m) overflows; checked by djm canacar jsgTheo de Raadt
2007-08-08on NOPIC architectures, do not build and install ld.so. this is inTheo de Raadt
particular for landisk (sh) where ld.so does not yet 100% work, but was still being installed. libtool cares. modified from matthieu patch; ok drahn
2007-05-31convert to new .Dd format;Jason McIntyre
2007-05-29based on a diff from Matt Provost: allow printing of ldd informationJason Wright
on libraries themselves. Works by setting up the debugging flags then calling dlopen() to do the heavy lifting. ok drahn
2007-05-27document differences between LD_TRACE_LOADED_OBJECTS_FMT1 andJason McIntyre
LD_TRACE_LOADED_OBJECTS_FMT2; based on a diff from Michel Lavondes; help/ok drahn
2007-05-05Provide hook so that rthreads can provide a spinlock to protect from racesDale Rahn
in lazy binding. ok art@, kurt@
2007-04-04properly escape "%O"; ok jasonJason McIntyre
2007-04-03s/library/object for the format string stuffJason Wright
2007-04-03add support for LD_TRACE_LOADED_OBJECTS_{FMT1/FMT2/PROGNAME}. FunctionalityJason Wright
matches and expands on the old a.out ld.so formatting. ok drahn
2007-04-02Since the kernel allows argv[0] == NULL, dont core in ld.soDale Rahn
diff from Matthew Dempsky, with reminder from theo.
2007-03-07Put the workaround back in because gcc fails to build otherwise. ok deraadt@Dale Rahn
2007-03-06Revert a workaround that was put in for softfpu ABI violations, hardfp doesnt.Dale Rahn
ok miod.
2007-03-03Build ld.so softfloat for now, lets dynamic linking get further.Dale Rahn
2007-02-26Link with libgcc, will be necessary after the upcoming toolchain changes.Miod Vallat
2007-02-09readdir buffers should not get a fixed buffer size, but should be dependantDale Rahn
on the block size of the filesystem. Rounded up to page size for efficiency. similar to change in libc yesterday. Should fix PR 5364.
2007-02-08Remove __DTF_READALL usage in ld.so's private copy of readdir().Todd C. Miller
2007-02-03Kludge around a horrible problem where gcc 'knows' that __udivsi3 willDale Rahn
only clobber r0 and r4, and will not modify any other registers. Unfortunately calling thru the PLT clobbers other registers eg, r1, which then breaks because gcc doesn't reload the proper value.
2007-01-28revert 1.108, the diff allowed ldd to print the load address of the binary,Dale Rahn
however this modified variables used by C++ backtrace code which caused it to crash. ok kettenis
2006-12-26no more seperate prebindTheo de Raadt
2006-12-23Spelling.Kenneth R Westerback
'preceeding' -> 'preceding' 'preceeds' -> 'precedes' 'preceeded' -> 'preceded'
2006-12-21'immediatly' -> 'immediately' in comments.Kenneth R Westerback
2006-11-21Fill in load/end address for binary.Dale Rahn
2006-11-15failed to purge doubled up environment variables; found by Mark DowdTheo de Raadt
ok miod
2006-11-14stack corruption was fixed a while ago.Dale Rahn
2006-11-14cleanup pointed out by miod@Dale Rahn
2006-11-13Let this build on landisk.Dale Rahn
2006-11-11when calculating envp, skip over the NULL between argv and envp.Dale Rahn
2006-11-11remove '#if 0' block.Dale Rahn
2006-11-11Working?Dale Rahn