public class TaintFrameModelingVisitor extends edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>
| Constructor and Description |
|---|
TaintFrameModelingVisitor(org.apache.bcel.generic.ConstantPoolGen cpg,
edu.umd.cs.findbugs.classfile.MethodDescriptor method,
TaintConfig taintConfig)
Constructs the object and stores the parameters
|
| Modifier and Type | Method and Description |
|---|---|
void |
analyzeInstruction(org.apache.bcel.generic.Instruction ins) |
void |
finishAnalysis()
This method must be called from outside at the end of the method analysis
|
Taint |
getDefaultValue() |
void |
handleLoadInstruction(org.apache.bcel.generic.LoadInstruction obj) |
void |
handleStoreInstruction(org.apache.bcel.generic.StoreInstruction obj) |
void |
visitAALOAD(org.apache.bcel.generic.AALOAD obj) |
void |
visitAASTORE(org.apache.bcel.generic.AASTORE obj) |
void |
visitACONST_NULL(org.apache.bcel.generic.ACONST_NULL obj) |
void |
visitANEWARRAY(org.apache.bcel.generic.ANEWARRAY obj) |
void |
visitARETURN(org.apache.bcel.generic.ARETURN obj) |
void |
visitBIPUSH(org.apache.bcel.generic.BIPUSH obj) |
void |
visitCHECKCAST(org.apache.bcel.generic.CHECKCAST obj) |
void |
visitGETFIELD(org.apache.bcel.generic.GETFIELD obj) |
void |
visitGETSTATIC(org.apache.bcel.generic.GETSTATIC obj) |
void |
visitICONST(org.apache.bcel.generic.ICONST obj) |
void |
visitINVOKEINTERFACE(org.apache.bcel.generic.INVOKEINTERFACE obj) |
void |
visitINVOKESPECIAL(org.apache.bcel.generic.INVOKESPECIAL obj) |
void |
visitINVOKESTATIC(org.apache.bcel.generic.INVOKESTATIC obj) |
void |
visitINVOKEVIRTUAL(org.apache.bcel.generic.INVOKEVIRTUAL obj) |
void |
visitLDC(org.apache.bcel.generic.LDC ldc) |
void |
visitLDC2_W(org.apache.bcel.generic.LDC2_W obj) |
void |
visitNEW(org.apache.bcel.generic.NEW obj) |
void |
visitSIPUSH(org.apache.bcel.generic.SIPUSH obj) |
getCPG, getFrame, getLocation, getNumWordsConsumed, getNumWordsProduced, handleNormalInstruction, modelInstruction, modelNormalInstruction, setFrameAndLocation, visitAllocationInstruction, visitALOAD, visitArithmeticInstruction, visitArrayInstruction, visitARRAYLENGTH, visitASTORE, visitATHROW, visitBALOAD, visitBASTORE, visitBranchInstruction, visitBREAKPOINT, visitCALOAD, visitCASTORE, visitConstantPushInstruction, visitConversionInstruction, visitConversionInstruction2, visitCPInstruction, visitD2F, visitD2I, visitD2L, visitDADD, visitDALOAD, visitDASTORE, visitDCMPG, visitDCMPL, visitDCONST, visitDDIV, visitDLOAD, visitDMUL, visitDNEG, visitDREM, visitDRETURN, visitDSTORE, visitDSUB, visitDUP_X1, visitDUP_X2, visitDUP, visitDUP2_X1, visitDUP2_X2, visitDUP2, visitExceptionThrower, visitF2D, visitF2I, visitF2L, visitFADD, visitFALOAD, visitFASTORE, visitFCMPG, visitFCMPL, visitFCONST, visitFDIV, visitFieldInstruction, visitFieldOrMethod, visitFLOAD, visitFMUL, visitFNEG, visitFREM, visitFRETURN, visitFSTORE, visitFSUB, visitGOTO_W, visitGOTO, visitGotoInstruction, visitI2B, visitI2C, visitI2D, visitI2F, visitI2L, visitI2S, visitIADD, visitIALOAD, visitIAND, visitIASTORE, visitIDIV, visitIF_ACMPEQ, visitIF_ACMPNE, visitIF_ICMPEQ, visitIF_ICMPGE, visitIF_ICMPGT, visitIF_ICMPLE, visitIF_ICMPLT, visitIF_ICMPNE, visitIFEQ, visitIFGE, visitIFGT, visitIfInstruction, visitIFLE, visitIFLT, visitIFNE, visitIFNONNULL, visitIFNULL, visitIINC, visitILOAD, visitIMPDEP1, visitIMPDEP2, visitIMUL, visitINEG, visitINSTANCEOF, visitINVOKEDYNAMIC, visitInvokeInstruction, visitIOR, visitIREM, visitIRETURN, visitISHL, visitISHR, visitISTORE, visitISUB, visitIUSHR, visitIXOR, visitJSR_W, visitJSR, visitJsrInstruction, visitL2D, visitL2F, visitL2I, visitLADD, visitLALOAD, visitLAND, visitLASTORE, visitLCMP, visitLCONST, visitLDIV, visitLLOAD, visitLMUL, visitLNEG, visitLoadClass, visitLoadInstruction, visitLocalVariableInstruction, visitLOOKUPSWITCH, visitLOR, visitLREM, visitLRETURN, visitLSHL, visitLSHR, visitLSTORE, visitLSUB, visitLUSHR, visitLXOR, visitMONITORENTER, visitMONITOREXIT, visitMULTIANEWARRAY, visitNEWARRAY, visitNONNULL2Z, visitNOP, visitNULL2Z, visitPOP, visitPOP2, visitPopInstruction, visitPushInstruction, visitPUTFIELD, visitPUTSTATIC, visitRET, visitRETURN, visitReturnInstruction, visitSALOAD, visitSASTORE, visitSelect, visitStackConsumer, visitStackInstruction, visitStackProducer, visitStoreInstruction, visitSWAP, visitTABLESWITCH, visitTypedInstruction, visitUnconditionalBranch, visitVariableLengthInstructionpublic TaintFrameModelingVisitor(org.apache.bcel.generic.ConstantPoolGen cpg,
edu.umd.cs.findbugs.classfile.MethodDescriptor method,
TaintConfig taintConfig)
cpg - constant pool gen for super classmethod - descriptor of analysed methodtaintConfig - current configured and derived taint summariesNullPointerException - if arguments method or taintConfig is nullpublic void analyzeInstruction(org.apache.bcel.generic.Instruction ins)
throws edu.umd.cs.findbugs.ba.DataflowAnalysisException
analyzeInstruction in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>edu.umd.cs.findbugs.ba.DataflowAnalysisExceptionpublic Taint getDefaultValue()
getDefaultValue in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitLDC(org.apache.bcel.generic.LDC ldc)
visitLDC in interface org.apache.bcel.generic.VisitorvisitLDC in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitLDC2_W(org.apache.bcel.generic.LDC2_W obj)
visitLDC2_W in interface org.apache.bcel.generic.VisitorvisitLDC2_W in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitBIPUSH(org.apache.bcel.generic.BIPUSH obj)
visitBIPUSH in interface org.apache.bcel.generic.VisitorvisitBIPUSH in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitSIPUSH(org.apache.bcel.generic.SIPUSH obj)
visitSIPUSH in interface org.apache.bcel.generic.VisitorvisitSIPUSH in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitGETSTATIC(org.apache.bcel.generic.GETSTATIC obj)
visitGETSTATIC in interface org.apache.bcel.generic.VisitorvisitGETSTATIC in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitACONST_NULL(org.apache.bcel.generic.ACONST_NULL obj)
visitACONST_NULL in interface org.apache.bcel.generic.VisitorvisitACONST_NULL in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitICONST(org.apache.bcel.generic.ICONST obj)
visitICONST in interface org.apache.bcel.generic.VisitorvisitICONST in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitGETFIELD(org.apache.bcel.generic.GETFIELD obj)
visitGETFIELD in interface org.apache.bcel.generic.VisitorvisitGETFIELD in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitNEW(org.apache.bcel.generic.NEW obj)
visitNEW in interface org.apache.bcel.generic.VisitorvisitNEW in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void handleStoreInstruction(org.apache.bcel.generic.StoreInstruction obj)
handleStoreInstruction in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void handleLoadInstruction(org.apache.bcel.generic.LoadInstruction obj)
handleLoadInstruction in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitINVOKEINTERFACE(org.apache.bcel.generic.INVOKEINTERFACE obj)
visitINVOKEINTERFACE in interface org.apache.bcel.generic.VisitorvisitINVOKEINTERFACE in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitINVOKESPECIAL(org.apache.bcel.generic.INVOKESPECIAL obj)
visitINVOKESPECIAL in interface org.apache.bcel.generic.VisitorvisitINVOKESPECIAL in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitINVOKESTATIC(org.apache.bcel.generic.INVOKESTATIC obj)
visitINVOKESTATIC in interface org.apache.bcel.generic.VisitorvisitINVOKESTATIC in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitINVOKEVIRTUAL(org.apache.bcel.generic.INVOKEVIRTUAL obj)
visitINVOKEVIRTUAL in interface org.apache.bcel.generic.VisitorvisitINVOKEVIRTUAL in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitANEWARRAY(org.apache.bcel.generic.ANEWARRAY obj)
visitANEWARRAY in interface org.apache.bcel.generic.VisitorvisitANEWARRAY in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitAASTORE(org.apache.bcel.generic.AASTORE obj)
visitAASTORE in interface org.apache.bcel.generic.VisitorvisitAASTORE in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitAALOAD(org.apache.bcel.generic.AALOAD obj)
visitAALOAD in interface org.apache.bcel.generic.VisitorvisitAALOAD in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitCHECKCAST(org.apache.bcel.generic.CHECKCAST obj)
visitCHECKCAST in interface org.apache.bcel.generic.VisitorvisitCHECKCAST in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void visitARETURN(org.apache.bcel.generic.ARETURN obj)
visitARETURN in interface org.apache.bcel.generic.VisitorvisitARETURN in class edu.umd.cs.findbugs.ba.AbstractFrameModelingVisitor<Taint,TaintFrame>public void finishAnalysis()
Copyright © 2017. All rights reserved.