@@ -23,14 +23,18 @@ private predicate isExternalUserControlledIssue(string context) {
2323
2424bindingset [ context]
2525private predicate isExternalUserControlledPullRequest ( string context ) {
26- context .regexpMatch ( "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*pull_request\\s*\\.\\s*title\\b" ) or
27- context .regexpMatch ( "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*pull_request\\s*\\.\\s*body\\b" ) or
28- context
29- .regexpMatch ( "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*pull_request\\s*\\.\\s*head\\s*\\.\\s*label\\b" ) or
30- context
31- .regexpMatch ( "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*pull_request\\s*\\.\\s*head\\s*\\.\\s*repo\\s*\\.\\s*default_branch\\b" ) or
32- context
33- .regexpMatch ( "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*pull_request\\s*\\.\\s*head\\s*\\.\\s*ref\\b" )
26+ exists ( string reg |
27+ reg =
28+ [
29+ "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*pull_request\\s*\\.\\s*title\\b" ,
30+ "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*pull_request\\s*\\.\\s*body\\b" ,
31+ "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*pull_request\\s*\\.\\s*head\\s*\\.\\s*label\\b" ,
32+ "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*pull_request\\s*\\.\\s*head\\s*\\.\\s*repo\\s*\\.\\s*default_branch\\b" ,
33+ "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*pull_request\\s*\\.\\s*head\\s*\\.\\s*ref\\b" ,
34+ ]
35+ |
36+ context .regexpMatch ( reg )
37+ )
3438}
3539
3640bindingset [ context]
@@ -52,18 +56,20 @@ private predicate isExternalUserControlledGollum(string context) {
5256
5357bindingset [ context]
5458private predicate isExternalUserControlledCommit ( string context ) {
55- context
56- .regexpMatch ( "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*commits(?:\\[[0-9]\\]|\\s*\\.\\s*\\*)+\\s*\\.\\s*message\\b" ) or
57- context .regexpMatch ( "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*head_commit\\s*\\.\\s*message\\b" ) or
58- context
59- .regexpMatch ( "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*head_commit\\s*\\.\\s*author\\s*\\.\\s*email\\b" ) or
60- context
61- .regexpMatch ( "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*head_commit\\s*\\.\\s*author\\s*\\.\\s*name\\b" ) or
62- context
63- .regexpMatch ( "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*commits(?:\\[[0-9]\\]|\\s*\\.\\s*\\*)+\\s*\\.\\s*author\\s*\\.\\s*email\\b" ) or
64- context
65- .regexpMatch ( "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*commits(?:\\[[0-9]\\]|\\s*\\.\\s*\\*)+\\s*\\.\\s*author\\s*\\.\\s*name\\b" ) or
66- context .regexpMatch ( "\\bgithub\\s*\\.\\s*head_ref\\b" )
59+ exists ( string reg |
60+ reg =
61+ [
62+ "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*commits(?:\\[[0-9]\\]|\\s*\\.\\s*\\*)+\\s*\\.\\s*message\\b" ,
63+ "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*head_commit\\s*\\.\\s*message\\b" ,
64+ "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*head_commit\\s*\\.\\s*author\\s*\\.\\s*email\\b" ,
65+ "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*head_commit\\s*\\.\\s*author\\s*\\.\\s*name\\b" ,
66+ "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*commits(?:\\[[0-9]\\]|\\s*\\.\\s*\\*)+\\s*\\.\\s*author\\s*\\.\\s*email\\b" ,
67+ "\\bgithub\\s*\\.\\s*event\\s*\\.\\s*commits(?:\\[[0-9]\\]|\\s*\\.\\s*\\*)+\\s*\\.\\s*author\\s*\\.\\s*name\\b" ,
68+ "\\bgithub\\s*\\.\\s*head_ref\\b"
69+ ]
70+ |
71+ context .regexpMatch ( reg )
72+ )
6773}
6874
6975bindingset [ context]
0 commit comments