Module type Source.Kind
include TaintTraceElem.Kind
val matches : caller:t -> callee:t -> bool
Return true if the
caller
element kind matches thecallee
element kind. Used during trace expansion; we will only consider expanding the trace from caller into callee if this evaluates to true. This can normally just beequal
, but something fuzzier may be required ift
is a type that contains identifiers from the caller/callee
val pp : Absint.TaintTraceElem.F.formatter -> t -> unit
val get : caller_pname:IR.Procname.t -> IR.Procname.t -> HilExp.t list -> IR.Tenv.t -> (t * int option) list
return Some (kind) if the procedure with the given actuals is a taint source, None otherwise
val get_tainted_formals : IR.Procdesc.t -> IR.Tenv.t -> (IR.Mangled.t * IR.Typ.t * t option) list
return each formal of the function paired with either Some(kind) if the formal is a taint source, or None if the formal is not a taint source