mirror of
https://github.com/XRPLF/rippled.git
synced 2025-11-21 03:26:01 +00:00
build conan deps with sanitizers to fix tsan crashes
Signed-off-by: Pratik Mankawde <pmankawde@ripple.com>
This commit is contained in:
5
.github/actions/build-deps/action.yml
vendored
5
.github/actions/build-deps/action.yml
vendored
@@ -21,6 +21,10 @@ inputs:
|
||||
description: "The logging verbosity."
|
||||
required: false
|
||||
default: "verbose"
|
||||
sanitizers:
|
||||
description: "The sanitizers to enable ('None', 'Address', 'Thread')."
|
||||
required: false
|
||||
default: "None"
|
||||
|
||||
runs:
|
||||
using: composite
|
||||
@@ -33,6 +37,7 @@ runs:
|
||||
BUILD_OPTION: ${{ inputs.force_build == 'true' && '*' || 'missing' }}
|
||||
BUILD_TYPE: ${{ inputs.build_type }}
|
||||
LOG_VERBOSITY: ${{ inputs.log_verbosity }}
|
||||
SANITIZERS: ${{ inputs.sanitizers }}
|
||||
run: |
|
||||
echo 'Installing dependencies.'
|
||||
mkdir -p "${BUILD_DIR}"
|
||||
|
||||
6
.github/scripts/strategy-matrix/generate.py
vendored
6
.github/scripts/strategy-matrix/generate.py
vendored
@@ -208,7 +208,8 @@ def generate_strategy_matrix(all: bool, config: Config) -> list:
|
||||
'build_only': build_only,
|
||||
'build_type': build_type,
|
||||
'os': os,
|
||||
'architecture': architecture
|
||||
'architecture': architecture,
|
||||
'sanitizers': 'Address'
|
||||
})
|
||||
|
||||
linker_flags = ''
|
||||
@@ -239,7 +240,8 @@ def generate_strategy_matrix(all: bool, config: Config) -> list:
|
||||
'build_only': build_only,
|
||||
'build_type': build_type,
|
||||
'os': os,
|
||||
'architecture': architecture
|
||||
'architecture': architecture,
|
||||
'sanitizers': 'Thread'
|
||||
})
|
||||
else:
|
||||
if cxx_flags:
|
||||
|
||||
@@ -50,6 +50,12 @@ on:
|
||||
type: number
|
||||
default: 2
|
||||
|
||||
sanitizers:
|
||||
description: "The sanitizers to enable ('Address+UndefinedBehaviour' or 'Thread+UndefinedBehaviour')."
|
||||
required: false
|
||||
type: string
|
||||
default: "None"
|
||||
|
||||
secrets:
|
||||
CODECOV_TOKEN:
|
||||
description: "The Codecov token to use for uploading coverage reports."
|
||||
@@ -103,6 +109,7 @@ jobs:
|
||||
# Set the verbosity to "quiet" for Windows to avoid an excessive
|
||||
# amount of logs. For other OSes, the "verbose" logs are more useful.
|
||||
log_verbosity: ${{ runner.os == 'Windows' && 'quiet' || 'verbose' }}
|
||||
sanitizers: ${{ inputs.sanitizers }}
|
||||
|
||||
- name: Configure CMake
|
||||
working-directory: ${{ inputs.build_dir }}
|
||||
|
||||
1
.github/workflows/reusable-build-test.yml
vendored
1
.github/workflows/reusable-build-test.yml
vendored
@@ -54,5 +54,6 @@ jobs:
|
||||
runs_on: ${{ toJSON(matrix.architecture.runner) }}
|
||||
image: ${{ contains(matrix.architecture.platform, 'linux') && format('ghcr.io/xrplf/ci/{0}-{1}:{2}-{3}-sha-{4}', matrix.os.distro_name, matrix.os.distro_version, matrix.os.compiler_name, matrix.os.compiler_version, matrix.os.image_sha) || '' }}
|
||||
config_name: ${{ matrix.config_name }}
|
||||
sanitizers: ${{ matrix.sanitizers }}
|
||||
secrets:
|
||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||
|
||||
11
external/sanitizer-blacklist.txt
vendored
11
external/sanitizer-blacklist.txt
vendored
@@ -1,5 +1,8 @@
|
||||
[thread]
|
||||
src:.*/src/libxrpl/beast/utility/beast_Journal.cpp
|
||||
src:.*/src/libxrpl/beast/utility/beast_PropertyStream.cpp
|
||||
src:.*/src/test/beast/beast_PropertyStream_test.cpp
|
||||
src:.*/src/xrpld/core/detail/Workers.cpp
|
||||
src:libxrpl/beast/utility/beast_Journal.cpp
|
||||
src:libxrpl/beast/utility/beast_PropertyStream.cpp
|
||||
src:test/beast/beast_PropertyStream_test.cpp
|
||||
src:xrpld/core/detail/Workers.cpp
|
||||
src:libxrpl/beast/utility/beast_Journal.cpp
|
||||
src:xrpld/core/detail/Workers.cpp
|
||||
src:xrpld/core/JobQueue.cpp
|
||||
|
||||
115
external/tsan.supp
vendored
115
external/tsan.supp
vendored
@@ -1,50 +1,48 @@
|
||||
called_from_lib:^libboost_.*
|
||||
# Suppress race in Boost ASIO scheduler detected by GCC-15
|
||||
# This is a false positive in Boost's internal pipe() synchronization
|
||||
race:.*/boost/asio/.*
|
||||
race:.*/boost/context/.*
|
||||
race:.*/boost/asio/executor.hpp
|
||||
race:.*boost::asio::.*
|
||||
race:boost/asio/
|
||||
race:boost/context/
|
||||
race:boost/asio/executor.hpp
|
||||
race:boost::asio
|
||||
|
||||
race:.*/src/libxrpl/basics/make_SSLContext.cpp
|
||||
race:.*/src/libxrpl/basics/Number.cpp
|
||||
race:.*/src/libxrpl/json/json_value.cpp
|
||||
race:.*/src/libxrpl/json/to_string.cpp
|
||||
race:.*/src/libxrpl/ledger/OpenView.cpp
|
||||
race:.*/src/libxrpl/net/HTTPClient.cpp
|
||||
race:.*/src/libxrpl/nodestore/backend/NuDBFactory.cpp
|
||||
race:.*/src/libxrpl/protocol/InnerObjectFormats.cpp
|
||||
race:.*/src/libxrpl/protocol/STParsedJSON.cpp
|
||||
race:.*/src/libxrpl/resource/ResourceManager.cpp
|
||||
race:.*/src/test/app/Flow_test.cpp
|
||||
race:.*/src/test/app/LedgerReplay_test.cpp
|
||||
race:.*/src/test/app/NFToken_test.cpp
|
||||
race:.*/src/test/app/Offer_test.cpp
|
||||
race:.*/src/test/app/ValidatorSite_test.cpp
|
||||
race:.*/src/test/consensus/NegativeUNL_test.cpp
|
||||
race:.*/src/test/jtx/impl/Env.cpp
|
||||
race:.*/src/test/jtx/impl/JSONRPCClient.cpp
|
||||
race:.*/src/test/jtx/impl/pay.cpp
|
||||
race:.*/src/test/jtx/impl/token.cpp
|
||||
race:.*/src/test/rpc/Book_test.cpp
|
||||
race:.*/src/xrpld/app/ledger/detail/InboundTransactions.cpp
|
||||
race:.*/src/xrpld/app/main/Application.cpp
|
||||
race:.*/src/xrpld/app/main/BasicApp.cpp
|
||||
race:.*/src/xrpld/app/main/GRPCServer.cpp
|
||||
race:.*/src/xrpld/app/misc/detail/AmendmentTable.cpp
|
||||
race:.*/src/xrpld/app/misc/FeeVoteImpl.cpp
|
||||
race:.*/src/xrpld/app/rdb/detail/Wallet.cpp
|
||||
race:.*/src/xrpld/overlay/detail/OverlayImpl.cpp
|
||||
race:.*/src/xrpld/peerfinder/detail/PeerfinderManager.cpp
|
||||
race:.*/src/xrpld/peerfinder/detail/SourceStrings.cpp
|
||||
race:.*/src/xrpld/rpc/detail/ServerHandler.cpp
|
||||
race:.*/xrpl/server/detail/Door.h
|
||||
race:.*/xrpl/server/detail/Spawn.h
|
||||
race:.*/xrpl/server/detail/ServerImpl.h
|
||||
race:.*/xrpl/nodestore/detail/DatabaseNodeImp.h
|
||||
race:.*/src/libxrpl/beast/utility/beast_Journal.cpp
|
||||
race:.*/src/test/beast/LexicalCast_test.cpp
|
||||
race:src/libxrpl/basics/make_SSLContext.cpp
|
||||
race:src/libxrpl/basics/Number.cpp
|
||||
race:src/libxrpl/json/json_value.cpp
|
||||
race:src/libxrpl/json/to_string.cpp
|
||||
race:src/libxrpl/ledger/OpenView.cpp
|
||||
race:src/libxrpl/net/HTTPClient.cpp
|
||||
race:src/libxrpl/nodestore/backend/NuDBFactory.cpp
|
||||
race:src/libxrpl/protocol/InnerObjectFormats.cpp
|
||||
race:src/libxrpl/protocol/STParsedJSON.cpp
|
||||
race:src/libxrpl/resource/ResourceManager.cpp
|
||||
race:src/test/app/Flow_test.cpp
|
||||
race:src/test/app/LedgerReplay_test.cpp
|
||||
race:src/test/app/NFToken_test.cpp
|
||||
race:src/test/app/Offer_test.cpp
|
||||
race:src/test/app/ValidatorSite_test.cpp
|
||||
race:src/test/consensus/NegativeUNL_test.cpp
|
||||
race:src/test/jtx/impl/Env.cpp
|
||||
race:src/test/jtx/impl/JSONRPCClient.cpp
|
||||
race:src/test/jtx/impl/pay.cpp
|
||||
race:src/test/jtx/impl/token.cpp
|
||||
race:src/test/rpc/Book_test.cpp
|
||||
race:src/xrpld/app/ledger/detail/InboundTransactions.cpp
|
||||
race:src/xrpld/app/main/Application.cpp
|
||||
race:src/xrpld/app/main/BasicApp.cpp
|
||||
race:src/xrpld/app/main/GRPCServer.cpp
|
||||
race:src/xrpld/app/misc/detail/AmendmentTable.cpp
|
||||
race:src/xrpld/app/misc/FeeVoteImpl.cpp
|
||||
race:src/xrpld/app/rdb/detail/Wallet.cpp
|
||||
race:src/xrpld/overlay/detail/OverlayImpl.cpp
|
||||
race:src/xrpld/peerfinder/detail/PeerfinderManager.cpp
|
||||
race:src/xrpld/peerfinder/detail/SourceStrings.cpp
|
||||
race:src/xrpld/rpc/detail/ServerHandler.cpp
|
||||
race:xrpl/server/detail/Door.h
|
||||
race:xrpl/server/detail/Spawn.h
|
||||
race:xrpl/server/detail/ServerImpl.h
|
||||
race:xrpl/nodestore/detail/DatabaseNodeImp.h
|
||||
race:src/libxrpl/beast/utility/beast_Journal.cpp
|
||||
race:src/test/beast/LexicalCast_test.cpp
|
||||
|
||||
race:crtstuff.c
|
||||
race:pipe
|
||||
@@ -52,33 +50,28 @@ race:ripple::ServerHandler
|
||||
|
||||
# Deadlock / lock-order-inversion suppressions
|
||||
# Note: GCC's TSAN may not fully support all deadlock suppression patterns
|
||||
deadlock:.*/src/libxrpl/beast/utility/beast_Journal.cpp
|
||||
deadlock:.*/src/libxrpl/beast/utility/beast_PropertyStream.cpp
|
||||
deadlock:.*/src/test/beast/beast_PropertyStream_test.cpp
|
||||
deadlock:.*/src/xrpld/core/detail/Workers.cpp
|
||||
deadlock:src/libxrpl/beast/utility/beast_Journal.cpp
|
||||
deadlock:src/libxrpl/beast/utility/beast_PropertyStream.cpp
|
||||
deadlock:src/test/beast/beast_PropertyStream_test.cpp
|
||||
deadlock:src/xrpld/core/detail/Workers.cpp
|
||||
|
||||
# Suppress lock-order-inversion in recursive_mutex operations
|
||||
deadlock:std::recursive_mutex::lock
|
||||
deadlock:__gthread_recursive_mutex_lock
|
||||
deadlock:pthread_mutex_lock
|
||||
|
||||
# Suppress by function names involved in the lock-order-inversion
|
||||
deadlock:*PropertyStream*
|
||||
deadlock:*find_one*
|
||||
deadlock:*find_one_deep*
|
||||
|
||||
# Aggressive suppressing of deadlock tsan errors
|
||||
deadlock:pthread_create
|
||||
deadlock:pthread_rwlock_rdlock
|
||||
deadlock:boost::asio
|
||||
|
||||
deadlock:.*/src/xrpld/app/misc/detail/Manifest.cpp
|
||||
deadlock:.*/src/xrpld/app/misc/detail/ValidatorList.cpp
|
||||
deadlock:.*/src/xrpld/app/misc/detail/ValidatorSite.cpp
|
||||
deadlock:src/xrpld/app/misc/detail/Manifest.cpp
|
||||
deadlock:src/xrpld/app/misc/detail/ValidatorList.cpp
|
||||
deadlock:src/xrpld/app/misc/detail/ValidatorSite.cpp
|
||||
|
||||
signal:.*/src/libxrpl/beast/utility/beast_Journal.cpp
|
||||
signal:.*/src/xrpld/core/detail/Workers.cpp
|
||||
signal:.*/src/xrpld/core/JobQueue.cpp
|
||||
signal:src/libxrpl/beast/utility/beast_Journal.cpp
|
||||
signal:src/xrpld/core/detail/Workers.cpp
|
||||
signal:src/xrpld/core/JobQueue.cpp
|
||||
signal:ripple::Workers::Worker
|
||||
|
||||
# Suppress SEGV crashes in TSAN itself during stringbuf operations
|
||||
@@ -88,6 +81,12 @@ signal:std::__cxx11::basic_stringbuf
|
||||
signal:basic_stringbuf
|
||||
signal:basic_ostringstream
|
||||
|
||||
called_from_lib:libclang_rt
|
||||
race:ostreambuf_iterator
|
||||
race:basic_ostream
|
||||
#called_from_lib:libc++.1.dylib
|
||||
#called_from_lib:libc++.abi.dylib
|
||||
|
||||
# Suppress SEGV in TSAN during operator new called from stringbuf
|
||||
signal:operator new
|
||||
|
||||
|
||||
304
external/ubsan.supp
vendored
304
external/ubsan.supp
vendored
@@ -1,165 +1,167 @@
|
||||
# Suppress UBSan errors in external code by source file path
|
||||
# This matches any source file under the external/ directory
|
||||
|
||||
alignment:external/.*
|
||||
bool:external/.*
|
||||
bounds:external/.*
|
||||
cfi:external/.*
|
||||
enum:external/.*
|
||||
float-cast-overflow:external/.*
|
||||
float-divide-by-zero:external/.*
|
||||
function:external/.*
|
||||
implicit-integer-sign-change:external/.*
|
||||
implicit-signed-integer-truncation::external/.*
|
||||
implicit-signed-integer-truncation:external/.*
|
||||
implicit-unsigned-integer-truncation:external/.*
|
||||
integer-divide-by-zero:external/.*
|
||||
invalid-builtin-use:external/.*
|
||||
invalid-objc-cast:external/.*
|
||||
nonnull-attribute:external/.*
|
||||
null:external/.*
|
||||
nullability-arg:external/.*
|
||||
nullability-assign:external/.*
|
||||
nullability-return:external/.*
|
||||
object-size:external/.*
|
||||
pointer-overflow:external/.*
|
||||
return:external/.*
|
||||
returns-nonnull-attribute:external/.*
|
||||
shift-base:external/.*
|
||||
shift-exponent:external/.*
|
||||
signed-integer-overflow:external/.*
|
||||
undefined:external/.*
|
||||
unreachable:external/.*
|
||||
unsigned-integer-overflow:external/.*
|
||||
vla-bound:external/.*
|
||||
vptr_check:external/.*
|
||||
vptr:external/.*
|
||||
alignment:external
|
||||
bool:external
|
||||
bounds:external
|
||||
cfi:external
|
||||
enum:external
|
||||
float-cast-overflow:external
|
||||
float-divide-by-zero:external
|
||||
function:external
|
||||
implicit-integer-sign-change:external
|
||||
implicit-signed-integer-truncation::external
|
||||
implicit-signed-integer-truncation:external
|
||||
implicit-unsigned-integer-truncation:external
|
||||
integer-divide-by-zero:external
|
||||
invalid-builtin-use:external
|
||||
invalid-objc-cast:external
|
||||
nonnull-attribute:external
|
||||
null:external
|
||||
nullability-arg:external
|
||||
nullability-assign:external
|
||||
nullability-return:external
|
||||
object-size:external
|
||||
pointer-overflow:external
|
||||
return:external
|
||||
returns-nonnull-attribute:external
|
||||
shift-base:external
|
||||
shift-exponent:external
|
||||
signed-integer-overflow:external
|
||||
undefined:external
|
||||
unreachable:external
|
||||
unsigned-integer-overflow:external
|
||||
vla-bound:external
|
||||
vptr_check:external
|
||||
vptr:external
|
||||
|
||||
# Suppress all UBSan errors in Boost libraries
|
||||
# This matches any files containing "boost" in its path or name
|
||||
alignment:.*/boost/.*
|
||||
bool:.*/boost/.*
|
||||
bounds:.*/boost/.*
|
||||
cfi:.*/boost/.*
|
||||
enum:.*/boost/.*
|
||||
float-cast-overflow:.*/boost/.*
|
||||
float-divide-by-zero:.*/boost/.*
|
||||
function:.*/boost/.*
|
||||
implicit-integer-sign-change:.*/boost/.*
|
||||
implicit-signed-integer-truncation:.*/boost/.*
|
||||
implicit-unsigned-integer-truncation:.*/boost/.*
|
||||
integer-divide-by-zero:.*/boost/.*
|
||||
invalid-builtin-use:.*/boost/.*
|
||||
invalid-objc-cast:.*/boost/.*
|
||||
nonnull-attribute:.*/boost/.*
|
||||
null:.*/boost/.*
|
||||
nullability-arg:.*/boost/.*
|
||||
nullability-assign:.*/boost/.*
|
||||
nullability-return:.*/boost/.*
|
||||
object-size:.*/boost/.*
|
||||
pointer-overflow:.*/boost/.*
|
||||
return:.*/boost/.*
|
||||
returns-nonnull-attribute:.*/boost/.*
|
||||
shift-base:.*/boost/.*
|
||||
shift-exponent:.*/boost/.*
|
||||
signed-integer-overflow:.*/boost/.*
|
||||
undefined:.*/boost/.*
|
||||
unreachable:.*/boost/.*
|
||||
unsigned-integer-overflow:.*/boost/.*
|
||||
vla-bound:.*/boost/.*
|
||||
vptr_check:.*/boost/.*
|
||||
vptr:.*/boost/.*
|
||||
alignment:boost
|
||||
bool:boost
|
||||
bounds:boost
|
||||
cfi:boost
|
||||
enum:boost
|
||||
float-cast-overflow:boost
|
||||
float-divide-by-zero:boost
|
||||
function:boost
|
||||
implicit-integer-sign-change:boost
|
||||
implicit-signed-integer-truncation:boost
|
||||
implicit-unsigned-integer-truncation:boost
|
||||
integer-divide-by-zero:boost
|
||||
invalid-builtin-use:boost
|
||||
invalid-objc-cast:boost
|
||||
nonnull-attribute:boost
|
||||
null:boost
|
||||
nullability-arg:boost
|
||||
nullability-assign:boost
|
||||
nullability-return:boost
|
||||
object-size:boost
|
||||
pointer-overflow:boost
|
||||
return:boost
|
||||
returns-nonnull-attribute:boost
|
||||
shift-base:boost
|
||||
shift-exponent:boost
|
||||
signed-integer-overflow:boost
|
||||
undefined:boost
|
||||
unreachable:boost
|
||||
unsigned-integer-overflow:boost
|
||||
vla-bound:boost
|
||||
vptr_check:boost
|
||||
vptr:boost
|
||||
|
||||
undefined:src/libxrpl/basics/base64.cpp
|
||||
undefined:src/libxrpl/basics/Number.cpp
|
||||
undefined:src/libxrpl/beast/utility/beast_Journal.cpp
|
||||
undefined:src/libxrpl/crypto/RFC1751.cpp
|
||||
undefined:src/libxrpl/ledger/ApplyView.cpp
|
||||
undefined:src/libxrpl/ledger/View.cpp
|
||||
undefined:src/libxrpl/protocol/Permissions.cpp
|
||||
undefined:src/libxrpl/protocol/STAmount.cpp
|
||||
undefined:src/libxrpl/protocol/STPathSet.cpp
|
||||
undefined:src/libxrpl/protocol/tokens.cpp
|
||||
undefined:src/libxrpl/shamap/SHAMap.cpp
|
||||
undefined:src/test/app/Batch_test.cpp
|
||||
undefined:src/test/app/Invariants_test.cpp
|
||||
undefined:src/test/app/NFToken_test.cpp
|
||||
undefined:src/test/app/Offer_test.cpp
|
||||
undefined:src/test/app/Path_test.cpp
|
||||
undefined:src/test/basics/XRPAmount_test.cpp
|
||||
undefined:src/test/beast/LexicalCast_test.cpp
|
||||
undefined:src/test/jtx/impl/acctdelete.cpp
|
||||
undefined:src/test/ledger/SkipList_test.cpp
|
||||
undefined:src/test/rpc/Subscribe_test.cpp
|
||||
undefined:src/tests/libxrpl/basics/RangeSet.cpp
|
||||
undefined:src/xrpld/app/main/BasicApp.cpp
|
||||
undefined:src/xrpld/app/main/BasicApp.cpp
|
||||
undefined:src/xrpld/app/misc/detail/AmendmentTable.cpp
|
||||
undefined:src/xrpld/app/misc/NetworkOPs.cpp
|
||||
undefined:src/libxrpl/json/json_value.cpp
|
||||
undefined:src/xrpld/app/paths/detail/StrandFlow.h
|
||||
undefined:src/xrpld/app/tx/detail/NFTokenMint.cpp
|
||||
undefined:src/xrpld/app/tx/detail/SetOracle.cpp
|
||||
undefined:src/xrpld/core/detail/JobQueue.cpp
|
||||
undefined:src/xrpld/core/detail/Workers.cpp
|
||||
undefined:src/xrpld/rpc/detail/Role.cpp
|
||||
undefined:src/xrpld/rpc/handlers/GetAggregatePrice.cpp
|
||||
undefined:xrpl/basics/base_uint.h
|
||||
undefined:xrpl/basics/DecayingSample.h
|
||||
undefined:xrpl/beast/test/yield_to.h
|
||||
undefined:xrpl/beast/xor_shift_engine.h
|
||||
undefined:xrpl/nodestore/detail/varint.h
|
||||
undefined:xrpl/peerfinder/detail/Counts.h
|
||||
undefined:xrpl/protocol/nft.h
|
||||
|
||||
# basic_string.h:483:51: runtime error: unsigned integer overflow
|
||||
unsigned-integer-overflow:.*/basic_string.h
|
||||
unsigned-integer-overflow:.*/bits/chrono.h
|
||||
unsigned-integer-overflow:.*/bits/random.h
|
||||
unsigned-integer-overflow:.*/bits/random.tcc
|
||||
unsigned-integer-overflow:.*/bits/stl_algobase.h
|
||||
unsigned-integer-overflow:.*/bits/uniform_int_dist.h
|
||||
unsigned-integer-overflow:.*/string_view
|
||||
unsigned-integer-overflow:basic_string.h
|
||||
unsigned-integer-overflow:bits/chrono.h
|
||||
unsigned-integer-overflow:bits/random.h
|
||||
unsigned-integer-overflow:bits/random.tcc
|
||||
unsigned-integer-overflow:bits/stl_algobase.h
|
||||
unsigned-integer-overflow:bits/uniform_int_dist.h
|
||||
unsigned-integer-overflow:string_view
|
||||
|
||||
# runtime error: unsigned integer overflow: 0 - 1 cannot be represented in type 'std::size_t' (aka 'unsigned long')
|
||||
unsigned-integer-overflow:.*/src/libxrpl/basics/base64.cpp
|
||||
unsigned-integer-overflow:.*/src/libxrpl/basics/Number.cpp
|
||||
unsigned-integer-overflow:.*/src/libxrpl/crypto/RFC1751.cpp
|
||||
unsigned-integer-overflow:.*/src/libxrpl/json/json_value.cpp
|
||||
unsigned-integer-overflow:.*/src/libxrpl/ledger/ApplyView.cpp
|
||||
unsigned-integer-overflow:.*/src/libxrpl/ledger/View.cpp
|
||||
unsigned-integer-overflow:.*/src/libxrpl/protocol/Permissions.cpp
|
||||
unsigned-integer-overflow:.*/src/libxrpl/protocol/STAmount.cpp
|
||||
unsigned-integer-overflow:.*/src/libxrpl/protocol/STPathSet.cpp
|
||||
unsigned-integer-overflow:.*/src/libxrpl/protocol/tokens.cpp
|
||||
unsigned-integer-overflow:.*/src/libxrpl/shamap/SHAMap.cpp
|
||||
unsigned-integer-overflow:.*/src/test/app/Batch_test.cpp
|
||||
unsigned-integer-overflow:.*/src/test/app/Invariants_test.cpp
|
||||
unsigned-integer-overflow:.*/src/test/app/NFToken_test.cpp
|
||||
unsigned-integer-overflow:.*/src/test/app/Offer_test.cpp
|
||||
unsigned-integer-overflow:.*/src/test/app/Path_test.cpp
|
||||
unsigned-integer-overflow:.*/src/test/basics/XRPAmount_test.cpp
|
||||
unsigned-integer-overflow:.*/src/test/beast/LexicalCast_test.cpp
|
||||
unsigned-integer-overflow:.*/src/test/jtx/impl/acctdelete.cpp
|
||||
unsigned-integer-overflow:.*/src/test/ledger/SkipList_test.cpp
|
||||
unsigned-integer-overflow:.*/src/test/rpc/Subscribe_test.cpp
|
||||
unsigned-integer-overflow:.*/src/tests/libxrpl/basics/RangeSet.cpp
|
||||
unsigned-integer-overflow:.*/src/xrpld/app/main/BasicApp.cpp
|
||||
unsigned-integer-overflow:.*/src/xrpld/app/misc/detail/AmendmentTable.cpp
|
||||
unsigned-integer-overflow:.*/src/xrpld/app/misc/NetworkOPs.cpp
|
||||
unsigned-integer-overflow:.*/src/xrpld/app/paths/detail/StrandFlow.h
|
||||
unsigned-integer-overflow:.*/src/xrpld/app/tx/detail/NFTokenMint.cpp
|
||||
unsigned-integer-overflow:.*/src/xrpld/app/tx/detail/SetOracle.cpp
|
||||
unsigned-integer-overflow:.*/src/xrpld/rpc/detail/Role.cpp
|
||||
unsigned-integer-overflow:.*/src/xrpld/rpc/handlers/GetAggregatePrice.cpp
|
||||
unsigned-integer-overflow:.*/xrpl/basics/base_uint.h
|
||||
unsigned-integer-overflow:.*/xrpl/basics/DecayingSample.h
|
||||
unsigned-integer-overflow:.*/xrpl/beast/test/yield_to.h
|
||||
unsigned-integer-overflow:.*/xrpl/beast/xor_shift_engine.h
|
||||
unsigned-integer-overflow:.*/xrpl/nodestore/detail/varint.h
|
||||
unsigned-integer-overflow:.*/xrpl/peerfinder/detail/Counts.h
|
||||
unsigned-integer-overflow:.*/xrpl/protocol/nft.h
|
||||
unsigned-integer-overflow:src/libxrpl/basics/base64.cpp
|
||||
unsigned-integer-overflow:src/libxrpl/basics/Number.cpp
|
||||
unsigned-integer-overflow:src/libxrpl/crypto/RFC1751.cpp
|
||||
unsigned-integer-overflow:rc/libxrpl/json/json_value.cpp
|
||||
unsigned-integer-overflow:src/libxrpl/ledger/ApplyView.cpp
|
||||
unsigned-integer-overflow:src/libxrpl/ledger/View.cpp
|
||||
unsigned-integer-overflow:src/libxrpl/protocol/Permissions.cpp
|
||||
unsigned-integer-overflow:src/libxrpl/protocol/STAmount.cpp
|
||||
unsigned-integer-overflow:src/libxrpl/protocol/STPathSet.cpp
|
||||
unsigned-integer-overflow:src/libxrpl/protocol/tokens.cpp
|
||||
unsigned-integer-overflow:src/libxrpl/shamap/SHAMap.cpp
|
||||
unsigned-integer-overflow:src/test/app/Batch_test.cpp
|
||||
unsigned-integer-overflow:src/test/app/Invariants_test.cpp
|
||||
unsigned-integer-overflow:src/test/app/NFToken_test.cpp
|
||||
unsigned-integer-overflow:src/test/app/Offer_test.cpp
|
||||
unsigned-integer-overflow:src/test/app/Path_test.cpp
|
||||
unsigned-integer-overflow:src/test/basics/XRPAmount_test.cpp
|
||||
unsigned-integer-overflow:src/test/beast/LexicalCast_test.cpp
|
||||
unsigned-integer-overflow:src/test/jtx/impl/acctdelete.cpp
|
||||
unsigned-integer-overflow:src/test/ledger/SkipList_test.cpp
|
||||
unsigned-integer-overflow:src/test/rpc/Subscribe_test.cpp
|
||||
unsigned-integer-overflow:src/tests/libxrpl/basics/RangeSet.cpp
|
||||
unsigned-integer-overflow:src/xrpld/app/main/BasicApp.cpp
|
||||
unsigned-integer-overflow:src/xrpld/app/misc/detail/AmendmentTable.cpp
|
||||
unsigned-integer-overflow:src/xrpld/app/misc/NetworkOPs.cpp
|
||||
unsigned-integer-overflow:src/xrpld/app/paths/detail/StrandFlow.h
|
||||
unsigned-integer-overflow:src/xrpld/app/tx/detail/NFTokenMint.cpp
|
||||
unsigned-integer-overflow:src/xrpld/app/tx/detail/SetOracle.cpp
|
||||
unsigned-integer-overflow:src/xrpld/rpc/detail/Role.cpp
|
||||
unsigned-integer-overflow:src/xrpld/rpc/handlers/GetAggregatePrice.cpp
|
||||
unsigned-integer-overflow:xrpl/basics/base_uint.h
|
||||
unsigned-integer-overflow:xrpl/basics/DecayingSample.h
|
||||
unsigned-integer-overflow:xrpl/beast/test/yield_to.h
|
||||
unsigned-integer-overflow:xrpl/beast/xor_shift_engine.h
|
||||
unsigned-integer-overflow:xrpl/nodestore/detail/varint.h
|
||||
unsigned-integer-overflow:xrpl/peerfinder/detail/Counts.h
|
||||
unsigned-integer-overflow:xrpl/protocol/nft.h
|
||||
|
||||
# Signed integer overflow suppressions
|
||||
signed-integer-overflow:.*/src/test/beast/LexicalCast_test.cpp
|
||||
signed-integer-overflow:src/test/beast/LexicalCast_test.cpp
|
||||
|
||||
# External library suppressions
|
||||
unsigned-integer-overflow:.*/nudb/detail/xxhash.hpp
|
||||
|
||||
undefined:.*/src/libxrpl/basics/base64.cpp
|
||||
undefined:.*/src/libxrpl/basics/Number.cpp
|
||||
undefined:.*/src/libxrpl/beast/utility/beast_Journal.cpp
|
||||
undefined:.*/src/libxrpl/crypto/RFC1751.cpp
|
||||
undefined:.*/src/libxrpl/ledger/ApplyView.cpp
|
||||
undefined:.*/src/libxrpl/ledger/View.cpp
|
||||
undefined:.*/src/libxrpl/protocol/Permissions.cpp
|
||||
undefined:.*/src/libxrpl/protocol/STAmount.cpp
|
||||
undefined:.*/src/libxrpl/protocol/STPathSet.cpp
|
||||
undefined:.*/src/libxrpl/protocol/tokens.cpp
|
||||
undefined:.*/src/libxrpl/shamap/SHAMap.cpp
|
||||
undefined:.*/src/test/app/Batch_test.cpp
|
||||
undefined:.*/src/test/app/Invariants_test.cpp
|
||||
undefined:.*/src/test/app/NFToken_test.cpp
|
||||
undefined:.*/src/test/app/Offer_test.cpp
|
||||
undefined:.*/src/test/app/Path_test.cpp
|
||||
undefined:.*/src/test/basics/XRPAmount_test.cpp
|
||||
undefined:.*/src/test/beast/LexicalCast_test.cpp
|
||||
undefined:.*/src/test/jtx/impl/acctdelete.cpp
|
||||
undefined:.*/src/test/ledger/SkipList_test.cpp
|
||||
undefined:.*/src/test/rpc/Subscribe_test.cpp
|
||||
undefined:.*/src/xrpld/app/main/BasicApp.cpp
|
||||
undefined:.*/src/xrpld/app/main/BasicApp.cpp
|
||||
undefined:.*/src/xrpld/app/misc/detail/AmendmentTable.cpp
|
||||
undefined:.*/src/xrpld/app/misc/NetworkOPs.cpp
|
||||
undefined:.*/src/xrpld/app/paths/detail/StrandFlow.h
|
||||
undefined:.*/src/xrpld/app/tx/detail/NFTokenMint.cpp
|
||||
undefined:.*/src/xrpld/app/tx/detail/SetOracle.cpp
|
||||
undefined:.*/src/xrpld/core/detail/JobQueue.cpp
|
||||
undefined:.*/src/xrpld/core/detail/Workers.cpp
|
||||
undefined:.*/src/xrpld/rpc/detail/Role.cpp
|
||||
undefined:.*/src/xrpld/rpc/handlers/GetAggregatePrice.cpp
|
||||
undefined:.*/xrpl/basics/base_uint.h
|
||||
undefined:.*/xrpl/basics/DecayingSample.h
|
||||
undefined:.*/xrpl/beast/test/yield_to.h
|
||||
undefined:.*/xrpl/beast/xor_shift_engine.h
|
||||
undefined:.*/xrpl/nodestore/detail/varint.h
|
||||
undefined:.*/xrpl/peerfinder/detail/Counts.h
|
||||
undefined:.*/xrpl/protocol/nft.h
|
||||
unsigned-integer-overflow:nudb/detail/xxhash.hpp
|
||||
Reference in New Issue
Block a user