Skip to content

Commit ad9ee54

Browse files
committed
C++/C#/Java: defaultAdditionalTaintStep
1 parent 25701f2 commit ad9ee54

File tree

12 files changed

+21
-24
lines changed

12 files changed

+21
-24
lines changed

cpp/ql/src/semmle/code/cpp/dataflow/internal/TaintTrackingUtil.qll

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,11 @@ predicate localTaintStep(DataFlow::Node src, DataFlow::Node sink) {
2525

2626
/**
2727
* Holds if the additional step from `src` to `sink` should be included in all
28-
* global taint flow configurations but not in local taint.
28+
* global taint flow configurations.
2929
*/
30-
predicate globalAdditionalTaintStep(DataFlow::Node src, DataFlow::Node sink) { none() }
30+
predicate defaultAdditionalTaintStep(DataFlow::Node src, DataFlow::Node sink) {
31+
localAdditionalTaintStep(src, sink)
32+
}
3133

3234
/**
3335
* Holds if `node` should be a barrier in all global taint flow configurations

cpp/ql/src/semmle/code/cpp/dataflow/internal/tainttracking1/TaintTrackingImpl.qll

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,7 @@ abstract class Configuration extends DataFlow::Configuration {
9999

100100
final override predicate isAdditionalFlowStep(DataFlow::Node node1, DataFlow::Node node2) {
101101
isAdditionalTaintStep(node1, node2) or
102-
localAdditionalTaintStep(node1, node2) or
103-
globalAdditionalTaintStep(node1, node2)
102+
defaultAdditionalTaintStep(node1, node2)
104103
}
105104

106105
/**

cpp/ql/src/semmle/code/cpp/dataflow/internal/tainttracking2/TaintTrackingImpl.qll

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,7 @@ abstract class Configuration extends DataFlow::Configuration {
9999

100100
final override predicate isAdditionalFlowStep(DataFlow::Node node1, DataFlow::Node node2) {
101101
isAdditionalTaintStep(node1, node2) or
102-
localAdditionalTaintStep(node1, node2) or
103-
globalAdditionalTaintStep(node1, node2)
102+
defaultAdditionalTaintStep(node1, node2)
104103
}
105104

106105
/**

csharp/ql/src/semmle/code/csharp/dataflow/internal/TaintTrackingPrivate.qll

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,11 @@ predicate defaultTaintBarrier(DataFlow::Node node) { none() }
1818

1919
/**
2020
* Holds if the additional step from `src` to `sink` should be included in all
21-
* global taint flow configurations but not in local taint.
21+
* global taint flow configurations.
2222
*/
23-
predicate globalAdditionalTaintStep(DataFlow::Node pred, DataFlow::Node succ) {
23+
predicate defaultAdditionalTaintStep(DataFlow::Node pred, DataFlow::Node succ) {
24+
localAdditionalTaintStep(pred, succ)
25+
or
2426
succ = pred.(DataFlow::NonLocalJumpNode).getAJumpSuccessor(false)
2527
}
2628

csharp/ql/src/semmle/code/csharp/dataflow/internal/tainttracking1/TaintTrackingImpl.qll

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,7 @@ abstract class Configuration extends DataFlow::Configuration {
9999

100100
final override predicate isAdditionalFlowStep(DataFlow::Node node1, DataFlow::Node node2) {
101101
isAdditionalTaintStep(node1, node2) or
102-
localAdditionalTaintStep(node1, node2) or
103-
globalAdditionalTaintStep(node1, node2)
102+
defaultAdditionalTaintStep(node1, node2)
104103
}
105104

106105
/**

csharp/ql/src/semmle/code/csharp/dataflow/internal/tainttracking2/TaintTrackingImpl.qll

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,7 @@ abstract class Configuration extends DataFlow::Configuration {
9999

100100
final override predicate isAdditionalFlowStep(DataFlow::Node node1, DataFlow::Node node2) {
101101
isAdditionalTaintStep(node1, node2) or
102-
localAdditionalTaintStep(node1, node2) or
103-
globalAdditionalTaintStep(node1, node2)
102+
defaultAdditionalTaintStep(node1, node2)
104103
}
105104

106105
/**

csharp/ql/src/semmle/code/csharp/dataflow/internal/tainttracking3/TaintTrackingImpl.qll

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,7 @@ abstract class Configuration extends DataFlow::Configuration {
9999

100100
final override predicate isAdditionalFlowStep(DataFlow::Node node1, DataFlow::Node node2) {
101101
isAdditionalTaintStep(node1, node2) or
102-
localAdditionalTaintStep(node1, node2) or
103-
globalAdditionalTaintStep(node1, node2)
102+
defaultAdditionalTaintStep(node1, node2)
104103
}
105104

106105
/**

csharp/ql/src/semmle/code/csharp/dataflow/internal/tainttracking4/TaintTrackingImpl.qll

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,7 @@ abstract class Configuration extends DataFlow::Configuration {
9999

100100
final override predicate isAdditionalFlowStep(DataFlow::Node node1, DataFlow::Node node2) {
101101
isAdditionalTaintStep(node1, node2) or
102-
localAdditionalTaintStep(node1, node2) or
103-
globalAdditionalTaintStep(node1, node2)
102+
defaultAdditionalTaintStep(node1, node2)
104103
}
105104

106105
/**

csharp/ql/src/semmle/code/csharp/dataflow/internal/tainttracking5/TaintTrackingImpl.qll

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,7 @@ abstract class Configuration extends DataFlow::Configuration {
9999

100100
final override predicate isAdditionalFlowStep(DataFlow::Node node1, DataFlow::Node node2) {
101101
isAdditionalTaintStep(node1, node2) or
102-
localAdditionalTaintStep(node1, node2) or
103-
globalAdditionalTaintStep(node1, node2)
102+
defaultAdditionalTaintStep(node1, node2)
104103
}
105104

106105
/**

java/ql/src/semmle/code/java/dataflow/internal/TaintTrackingUtil.qll

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,11 @@ predicate localAdditionalTaintStep(DataFlow::Node src, DataFlow::Node sink) {
4242

4343
/**
4444
* Holds if the additional step from `src` to `sink` should be included in all
45-
* global taint flow configurations but not in local taint.
45+
* global taint flow configurations.
4646
*/
47-
predicate globalAdditionalTaintStep(DataFlow::Node src, DataFlow::Node sink) { none() }
47+
predicate defaultAdditionalTaintStep(DataFlow::Node src, DataFlow::Node sink) {
48+
localAdditionalTaintStep(src, sink)
49+
}
4850

4951
/**
5052
* Holds if `node` should be a barrier in all global taint flow configurations

0 commit comments

Comments
 (0)