Java: Make most imports private.

This commit is contained in:
Michael Nebel
2022-03-24 11:04:33 +01:00
parent 1c7d764d54
commit 0009d781d7
4 changed files with 21 additions and 11 deletions

View File

@@ -3,8 +3,8 @@
* and sink models of the Standard or a 3rd party library.
*/
private import CaptureModelsSpecific
private import ModelGeneratorUtils
private import CaptureModelsSpecific
/**
* Gets the summary model of `api`, if it follows the `fluent` programming pattern (returns `this`).
@@ -65,7 +65,7 @@ private class ThroughFlowConfig extends TaintTracking::Configuration {
)
or
exists(DataFlow::Content c |
readStep(node1, c, node2) and
DataFlowPrivate::readStep(node1, c, node2) and
isRelevantContent(c) and
state1 instanceof TaintRead and
state2 instanceof TaintRead

View File

@@ -3,13 +3,13 @@
*/
import java
private import semmle.code.java.dataflow.ExternalFlow as Ef
import semmle.code.java.dataflow.TaintTracking
private import semmle.code.java.dataflow.ExternalFlow as Ef
private import semmle.code.java.dataflow.internal.DataFlowImplCommon as Dfic
import semmle.code.java.dataflow.internal.DataFlowNodes
import semmle.code.java.dataflow.internal.DataFlowPrivate
import semmle.code.java.dataflow.InstanceAccess
import ModelGeneratorUtils
private import semmle.code.java.dataflow.internal.DataFlowNodes
private import semmle.code.java.dataflow.internal.DataFlowPrivate
private import semmle.code.java.dataflow.InstanceAccess
private import ModelGeneratorUtils
/**
* Gets the enclosing callable of `ret`.

View File

@@ -5,7 +5,7 @@ import ModelGeneratorUtilsSpecific
*/
predicate isRelevantTaintStep(DataFlow::Node node1, DataFlow::Node node2) {
exists(DataFlow::Content f |
readStep(node1, f, node2) and
DataFlowPrivate::readStep(node1, f, node2) and
if f instanceof DataFlow::FieldContent
then isRelevantType(f.(DataFlow::FieldContent).getField().getType())
else
@@ -14,7 +14,9 @@ predicate isRelevantTaintStep(DataFlow::Node node1, DataFlow::Node node2) {
else any()
)
or
exists(DataFlow::Content f | storeStep(node1, f, node2) | containerContent(f))
exists(DataFlow::Content f | DataFlowPrivate::storeStep(node1, f, node2) |
DataFlowPrivate::containerContent(f)
)
}
/**
@@ -24,7 +26,7 @@ predicate isRelevantTaintStep(DataFlow::Node node1, DataFlow::Node node2) {
predicate isRelevantContent(DataFlow::Content c) {
isRelevantType(c.(DataFlow::FieldContent).getField().getType()) or
isRelevantType(c.(DataFlow::SyntheticFieldContent).getField().getType()) or
containerContent(c)
DataFlowPrivate::containerContent(c)
}
/**

View File

@@ -1,6 +1,6 @@
import java
import semmle.code.java.dataflow.internal.DataFlowPrivate
import semmle.code.java.dataflow.DataFlow
private import semmle.code.java.dataflow.internal.DataFlowPrivate as Dfp
private import semmle.code.java.dataflow.ExternalFlow
private import semmle.code.java.dataflow.internal.ContainerFlow
private import semmle.code.java.dataflow.internal.DataFlowImplCommon
@@ -157,3 +157,11 @@ string returnNodeAsOutput(ReturnNodeExt node) {
result = "Argument[-1]" and pos = -1
)
}
module DataFlowPrivate {
predicate containerContent = Dfp::containerContent/1;
predicate readStep = Dfp::readStep/3;
predicate storeStep = Dfp::storeStep/3;
}