Age | Commit message (Collapse) | Author | |
---|---|---|---|
2013-06-13 | Appease LLVM warning.. | Brad Smith | |
error: indirection of non-volatile null pointer will be deleted, not trap [-Werror,-Wnull-dereference] Suggestion from matthew@ Ok matthew@ miod@ | |||
2013-06-09 | Constify the mib argument of sysctl(). | Miod Vallat | |
ok matthew@ millert@ | |||
2013-06-01 | Make all the syscall prototypes consistent with their real forms for types, | Philip Guenther | |
whitespace, and no argument names. ok matthew@ deraadt@ | |||
2013-06-01 | Introduce ltrace(1). This tool works with ld.so to inject utrace record for | Miod Vallat | |
each plt call, allowing to trace a binary linked against shared library at the public function call level. To do so, ltrace(1) sets up some environment variables to enable plt tracing in ld.so, and invokes ktrace(2) for utrace events. ld.so will force lazy binding and will send an utrace record in the plt resolver, without updating the plt. Minimal filtering capabilities are provided, inspired by Solaris' truss -u, to limit tracing to libraries and/or symbol names. Non-traced libraries and symbols will have the regular resolver processing, with the expected plt update. "Get it in" deraadt | |||
2013-05-08 | Implement symbol caching and RELACOUNT/RELCOUNT optimizations. | Philip Guenther | |
Much assistance and testing by miod ok miod@ | |||
2013-04-05 | - Add ORIGIN, OSNAME, OSREL and PLATFORM substitution support for rpaths. | Kurt Miller | |
Improvements and okay matthew@, millert@, guenther@ | |||
2012-12-05 | Remove excessive sys/cdefs.h inclusion | Theo de Raadt | |
ok guenther millert kettenis | |||
2012-10-24 | Garbage-collect the _dl_stat() routine, now unused | Philip Guenthe | |
ok matthew@ deraadt@ | |||
2011-04-06 | Avoid using NULL in non-pointer contexts: use 0 for integer values and '\0' | Miod Vallat | |
for chars. | |||
2010-10-28 | Change basep parameter of getdirentries() to be off_t *, not long * | Todd C. Miller | |
so it works correctly with large offsets (and matches other systems). This requires adding a new getdirentries syscall, with the old one renamed to ogetdirentries. All in-tree consumers of getdirentries() have been updated. Bump libc and libpthread major numbers. OK and with deraadt@ | |||
2010-05-02 | Combine the signal mask handling into _dl_thread_bind_lock(), as it's MI. | Philip Guenthe | |
ok drahn@ | |||
2010-01-02 | Fix handling of hppa RELOC_IPLT relocations during 'bootstrap relocation'. | Mark Kettenis | |
ok miod@, deraadt@, jsing@ | |||
2009-02-16 | Fix passing of ps_strings, cleanup and obj_main values to _start() in crt0. | Kurt Miller | |
looks correct kettenis@ | |||
2008-10-02 | Fix mmap() error checking to be correct 64-bit addresses. Consistently | Kurt Miller | |
use _dl_mmap_error() to check for mmap() errors. Adjust datatypes of some local vars for 64-bit safety. okay millert@ drahn@ | |||
2008-04-09 | Improve 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@ | |||
2007-11-27 | Make _dl_md_reloc_got() report errors, and take them into account. | Miod Vallat | |
Fixes PR #5579. | |||
2007-05-05 | Provide hook so that rthreads can provide a spinlock to protect from races | Dale Rahn | |
in lazy binding. ok art@, kurt@ | |||
2006-10-28 | Only mprotect pages during relocation if the library is marked TEXTREL | Dale Rahn | |
mips64 version still needs testing. | |||
2006-05-03 | prebind - how to prelink a binary without throwing security out the window | Dale Rahn | |
Prelink fixes the address of libraries making 'return to libc' attacks trival, prebind uses a different method to achieve most of the same gains, however without adding any security conerns. Still under development, now in-tree. | |||
2006-05-03 | Rewrite the ld.so syscall stubs as macros. no binary change. | Dale Rahn | |
2005-09-22 | Use std missing symbol print instead of MD custom, do not warn on weak | Dale Rahn | |
undefined symbols, or count them as failures. inspired kurt@ | |||
2005-09-21 | Simplify the internal symbol finding API, with some cleanup, prep for | Dale Rahn | |
next step. ok kurt@ | |||
2005-09-16 | Rework symbol lookup to more closely match sun's documentation, now | Dale Rahn | |
treats dlopens as load groups. ok kurt@ | |||
2004-05-25 | provide one version of _dl_bcopy instead of copy in every arch; drahn@ ok | Michael Shalayeff | |
2004-05-25 | return object* the symbol is in for _dl_find_symbol*; drahn@ ok | Michael Shalayeff | |
2004-05-25 | spacing | Theo de Raadt | |
2004-05-24 | Change define used to deal with PLT protection, use postive logic not negative. | Dale Rahn | |
ok mickey@ | |||
2004-02-10 | Check for RTLD_TEXT_PLT define instead of an architecture specific check. | Dale Rahn | |
2003-09-04 | Fix W^X mistake. If the dynamic linker is workin in non-lazy mode, it | Dale Rahn | |
should still mprotect the GOT and PLT as appropriate. ok deraadt@ miod@ | |||
2003-09-04 | Symbol cache for GOT lookup. When a symbol is found it is saved in a cache | Dale Rahn | |
for future lookups in the same GOT relocation table. Uses static buffer for small symbol tables, mmap for larger ones. ok deraadt@ | |||
2003-09-02 | Fix PR 3371, symbol lookup in dlopen()ed objects is not correct. Correct | Dale Rahn | |
behavior for RTLD_GLOBAL/RTLD_LOCAL is now supported. ok espie@ | |||
2003-07-28 | The fifth argument to _dl_find_symbol is a 'int size', not a SYM_ define. | Dale Rahn | |
Fix several calls which had the incorrect but working define in that position It happened that SYM_NOTPLT was 0, which was the desired size value. | |||
2003-07-09 | changes to ld.so to be compatible with newer binutils, requires | Dale Rahn | |
slight changes in the startup code on most archs. ok art@ brad@ | |||
2003-07-06 | various proto, ansi, and knf repair. tested on all architectures that | Theo de Raadt | |
use it. (build may require make cleandir because of .depend balony) | |||
2003-06-09 | pefo 3/4 licence cleanups | Theo de Raadt | |
2003-06-03 | three four gone. | Artur Grabowski | |
2003-06-03 | kill clause 3 and 4 from several of my copyrights, cleanup. | Dale Rahn | |
2003-05-30 | When loading a shared object or libraries dependant object, load them | Dale Rahn | |
in random order. This will reduce the possiblity of a buffer overflow being able to predict the addresss of useful code. Can be disabled with the LD_NORANDOM environment variable for debugging purposes. ok deraadt. | |||
2003-04-28 | Change mquery() function call signature to be the same a mmap(). It | Dale Rahn | |
needs the prot/flags info and passing the addresses via arg/return allows it to be traced via ktrace better than an in/out paramter. This adds a new mquery syscall and renames the old one to omquery. New kernel _MUST_ be built, booted, and 'make includes' before building ld.so with this change. | |||
2003-04-25 | backout mquery change, something broke when not combined with a different diff. | Dale Rahn | |
2003-04-25 | change mquery() function call signature to be the same a mmap(). It | Dale Rahn | |
needs the prot/flags info and passing the addresses via arg/return allows it to be traced via ktrace better than an in/out paramter. This adds a new mquery syscall and renames the old one to omquery. New kernel _MUST_ be built and installed before building ld.so with this change. ok millert@ tedu@ | |||
2003-04-17 | mquery support, currently for i386 only. | Dale Rahn | |
2003-02-15 | After relocation is completed, remove write protection from GOT/PLT in ld.so. | Dale Rahn | |
2003-02-15 | Paranoia about mprotect, mprotect page aligned regions for got and plt. | Dale Rahn | |
2003-02-02 | knf & ansi; drahn ok | Theo de Raadt | |
2002-12-18 | Prepare for an upcoming ELF executable change. This will allow ld.so to | Dale Rahn | |
protect the GOT and PLT sections of the executable from being overwritten. This behavior is enabled by changes in the executable/shared object layout, and does not occur without the ld changes. | |||
2002-11-23 | Put in a required item. Should not have been deleted to start with. | Dale Rahn | |
2002-11-14 | Make error messages on symbol lookup failures more useful. | Dale Rahn | |
2002-11-13 | Check for NULL on pltgot, appearently libraries with no external references | Dale Rahn | |
will not create a PLT on i386. | |||
2002-10-25 | Some small fixes in MI code for mips backport. A new reloc md function, | Per Fogelstrom | |
RELOC_GOT, was added to handle mips got bootstrap reloc. Also remove workaround used on previous versions of binutils for mips. |