From 42cab6c826aabf7fbdc8c38825f78e0fede77d16 Mon Sep 17 00:00:00 2001 From: Pratik Mankawde Date: Tue, 18 Nov 2025 15:02:21 +0000 Subject: [PATCH] updated ubsan file Signed-off-by: Pratik Mankawde --- external/ubsan.supp | 167 ++++++++++++++++++++++++-------------------- 1 file changed, 93 insertions(+), 74 deletions(-) diff --git a/external/ubsan.supp b/external/ubsan.supp index 4b666c08bd..18450038b9 100644 --- a/external/ubsan.supp +++ b/external/ubsan.supp @@ -1,96 +1,115 @@ # Suppress UBSan errors in external code by source file path # This matches any source file under the external/ directory - -undefined:external/* -null:external/* -nullability-assign:external/* -pointer-overflow:external/* -pointer-overflow:external/* -pointer-overflow:external/* -pointer-overflow:external/* alignment:external/* alignment:external/* -object-size:external/* -signed-integer-overflow:external/* -unsigned-integer-overflow:external/* -integer-divide-by-zero:external/* +bool:external/* +bounds:external/* +cfi:external/* +enum:external/* +float-cast-overflow:external/* float-divide-by-zero:external/* -invalid-builtin-use:external/* -invalid-objc-cast:external/* -implicit-unsigned-integer-truncation:external/* -implicit-signed-integer-truncation:external/* +function:external/* implicit-integer-sign-change:external/* implicit-signed-integer-truncation,implicit-integer-sign-change: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/* +pointer-overflow:external/* +pointer-overflow:external/* +pointer-overflow:external/* +return:external/* +returns-nonnull-attribute:external/* shift-base:external/* shift-exponent:external/* -bounds:external/* +signed-integer-overflow:external/* +undefined:external/* unreachable:external/* -return:external/* +unsigned-integer-overflow:external/* vla-bound:external/* -float-cast-overflow:external/* -bool:external/* -enum:external/* -function:external/* -returns-nonnull-attribute:external/* -nullability-return:external/* -nonnull-attribute:external/* -nullability-arg:external/* -vptr:external/* -cfi:external/* vptr_check:external/* +vptr:external/* # Suppress all UBSan errors in Boost libraries # This matches any files containing "boost" in its path or name -# src:*/boost/* -undefined:*/boost/* -null:*/boost/* -nullability-assign:*/boost/* -pointer-overflow:*/boost/* -pointer-overflow:*/boost/* -pointer-overflow:*/boost/* -pointer-overflow:*/boost/* -alignment:*/boost/* -alignment:*/boost/* -object-size:*/boost/* -signed-integer-overflow:*/boost/* -unsigned-integer-overflow:*/boost/* -integer-divide-by-zero:*/boost/* -float-divide-by-zero:*/boost/* -invalid-builtin-use:*/boost/* -invalid-objc-cast:*/boost/* -implicit-unsigned-integer-truncation:*/boost/* -implicit-signed-integer-truncation:*/boost/* -implicit-integer-sign-change:*/boost/* -implicit-signed-integer-truncation,implicit-integer-sign-change:*/boost/* -shift-base:*/boost/* -shift-exponent:*/boost/* -bounds:*/boost/* -unreachable:*/boost/* -return:*/boost/* -vla-bound:*/boost/* -float-cast-overflow:*/boost/* -bool:*/boost/* -enum:*/boost/* -function:*/boost/* -returns-nonnull-attribute:*/boost/* -nullability-return:*/boost/* -nonnull-attribute:*/boost/* -nullability-arg:*/boost/* -vptr:*/boost/* -cfi:*/boost/* -vptr_check:*/boost/* +alignment:.*/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,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/* +pointer-overflow:.*/boost/* +pointer-overflow:.*/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/* # basic_string.h:483:51: runtime error: unsigned integer overflow -unsigned-integer-overflow:*./basic_string.h +unsigned-integer-overflow:.*/basic_string.h +unsigned-integer-overflow:.*/bits/random.tcc +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/tests/libxrpl/basics/RangeSet.cpp -unsigned-integer-overflow:*./src/libxrpl/json/json_value.cpp - -# src/libxrpl/ledger/View.cpp:567:36: runtime error: unsigned integer overflow: 1 + 4294967295 cannot be represented in type 'std::uint32_t' (aka 'unsigned int') -unsigned-integer-overflow:*./src/libxrpl/ledger/View.cpp +unsigned-integer-overflow:.*/src/libxrpl/basics/base64.cpp +unsigned-integer-overflow:.*/src/libxrpl/crypto/RFC1751.cpp +unsigned-integer-overflow:.*/src/libxrpl/json/json_value.cpp +unsigned-integer-overflow:.*/src/libxrpl/ledger/View.cpp +unsigned-integer-overflow:.*/src/libxrpl/protocol/STPathSet.cpp +unsigned-integer-overflow:.*/src/libxrpl/protocol/tokens.cpp +unsigned-integer-overflow:.*/src/test/app/NFToken_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/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/protocol/nft.h undefined:.*/src/libxrpl/basics/base64.cpp -undefined:.*/src/libxrpl/basics/Number.cpp \ No newline at end of file +undefined:.*/src/libxrpl/basics/Number.cpp +undefined:.*/src/libxrpl/protocol/STPathSet.cpp +undefined:.*/src/test/app/NFToken_test.cpp +undefined:.*/src/xrpld/app/paths/detail/StrandFlow.h +undefined:.*/xrpl/basics/base_uint.h +undefined:.*/xrpl/beast/xor_shift_engine.h