File tree Expand file tree Collapse file tree 2 files changed +14
-13
lines changed
python/ql/lib/semmle/python Expand file tree Collapse file tree 2 files changed +14
-13
lines changed Original file line number Diff line number Diff line change @@ -3015,6 +3015,19 @@ private module StdlibPrivate {
3015
3015
override string getKind ( ) { result = Escaping:: getRegexKind ( ) }
3016
3016
}
3017
3017
3018
+ private import semmle.python.regex as Regex
3019
+
3020
+ /**
3021
+ * A node interpreted as a regular expression.
3022
+ * Speficically nodes where string values are interpreted as regular expressions.
3023
+ */
3024
+ class StdLibRegExpInterpretation extends Regex:: RegExpInterpretation:: Range {
3025
+ StdLibRegExpInterpretation ( ) {
3026
+ this =
3027
+ API:: moduleImport ( "re" ) .getMember ( "compile" ) .getACall ( ) .getParameter ( 0 , "pattern" ) .asSink ( )
3028
+ }
3029
+ }
3030
+
3018
3031
// ---------------------------------------------------------------------------
3019
3032
// urllib
3020
3033
// ---------------------------------------------------------------------------
Original file line number Diff line number Diff line change @@ -4,6 +4,7 @@ private import semmle.python.Frameworks
4
4
private import regexp.internal.RegExpTracking as RegExpTracking
5
5
private import semmle.python.Concepts as Concepts
6
6
private import semmle.python.regexp.RegexTreeView
7
+ private import semmle.python.dataflow.new.DataFlow
7
8
import regexp.internal.ParseRegExp
8
9
9
10
/** Gets a parsed regular expression term that is executed at `exec`. */
@@ -24,19 +25,6 @@ module RegExpInterpretation {
24
25
abstract class Range extends DataFlow:: Node { }
25
26
}
26
27
27
- private import semmle.python.ApiGraphs
28
-
29
- /**
30
- * A node interpreted as a regular expression.
31
- * Speficically nodes where string values are interpreted as regular expressions.
32
- */
33
- class StdLibRegExpInterpretation extends RegExpInterpretation:: Range {
34
- StdLibRegExpInterpretation ( ) {
35
- this =
36
- API:: moduleImport ( "re" ) .getMember ( "compile" ) .getACall ( ) .getParameter ( 0 , "pattern" ) .asSink ( )
37
- }
38
- }
39
-
40
28
/** A StrConst used as a regular expression */
41
29
deprecated class RegexString extends Regex {
42
30
RegexString ( ) { this = RegExpTracking:: regExpSource ( _) .asExpr ( ) }
You can’t perform that action at this time.
0 commit comments