Class JvmTaintSource
java.lang.Object
proguard.analysis.cpa.domain.taint.TaintSource
proguard.analysis.cpa.jvm.domain.taint.JvmTaintSource
A
JvmTaintSource specifies a method which can taint any (subset) of the following: the
instance, the return value, the argument objects, or static fields. The callMatcher
decides whether the call (already filtered by its Signature) should trigger this source.-
Field Summary
FieldsFields inherited from class proguard.analysis.cpa.domain.taint.TaintSource
signature, taintsArgs, taintsGlobals, taintsReturn, taintsThis -
Constructor Summary
ConstructorsConstructorDescriptionJvmTaintSource(Signature signature, boolean taintsThis, boolean taintsReturn, Set<Integer> taintsArgs, Set<String> taintsGlobals) Create a taint source.JvmTaintSource(Signature signature, Predicate<Call> callMatcher, boolean taintsThis, boolean taintsReturn, Set<Integer> taintsArgs, Set<String> taintsGlobals) Create a taint source.JvmTaintSource(Signature signature, Optional<Predicate<Call>> callMatcher, boolean taintsThis, boolean taintsReturn, Set<Integer> taintsArgs, Set<String> taintsGlobals) Create a taint source. -
Method Summary
-
Field Details
-
callMatcher
-
-
Constructor Details
-
JvmTaintSource
public JvmTaintSource(Signature signature, Predicate<Call> callMatcher, boolean taintsThis, boolean taintsReturn, Set<Integer> taintsArgs, Set<String> taintsGlobals) Create a taint source.- Parameters:
signature- the signature a source methodcallMatcher- whether the call matches this taint sourcetaintsThis- whether the source taints the calling instancetaintsReturn- whether the source taints its returntaintsArgs- a set of tainted argumentstaintsGlobals- a set of tainted global variables
-
JvmTaintSource
public JvmTaintSource(Signature signature, boolean taintsThis, boolean taintsReturn, Set<Integer> taintsArgs, Set<String> taintsGlobals) Create a taint source.- Parameters:
signature- the signature a source methodtaintsThis- whether the source taints the calling instancetaintsReturn- whether the source taints its returntaintsArgs- a set of tainted argumentstaintsGlobals- a set of tainted global variables
-
JvmTaintSource
public JvmTaintSource(Signature signature, Optional<Predicate<Call>> callMatcher, boolean taintsThis, boolean taintsReturn, Set<Integer> taintsArgs, Set<String> taintsGlobals) Create a taint source.- Parameters:
signature- the signature a source methodcallMatcher- an optional predicate on whether the call matches this taint sourcetaintsThis- whether the source taints the calling instancetaintsReturn- whether the source taints its returntaintsArgs- a set of tainted argumentstaintsGlobals- a set of tainted global variables
-
-
Method Details
-
equals
- Overrides:
equalsin classTaintSource
-
hashCode
public int hashCode()- Overrides:
hashCodein classTaintSource
-
toString
- Overrides:
toStringin classTaintSource
-