#
1.5 |
|
18-Nov-2023 |
deraadt |
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
|
Revision tags: OPENBSD_7_3_BASE OPENBSD_7_4_BASE
|
#
1.4 |
|
27-Oct-2022 |
deraadt |
hppa and mips64 have private copies of RCRT0_RELRO(), which should also perform mimmutable() ok guenther
|
Revision tags: OPENBSD_7_1_BASE OPENBSD_7_2_BASE
|
#
1.3 |
|
31-Jan-2022 |
guenther |
Inline RELOC_* into boot_md.c and simplify the code based on what we can verify at build time. Track dt_pltgot as an Elf_Addr instead of an Elf_Addr* to eliminat casts on both setting and using. Set RELATIVE_RELOC so the ld.so Makefile can verify that it has just the relocation types we expect.
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"
Tested with full build.
|
#
1.2 |
|
12-Jan-2022 |
guenther |
Lift the '#ifdef RCRT0' conditional out of boot*.h to crt0.c
Prep for dropping #includes from archdep.h: pull in <machine/reloc.h> and declare _dl_exit() in boot*.h
ok kettenis@
|
#
1.1 |
|
14-Nov-2021 |
guenther |
Split out the hppa and mips64 versions of boot.h similar to how I split ld.so/boot.c in 2019: * delete extraneous #includes * delete jmprel handling on non-hppa * delete RELOC_GOT() and DT_PROC bits on non-mips64
ok visa@
|
#
1.4 |
|
27-Oct-2022 |
deraadt |
hppa and mips64 have private copies of RCRT0_RELRO(), which should also perform mimmutable() ok guenther
|
Revision tags: OPENBSD_7_1_BASE OPENBSD_7_2_BASE
|
#
1.3 |
|
31-Jan-2022 |
guenther |
Inline RELOC_* into boot_md.c and simplify the code based on what we can verify at build time. Track dt_pltgot as an Elf_Addr instead of an Elf_Addr* to eliminat casts on both setting and using. Set RELATIVE_RELOC so the ld.so Makefile can verify that it has just the relocation types we expect.
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"
Tested with full build.
|
#
1.2 |
|
12-Jan-2022 |
guenther |
Lift the '#ifdef RCRT0' conditional out of boot*.h to crt0.c
Prep for dropping #includes from archdep.h: pull in <machine/reloc.h> and declare _dl_exit() in boot*.h
ok kettenis@
|
#
1.1 |
|
14-Nov-2021 |
guenther |
Split out the hppa and mips64 versions of boot.h similar to how I split ld.so/boot.c in 2019: * delete extraneous #includes * delete jmprel handling on non-hppa * delete RELOC_GOT() and DT_PROC bits on non-mips64
ok visa@
|
#
1.3 |
|
31-Jan-2022 |
guenther |
Inline RELOC_* into boot_md.c and simplify the code based on what we can verify at build time. Track dt_pltgot as an Elf_Addr instead of an Elf_Addr* to eliminat casts on both setting and using. Set RELATIVE_RELOC so the ld.so Makefile can verify that it has just the relocation types we expect.
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"
Tested with full build.
|
#
1.2 |
|
12-Jan-2022 |
guenther |
Lift the '#ifdef RCRT0' conditional out of boot*.h to crt0.c
Prep for dropping #includes from archdep.h: pull in <machine/reloc.h> and declare _dl_exit() in boot*.h
ok kettenis@
|
#
1.1 |
|
14-Nov-2021 |
guenther |
Split out the hppa and mips64 versions of boot.h similar to how I split ld.so/boot.c in 2019: * delete extraneous #includes * delete jmprel handling on non-hppa * delete RELOC_GOT() and DT_PROC bits on non-mips64
ok visa@
|
#
1.2 |
|
12-Jan-2022 |
guenther |
Lift the '#ifdef RCRT0' conditional out of boot*.h to crt0.c
Prep for dropping #includes from archdep.h: pull in <machine/reloc.h> and declare _dl_exit() in boot*.h
ok kettenis@
|
#
1.1 |
|
14-Nov-2021 |
guenther |
Split out the hppa and mips64 versions of boot.h similar to how I split ld.so/boot.c in 2019: * delete extraneous #includes * delete jmprel handling on non-hppa * delete RELOC_GOT() and DT_PROC bits on non-mips64
ok visa@
|
#
1.1 |
|
14-Nov-2021 |
guenther |
Split out the hppa and mips64 versions of boot.h similar to how I split ld.so/boot.c in 2019: * delete extraneous #includes * delete jmprel handling on non-hppa * delete RELOC_GOT() and DT_PROC bits on non-mips64
ok visa@
|