summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorderaadt <deraadt@openbsd.org>2014-11-21 21:30:50 +0000
committerderaadt <deraadt@openbsd.org>2014-11-21 21:30:50 +0000
commitdf3a1dce0f52372c02761e838d67c02cda73f25e (patch)
tree587a77f087ecb50ed15c127b7e0606e62f6a6be0
parentMPE support, begone. ok tedu (diff)
downloadwireguard-openbsd-df3a1dce0f52372c02761e838d67c02cda73f25e.tar.xz
wireguard-openbsd-df3a1dce0f52372c02761e838d67c02cda73f25e.zip
mask off high bits from 'c', before operation, otherwise the packing
logic writes balony. Hunting with tedu, mlarkin, and final bit spotted by naddy in freebsd's version.
-rw-r--r--sys/lib/libkern/arch/amd64/memset.S1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/lib/libkern/arch/amd64/memset.S b/sys/lib/libkern/arch/amd64/memset.S
index 0f6ae1064d0..670d9426b13 100644
--- a/sys/lib/libkern/arch/amd64/memset.S
+++ b/sys/lib/libkern/arch/amd64/memset.S
@@ -8,6 +8,7 @@
ENTRY(memset)
movq %rsi,%rax
+ andq $0xff,%rax
movq %rdx,%rcx
movq %rdi,%r11