6
6
# SPDX-License-Identifier: BSD-2-Clause
7
7
8
8
LIBCBOR_URL=" https://github.com/pjk/libcbor"
9
- LIBCBOR_TAG=" v0.9.0 "
9
+ LIBCBOR_TAG=" v0.10.1 "
10
10
LIBCBOR_ASAN=" address alignment bounds"
11
11
LIBCBOR_MSAN=" memory"
12
12
OPENSSL_URL=" https://github.com/openssl/openssl"
13
- OPENSSL_TAG=" OpenSSL_1_1_1q "
13
+ OPENSSL_TAG=" OpenSSL_1_1_1t "
14
14
ZLIB_URL=" https://github.com/madler/zlib"
15
15
ZLIB_TAG=" v1.2.13"
16
16
ZLIB_ASAN=" address alignment bounds undefined"
17
17
ZLIB_MSAN=" memory"
18
- FIDO2_ASAN=" address bounds implicit-conversion leak pointer-compare pointer-subtract undefined"
19
- FIDO2_MSAN=" memory"
18
+ FIDO2_ASAN=" address bounds fuzzer-no-link implicit-conversion leak"
19
+ FIDO2_ASAN=" ${FIDO2_ASAN} pointer-compare pointer-subtract undefined"
20
+ FIDO2_MSAN=" fuzzer-no-link memory"
20
21
COMMON_CFLAGS=" -g2 -fno-omit-frame-pointer"
22
+ COMMON_CFLAGS=" ${COMMON_CFLAGS} -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION"
21
23
UBSAN_OPTIONS=" halt_on_error=1:print_stacktrace=1:strict_string_checks=1"
22
24
ASAN_OPTIONS=" ${UBSAN_OPTIONS} :detect_invalid_pointer_pairs=2:detect_leaks=1"
23
25
MSAN_OPTIONS=" ${UBSAN_OPTIONS} "
@@ -27,11 +29,13 @@ asan)
27
29
LIBCBOR_CFLAGS=" -fsanitize=$( echo " ${LIBCBOR_ASAN} " | tr ' ' ' ,' ) "
28
30
ZLIB_CFLAGS=" -fsanitize=$( echo " ${ZLIB_ASAN} " | tr ' ' ' ,' ) "
29
31
FIDO2_CFLAGS=" -fsanitize=$( echo " ${FIDO2_ASAN} " | tr ' ' ' ,' ) "
32
+ FIDO2_CFLAGS=" ${FIDO2_CFLAGS} -fsanitize-address-use-after-scope"
30
33
;;
31
34
msan)
32
35
LIBCBOR_CFLAGS=" -fsanitize=$( echo " ${LIBCBOR_MSAN} " | tr ' ' ' ,' ) "
33
36
ZLIB_CFLAGS=" -fsanitize=$( echo " ${ZLIB_MSAN} " | tr ' ' ' ,' ) "
34
- FIDO2_CFLAGS=" -fsanitize=$( echo " ${FIDO2_MSAN} " | tr ' ' ' ,' ) -fsanitize-memory-track-origins"
37
+ FIDO2_CFLAGS=" -fsanitize=$( echo " ${FIDO2_MSAN} " | tr ' ' ' ,' ) "
38
+ FIDO2_CFLAGS=" ${FIDO2_CFLAGS} -fsanitize-memory-track-origins"
35
39
;;
36
40
* )
37
41
echo " unknown sanitiser \" $1 \" " 1>&2 && exit 1
@@ -75,7 +79,7 @@ mkdir build
75
79
export PKG_CONFIG_PATH=" ${FAKEROOT} /lib/pkgconfig"
76
80
(cd build && cmake -DCMAKE_BUILD_TYPE=Debug \
77
81
-DCMAKE_C_FLAGS_DEBUG=" ${FIDO2_CFLAGS} ${COMMON_CFLAGS} " -DFUZZ=ON \
78
- -DLIBFUZZER=ON " ${WORKDIR} " )
82
+ -DFUZZ_LDFLAGS= " -fsanitize=fuzzer " " ${WORKDIR} " )
79
83
make -j" $( nproc) " -C build
80
84
81
85
# fuzz
0 commit comments