pub fn do_taint_analysis_on_function<'m>(
modules: impl IntoIterator<Item = &'m Module>,
config: &'m Config,
start_fn_name: &str,
args: Option<Vec<TaintedType>>,
nonargs: HashMap<Name, TaintedType>,
named_structs: HashMap<String, NamedStructInitialDef>,
) -> TaintResult<'m>
Expand description
The main function in this module. Given an LLVM module or modules and the
name of a function to analyze, returns a TaintResult
with data on that
function and all functions it calls, directly or transitively.
args
: the TaintedType
to assign to each argument of the start function.
If this is not provided, all arguments (and everything they point to, etc)
will be marked untainted.
nonargs
: (optional) Initial TaintedType
s for any nonargument variables in
the start function. For instance, you can use this to set some variable in
the middle of the function to tainted. If this map is empty, all
TaintedType
s will simply be inferred normally from the argument
TaintedType
s.