diff options
author | Philip Guenther <guenther@cvs.openbsd.org> | 2015-11-10 04:14:04 +0000 |
---|---|---|
committer | Philip Guenther <guenther@cvs.openbsd.org> | 2015-11-10 04:14:04 +0000 |
commit | 2de40dc0593bdf96a17ccf05b725d8b4260ec0e1 (patch) | |
tree | b6f874627bc9312c7060c11146e21ee5df3d1218 /lib/libc/Symbols.list | |
parent | f15bb8f1a90ffad3aace60e831d29da29747ed5e (diff) |
libc.so can't be unloaded, so move the hidden atexit() and pthread_atfork()
stubs for the executable from crtbegin.o into libc, which lets them be
excluded from static links that don't use them.
For this, drop the normal crt{begin,end}S.o from libc.so: the .init and .fini
sections for libc aren't called at the right times anyway, so it's good that
they're unused. libc.so just needs __guard_local and the .note.openbsd.ident
section, so add them to stack_protector.c for now (this will be improved)
"good time" deraadt@
Diffstat (limited to 'lib/libc/Symbols.list')
-rw-r--r-- | lib/libc/Symbols.list | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/libc/Symbols.list b/lib/libc/Symbols.list index c1b9e261579..2c9c55189ca 100644 --- a/lib/libc/Symbols.list +++ b/lib/libc/Symbols.list @@ -7,8 +7,6 @@ */ /* symbols that no one should be using currently */ -_init -_fini __data_start __bss_start _edata @@ -1434,6 +1432,7 @@ __isthreaded a64l abort abs +atexit atof atoi atol @@ -1622,6 +1621,7 @@ _thread_mutex_unlock _thread_tag_lock _thread_tag_storage _thread_tag_unlock +pthread_atfork /* time */ asctime |