On Mon, May 1, 2017 at 8:51 AM, Greg Steuck <blackgne...@gmail.com> wrote: > I naively tried to build something with -fsanitize=address using llvm-4.0 > port available on OpenBSD 6.1-amd64. I was immediately greeted with: > clang-4.0: error: unsupported option '-fsanitize=address' for target > 'amd64-unknown-openbsd6.1' > > How deep a rat hole does one have to go to port ASan to a new flavour of > BSD? Is OpenBSD going to be particularly painful with its special malloc and > advanced ASLR? Is anybody working on this?
Hi, I can think of 2 major areas re porting to a new OS: 1. Function interception. Presumably our current scheme just works on OpenBSD (as it works on Linux and FreeBSD). 2. Shadow memory mapping. We need to mmap a multi-TB range in process address space. Kernel need to support such huge mappings at all and with reasonable performance. How aggressive is ASLR? Is it possible to turn it off for a process (that may be the simplest option)? What's so special about malloc? Note that asan replaces standard malloc entirely. Nobody is working on OpenBSD support as far as I know.