<feed xmlns='http://www.w3.org/2005/Atom'>
<title>wireguard-openbsd/lib/csu/crt0.c, branch jd/queueboosts</title>
<subtitle>WireGuard implementation for the OpenBSD kernel</subtitle>
<id>https://git.zx2c4.com/wireguard-openbsd/atom/lib/csu/crt0.c?h=jd%2Fqueueboosts</id>
<link rel='self' href='https://git.zx2c4.com/wireguard-openbsd/atom/lib/csu/crt0.c?h=jd%2Fqueueboosts'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/'/>
<updated>2019-05-10T13:29:21Z</updated>
<entry>
<title>ld.so boot cleanup support:</title>
<updated>2019-05-10T13:29:21Z</updated>
<author>
<name>guenther</name>
<email>guenther@openbsd.org</email>
</author>
<published>2019-05-10T13:29:21Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=c0197e40dd4094880fe205f9c12d3e12e14e7ff3'/>
<id>urn:sha1:c0197e40dd4094880fe205f9c12d3e12e14e7ff3</id>
<content type='text'>
 - put functions and data which are only used before calling the executable's
   start function into their own page-aligned segments for unmapping
   (only done on amd64, arm64, armv7, powerpc, and sparc64 so far)
 - pass .init_array and .preinit_array functions an addition argument which
   is a callback to get a structure which includes a function that frees
   the boot text and data
 - sometimes delay doing RELRO processing: for a shared-object marked
   DF_1_INITFIRST do it after the object's .init_array, for the executable
   do it after the .preinit_array
 - improve test-ld.so to link against libpthread and trigger its initialization
   late
libc changes to use this will come later

ok kettenis@
</content>
</entry>
<entry>
<title>Call _csu_finish() before {pre,}init_array functions so that in static</title>
<updated>2019-05-08T20:27:29Z</updated>
<author>
<name>guenther</name>
<email>guenther@openbsd.org</email>
</author>
<published>2019-05-08T20:27:29Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=1bfbec77a7b17a0f6da7266d6a21d1ca48f84301'/>
<id>urn:sha1:1bfbec77a7b17a0f6da7266d6a21d1ca48f84301</id>
<content type='text'>
executables the TIB and __progname are set up before they can be used.

problem noted by ori@
ok millert@ kettenis@
</content>
</entry>
<entry>
<title>Use static consistently with definitions of functions that have been</title>
<updated>2019-01-09T16:42:38Z</updated>
<author>
<name>visa</name>
<email>visa@openbsd.org</email>
</author>
<published>2019-01-09T16:42:38Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=a36635a7c3589c5da52fd2716a34be60855ef6d2'/>
<id>urn:sha1:a36635a7c3589c5da52fd2716a34be60855ef6d2</id>
<content type='text'>
declared static.

OK guenther@
</content>
</entry>
<entry>
<title>Add support for {preinit,init,fini}_array sections in static binaries</title>
<updated>2018-12-21T05:45:42Z</updated>
<author>
<name>guenther</name>
<email>guenther@openbsd.org</email>
</author>
<published>2018-12-21T05:45:42Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=b1bc2e073c0bae2d2308bd86e58308d8ef716ecb'/>
<id>urn:sha1:b1bc2e073c0bae2d2308bd86e58308d8ef716ecb</id>
<content type='text'>
ok kettenis@
</content>
</entry>
<entry>
<title>Pull in declarations for main() and __init() to make clang happy.</title>
<updated>2017-01-21T04:14:19Z</updated>
<author>
<name>guenther</name>
<email>guenther@openbsd.org</email>
</author>
<published>2017-01-21T04:14:19Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=1640b8d3f7d57d7e1c97128905d228033f835f00'/>
<id>urn:sha1:1640b8d3f7d57d7e1c97128905d228033f835f00</id>
<content type='text'>
Mark __init() as hidden

ok kettenis@ deraadt@
</content>
</entry>
<entry>
<title>MD_START is now always ___start, so expand and eliminate it</title>
<updated>2017-01-19T23:47:04Z</updated>
<author>
<name>guenther</name>
<email>guenther@openbsd.org</email>
</author>
<published>2017-01-19T23:47:04Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=48c2532cf0ac165cb15277dedb995ed44e078382'/>
<id>urn:sha1:48c2532cf0ac165cb15277dedb995ed44e078382</id>
<content type='text'>
ok phessler@ deraadt@
</content>
</entry>
<entry>
<title>Now that vax has been removed, nothing defined MD_NO_CLEANUP anymore.</title>
<updated>2016-09-26T15:43:26Z</updated>
<author>
<name>kettenis</name>
<email>kettenis@openbsd.org</email>
</author>
<published>2016-09-26T15:43:26Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=d3eddb10b4d2ee9faaf16b7ee3213471fd72ac97'/>
<id>urn:sha1:d3eddb10b4d2ee9faaf16b7ee3213471fd72ac97</id>
<content type='text'>
ok guenther@
</content>
</entry>
<entry>
<title>Declare moncontrol(3) APIs in &lt;sys/gmon.h&gt;</title>
<updated>2016-05-07T19:30:52Z</updated>
<author>
<name>guenther</name>
<email>guenther@openbsd.org</email>
</author>
<published>2016-05-07T19:30:52Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=dbf5b26b7ce3154b602d8b18c9be8c2e2f3b136b'/>
<id>urn:sha1:dbf5b26b7ce3154b602d8b18c9be8c2e2f3b136b</id>
<content type='text'>
Export _gmonparam again.
Make gcrt0.o use an reserved name for _monstartup()

ok millert@
</content>
</entry>
<entry>
<title>Rearrange C runtime bits: now that ld.so exports environ and __progname,</title>
<updated>2016-03-20T02:32:39Z</updated>
<author>
<name>guenther</name>
<email>guenther@openbsd.org</email>
</author>
<published>2016-03-20T02:32:39Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=5af055cd66b5450a4935ae30e5716331ca3b13d5'/>
<id>urn:sha1:5af055cd66b5450a4935ae30e5716331ca3b13d5</id>
<content type='text'>
move their definitions and initialization in static links to libc.a
Make crt0 always invoke a new func _csu_finish() in libc to process the auxv
and to either register the ld.so cleanup function (in dynamic links) or
initialize environ and __progname and do MC_DISABLE_KBIND (in static links).
In libc, get pagesize from auxv; cache that between getpagesize() and
sysconf(_SC_PAGESIZE)

ok mpi@ "good time" deraadt@
</content>
</entry>
<entry>
<title>In static binaries, invoke kbind() once to disable it.</title>
<updated>2015-09-01T05:40:06Z</updated>
<author>
<name>guenther</name>
<email>guenther@openbsd.org</email>
</author>
<published>2015-09-01T05:40:06Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=0a8a9c346022d9ea9d2d120f75edf8549c4915cf'/>
<id>urn:sha1:0a8a9c346022d9ea9d2d120f75edf8549c4915cf</id>
<content type='text'>
With much assistance from miod@
ok deraadt@@
</content>
</entry>
</feed>
