| File: src\40daf5e1cab76dff\HardcodedCertificateSources.cs | Web Access |
| Project: src\sdk\src\Microsoft.CodeAnalysis.NetAnalyzers\src\Microsoft.CodeAnalysis.NetAnalyzers\Microsoft.CodeAnalysis.NetAnalyzers.csproj (Microsoft.CodeAnalysis.NetAnalyzers) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. using System.Collections.Immutable; using Analyzer.Utilities.PooledObjects; namespace Analyzer.Utilities.FlowAnalysis.Analysis.TaintedDataAnalysis { internal static class HardcodedCertificateSources { /// <summary> /// <see cref="SourceInfo"/>s for hardcoded certificate tainted data sources. /// </summary> public static ImmutableHashSet<SourceInfo> SourceInfos { get; } /// <summary> /// Statically constructs. /// </summary> static HardcodedCertificateSources() { var builder = PooledHashSet<SourceInfo>.GetInstance(); builder.AddSourceInfoSpecifyingTaintedTargets( WellKnownTypeNames.SystemIOFile, isInterface: false, taintedProperties: null, taintedMethodsNeedsPointsToAnalysis: null, taintedMethodsNeedsValueContentAnalysis: null, transferMethods: new (MethodMatcher, (string, string)[])[]{ ( (methodName, arguments) => methodName == "WriteAllBytes", new (string, string)[]{ ("bytes", "path"), } ), }); SourceInfos = builder.ToImmutableAndFree(); } } }