Skip to content

Commit ea4d062

Browse files
added ubsan file
Signed-off-by: Pratik Mankawde <[email protected]>
1 parent dcd0553 commit ea4d062

File tree

4 files changed

+89
-7
lines changed

4 files changed

+89
-7
lines changed

.github/workflows/reusable-build-test-config.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -171,9 +171,9 @@ jobs:
171171
BUILD_TYPE: ${{ inputs.build_type }}
172172
PARALLELISM: ${{ runner.os == 'Windows' && '1' || steps.nproc.outputs.nproc }}
173173
run: |
174-
export ASAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/asan_suppressions.txt"
175-
export TSAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/tsan_suppressions.txt"
176-
echo "ASAN_OPTIONS=$ASAN_OPTIONS TSAN_OPTIONS=$TSAN_OPTIONS"
174+
export ASAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/asan.supp"
175+
export TSAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/tsan.supp"
176+
export UBSAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/ubsan.supp"
177177
ctest \
178178
--output-on-failure \
179179
-C "${BUILD_TYPE}" \
@@ -185,9 +185,9 @@ jobs:
185185
env:
186186
BUILD_NPROC: ${{ steps.nproc.outputs.nproc }}
187187
run: |
188-
export ASAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/asan_suppressions.txt"
189-
export TSAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/tsan_suppressions.txt"
190-
echo "ASAN_OPTIONS=$ASAN_OPTIONS TSAN_OPTIONS=$TSAN_OPTIONS"
188+
export ASAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/asan.supp"
189+
export TSAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/tsan.supp"
190+
export UBSAN_OPTIONS="suppressions=$GITHUB_WORKSPACE/external/ubsan.supp"
191191
./rippled --unittest --unittest-jobs "${BUILD_NPROC}"
192192
193193
- name: Debug failure (Linux)
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
# Suppress voilations in Boost libraries
22
interceptor_via_lib:^libboost_.*
33
# Suprpress voilations in external code
4-
interceptor_name:^external/*
4+
interceptor_name:^external/.*
File renamed without changes.

external/ubsan.supp

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
# Suppress UBSan errors in external code by source file path
2+
# This matches any source file under the external/ directory
3+
4+
5+
undefined:external/*
6+
null:external/*
7+
nullability-assign:external/*
8+
pointer-overflow:external/*
9+
pointer-overflow:external/*
10+
pointer-overflow:external/*
11+
pointer-overflow:external/*
12+
alignment:external/*
13+
alignment:external/*
14+
object-size:external/*
15+
signed-integer-overflow:external/*
16+
unsigned-integer-overflow:external/*
17+
integer-divide-by-zero:external/*
18+
float-divide-by-zero:external/*
19+
invalid-builtin-use:external/*
20+
invalid-objc-cast:external/*
21+
implicit-unsigned-integer-truncation:external/*
22+
implicit-signed-integer-truncation:external/*
23+
implicit-integer-sign-change:external/*
24+
implicit-signed-integer-truncation,implicit-integer-sign-change:external/*
25+
shift-base:external/*
26+
shift-exponent:external/*
27+
bounds:external/*
28+
unreachable:external/*
29+
return:external/*
30+
vla-bound:external/*
31+
float-cast-overflow:external/*
32+
bool:external/*
33+
enum:external/*
34+
function:external/*
35+
returns-nonnull-attribute:external/*
36+
nullability-return:external/*
37+
nonnull-attribute:external/*
38+
nullability-arg:external/*
39+
vptr:external/*
40+
cfi:external/*
41+
vptr_check:external/*
42+
43+
# Suppress all UBSan errors in Boost libraries
44+
# This matches any files containing "boost" in its path or name
45+
# src:*/boost/*
46+
undefined:*/boost/*
47+
null:*/boost/*
48+
nullability-assign:*/boost/*
49+
pointer-overflow:*/boost/*
50+
pointer-overflow:*/boost/*
51+
pointer-overflow:*/boost/*
52+
pointer-overflow:*/boost/*
53+
alignment:*/boost/*
54+
alignment:*/boost/*
55+
object-size:*/boost/*
56+
signed-integer-overflow:*/boost/*
57+
unsigned-integer-overflow:*/boost/*
58+
integer-divide-by-zero:*/boost/*
59+
float-divide-by-zero:*/boost/*
60+
invalid-builtin-use:*/boost/*
61+
invalid-objc-cast:*/boost/*
62+
implicit-unsigned-integer-truncation:*/boost/*
63+
implicit-signed-integer-truncation:*/boost/*
64+
implicit-integer-sign-change:*/boost/*
65+
implicit-signed-integer-truncation,implicit-integer-sign-change:*/boost/*
66+
shift-base:*/boost/*
67+
shift-exponent:*/boost/*
68+
bounds:*/boost/*
69+
unreachable:*/boost/*
70+
return:*/boost/*
71+
vla-bound:*/boost/*
72+
float-cast-overflow:*/boost/*
73+
bool:*/boost/*
74+
enum:*/boost/*
75+
function:*/boost/*
76+
returns-nonnull-attribute:*/boost/*
77+
nullability-return:*/boost/*
78+
nonnull-attribute:*/boost/*
79+
nullability-arg:*/boost/*
80+
vptr:*/boost/*
81+
cfi:*/boost/*
82+
vptr_check:*/boost/*

0 commit comments

Comments
 (0)