Class TaintSink
- java.lang.Object
-
- proguard.analysis.cpa.domain.taint.TaintSink
-
- Direct Known Subclasses:
JvmTaintSink
public abstract class TaintSink extends java.lang.Object
ATaintSink
specifies a sink for the taint analysis. A sink can be sensitive to the instance, the arguments, or the static fields. If a sink S is sensitive to X, then if X is tainted, we conclude that the taint has reached S.
-
-
Field Summary
Fields Modifier and Type Field Description protected static java.util.function.Predicate<TaintSource>
IS_VALID_FOR_SOURCE_DEFAULT
java.util.function.Predicate<TaintSource>
isValidForSource
Signature
signature
-
Constructor Summary
Constructors Constructor Description TaintSink(Signature signature)
Create a taint sink.TaintSink(Signature signature, java.util.function.Predicate<TaintSource> isValidForSource)
Create a taint sink.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description boolean
equals(java.lang.Object other)
int
hashCode()
abstract java.lang.String
toString()
-
-
-
Field Detail
-
IS_VALID_FOR_SOURCE_DEFAULT
protected static final java.util.function.Predicate<TaintSource> IS_VALID_FOR_SOURCE_DEFAULT
-
signature
public final Signature signature
-
isValidForSource
public final java.util.function.Predicate<TaintSource> isValidForSource
-
-
Constructor Detail
-
TaintSink
public TaintSink(Signature signature)
Create a taint sink.- Parameters:
signature
- the signature of a sink method
-
TaintSink
public TaintSink(Signature signature, java.util.function.Predicate<TaintSource> isValidForSource)
Create a taint sink.- Parameters:
signature
- the signature of a sink methodisValidForSource
- predicate on whether the sink is valid for a given source
-
-