13#ifndef LLVM_CLANG_LIB_STATICANALYZER_CHECKERS_TAINT_H
14#define LLVM_CLANG_LIB_STATICANALYZER_CHECKERS_TAINT_H
106 bool returnFirstOnly);
110 bool returnFirstOnly);
114 bool returnFirstOnly);
119 bool returnFirstOnly);
122 const char *sep =
"");
This represents one expression.
It wraps the AnalysisDeclContext to represent both the call stack with the help of StackFrameContext ...
MemRegion - The root abstract class for all memory regions.
SVal - This represents a symbolic expression, which can be either an L-value or an R-value.
SubRegion - A region that subsets another larger region.
std::vector< SymbolRef > getTaintedSymbols(ProgramStateRef State, const Expr *E, const LocationContext *LCtx, TaintTagType Kind=TaintTagGeneric)
Returns the tainted Symbols for a given expression and state.
ProgramStateRef removeTaint(ProgramStateRef State, SVal V)
std::vector< SymbolRef > getTaintedSymbolsImpl(ProgramStateRef State, const Expr *E, const LocationContext *LCtx, TaintTagType Kind, bool returnFirstOnly)
void printTaint(ProgramStateRef State, raw_ostream &Out, const char *nl="\n", const char *sep="")
ProgramStateRef addTaint(ProgramStateRef State, const Expr *E, const LocationContext *LCtx, TaintTagType Kind=TaintTagGeneric)
Create a new state in which the value of the expression is marked as tainted.
ProgramStateRef addPartialTaint(ProgramStateRef State, SymbolRef ParentSym, const SubRegion *SubRegion, TaintTagType Kind=TaintTagGeneric)
Create a new state in a which a sub-region of a given symbol is tainted.
bool isTainted(ProgramStateRef State, const Expr *E, const LocationContext *LCtx, TaintTagType Kind=TaintTagGeneric)
Check if the expression has a tainted value in the given state.
LLVM_DUMP_METHOD void dumpTaint(ProgramStateRef State)
unsigned TaintTagType
The type of taint, which helps to differentiate between different types of taint.
static constexpr TaintTagType TaintTagGeneric
IntrusiveRefCntPtr< const ProgramState > ProgramStateRef
const SymExpr * SymbolRef
The JSON file list parser is used to communicate input to InstallAPI.