version 1.88, 2020/08/13 15:30:13 |
version 1.89, 2020/10/12 16:47:20 |
|
|
relative branches/calls. Basically a unique address space for each |
relative branches/calls. Basically a unique address space for each |
kernel boot, similar to the userland fork+exec model described above |
kernel boot, similar to the userland fork+exec model described above |
but for the kernel. Theo de Raadt, June 2017. |
but for the kernel. Theo de Raadt, June 2017. |
<li> |
<li>Rearranged i386/amd64 register allocator order in |
Rearranged i386/amd64 register allocator order in |
|
<a href="https://man.openbsd.org/clang.1">clang(1)</a> |
<a href="https://man.openbsd.org/clang.1">clang(1)</a> |
to reduce polymorphic RET instructions: |
to reduce polymorphic RET instructions: |
Todd Mortimer, November 20, 2017. |
Todd Mortimer, November 20, 2017. |
<li> |
<li>Reencoding of i386/amd64 instruction sequences to avoid |
Reencoding of i386/amd64 instruction sequences to avoid |
|
embedded polymorphic RET instructions. Enhancements to |
embedded polymorphic RET instructions. Enhancements to |
<a href="https://man.openbsd.org/clang.1">clang(1)</a> |
<a href="https://man.openbsd.org/clang.1">clang(1)</a> |
Todd Mortimer, April 28, 2018 and onwards. |
Todd Mortimer, April 28, 2018 and onwards. |
|
|
<li><b>RETGUARD</b> is a replacement for the <b>stack-protector</b> |
<li><b>RETGUARD</b> is a replacement for the <b>stack-protector</b> |
which uses a per-function random cookie (located in the read-only ELF |
which uses a per-function random cookie (located in the read-only ELF |
<b>.openbsd.randomdata</b> section) to consistency-check the |
<b>.openbsd.randomdata</b> section) to consistency-check the |
return address on the stack. Implemented for AMD64 and ARM64 |
return address on the stack. Implemented for amd64 and arm64 |
by Todd Mortimer in OpenBSD 6.4, and for Octeon in OpenBSD 6.7. |
by Todd Mortimer in OpenBSD 6.4, for mips64 in OpenBSD 6.7, and |
|
powerpc/power64 in OpenBSD 6.9. |
<li><b>MAP_CONCEAL</b> addition to |
<li><b>MAP_CONCEAL</b> addition to |
<a href="https://man.openbsd.org/mmap.2">mmap(2)</a> |
<a href="https://man.openbsd.org/mmap.2">mmap(2)</a> |
disallows memory pages to be written to core dumps, preventing |
disallows memory pages to be written to core dumps, preventing |