Fix unset ZapRelocationType for fixup (#18589)
[platform/upstream/coreclr.git] / Tools / Default.ruleset
1 <?xml version="1.0" encoding="utf-8"?>
2 <RuleSet Name="Rules for Security Issues" Description="Code analysis rules for Security Issues." ToolsVersion="14.0">
3   <Rules AnalyzerId="Desktop.Analyzers" RuleNamespace="Desktop.Analyzers">
4     <Rule Id="CA5350" Action="Error" /> <!-- Do not use Weak/Broken cryptographic algorithms -->
5     <Rule Id="CA5351" Action="Error" />
6     <Rule Id="CA2153" Action="Error"/> <!-- Do not catch corrupted process state exceptions -->
7   </Rules>
8   <Rules AnalyzerId="Desktop.CSharp.Analyzers" RuleNamespace="Desktop.Analyzers">
9     <Rule Id="CA5350" Action="Error" /> <!-- Do not use Weak/Broken cryptographic algorithms -->
10     <Rule Id="CA5351" Action="Error" />
11     <Rule Id="CA2153" Action="Error"/> <!-- Do not catch corrupted process state exceptions -->
12   </Rules>
13   <Rules AnalyzerId="Microsoft.Analyzers.ManagedCodeAnalysis" RuleNamespace="Microsoft.Rules.Managed">
14     <Rule Id="CA1001" Action="None" /> <!-- Non disposable class owns disposable fields -->
15     <Rule Id="CA1018" Action="None" /> <!-- Specify attribute usage on attribute -->
16     <Rule Id="CA1036" Action="None" /> <!-- Overload comparison operators when implementing System.IComparable -->
17     <Rule Id="CA1715" Action="None" /> <!-- Type parameters names should be prefixed with T -->
18     <Rule Id="CA2213" Action="None" /> <!-- Disposable Fields should be disposed -->
19     <Rule Id="CA2229" Action="None" /> <!-- Serializable type doesn't have a serialization constructor -->
20     <Rule Id="CA2235" Action="None" /> <!-- Serializable type has non serializable field -->
21     <Rule Id="CA2231" Action="None" /> <!-- Overload operator equals when overriding ValueType.Equals -->
22     <Rule Id="CA2237" Action="None" /> <!-- Add [Serializable] to types that implement ISerializable -->
23
24     <Rule Id="CA2200" Action="None"/> <!-- Rethrowing caught exception changes stack information -->
25
26     <Rule Id="CA2101" Action="None" /> <!-- Specify marshaling for P/Invoke string arguments -->
27     <Rule Id="CA1401" Action="None" /> <!-- P/Invoke method should not be visible -->
28
29     <Rule Id="CA2214" Action="None" /> <!-- Do not call overridable methods in constructors -->
30   </Rules>
31   <Rules AnalyzerId="System.Runtime.Analyzers" RuleNamespace="System.Runtime.Analyzers">
32     <Rule Id="CA2002" Action="None" /> <!-- Do not lock on objects with weak identity -->
33   </Rules>
34   <Rules AnalyzerId="System.Runtime.CSharp.Analyzers" RuleNamespace="System.Runtime.CSharp.Analyzers">
35     <Rule Id="CA2002" Action="None" /> <!-- Do not lock on objects with weak identity -->
36   </Rules>
37   <Rules AnalyzerId="System.Security.Cryptography.Hashing.Algorithms.Analyzers" RuleNamespace="System.Security.Cryptography.Hashing.Algorithms.Analyzers">
38     <Rule Id="CA5350" Action="Error" /> <!-- Do not use Weak/Broken cryptographic algorithms -->
39     <Rule Id="CA5351" Action="Error" />
40   </Rules>
41 </RuleSet>