| Package | Description |
|---|---|
| qilin.core.builder | |
| qilin.core.pag | |
| qilin.pta.toolkits.common | |
| qilin.pta.toolkits.conch | |
| qilin.pta.toolkits.debloaterx | |
| qilin.util |
Generally useful utility classes for Soot.
|
| Modifier and Type | Field and Description |
|---|---|
protected Map<VarNode,Collection<VirtualCallSite>> |
CallGraphBuilder.receiverToSites |
| Modifier and Type | Method and Description |
|---|---|
VarNode |
MethodNodeFactory.caseClassConstant(ClassConstant cc) |
VarNode |
MethodNodeFactory.caseMethodThrow() |
VarNode |
MethodNodeFactory.caseParm(int index) |
VarNode |
MethodNodeFactory.caseRet() |
VarNode |
MethodNodeFactory.caseThis() |
VarNode |
CallGraphBuilder.getReceiverVarNode(Local receiver,
ContextMethod m) |
| Modifier and Type | Method and Description |
|---|---|
Map<VarNode,Collection<VirtualCallSite>> |
CallGraphBuilder.getReceiverToSitesMap() |
| Modifier and Type | Method and Description |
|---|---|
Collection<VirtualCallSite> |
CallGraphBuilder.callSitesLookUp(VarNode receiver) |
FieldRefNode |
MethodNodeFactory.caseArray(VarNode base) |
boolean |
CallGraphBuilder.recordVirtualCallSite(VarNode receiver,
VirtualCallSite site) |
Collection<ExceptionThrowSite> |
ExceptionHandler.throwSitesLookUp(VarNode throwNode) |
| Modifier and Type | Class and Description |
|---|---|
class |
ContextVarNode |
class |
GlobalVarNode
Represents a simple variable node in the pointer assignment graph that is not associated with any
particular method invocation.
|
class |
LocalVarNode |
| Modifier and Type | Field and Description |
|---|---|
protected VarNode |
FieldRefNode.base |
| Modifier and Type | Field and Description |
|---|---|
protected Map<AllocNode,Set<VarNode>> |
PAG.alloc |
protected Map<VarNode,Set<AllocNode>> |
PAG.allocInv |
protected Map<VarNode,Map<Context,ContextVarNode>> |
PAG.contextVarNodeMap |
protected Map<FieldRefNode,Set<VarNode>> |
PAG.load |
protected Map<VarNode,Set<FieldRefNode>> |
PAG.loadInv |
protected Map<VarNode,Set<FieldRefNode>> |
PAG.store |
protected Map<FieldRefNode,Set<VarNode>> |
PAG.storeInv |
| Modifier and Type | Method and Description |
|---|---|
VarNode |
LocalVarNode.base() |
VarNode |
ContextVarNode.base() |
VarNode |
GlobalVarNode.base() |
abstract VarNode |
VarNode.base() |
VarNode |
FieldRefNode.getBase()
Returns the base of this field reference.
|
VarNode |
ExceptionThrowSite.getThrowNode() |
VarNode |
VirtualCallSite.recNode() |
| Modifier and Type | Method and Description |
|---|---|
Set<VarNode> |
PAG.allocLookup(AllocNode key) |
Map<AllocNode,Set<VarNode>> |
PAG.getAlloc() |
Map<VarNode,Map<Context,ContextVarNode>> |
PAG.getContextVarNodeMap() |
Map<FieldRefNode,Set<VarNode>> |
PAG.getLoad() |
Map<FieldRefNode,Set<VarNode>> |
PAG.getStoreInv() |
Collection<VarNode> |
PAG.getVarNodes(SootMethod m,
Local local) |
Set<VarNode> |
PAG.loadLookup(FieldRefNode key) |
Set<VarNode> |
PAG.storeInvLookup(FieldRefNode key) |
| Modifier and Type | Method and Description |
|---|---|
Set<AllocNode> |
PAG.allocInvLookup(VarNode key) |
Set<FieldRefNode> |
PAG.loadInvLookup(VarNode key) |
ContextVarNode |
PAG.makeContextVarNode(VarNode base,
Context context)
Finds or creates the ContextVarNode for base variable base and context.
|
FieldRefNode |
PAG.makeFieldRefNode(VarNode base,
SparkField field)
Finds or creates the FieldRefNode for base variable base and field field, of type type.
|
Set<FieldRefNode> |
PAG.storeLookup(VarNode key) |
| Constructor and Description |
|---|
ContextVarNode(VarNode base,
Context context) |
ExceptionThrowSite(VarNode throwNode,
Stmt unit,
ContextMethod container) |
FieldRefNode(VarNode base,
SparkField field) |
VirtualCallSite(VarNode recNode,
Stmt stmt,
ContextMethod container,
AbstractInstanceInvokeExpr iie,
MethodSubSignature subSig,
Kind kind) |
| Modifier and Type | Method and Description |
|---|---|
static VarNode |
ToolUtil.getThis(PAG pag,
SootMethod m) |
| Modifier and Type | Method and Description |
|---|---|
static Set<VarNode> |
ToolUtil.getParameters(PAG pag,
SootMethod m) |
static Set<VarNode> |
ToolUtil.getRetVars(PAG pag,
SootMethod m) |
| Modifier and Type | Method and Description |
|---|---|
static int |
ToolUtil.pointsToSetSizeOf(PTA pta,
VarNode var) |
| Modifier and Type | Field and Description |
|---|---|
protected Map<SootMethod,Map<SparkField,Set<VarNode>>> |
AbstractConch.m2thisFLoads |
protected Map<SootMethod,Map<SparkField,Set<Pair<VarNode,VarNode>>>> |
AbstractConch.m2thisFStores |
protected Map<SootMethod,Map<SparkField,Set<Pair<VarNode,VarNode>>>> |
AbstractConch.m2thisFStores |
protected Map<AllocNode,Map<SparkField,Set<VarNode>>> |
AbstractConch.o2nonThisFLoads |
protected Map<AllocNode,Map<SparkField,Set<Pair<VarNode,VarNode>>>> |
AbstractConch.o2nonThisFStores |
protected Map<AllocNode,Map<SparkField,Set<Pair<VarNode,VarNode>>>> |
AbstractConch.o2nonThisFStores |
| Modifier and Type | Field and Description |
|---|---|
protected Map<AllocNode,Map<SparkField,Set<VarNode>>> |
XUtility.o2nonThisFLoads |
protected Map<AllocNode,Map<SparkField,Set<VarNode>>> |
XUtility.o2nonThisFStores |
protected Map<Type,Map<SparkField,Set<VarNode>>> |
XUtility.t2nonThisFLoads |
protected Map<Type,Map<SparkField,Set<VarNode>>> |
XUtility.t2nonThisFStores |
| Modifier and Type | Method and Description |
|---|---|
static boolean |
PTAUtils.mustAlias(PTA pta,
VarNode v1,
VarNode v2) |
static LocalVarNode |
PTAUtils.paramToArg(PAG pag,
Stmt invokeStmt,
MethodPAG srcmpag,
VarNode pi) |
Copyright © 2024 Soot OSS. All rights reserved.