summaryrefslogtreecommitdiffstats
path: root/lib/libc
diff options
context:
space:
mode:
authormiod <miod@openbsd.org>2014-05-02 19:59:16 +0000
committermiod <miod@openbsd.org>2014-05-02 19:59:16 +0000
commit9409225ba0bf899521709e91376dd12fe5c7d4fb (patch)
tree3188b3657ff4f467fd21d95043ced7277b2301e6 /lib/libc
parentSimple sha{224,256,384,512} test using the FIPS 180-2 test vectors available (diff)
downloadwireguard-openbsd-9409225ba0bf899521709e91376dd12fe5c7d4fb.tar.xz
wireguard-openbsd-9409225ba0bf899521709e91376dd12fe5c7d4fb.zip
The assembly sha512 code detects at runtime if it is running on a 64-bit
processor (PA2.0) and, if so, switches to 64-bit code. However, when running under a 32-bit OpenBSD/hppa kernel, there is no guarantee that the upper part of the registers will be preserved accross context switches (or even userland->kernel boundaries), which causes this code to fail. Wrap the generated code within #ifndef __OpenBSD__ in that case, to avoid using the 64-bit code completely. (OpenBSD/hppa64, once stable, will not be affected by this)
Diffstat (limited to 'lib/libc')
0 files changed, 0 insertions, 0 deletions