diff options
Diffstat (limited to 'third_party/libwebrtc/tools_webrtc/ubsan')
-rw-r--r-- | third_party/libwebrtc/tools_webrtc/ubsan/suppressions.txt | 26 | ||||
-rw-r--r-- | third_party/libwebrtc/tools_webrtc/ubsan/vptr_suppressions.txt | 27 |
2 files changed, 53 insertions, 0 deletions
diff --git a/third_party/libwebrtc/tools_webrtc/ubsan/suppressions.txt b/third_party/libwebrtc/tools_webrtc/ubsan/suppressions.txt new file mode 100644 index 0000000000..2ece795570 --- /dev/null +++ b/third_party/libwebrtc/tools_webrtc/ubsan/suppressions.txt @@ -0,0 +1,26 @@ +############################################################################# +# UBSan ignorelist. +# +# This is a WebRTC-specific replacement of Chromium's ignorelist.txt. +# Only exceptions for third party libraries go here. WebRTC's code should use +# the RTC_NO_SANITIZE macro. Please think twice before adding new exceptions. + +############################################################################# +# OpenH264 triggers some errors that are out of our control. +src:*/third_party/ffmpeg/libavcodec/* +src:*/third_party/openh264/* + +# TODO(bugs.webrtc.org/11110). +# Remove those once upstream code has been cleaned. +src:*/third_party/abseil-cpp/absl/debugging/* +src:*/third_party/libvpx/source/libvpx/vp8/* + +############################################################################# +# Ignore system libraries. +src:*/usr/* + +############################################################################# +[alignment] +# Libaom and libsrtp are doing unaligned memory access. +src:*/third_party/libaom/source/libaom/* +src:*/third_party/libsrtp/srtp/srtp.c diff --git a/third_party/libwebrtc/tools_webrtc/ubsan/vptr_suppressions.txt b/third_party/libwebrtc/tools_webrtc/ubsan/vptr_suppressions.txt new file mode 100644 index 0000000000..617ba88f98 --- /dev/null +++ b/third_party/libwebrtc/tools_webrtc/ubsan/vptr_suppressions.txt @@ -0,0 +1,27 @@ +############################################################################# +# UBSan vptr ignorelist. +# Function and type based blacklisting use a mangled name, and it is especially +# tricky to represent C++ types. For now, any possible changes by name manglings +# are simply represented as wildcard expressions of regexp, and thus it might be +# over-blacklisted. +# +# Please think twice before you add or remove these rules. +# +# This is a stripped down copy of Chromium's vptr_blacklist.txt, to enable +# adding WebRTC-specific ignorelist entries. + +############################################################################# +# Using raw pointer values. +# +# A raw pointer value (16) is used to infer the field offset by +# GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET. + +src:*/third_party/protobuf/src/google/protobuf/compiler/plugin.pb.cc +src:*/third_party/protobuf/src/google/protobuf/compiler/cpp/cpp_message.cc +src:*/third_party/protobuf/src/google/protobuf/descriptor.pb.cc + +############################################################################# +# UBsan goes into an infinite recursion when __dynamic_cast instrumented with +# "vptr". See crbug.com/609786. + +src:*/third_party/libc\+\+abi/trunk/src/private_typeinfo.cpp |