Skip to content

Testing with ASAN and UBSAN

Stefan Berger edited this page Sep 18, 2021 · 6 revisions

Fedora

ASAN & UBSAN using GCC

libtpms configure line: CFLAGS="-fsanitize=address,undefined -g -fno-omit-frame-pointer -fno-sanitize-recover" LIBS="-lasan -lubsan" ./autogen.sh --prefix=/usr --with-tpm2 --with-openssl

swtpm configure line: CFLAGS="-fsanitize=address,undefined -g -fno-omit-frame-pointer -fno-sanitize-recover" LIBS="-lasan -lubsan" ./autogen.sh --prefix=/usr --without-seccomp --without-cuse

breakpoint for gdb: rbreak ^__ubsan_handle

Environment variable for complete backtraces: LSAN_OPTIONS=fast_unwind_on_malloc=0

ASAN & UBSAN using Clang

libtpms configure line: CC=clang CFLAGS="-fsanitize=address,undefined -g -fno-omit-frame-pointer -fno-sanitize-recover" ./autogen.sh --prefix=/usr --with-tpm2 --with-openssl

swtpm configure line: CC=clang CFLAGS="-fsanitize=address,undefined -g -fno-omit-frame-pointer -fno-sanitize-recover" ./autogen.sh --prefix=/usr --without-seccomp --without-cuse