summaryrefslogtreecommitdiffstats
path: root/tools/cfi/blacklist.txt
blob: d7201627ce17a8cc29541df11529fd564baf518c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
# e.g. RolloverProtectedTickClock
fun:*MutableInstance*

# WTF allocators.
fun:*allocate*Backing*

# WTF::ThreadSpecific
fun:*ThreadSpecific*

# Mesa contains several bad casts.
src:*third_party/mesa*

# Deliberate bad cast to derived class to hide functions.
type:*BlockIUnknownMethods*
type:*BlockRefType*
type:*SkAutoTUnref*
type:*SkBlockComRef*
# https://crbug.com/517959
type:*NoAddRefRelease*

# All mojo::test:: types.
# They are loaded from libmojo_public_test_support.so
# https://crbug.com/515347
type:mojo::test::*

# All types and sources from libclearkeycdm.so.
# See https://crbug.com/557969
type:media::CdmVideoDecoder
type:media::ClearKeyCdm
type:media::FakeCdmVideoDecoder
type:media::FFmpegCdmAudioDecoder
type:media::FFmpegCdmVideoDecoder
type:media::LibvpxCdmVideoDecoder
src:*external_clear_key*
type:cdm::*

# invalid downcasts for IPC messages
# https://crbug.com/520760
fun:*MessageScannerImpl*MessageScannerImpl*

# src/base/win/event_trace_provider_unittest.cc
type:*EtwTraceProvider*

# These classes are used to communicate between chrome.exe and
# chrome_child.dll (see src/sandbox/win/src/sandbox.h,
# src/chrome/app/chrome_main.cc).
type:sandbox::BrokerServices
type:sandbox::TargetPolicy
type:sandbox::TargetServices

# Likewise (base/win/scoped_handle.cc).
type:*ActiveVerifier*

#############################################################################
# Base class's constructor accesses a derived class.

fun:*DoublyLinkedListNode*

# RenderFrameObserverTracker<T>::RenderFrameObserverTracker()
fun:*content*RenderFrameObserverTracker*RenderFrame*

# RenderViewObserverTracker<T>::RenderViewObserverTracker()
fun:*content*RenderViewObserverTracker*RenderView*

fun:*RefCountedGarbageCollected*makeKeepAlive*
fun:*ThreadSafeRefCountedGarbageCollected*makeKeepAlive*

#############################################################################
# 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*

# Blink wtf::Vector cast on non-initialized data
# https://crbug.com/568891
src:*wtf/Vector.h*
src:*wtf/PartitionAllocator.h*