ubsan raw

   1  # Suppressions should use `sanitize-type:ClassName::MethodName`.
   2  
   3  # -fsanitize=undefined suppressions
   4  # =================================
   5  
   6  # -fsanitize=integer suppressions
   7  # ===============================
   8  # Suppressions in dependencies that are developed outside this repository.
   9  # ------------
  10  
  11  unsigned-integer-overflow:*/include/c++/
  12  unsigned-integer-overflow:FuzzedDataProvider::ConsumeIntegralInRange
  13  unsigned-integer-overflow:leveldb/
  14  unsigned-integer-overflow:minisketch/
  15  unsigned-integer-overflow:secp256k1/
  16  unsigned-integer-overflow:test/fuzz/crypto_diff_fuzz_chacha20.cpp
  17  implicit-integer-sign-change:*/include/boost/
  18  implicit-integer-sign-change:*/include/c++/
  19  implicit-integer-sign-change:*/new_allocator.h
  20  implicit-integer-sign-change:*/qarraydata.h
  21  implicit-integer-sign-change:crc32c/
  22  implicit-integer-sign-change:BytewiseComparatorImpl::FindShortSuccessor
  23  implicit-integer-sign-change:minisketch/
  24  implicit-integer-sign-change:secp256k1/
  25  implicit-signed-integer-truncation:*/include/c++/
  26  implicit-signed-integer-truncation:leveldb/
  27  implicit-signed-integer-truncation:secp256k1/
  28  implicit-signed-integer-truncation,implicit-integer-sign-change:secp256k1_modinv64_posdivsteps_62_var
  29  implicit-unsigned-integer-truncation:*/include/c++/
  30  implicit-unsigned-integer-truncation:leveldb/
  31  implicit-unsigned-integer-truncation:secp256k1/
  32  implicit-unsigned-integer-truncation:test/fuzz/crypto_diff_fuzz_chacha20.cpp
  33  shift-base:*/include/c++/
  34  shift-base:leveldb/
  35  shift-base:minisketch/
  36  shift-base:secp256k1/
  37  shift-base:test/fuzz/crypto_diff_fuzz_chacha20.cpp
  38  
  39  # Suppressions in code developed inside this repository.
  40  # ------------
  41  # Unsigned integer overflow occurs when the result of an unsigned integer
  42  # computation cannot be represented in its type. Unlike signed integer overflow,
  43  # this is not undefined behavior, but it is often unintentional. The list below
  44  # contains files in which we expect unsigned integer overflows to occur. The
  45  # list is used to suppress -fsanitize=integer warnings when running UBSan
  46  # locally or in CI.
  47  unsigned-integer-overflow:arith_uint256.h
  48  unsigned-integer-overflow:CBloomFilter::Hash
  49  unsigned-integer-overflow:CRollingBloomFilter::insert
  50  unsigned-integer-overflow:RollingBloomHash
  51  unsigned-integer-overflow:CompressAmount
  52  unsigned-integer-overflow:DecompressAmount
  53  unsigned-integer-overflow:crypto/
  54  unsigned-integer-overflow:MurmurHash3
  55  unsigned-integer-overflow:TxConfirmStats::EstimateMedianVal
  56  unsigned-integer-overflow:InsecureRandomContext::rand64
  57  unsigned-integer-overflow:InsecureRandomContext::SplitMix64
  58  unsigned-integer-overflow:bitset_detail::PopCount
  59  implicit-integer-sign-change:compressor.h
  60  implicit-integer-sign-change:crypto/
  61  implicit-integer-sign-change:TxConfirmStats::removeTx
  62  implicit-integer-sign-change:EvalScript
  63  implicit-signed-integer-truncation:crypto/
  64  implicit-unsigned-integer-truncation:crypto/
  65  shift-base:arith_uint256.cpp
  66  shift-base:crypto/
  67  shift-base:streams.h
  68  shift-base:FormatHDKeypath
  69  shift-base:InsecureRandomContext::rand64
  70  shift-base:RandomMixin<*>::randbits
  71  shift-base:RandomMixin<*>::randbits<*>
  72