|
|
|
# -fsanitize=undefined suppressions
|
|
|
|
# =================================
|
|
|
|
# The suppressions would be `sanitize-type:ClassName::MethodName`,
|
|
|
|
# however due to a bug in clang the symbolizer is disabled and thus no symbol
|
|
|
|
# names can be used.
|
|
|
|
# See https://github.com/google/sanitizers/issues/1364
|
|
|
|
|
|
|
|
# -fsanitize=integer suppressions
|
|
|
|
# ===============================
|
|
|
|
# Dependencies
|
|
|
|
# ------------
|
|
|
|
# Suppressions in dependencies that are developed outside this repository.
|
|
|
|
unsigned-integer-overflow:*/include/c++/
|
|
|
|
# unsigned-integer-overflow in FuzzedDataProvider's ConsumeIntegralInRange
|
|
|
|
unsigned-integer-overflow:FuzzedDataProvider.h
|
|
|
|
unsigned-integer-overflow:leveldb/
|
|
|
|
unsigned-integer-overflow:minisketch/
|
|
|
|
unsigned-integer-overflow:test/fuzz/crypto_diff_fuzz_chacha20.cpp
|
|
|
|
implicit-integer-sign-change:*/include/boost/
|
|
|
|
implicit-integer-sign-change:*/include/c++/
|
|
|
|
implicit-integer-sign-change:*/new_allocator.h
|
|
|
|
implicit-integer-sign-change:crc32c/
|
|
|
|
# implicit-integer-sign-change in FuzzedDataProvider's ConsumeIntegralInRange
|
|
|
|
implicit-integer-sign-change:FuzzedDataProvider.h
|
|
|
|
implicit-integer-sign-change:minisketch/
|
|
|
|
implicit-signed-integer-truncation:*/include/c++/
|
|
|
|
implicit-signed-integer-truncation:leveldb/
|
|
|
|
implicit-unsigned-integer-truncation:*/include/c++/
|
|
|
|
implicit-unsigned-integer-truncation:leveldb/
|
|
|
|
implicit-unsigned-integer-truncation:test/fuzz/crypto_diff_fuzz_chacha20.cpp
|
|
|
|
shift-base:*/include/c++/
|
|
|
|
shift-base:leveldb/
|
|
|
|
shift-base:minisketch/
|
|
|
|
shift-base:test/fuzz/crypto_diff_fuzz_chacha20.cpp
|
|
|
|
# Unsigned integer overflow occurs when the result of an unsigned integer
|
|
|
|
# computation cannot be represented in its type. Unlike signed integer overflow,
|
|
|
|
# this is not undefined behavior, but it is often unintentional. The list below
|
|
|
|
# contains files in which we expect unsigned integer overflows to occur. The
|
|
|
|
# list is used to suppress -fsanitize=integer warnings when running our CI UBSan
|
|
|
|
# job.
|
|
|
|
unsigned-integer-overflow:arith_uint256.h
|
|
|
|
unsigned-integer-overflow:common/bloom.cpp
|
|
|
|
unsigned-integer-overflow:coins.cpp
|
|
|
|
unsigned-integer-overflow:compressor.cpp
|
|
|
|
unsigned-integer-overflow:crypto/
|
|
|
|
unsigned-integer-overflow:hash.cpp
|
|
|
|
unsigned-integer-overflow:policy/fees.cpp
|
|
|
|
unsigned-integer-overflow:prevector.h
|
|
|
|
unsigned-integer-overflow:script/interpreter.cpp
|
|
|
|
unsigned-integer-overflow:xoroshiro128plusplus.h
|
|
|
|
implicit-integer-sign-change:compat/stdin.cpp
|
|
|
|
implicit-integer-sign-change:compressor.h
|
|
|
|
implicit-integer-sign-change:crypto/
|
|
|
|
implicit-integer-sign-change:policy/fees.cpp
|
|
|
|
implicit-integer-sign-change:prevector.h
|
|
|
|
implicit-integer-sign-change:script/bitcoinconsensus.cpp
|
|
|
|
implicit-integer-sign-change:script/interpreter.cpp
|
|
|
|
implicit-integer-sign-change:serialize.h
|
|
|
|
implicit-signed-integer-truncation:crypto/
|
|
|
|
implicit-unsigned-integer-truncation:crypto/
|
|
|
|
shift-base:arith_uint256.cpp
|
|
|
|
shift-base:crypto/
|
|
|
|
shift-base:hash.cpp
|
|
|
|
shift-base:streams.h
|
|
|
|
shift-base:util/bip32.cpp
|
|
|
|
shift-base:xoroshiro128plusplus.h
|