Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var NoScriptUrlRule = rule.Rule{ Name: "no-script-url", Run: func(ctx rule.RuleContext, options any) rule.RuleListeners { const jsScheme = "javascript:" check := func(node *ast.Node) { value := utils.GetStaticStringValue(node) if len(value) >= len(jsScheme) && strings.EqualFold(value[:len(jsScheme)], jsScheme) { ctx.ReportNode(node, rule.RuleMessage{ Id: "unexpectedScriptURL", Description: "Script URL is a form of eval.", }) } } return rule.RuleListeners{ ast.KindStringLiteral: func(node *ast.Node) { check(node) }, ast.KindNoSubstitutionTemplateLiteral: func(node *ast.Node) { if node.Parent != nil && node.Parent.Kind == ast.KindTaggedTemplateExpression { return } check(node) }, } }, }
Functions ¶
This section is empty.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.