C++/C#/Java: defaultAdditionalTaintStep

This commit is contained in:
Jonas Jensen
2019-08-22 11:14:06 +02:00
parent 25701f203d
commit ad9ee54b65
12 changed files with 21 additions and 24 deletions

View File

@@ -25,9 +25,11 @@ predicate localTaintStep(DataFlow::Node src, DataFlow::Node sink) {
/**
* Holds if the additional step from `src` to `sink` should be included in all
* global taint flow configurations but not in local taint.
* global taint flow configurations.
*/
predicate globalAdditionalTaintStep(DataFlow::Node src, DataFlow::Node sink) { none() }
predicate defaultAdditionalTaintStep(DataFlow::Node src, DataFlow::Node sink) {
localAdditionalTaintStep(src, sink)
}
/**
* Holds if `node` should be a barrier in all global taint flow configurations

View File

@@ -99,8 +99,7 @@ abstract class Configuration extends DataFlow::Configuration {
final override predicate isAdditionalFlowStep(DataFlow::Node node1, DataFlow::Node node2) {
isAdditionalTaintStep(node1, node2) or
localAdditionalTaintStep(node1, node2) or
globalAdditionalTaintStep(node1, node2)
defaultAdditionalTaintStep(node1, node2)
}
/**

View File

@@ -99,8 +99,7 @@ abstract class Configuration extends DataFlow::Configuration {
final override predicate isAdditionalFlowStep(DataFlow::Node node1, DataFlow::Node node2) {
isAdditionalTaintStep(node1, node2) or
localAdditionalTaintStep(node1, node2) or
globalAdditionalTaintStep(node1, node2)
defaultAdditionalTaintStep(node1, node2)
}
/**