#
1e43641e |
| 18-Nov-2023 |
deraadt <deraadt@openbsd.org> |
crt0 uses a helper function in a MD src/libexec/ld.so .h file (rather than reproducing the relevant defines and code in a different place) to perform minor relocations. If things go very wrong, it w
crt0 uses a helper function in a MD src/libexec/ld.so .h file (rather than reproducing the relevant defines and code in a different place) to perform minor relocations. If things go very wrong, it would call _dl_exit() -- a locally defined crt0 function which is syscall exit(2). We don't need to call exit(2) for this obscure case which doesn't happen and provides no debugging information. An 'abort' is going to provide better information. So let's change the function name to _dso_abort() and make it a single illegal instruction. ok guenther
show more ...
|
#
b0714f38 |
| 17-Jan-2022 |
guenther <guenther@openbsd.org> |
Nothing depends on archdep.h pulling in other #includes anymore, so delete the #includes and hide the RELOC_* functions that are only used by lib/csu behind "#ifdef RCRT0"
these are the ones I teste
Nothing depends on archdep.h pulling in other #includes anymore, so delete the #includes and hide the RELOC_* functions that are only used by lib/csu behind "#ifdef RCRT0"
these are the ones I tested; kettenis@ was on board with the concept
show more ...
|
#
246ef78e |
| 14-Nov-2021 |
guenther <guenther@openbsd.org> |
Delete all the no-op RELOC_GOT() macros and their uses. Annotate RELOC_DYN() on non-hppa as only used in lib/csu. Delete some inconsistent comments, adjust whitespace, and reorder mips64's archdep.
Delete all the no-op RELOC_GOT() macros and their uses. Annotate RELOC_DYN() on non-hppa as only used in lib/csu. Delete some inconsistent comments, adjust whitespace, and reorder mips64's archdep.h so that the ld.so/*/archdep.h files look (almost) the same.
ok visa@ kettenis@
show more ...
|
#
e3b0f1d9 |
| 23-Oct-2019 |
guenther <guenther@openbsd.org> |
Prefer the size-independent ELF identifiers over the size-specific ones. Strip superfluous parens from return statements while here.
Done programatically with two perl invocations
idea ok kettenis@
Prefer the size-independent ELF identifiers over the size-specific ones. Strip superfluous parens from return statements while here.
Done programatically with two perl invocations
idea ok kettenis@ drahn@ ok visa@
show more ...
|
#
e9d517b1 |
| 27-Oct-2017 |
mpi <mpi@openbsd.org> |
Use <elf.h> instead of <elf_abi.h>
ok jasper@, jca@, deraadt@
|
#
3b50b772 |
| 24-Jan-2017 |
guenther <guenther@openbsd.org> |
On fatal errors, kill ourselves with thrkill(0,9,NULL) instead of simply exiting, via helper functions _dl_die(), _dl_diedie(), and _dl_oom().
prompted by a complaint from jsing@ ok jsing@ deraadt@
|
#
c7d8e820 |
| 21-Jan-2017 |
guenther <guenther@openbsd.org> |
_dl_exit() is __dead, so it should return void. Move _dl_mmap() and _dl_mquery() inlines from archdep.h to syscall.h and remove pointless casts and unnecessary parens.
ok kettenis@
|
#
6abcb730 |
| 20-Jan-2017 |
guenther <guenther@openbsd.org> |
Delete ancient macros and unnecessary #includes
ok deraadt@
|
#
41acbfd8 |
| 09-Jan-2017 |
kettenis <kettenis@openbsd.org> |
Remove dependency on __got_{start,end} symbols and look at PT_GNU_RELRO instead. Result in a few more pages that aren't writable on some platforms (such as hppa). Based on an initial diff from guen
Remove dependency on __got_{start,end} symbols and look at PT_GNU_RELRO instead. Result in a few more pages that aren't writable on some platforms (such as hppa). Based on an initial diff from guenther@.
Thanks to deraadt@ for testing.
ok guenther@
show more ...
|
#
a4b6a3a5 |
| 18-May-2016 |
deraadt <deraadt@openbsd.org> |
fix types for mmap wrappers. A few whitespace cleanups snuck in. ok guenther
|
#
01804a41 |
| 06-Dec-2015 |
guenther <guenther@openbsd.org> |
Simplify the relocation code for the ld.so bootstrap and static pie: track just the dynamic tags are needed instead of reusing the generic elf_object_t structure.
testing and feedback from miod@ ok
Simplify the relocation code for the ld.so bootstrap and static pie: track just the dynamic tags are needed instead of reusing the generic elf_object_t structure.
testing and feedback from miod@ ok kettenis@
show more ...
|
#
cea7389c |
| 24-Dec-2014 |
kurt <kurt@openbsd.org> |
Expand Elf_Rel relocations to include DT_JMPREL. Inspect DT_PLTREL value to determine if DT_JMPREL relocations are REL or RELA and conditionally perform DT_JMPREL in either REL or RELA as needed (ide
Expand Elf_Rel relocations to include DT_JMPREL. Inspect DT_PLTREL value to determine if DT_JMPREL relocations are REL or RELA and conditionally perform DT_JMPREL in either REL or RELA as needed (idea from kettenis@). Remove unneeded i386 RELA implementation. i386 static pie working now.
okay kettenis@
show more ...
|
#
f67a8cac |
| 22-Dec-2014 |
kurt <kurt@openbsd.org> |
Self-relocation code for i386.
|
#
478ba79d |
| 02-Jan-2010 |
kettenis <kettenis@openbsd.org> |
Fix handling of hppa RELOC_IPLT relocations during 'bootstrap relocation'.
ok miod@, deraadt@, jsing@
|
#
ab396018 |
| 24-May-2004 |
drahn <drahn@openbsd.org> |
Change define used to deal with PLT protection, use postive logic not negative. ok mickey@
|
#
d4802faf |
| 10-Feb-2004 |
drahn <drahn@openbsd.org> |
Check for RTLD_TEXT_PLT define instead of an architecture specific check.
|
#
5d1c74ea |
| 09-Jun-2003 |
deraadt <deraadt@openbsd.org> |
pefo 3/4 licence cleanups
|
#
bbec6e82 |
| 28-Apr-2003 |
drahn <drahn@openbsd.org> |
Change mquery() function call signature to be the same a mmap(). It 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
Change mquery() function call signature to be the same a mmap(). It 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.
show more ...
|
#
5358dc55 |
| 25-Apr-2003 |
drahn <drahn@openbsd.org> |
backout mquery change, something broke when not combined with a different diff.
|
#
55185975 |
| 25-Apr-2003 |
drahn <drahn@openbsd.org> |
change mquery() function call signature to be the same a mmap(). It 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
change mquery() function call signature to be the same a mmap(). It 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@
show more ...
|
#
f59ebde0 |
| 17-Apr-2003 |
drahn <drahn@openbsd.org> |
mquery support, currently for i386 only.
|
#
1d1aa375 |
| 15-Feb-2003 |
drahn <drahn@openbsd.org> |
After relocation is completed, remove write protection from GOT/PLT in ld.so.
|
#
1a25d5a9 |
| 25-Oct-2002 |
pefo <pefo@openbsd.org> |
Some small fixes in MI code for mips backport. A new reloc md function, RELOC_GOT, was added to handle mips got bootstrap reloc.
Also remove workaround used on previous versions of binutils for mips.
|
#
03b27513 |
| 23-Aug-2002 |
drahn <drahn@openbsd.org> |
Support for i386 ELF. Not an indication that the change is going to be made, just so that these files are maintained in the tree.
|