<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openbsd/src/lib/libc/stdlib/thread_atexit.c, branch OPENBSD_7_9_BASE</title>
<subtitle>A mirror of https://github.com/libressl/openbsd.git
</subtitle>
<id>https://git.lua4.win/openbsd/atom?h=OPENBSD_7_9_BASE</id>
<link rel='self' href='https://git.lua4.win/openbsd/atom?h=OPENBSD_7_9_BASE'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/'/>
<updated>2019-06-02T01:03:01+00:00</updated>
<entry>
<title>Complete the ld.so boot cleanup: move most libc initialization from</title>
<updated>2019-06-02T01:03:01+00:00</updated>
<author>
<name>guenther</name>
<email></email>
</author>
<published>2019-06-02T01:03:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=a6e675c6e949db993e297cb4af8780a6a40a5b9c'/>
<id>urn:sha1:a6e675c6e949db993e297cb4af8780a6a40a5b9c</id>
<content type='text'>
_csu_finish() to _libc_preinit(), which is an .init_array function
in shared libc (and mark it INITFIRST) or a .preinit_array function
in static libc, grabbing the _dl_cb callback there from ld.so.  Then
in _csu_finish(), invoke the dl_clean_boot() callback to free ld.so's
startup bits before main() gets control.

Other cleanups this permits:
 - move various startup structures into .data.rel.ro
 - the dl* stubs in libc can be strong and call the callbacks provided
   via _dl_cb
 - no longer need to conditionalize dlctl() calls on presence of _DYNAMIC

original concept and full diff ok kettenis@
ok deraadt@
</content>
</entry>
<entry>
<title>Move __cxa_thread_atexit* to its own .c file to avoid pulling the code</title>
<updated>2017-12-16T20:06:56+00:00</updated>
<author>
<name>guenther</name>
<email></email>
</author>
<published>2017-12-16T20:06:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=09687c04dc436ea29235c588185e43443b906e9f'/>
<id>urn:sha1:09687c04dc436ea29235c588185e43443b906e9f</id>
<content type='text'>
(w/ _dlctl reference) into static executables.  It's all Mark's code so
put his preferred copyright on it.

ok kettenis@
</content>
</entry>
</feed>
