public override void GetSinks(SyntaxNodeAnalysisContext context, DiagnosticId ruleId) { var syntax = context.Node as ObjectCreationExpressionSyntax; if (!_expressionSyntaxAnalyzer.IsVulnerable(context.SemanticModel, syntax, ruleId)) { return; } if (VulnerableSyntaxNodes.All(p => p.Sink.GetLocation() != syntax?.GetLocation())) { VulnerableSyntaxNodes.Push(_vulnerableSyntaxNodeFactory.Create(syntax, "FileStream")); } }
public override void GetSinks(SyntaxNodeAnalysisContext context, DiagnosticId ruleId) { var syntax = context.Node as ObjectCreationExpressionSyntax; if (!_expressionSyntaxAnalyzer.IsVulnerable(context.SemanticModel, syntax)) { return; } if (VulnerableSyntaxNodes.All(p => p.Sink.GetLocation() != syntax.GetLocation())) { VulnerableSyntaxNodes.Push(_vulnerableSyntaxNodeFactory.Create(syntax, RuleOptions.PasswordComplexityMinPasswordLength.ToString(), RuleOptions.PasswordComplexityRequireNumber.ToString(), RuleOptions.PasswordComplexityRequireLowerCharacter.ToString(), RuleOptions.PasswordComplexityRequireUpperCharacter.ToString(), RuleOptions.PasswordComplexityRequireSpecialCharcter.ToString())); } }