Package | Description |
---|---|
soot |
Base Soot classes, shared by different intermediate representations.
|
soot.baf |
Public classes for the Baf intermediate representation.
|
soot.baf.internal |
Internal, messy, implementation-specific classes for the Baf intermediate representation.
|
soot.dava.toolkits.base.AST.interProcedural | |
soot.dava.toolkits.base.AST.structuredAnalysis | |
soot.dava.toolkits.base.AST.transformations | |
soot.dava.toolkits.base.AST.traversals | |
soot.dexpler | |
soot.javaToJimple | |
soot.jbco.jimpleTransformations | |
soot.jimple |
Public classes for the Jimple intermediate representation.
|
soot.jimple.internal |
Internal, messy, implementation-specific classes for the Jimple intermediate representation.
|
soot.jimple.spark.geom.geomPA | |
soot.jimple.spark.internal | |
soot.jimple.spark.ondemand | |
soot.jimple.spark.pag | |
soot.jimple.toolkits.annotation.arraycheck |
Classes that carry out an analysis to determine whether or not array bounds
checks are necessary.
|
soot.jimple.toolkits.infoflow | |
soot.jimple.toolkits.invoke |
A toolkit to deal with Jimple and invoke statements.
|
soot.jimple.toolkits.pointer | |
soot.toDex | |
soot.util.backend | |
soot.xml |
Modifier and Type | Field and Description |
---|---|
protected Chain<SootField> |
SootClass.fields |
protected Chain<SootField> |
SootClass.fields |
Modifier and Type | Method and Description |
---|---|
SootField |
Scene.getField(String fieldSignature) |
SootField |
SootClass.getField(String subsignature)
Returns the field of this class with the given subsignature.
|
SootField |
Scene.getField(String fieldSignature) |
SootField |
SootClass.getField(String subsignature)
Returns the field of this class with the given subsignature.
|
SootField |
SootClass.getField(String name,
Type type)
Returns the field of this class with the given name and type.
|
SootField |
SootClass.getField(String name,
Type type)
Returns the field of this class with the given name and type.
|
SootField |
SootClass.getFieldByName(String name)
Returns the field of this class with the given name.
|
SootField |
SootClass.getFieldByName(String name)
Returns the field of this class with the given name.
|
SootField |
SootClass.getFieldByNameUnsafe(String name)
Returns the field of this class with the given name.
|
SootField |
SootClass.getFieldByNameUnsafe(String name)
Returns the field of this class with the given name.
|
SootField |
SootClass.getFieldUnsafe(String subsignature)
Returns the field of this class with the given subsignature.
|
SootField |
SootClass.getFieldUnsafe(String subsignature)
Returns the field of this class with the given subsignature.
|
SootField |
SootClass.getFieldUnsafe(String name,
Type type)
Returns the field of this class with the given name and type.
|
SootField |
SootClass.getFieldUnsafe(String name,
Type type)
Returns the field of this class with the given name and type.
|
SootField |
Scene.grabField(String fieldSignature) |
SootField |
Scene.grabField(String fieldSignature) |
SootField |
SootFieldRef.resolve() |
SootField |
SootFieldRef.resolve() |
Modifier and Type | Method and Description |
---|---|
Chain<SootField> |
SootClass.getFields()
Returns a backed Chain of fields.
|
Chain<SootField> |
SootClass.getFields()
Returns a backed Chain of fields.
|
Modifier and Type | Method and Description |
---|---|
void |
SootClass.addField(SootField f)
Adds the given field to this class.
|
void |
SootClass.addField(SootField f)
Adds the given field to this class.
|
protected void |
AbstractASMBackend.generateAttributes(FieldVisitor fv,
SootField f)
Emits the bytecode for all attributes of a field
|
protected void |
AbstractASMBackend.generateAttributes(FieldVisitor fv,
SootField f)
Emits the bytecode for all attributes of a field
|
PointsToSet |
PointsToAnalysis.reachingObjects(Context c,
Local l,
SootField f)
Returns the set of objects pointed to by instance field f
of the objects pointed to by l in context c.
|
PointsToSet |
PointsToAnalysis.reachingObjects(Context c,
Local l,
SootField f)
Returns the set of objects pointed to by instance field f
of the objects pointed to by l in context c.
|
PointsToSet |
PointsToAnalysis.reachingObjects(Local l,
SootField f)
Returns the set of objects pointed to by instance field f
of the objects pointed to by l.
|
PointsToSet |
PointsToAnalysis.reachingObjects(Local l,
SootField f)
Returns the set of objects pointed to by instance field f
of the objects pointed to by l.
|
PointsToSet |
PointsToAnalysis.reachingObjects(PointsToSet s,
SootField f)
Returns the set of objects pointed to by instance field f
of the objects in the PointsToSet s.
|
PointsToSet |
PointsToAnalysis.reachingObjects(PointsToSet s,
SootField f)
Returns the set of objects pointed to by instance field f
of the objects in the PointsToSet s.
|
PointsToSet |
PointsToAnalysis.reachingObjects(SootField f)
Returns the set of objects pointed to by static field f.
|
PointsToSet |
PointsToAnalysis.reachingObjects(SootField f)
Returns the set of objects pointed to by static field f.
|
void |
SootClass.removeField(SootField f)
Removes the given field from this class.
|
void |
SootClass.removeField(SootField f)
Removes the given field from this class.
|
Modifier and Type | Method and Description |
---|---|
SootField |
FieldArgInst.getField() |
SootField |
FieldArgInst.getField() |
Modifier and Type | Method and Description |
---|---|
SootField |
BFieldGetInst.getField() |
SootField |
BFieldPutInst.getField() |
SootField |
BStaticGetInst.getField() |
SootField |
BStaticPutInst.getField() |
SootField |
BStaticGetInst.getField() |
SootField |
BFieldGetInst.getField() |
SootField |
BStaticPutInst.getField() |
SootField |
BFieldPutInst.getField() |
Modifier and Type | Method and Description |
---|---|
HashMap<String,SootField> |
ConstantFieldValueFinder.getClassNameFieldNameToSootFieldMapping() |
HashMap<String,SootField> |
ConstantFieldValueFinder.getClassNameFieldNameToSootFieldMapping() |
Modifier and Type | Method and Description |
---|---|
SootField |
CPVariable.getSootField() |
SootField |
CPVariable.getSootField() |
Modifier and Type | Method and Description |
---|---|
List |
MustMayInitialize.getDefs(SootField field) |
List |
MustMayInitialize.getDefs(SootField field) |
boolean |
MustMayInitialize.isMayInitialized(SootField field) |
boolean |
MustMayInitialize.isMayInitialized(SootField field) |
boolean |
MustMayInitialize.isMustInitialized(SootField field) |
boolean |
MustMayInitialize.isMustInitialized(SootField field) |
Constructor and Description |
---|
CPVariable(SootField field) |
CPVariable(SootField field) |
Constructor and Description |
---|
CP(ASTMethodNode analyze,
HashMap<String,Object> constantFields,
HashMap<String,SootField> classNameFieldNameToSootFieldMapping) |
CP(ASTMethodNode analyze,
HashMap<String,Object> constantFields,
HashMap<String,SootField> classNameFieldNameToSootFieldMapping) |
Modifier and Type | Method and Description |
---|---|
ArrayList<SootField> |
FinalFieldDefinition.findFinalFields() |
ArrayList<SootField> |
FinalFieldDefinition.findFinalFields() |
Modifier and Type | Method and Description |
---|---|
void |
FinalFieldDefinition.assignDefault(ASTMethodNode node,
SootField f) |
void |
FinalFieldDefinition.assignDefault(ASTMethodNode node,
SootField f) |
void |
FinalFieldDefinition.handleAssignOnSomePaths(ASTMethodNode node,
SootField field,
List defs) |
void |
FinalFieldDefinition.handleAssignOnSomePaths(ASTMethodNode node,
SootField field,
List defs) |
Modifier and Type | Method and Description |
---|---|
void |
FinalFieldDefinition.analyzeMethod(ASTMethodNode node,
List<SootField> varsOfInterest) |
void |
FinalFieldDefinition.analyzeMethod(ASTMethodNode node,
List<SootField> varsOfInterest) |
Constructor and Description |
---|
CPApplication(ASTMethodNode AST,
HashMap<String,Object> constantValueFields,
HashMap<String,SootField> classNameFieldNameToSootFieldMapping) |
CPApplication(ASTMethodNode AST,
HashMap<String,Object> constantValueFields,
HashMap<String,SootField> classNameFieldNameToSootFieldMapping) |
CPApplication(boolean verbose,
ASTMethodNode AST,
HashMap<String,Object> constantValueFields,
HashMap<String,SootField> classNameFieldNameToSootFieldMapping) |
CPApplication(boolean verbose,
ASTMethodNode AST,
HashMap<String,Object> constantValueFields,
HashMap<String,SootField> classNameFieldNameToSootFieldMapping) |
Modifier and Type | Method and Description |
---|---|
List |
AllVariableUses.getUsesForField(SootField field) |
List |
AllVariableUses.getUsesForField(SootField field) |
Modifier and Type | Method and Description |
---|---|
static SootField |
DexField.makeSootField(Field f) |
static SootField |
DexField.makeSootField(Field f) |
Modifier and Type | Method and Description |
---|---|
ArrayList<SootField> |
PolyglotMethodSource.getFinalsList() |
ArrayList<SootField> |
PolyglotMethodSource.getFinalsList() |
Modifier and Type | Method and Description |
---|---|
void |
PolyglotMethodSource.setFinalsList(ArrayList<SootField> list) |
void |
PolyglotMethodSource.setFinalsList(ArrayList<SootField> list) |
Modifier and Type | Field and Description |
---|---|
static SootField |
CollectConstants.field |
static SootField |
CollectConstants.field |
static SootField[][] |
FieldRenamer.opaquePairs |
static SootField[][] |
FieldRenamer.opaquePairs |
Modifier and Type | Field and Description |
---|---|
static HashMap<Constant,SootField> |
CollectConstants.constantsToFields |
static HashMap<Constant,SootField> |
CollectConstants.constantsToFields |
static Hashtable<SootClass,SootField> |
FieldRenamer.opaquePreds1ByClass |
static Hashtable<SootClass,SootField> |
FieldRenamer.opaquePreds1ByClass |
static Hashtable<SootClass,SootField> |
FieldRenamer.opaquePreds2ByClass |
static Hashtable<SootClass,SootField> |
FieldRenamer.opaquePreds2ByClass |
static ArrayList<SootField> |
FieldRenamer.sootFieldsRenamed |
static ArrayList<SootField> |
FieldRenamer.sootFieldsRenamed |
Modifier and Type | Method and Description |
---|---|
static SootField[] |
FieldRenamer.getRandomOpaques() |
static SootField[] |
FieldRenamer.getRandomOpaques() |
Modifier and Type | Method and Description |
---|---|
protected void |
FieldRenamer.renameField(String cName,
SootField f) |
protected void |
FieldRenamer.renameField(String cName,
SootField f) |
protected void |
FieldRenamer.setBooleanTo(SootClass c,
SootField f,
boolean value) |
protected void |
FieldRenamer.setBooleanTo(SootClass c,
SootField f,
boolean value) |
Modifier and Type | Method and Description |
---|---|
SootField |
FieldRef.getField() |
SootField |
StaticFieldRef.getField() |
SootField |
FieldRef.getField() |
SootField |
StaticFieldRef.getField() |
Modifier and Type | Method and Description |
---|---|
SootField |
AbstractInstanceFieldRef.getField() |
SootField |
AbstractInstanceFieldRef.getField() |
Modifier and Type | Method and Description |
---|---|
PointsToSet |
GeomPointsTo.reachingObjects(AllocNode an,
SootField f) |
PointsToSet |
GeomPointsTo.reachingObjects(AllocNode an,
SootField f) |
PointsToSet |
GeomPointsTo.reachingObjects(Context c,
Local l,
SootField f) |
PointsToSet |
GeomPointsTo.reachingObjects(Context c,
Local l,
SootField f) |
PointsToSet |
GeomPointsTo.reachingObjects(Local l,
SootField f) |
PointsToSet |
GeomPointsTo.reachingObjects(Local l,
SootField f) |
PointsToSet |
GeomPointsTo.reachingObjects(PointsToSet s,
SootField f) |
PointsToSet |
GeomPointsTo.reachingObjects(PointsToSet s,
SootField f) |
PointsToSet |
GeomPointsTo.reachingObjects(SootField f) |
PointsToSet |
GeomPointsTo.reachingObjects(SootField f) |
Modifier and Type | Method and Description |
---|---|
boolean |
ClientAccessibilityOracle.isAccessible(SootField field)
Determines whether the field is accessible for a potential library user.
|
boolean |
CompleteAccessibility.isAccessible(SootField field) |
boolean |
PublicAndProtectedAccessibility.isAccessible(SootField field) |
boolean |
ClientAccessibilityOracle.isAccessible(SootField field)
Determines whether the field is accessible for a potential library user.
|
boolean |
CompleteAccessibility.isAccessible(SootField field) |
boolean |
PublicAndProtectedAccessibility.isAccessible(SootField field) |
Modifier and Type | Method and Description |
---|---|
PointsToSet |
DemandCSPointsTo.reachingObjects(Context c,
Local l,
SootField f)
Currently not implemented.
|
PointsToSet |
DemandCSPointsTo.reachingObjects(Context c,
Local l,
SootField f)
Currently not implemented.
|
PointsToSet |
DemandCSPointsTo.reachingObjects(Local l,
SootField f)
Currently not implemented.
|
PointsToSet |
DemandCSPointsTo.reachingObjects(Local l,
SootField f)
Currently not implemented.
|
PointsToSet |
DemandCSPointsTo.reachingObjects(PointsToSet s,
SootField f)
Currently not implemented.
|
PointsToSet |
DemandCSPointsTo.reachingObjects(PointsToSet s,
SootField f)
Currently not implemented.
|
PointsToSet |
DemandCSPointsTo.reachingObjects(SootField f)
Currently not implemented.
|
PointsToSet |
DemandCSPointsTo.reachingObjects(SootField f)
Currently not implemented.
|
Modifier and Type | Method and Description |
---|---|
PointsToSet |
PAG.reachingObjects(Context c,
Local l,
SootField f)
Returns the set of objects pointed to by instance field f of the objects
pointed to by l in context c.
|
PointsToSet |
PAG.reachingObjects(Context c,
Local l,
SootField f)
Returns the set of objects pointed to by instance field f of the objects
pointed to by l in context c.
|
PointsToSet |
PAG.reachingObjects(Local l,
SootField f)
Returns the set of objects pointed to by instance field f of the objects
pointed to by l.
|
PointsToSet |
PAG.reachingObjects(Local l,
SootField f)
Returns the set of objects pointed to by instance field f of the objects
pointed to by l.
|
PointsToSet |
PAG.reachingObjects(PointsToSet s,
SootField f)
Returns the set of objects pointed to by instance field f of the objects
in the PointsToSet s.
|
PointsToSet |
PAG.reachingObjects(PointsToSet s,
SootField f)
Returns the set of objects pointed to by instance field f of the objects
in the PointsToSet s.
|
PointsToSet |
PAG.reachingObjects(SootField f)
Returns the set of objects pointed to by static field f.
|
PointsToSet |
PAG.reachingObjects(SootField f)
Returns the set of objects pointed to by static field f.
|
Modifier and Type | Method and Description |
---|---|
Object |
ClassFieldAnalysis.getFieldInfo(SootField field) |
Object |
ClassFieldAnalysis.getFieldInfo(SootField field) |
Modifier and Type | Method and Description |
---|---|
void |
ClassFieldAnalysis.ScanMethod(SootMethod method,
Set<SootField> candidates,
Hashtable<SootField,soot.jimple.toolkits.annotation.arraycheck.IntValueContainer> fieldinfo) |
void |
ClassFieldAnalysis.ScanMethod(SootMethod method,
Set<SootField> candidates,
Hashtable<SootField,soot.jimple.toolkits.annotation.arraycheck.IntValueContainer> fieldinfo) |
void |
ClassFieldAnalysis.ScanMethod(SootMethod method,
Set<SootField> candidates,
Hashtable<SootField,soot.jimple.toolkits.annotation.arraycheck.IntValueContainer> fieldinfo) |
void |
ClassFieldAnalysis.ScanMethod(SootMethod method,
Set<SootField> candidates,
Hashtable<SootField,soot.jimple.toolkits.annotation.arraycheck.IntValueContainer> fieldinfo) |
Modifier and Type | Method and Description |
---|---|
static List<SootField> |
ClassLocalObjectsAnalysis.getAllFields(SootClass sc) |
static List<SootField> |
ClassLocalObjectsAnalysis.getAllFields(SootClass sc) |
List<SootField> |
UseFinder.getExtFields(SootClass sc) |
List<SootField> |
UseFinder.getExtFields(SootClass sc) |
List<SootField> |
ClassLocalObjectsAnalysis.getInnerSharedFields() |
List<SootField> |
ClassLocalObjectsAnalysis.getInnerSharedFields() |
protected List<SootField> |
ClassLocalObjectsAnalysis.getLocalFields() |
protected List<SootField> |
ClassLocalObjectsAnalysis.getLocalFields() |
protected List<SootField> |
ClassLocalObjectsAnalysis.getSharedFields() |
protected List<SootField> |
ClassLocalObjectsAnalysis.getSharedFields() |
Modifier and Type | Method and Description |
---|---|
static EquivalentValue |
InfoFlowAnalysis.getNodeForFieldRef(SootMethod sm,
SootField sf)
Returns an unmodifiable list of EquivalentValue wrapped Refs that sink
flows from when method sm is called.
|
static EquivalentValue |
InfoFlowAnalysis.getNodeForFieldRef(SootMethod sm,
SootField sf)
Returns an unmodifiable list of EquivalentValue wrapped Refs that sink
flows from when method sm is called.
|
static EquivalentValue |
InfoFlowAnalysis.getNodeForFieldRef(SootMethod sm,
SootField sf,
Local realLocal) |
static EquivalentValue |
InfoFlowAnalysis.getNodeForFieldRef(SootMethod sm,
SootField sf,
Local realLocal) |
protected boolean |
ClassLocalObjectsAnalysis.isFieldLocal(SootField field) |
protected boolean |
ClassLocalObjectsAnalysis.isFieldLocal(SootField field) |
boolean |
LocalObjectsAnalysis.isFieldLocalToParent(SootField sf) |
boolean |
LocalObjectsAnalysis.isFieldLocalToParent(SootField sf) |
Modifier and Type | Field and Description |
---|---|
HashMap<SootClass,SootField> |
SynchronizerManager.classToClassField
Maps classes to class$ fields.
|
HashMap<SootClass,SootField> |
SynchronizerManager.classToClassField
Maps classes to class$ fields.
|
Modifier and Type | Method and Description |
---|---|
boolean |
FullRWSet.addGlobal(SootField global) |
boolean |
MethodRWSet.addGlobal(SootField global) |
abstract boolean |
RWSet.addGlobal(SootField global) |
boolean |
SiteRWSet.addGlobal(SootField global) |
boolean |
StmtRWSet.addGlobal(SootField global) |
boolean |
FullRWSet.addGlobal(SootField global) |
abstract boolean |
RWSet.addGlobal(SootField global) |
boolean |
SiteRWSet.addGlobal(SootField global) |
boolean |
StmtRWSet.addGlobal(SootField global) |
boolean |
MethodRWSet.addGlobal(SootField global) |
PointsToSet |
DumbPointerAnalysis.reachingObjects(Context c,
Local l,
SootField f)
Returns the set of objects pointed to by instance field f
of the objects pointed to by l in context c.
|
PointsToSet |
DumbPointerAnalysis.reachingObjects(Context c,
Local l,
SootField f)
Returns the set of objects pointed to by instance field f
of the objects pointed to by l in context c.
|
PointsToSet |
DumbPointerAnalysis.reachingObjects(Local l,
SootField f)
Returns the set of objects pointed to by instance field f
of the objects pointed to by l.
|
PointsToSet |
DumbPointerAnalysis.reachingObjects(Local l,
SootField f)
Returns the set of objects pointed to by instance field f
of the objects pointed to by l.
|
PointsToSet |
DumbPointerAnalysis.reachingObjects(PointsToSet s,
SootField f)
Returns the set of objects pointed to by instance field f
of the objects in the PointsToSet s.
|
PointsToSet |
DumbPointerAnalysis.reachingObjects(PointsToSet s,
SootField f)
Returns the set of objects pointed to by instance field f
of the objects in the PointsToSet s.
|
PointsToSet |
DumbPointerAnalysis.reachingObjects(SootField f)
Returns the set of objects pointed to by static field f.
|
PointsToSet |
DumbPointerAnalysis.reachingObjects(SootField f)
Returns the set of objects pointed to by static field f.
|
Modifier and Type | Method and Description |
---|---|
protected static BuilderFieldReference |
DexPrinter.toFieldReference(SootField f,
DexBuilder belongingDexFile) |
protected static BuilderFieldReference |
DexPrinter.toFieldReference(SootField f,
DexBuilder belongingDexFile) |
Modifier and Type | Method and Description |
---|---|
static boolean |
ASMBackendUtils.acceptsStringInitialValue(SootField field)
Determine if the field accepts a string default value, this
is only true for fields of type String or a sub-type of String
|
static boolean |
ASMBackendUtils.acceptsStringInitialValue(SootField field)
Determine if the field accepts a string default value, this
is only true for fields of type String or a sub-type of String
|
static Object |
ASMBackendUtils.getDefaultValue(SootField field)
Get default value of a field for constant pool
|
static Object |
ASMBackendUtils.getDefaultValue(SootField field)
Get default value of a field for constant pool
|
Modifier and Type | Method and Description |
---|---|
void |
TagCollector.collectFieldTags(SootField sf) |
void |
TagCollector.collectFieldTags(SootField sf) |