<feed xmlns='http://www.w3.org/2005/Atom'>
<title>wireguard-openbsd/lib/libpthread/man, branch master</title>
<subtitle>WireGuard implementation for the OpenBSD kernel</subtitle>
<id>https://git.zx2c4.com/wireguard-openbsd/atom/lib/libpthread/man?h=master</id>
<link rel='self' href='https://git.zx2c4.com/wireguard-openbsd/atom/lib/libpthread/man?h=master'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/'/>
<updated>2020-12-03T07:05:03Z</updated>
<entry>
<title>There are special rules regarding the memory passed to pthread_attr_setstack().</title>
<updated>2020-12-03T07:05:03Z</updated>
<author>
<name>otto</name>
<email>otto@openbsd.org</email>
</author>
<published>2020-12-03T07:05:03Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=0abccc37ae616c654d8c1a75cd149f63652b4ba0'/>
<id>urn:sha1:0abccc37ae616c654d8c1a75cd149f63652b4ba0</id>
<content type='text'>
ok semarie@
</content>
</entry>
<entry>
<title>Update my email address.</title>
<updated>2020-04-06T00:01:08Z</updated>
<author>
<name>pirofti</name>
<email>pirofti@openbsd.org</email>
</author>
<published>2020-04-06T00:01:08Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=8855e28c066fcedf8b2ce6df476d3f9b3d0ee8f9'/>
<id>urn:sha1:8855e28c066fcedf8b2ce6df476d3f9b3d0ee8f9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Clarify conditions in which pthread_mutex_destroy(3) returns EBUSY.</title>
<updated>2020-04-03T13:05:08Z</updated>
<author>
<name>stsp</name>
<email>stsp@openbsd.org</email>
</author>
<published>2020-04-03T13:05:08Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=25b7f502516e2f1c6e01335bfd66c89e94faf9c4'/>
<id>urn:sha1:25b7f502516e2f1c6e01335bfd66c89e94faf9c4</id>
<content type='text'>
It happens not just if the mutex is locked by another thread, but also
if any other threads refer to the mutex (e.g. by waiting for the lock).

ok guenther
</content>
</entry>
<entry>
<title>Remove IMPLEMENTATION NOTES, they only apply to one of the two in-tree</title>
<updated>2019-02-13T23:54:10Z</updated>
<author>
<name>mpi</name>
<email>mpi@openbsd.org</email>
</author>
<published>2019-02-13T23:54:10Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=3229ec54b30580d61ef9c5943bf31a024ccfa29d'/>
<id>urn:sha1:3229ec54b30580d61ef9c5943bf31a024ccfa29d</id>
<content type='text'>
implementations.

Pointed out by pirofti@
</content>
</entry>
<entry>
<title>tweak previous;</title>
<updated>2019-02-04T18:06:32Z</updated>
<author>
<name>jmc</name>
<email>jmc@openbsd.org</email>
</author>
<published>2019-02-04T18:06:32Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=cbc203c2342cad25c36cab2a7f220b3873c2ba6c'/>
<id>urn:sha1:cbc203c2342cad25c36cab2a7f220b3873c2ba6c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>add a pthread_get_name_np to match pthread_set_name_np.</title>
<updated>2019-02-04T17:18:08Z</updated>
<author>
<name>tedu</name>
<email>tedu@openbsd.org</email>
</author>
<published>2019-02-04T17:18:08Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=295117693e3a1d8af9cc3004578ce352f938d83a'/>
<id>urn:sha1:295117693e3a1d8af9cc3004578ce352f938d83a</id>
<content type='text'>
could be useful in ports.
initial diff by David Carlier some time ago.
ok jca
</content>
</entry>
<entry>
<title>Tweak description, pthread_cond_signal(3) unblocks *at least* one thread.</title>
<updated>2019-01-29T17:38:48Z</updated>
<author>
<name>mpi</name>
<email>mpi@openbsd.org</email>
</author>
<published>2019-01-29T17:38:48Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=826955895b7686c592de2e90525c30542d3cd1c2'/>
<id>urn:sha1:826955895b7686c592de2e90525c30542d3cd1c2</id>
<content type='text'>
ok kettenis@, visa@
</content>
</entry>
<entry>
<title>Move sigwait(3) from libpthread to libc</title>
<updated>2019-01-12T00:16:03Z</updated>
<author>
<name>jca</name>
<email>jca@openbsd.org</email>
</author>
<published>2019-01-12T00:16:03Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=13e54a3ce65615faaf13e4717a510eb52bfb2efe'/>
<id>urn:sha1:13e54a3ce65615faaf13e4717a510eb52bfb2efe</id>
<content type='text'>
POSIX wants it in libc, that's where the function can be found on other
systems.  Reported by naddy@, input from naddy@ and guenther@.
"looks ok" guenther@, ok deraadt@

Note: riding the libc/libpthread major cranks earlier today.
</content>
</entry>
<entry>
<title>Validate timespec and return ECANCELED when interrupted with SA_RESTART.</title>
<updated>2018-04-24T16:28:42Z</updated>
<author>
<name>pirofti</name>
<email>pirofti@openbsd.org</email>
</author>
<published>2018-04-24T16:28:42Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=bda456ccd11759e253796707fd980cfc75ecc76d'/>
<id>urn:sha1:bda456ccd11759e253796707fd980cfc75ecc76d</id>
<content type='text'>
Discussing with mpi@ and guenther@, we decided to first fix the existing
semaphore implementation with regards to SA_RESTART and POSIX compliant
returns in the case where we deal with restartable signals.

Currently we return EINTR everywhere which is mostly incorrect as the
user can not know if she needs to recall the syscall or not. Return
ECANCELED to signal that SA_RESTART was set and EINTR otherwise.

Regression tests pass and so does the posixsuite. Timespec validation
bits are needed to pass the later.

OK mpi@, guenther@
</content>
</entry>
<entry>
<title>Implement MAP_STACK option for mmap().  Synchronous faults (pagefault and</title>
<updated>2018-04-12T17:13:34Z</updated>
<author>
<name>deraadt</name>
<email>deraadt@openbsd.org</email>
</author>
<published>2018-04-12T17:13:34Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=003f5e42bbc90263e30dbce6eb150fc5e31b56eb'/>
<id>urn:sha1:003f5e42bbc90263e30dbce6eb150fc5e31b56eb</id>
<content type='text'>
syscall) confirm the stack register points at MAP_STACK memory, otherwise
SIGSEGV is delivered. sigaltstack() and pthread_attr_setstack() are modified
to create a MAP_STACK sub-region which satisfies alignment requirements.
Observe that MAP_STACK can only be set/cleared by mmap(), which zeroes the
contents of the region -- there is no mprotect() equivalent operation, so
there is no MAP_STACK-adding gadget.
This opportunistic software-emulation of a stack protection bit makes
stack-pivot operations during ROPchain fragile (kind of like removing a
tool from the toolbox).
original discussion with tedu, uvm work by stefan, testing by mortimer
ok kettenis
</content>
</entry>
</feed>
