diff options
Diffstat (limited to 'files/tools')
-rw-r--r-- | files/tools/OWNERS | 61 | ||||
-rw-r--r-- | files/tools/msan/OWNERS | 3 | ||||
-rw-r--r-- | files/tools/msan/blacklist.txt | 24 | ||||
-rw-r--r-- | files/tools/ubsan/OWNERS | 3 | ||||
-rw-r--r-- | files/tools/ubsan/blacklist.txt | 77 | ||||
-rw-r--r-- | files/tools/ubsan/vptr_blacklist.txt | 128 |
6 files changed, 0 insertions, 296 deletions
diff --git a/files/tools/OWNERS b/files/tools/OWNERS deleted file mode 100644 index f0963525..00000000 --- a/files/tools/OWNERS +++ /dev/null @@ -1,61 +0,0 @@ -# You can add new small tools to this directory at your desire, feel free -# to owners-TBR new folders (assuming you have a regular review already, -# of course). Include an OWNERS file with at least two people for your new -# folder. -# If you're changing existing tools, have your change reviewed by the -# OWNERS of the existing tool. - -dpranke@chromium.org -scottmg@chromium.org -thakis@chromium.org - -# These aren't actually great contact points for this directory, but -# changes in this directory are rare and most changes happen in better-owned -# subdirectories. -# -# TEAM: infra-dev@chromium.org -# COMPONENT: Build - -per-file bisect*.py=anantha@chromium.org -per-file bisect*.py=prasadv@chromium.org -per-file bisect*.py=robertocn@chromium.org -per-file run-bisect*.py=prasadv@chromium.org -per-file run-bisect*.py=robertocn@chromium.org -per-file prepare-bisect*.py=prasadv@chromium.org -per-file prepare-bisect*.py=robertocn@chromium.org - -per-file boilerplate.py=rsesek@chromium.org - -per-file check_git_config.py=iannucci@chromium.org -per-file check_git_config.py=vadimsh@chromium.org - -per-file check_grd_for_unused_strings.py=estade@chromium.org - -per-file gyp-explain.py=thakis@chromium.org - -per-file gypv8shy.py=jochen@chromium.org - -per-file include_tracer.py=thakis@chromium.org - -per-file ipc_messages_log.py=yfriedman@chromium.org - -per-file licenses.py=file://tools/copyright_scanner/OWNERS - -per-file remove_stale_pyc_files.py=dtu@chromium.org - -per-file roll_angle.py=kbr@chromium.org -per-file roll_angle.py=kjellander@chromium.org -per-file roll_angle.py=geofflang@chromium.org -per-file roll_webgl_conformance.py=bajones@chromium.org -per-file roll_webgl_conformance.py=kbr@chromium.org -per-file roll_webgl_conformance.py=kjellander@chromium.org -per-file roll_webgl_conformance.py=geofflang@chromium.org -per-file roll_webgl_conformance.py=zmo@chromium.org -per-file roll_webrtc.py=kjellander@chromium.org - -per-file safely-roll-deps.py=borenet@chromium.org - -per-file sort-headers.py=satorux@chromium.org -per-file sort-sources.py=satorux@chromium.org -per-file yes_no.py=satorux@chromium.org - diff --git a/files/tools/msan/OWNERS b/files/tools/msan/OWNERS deleted file mode 100644 index ab97cb0f..00000000 --- a/files/tools/msan/OWNERS +++ /dev/null @@ -1,3 +0,0 @@ -# pbos@chromium.org -fbarchard@google.com -kjellander@google.com diff --git a/files/tools/msan/blacklist.txt b/files/tools/msan/blacklist.txt deleted file mode 100644 index 40ea4b83..00000000 --- a/files/tools/msan/blacklist.txt +++ /dev/null @@ -1,24 +0,0 @@ -# The rules in this file are only applied at compile time. If you can modify the -# source in question, consider function attributes to disable instrumentation. -# -# Please think twice before you add or remove these rules. - -# False positive in ffmpeg due to assembly code. http://crbug.com/344505 -fun:ff_get_cpu_flags_x86 - -# Benign uninits in zlib. -# http://crbug.com/116277 -fun:*MOZ_Z_deflate* -# http://crbug.com/418383 -fun:longest_match - -# Uninit in zlib with SIMD intrinsic http://crbug.com/426868 -fun:crc_fold512_to_32 - -# Uninit in OSMesa. http://crbug.com/347967 -fun:unpack_RGBA8888 -fun:unpack_RGB888 - -# False positives due to use of linux_syscall_support. http://crbug.com/394028 -src:*/breakpad/src/* -src:*/components/crash/content/app/breakpad_linux.cc diff --git a/files/tools/ubsan/OWNERS b/files/tools/ubsan/OWNERS deleted file mode 100644 index 32b7466f..00000000 --- a/files/tools/ubsan/OWNERS +++ /dev/null @@ -1,3 +0,0 @@ -# pbos@webrtc.org -kjellander@google.com -fbarchard@google.com diff --git a/files/tools/ubsan/blacklist.txt b/files/tools/ubsan/blacklist.txt deleted file mode 100644 index e1e3c08a..00000000 --- a/files/tools/ubsan/blacklist.txt +++ /dev/null @@ -1,77 +0,0 @@ -############################################################################# -# UBSan blacklist. - -############################################################################# -# YASM does some funny things that UBsan doesn't like. -# https://crbug.com/489901 -src:*/third_party/yasm/* - -############################################################################# -# V8 gives too many false positives. Ignore them for now. -src:*/v8/* - -############################################################################# -# Ignore system libraries. -src:*/usr/* - -############################################################################# -# V8 UBsan supressions, commented out for now since we are ignorning v8 -# completely. -# fun:*v8*internal*FastD2I* -# fun:*v8*internal*ComputeIntegerHash* -# fun:*v8*internal*ComputeLongHash* -# fun:*v8*internal*ComputePointerHash* -# src:*/v8/src/base/bits.cc -# src:*/v8/src/base/functional.cc -# Undefined behaviour (integer overflow) is expected but ignored in this -# function. -# fun:*JsonParser*ParseJsonNumber* - -# Runtime numeric functions. -# src:*/v8/src/runtime/runtime-numbers.cc - -# Shifts of negative numbers -# fun:*v8*internal*HPositionInfo*TagPosition* -# fun:*v8*internal*Range*Shl* -# fun:*v8*internal*RelocInfoWriter*WriteTaggedData* - -############################################################################# -# Undefined arithmetic that can be safely ignored. -src:*/base/numerics/saturated_arithmetic.h -src:*/ppapi/shared_impl/id_assignment.h - -############################################################################# -# ICU supressions. Mostly hash functions where integer overflow is OK. -fun:*hashEntry* -fun:*LocaleCacheKey*hashCode* -fun:*google*protobuf*hash* -fun:*(hash|Hash)* - -############################################################################# -# Bounds blacklist. -# Array at the end of struct pattern: -# Maybe UBSan itself can be improved here? -# e.g. -# struct blah { -# int a; -# char foo[2]; // not actually 2 -# } -src:*/net/disk_cache/blockfile/backend_impl.cc -src:*/net/disk_cache/blockfile/entry_impl.cc -src:*/third_party/icu/source/common/rbbi.cpp -src:*/third_party/icu/source/common/rbbitblb.cpp -src:*/third_party/icu/source/common/ucmndata.c - -############################################################################# -# Delete in destructor on a this where this == nullptr -fun:*re2*RegexpD* - -############################################################################# -# Harmless float division by zero. -fun:*RendererFrameManager*CullUnlockedFrames* - -############################################################################# -# libc++ __tree and map are not UBSAN clean -# https://llvm.org/bugs/show_bug.cgi?id=19302 -src:*/third_party/libc\+\+/trunk/include/__tree -src:*/third_party/libc\+\+/trunk/include/map diff --git a/files/tools/ubsan/vptr_blacklist.txt b/files/tools/ubsan/vptr_blacklist.txt deleted file mode 100644 index e8382039..00000000 --- a/files/tools/ubsan/vptr_blacklist.txt +++ /dev/null @@ -1,128 +0,0 @@ -############################################################################# -# UBSan vptr blacklist. -# 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. - -############################################################################# -# Identical layouts. -# If base and derived classes have identifical memory layouts (i.e., the same -# object size) and both have no virtual functions, we blacklist them as there -# would be not much security implications. - -fun:*LifecycleNotifier*addObserver* -fun:*LifecycleNotifier*removeObserver* -fun:*toWebInputElement* -type:*base*MessageLoopForIO* -type:*BlockRefType* -type:*SkAutoTUnref* -type:*WDResult* -type:*ExecutionContext* -type:*WebInputElement* -type:*WebFormControlElement* - -# Avoid identical layout cases for 86 different classes in InspectorTypeBuilder, -# all of which are guarded using COMPILER_ASSERT on the object size. Two more -# types are also blacklisted due to the template class (JSONArray <-> Array<T>). - -src:*InspectorTypeBuilder.h* -type:*TypeBuilder* -type:*JSONArray* - -############################################################################# -# Base class's constructor accesses a derived class's member. - -fun:*DoublyLinkedListNode* -type:*content*WebUIExtensionData* - -# RenderFrameObserverTracker<T>::RenderFrameObserverTracker() -fun:*content*RenderFrameObserverTracker*RenderFrame* - -# RenderViewObserverTracker<T>::RenderViewObserverTracker() -fun:*content*RenderViewObserverTracker*RenderView* - -############################################################################# -# Base class's destructor accesses a derived class. - -fun:*DatabaseContext*contextDestroyed* - -# FIXME: Cannot handle template function LifecycleObserver<>::setContext, -# so exclude source file for now. -src:*LifecycleObserver.h* - -############################################################################# -# static_cast into itself in the constructor. - -fun:*RefCountedGarbageCollected*makeKeepAlive* -fun:*ThreadSafeRefCountedGarbageCollected*makeKeepAlive* - -############################################################################# -# Accessing data in destructors where the class has virtual inheritances. - -type:*content*RenderWidgetHost* - -# Match mangled name for X::~X(). -fun:*content*RenderThreadImplD* -fun:*content*RenderViewHostImplD* -fun:*content*UtilityThreadImplD* - -############################################################################# -# 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 - -############################################################################# -# Avoid link errors. -# Ubsan vptr needs typeinfo on the target class, but it looks like typeinfo is -# not avaiable if the class is not exported. For now, simply blacklisted to -# avoid link errors; e.g., undefined reference to 'typeinfo for [CLASS_NAME]'. - -# obj/ppapi/libppapi_proxy.a(obj/ppapi/proxy/ppapi_proxy.proxy_channel.o):../../ppapi/proxy/proxy_channel.cc:__unnamed_53: error: undefined reference to 'typeinfo for IPC::TestSink' -src:*/ppapi/proxy/proxy_channel.cc - -# obj/chrome/libbrowser.a(obj/chrome/browser/net/browser.predictor.o):../../chrome/browser/net/predictor.cc:__unnamed_577: error: undefined reference to 'typeinfo for ProxyAdvisor' -src:*/chrome/browser/net/predictor.cc - -# obj/third_party/pdfium/libfpdfapi.a(obj/third_party/pdfium/core/src/fpdfapi/fpdf_render/fpdfapi.fpdf_render_text.o):../../third_party/pdfium/core/src/fpdfapi/fpdf_render/:__unnamed_360: error: undefined reference to 'typeinfo for CPDF_InlineImages' -src:*/third_party/pdfium/core/src/fpdfapi/fpdf_render/fpdf_render_text.cpp - -# obj/third_party/libwebm/libwebm.a(obj/third_party/libwebm/source/libwebm.mkvmuxer.o)(.data.rel..L__unnamed_2+0x18): error: undefined reference to 'typeinfo for mkvparser::IMkvReader' -src:*/third_party/libwebm/source/mkvmuxer.cpp - -############################################################################# -# LLVM is not UBSan vptr clean. -src:*third_party/swiftshader/third_party/LLVM* - -############################################################################# -# UBSan seems to be emit false positives when virtual base classes are -# involved, see e.g. crbug.com/448102. - -type:*v8*internal*OFStream* - -############################################################################# -# UBsan is unable to handle static_cast<A*>(nullptr) and crashes on SIGSEGV. -# - -# static_cast<StartPageService*> in StartPageServiceFactory::GetForProfile. -type:*StartPageService* - -# Remove once function attribute level blacklisting is implemented. -# See crbug.com/476063. -fun:*forbidGCDuringConstruction* - -############################################################################# -# 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 - -############################################################################# -# invalid downcasts for IPC messages -# https://crbug.com/520760 -src:*nacl_message_scanner.cc |