CVSROOT: /cvs Module name: src Changes by: guent...@cvs.openbsd.org 2015/11/09 21:14:03
Modified files: lib/csu : crtbegin.c lib/libc : Makefile Symbols.list lib/libc/hidden: stdlib.h lib/libc/stdlib: atexit.c lib/libc/sys : stack_protector.c lib/libc/thread: atfork.c Added files: lib/libc/hidden: pthread.h Log message: 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@