-
-
Notifications
You must be signed in to change notification settings - Fork 52
Expand file tree
/
Copy pathspotbugs.xml
More file actions
75 lines (64 loc) · 2.86 KB
/
spotbugs.xml
File metadata and controls
75 lines (64 loc) · 2.86 KB
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
<?xml version="1.0" encoding="UTF-8"?>
<FindBugsFilter xmlns="https://github.com/spotbugs/filter/3.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://github.com/spotbugs/filter/3.0.0 https://raw.githubusercontent.com/spotbugs/spotbugs/3.1.0/spotbugs/etc/findbugsfilter.xsd">
<!-- record validates ISO 7816-4 minimum 2-byte SW; record is final so no finalizer risk -->
<Match>
<Class name="apdu4j.core.ResponseAPDU"/>
<Bug pattern="CT_CONSTRUCTOR_THROW"/>
</Match>
<!-- platform-specific PC/SC library paths for Linux/macOS detection -->
<Match>
<Class name="apdu4j.pcsc.TerminalManager"/>
<Method name="detectLibraryPath"/>
<Bug pattern="DMI_HARDCODED_ABSOLUTE_FILENAME"/>
</Match>
<!-- standard pcsc-lite smartcard_list.txt locations on Unix -->
<Match>
<Class name="apdu4j.tool.ATRList"/>
<Method name="locate"/>
<Bug pattern="DMI_HARDCODED_ABSOLUTE_FILENAME"/>
</Match>
<!-- sealed final subclasses only - no finalizer risk; equals checks interface type by design -->
<Match>
<Class name="apdu4j.prefs.Preference$Base"/>
<Bug pattern="CT_CONSTRUCTOR_THROW,EQ_UNUSUAL"/>
</Match>
<!-- PrintStream wraps caller's OutputStream -closing it would close the underlying stream -->
<Match>
<Class name="apdu4j.pcsc.ReaderSelectorImpl"/>
<Method name="wrapBIBO"/>
<Bug pattern="OS_OPEN_STREAM"/>
</Match>
<!-- TerminalFactorySpi contract requires Object parameter; validates type at construction -->
<Match>
<Class name="apdu4j.pcsc.sim.SynthesizedTerminalsProvider$SynthesizedSpi"/>
<Bug pattern="CT_CONSTRUCTOR_THROW"/>
</Match>
<!-- SPI returns its wrapped terminals; cloning a CardTerminals is nonsensical -->
<Match>
<Class name="apdu4j.pcsc.sim.SynthesizedTerminalsProvider$SynthesizedSpi"/>
<Bug pattern="EI_EXPOSE_REP,EI_EXPOSE_REP2"/>
</Match>
<!-- sealed gather records: byte[] flows through internal pattern matching only -->
<Match>
<Class name="apdu4j.apdulette.Cookbook$Gather$Done"/>
<Bug pattern="EI_EXPOSE_REP,EI_EXPOSE_REP2"/>
</Match>
<Match>
<Class name="apdu4j.apdulette.Cookbook$Gather$More"/>
<Bug pattern="EI_EXPOSE_REP,EI_EXPOSE_REP2"/>
</Match>
<!-- disconnect cleanup on beginExclusive() failure -best effort -->
<Match>
<Class name="apdu4j.pcsc.ReaderSelectorImpl"/>
<Method name="connectAndRun"/>
<Bug pattern="DE_MIGHT_IGNORE"/>
</Match>
<!-- close() in disconnect cleanup -exception intentionally swallowed -->
<Match>
<Class name="apdu4j.pcsc.sim.SynthesizedCardTerminal$SynthesizedCard"/>
<Method name="disconnect"/>
<Bug pattern="DE_MIGHT_IGNORE"/>
</Match>
</FindBugsFilter>