PolyTracker Documentation
PolyTracker is a tool originally created for the Automated Lexical Annotation and Navigation of Parsers, a backronym devised solely for the purpose of referring to it as The ALAN Parsers Project. However, it has evolved into a general purpose tool for efficiently performing data-flow and control-flow analysis of programs. PolyTracker is an LLVM pass that instruments programs to track which bytes of an input file are operated on by which functions. It outputs a database containing the data-flow information, as well as a runtime trace. PolyTracker also provides a Python library for interacting with and analyzing its output, as well as an interactive Python REPL.
This documentation is primarily targeted toward developers wishing to integrate with the Python post-processing API. For general usage instructions and documentation on how to compile an isntrumented program, see the general README on the GitHub page.
- PolyTracker API
- polytracker
- polytracker.__main__
- polytracker.build
- polytracker.cache
- polytracker.cfg
- polytracker.containerization
- polytracker.datalog
- polytracker.diffing
- polytracker.grammars
- polytracker.graphs
- polytracker.inputs
- polytracker.mapping
- polytracker.parsing
- polytracker.plugins
- polytracker.repl
- polytracker.taint_dag
- taint_dag classes
- TDBitmapSection
- TDControlFlowLogSection
- TDEnterFunctionEvent
- TDEvent
- TDEventsSection
- TDFDHeader
- TDFile
- TDFileMeta
- TDFnHeader
- TDFunctionsSection
- TDInfo
- TDLabelSection
- TDLeaveFunctionEvent
- TDNode
- TDProgramTrace
- TDRangeNode
- TDSectionMeta
- TDSink
- TDSinkSection
- TDSourceIndexSection
- TDSourceNode
- TDSourceSection
- TDStringSection
- TDTaintForest
- TDTaintForestNode
- TDTaintOutput
- TDTaintedControlFlowEvent
- TDUnionNode
- TDUntaintedNode
- taint_dag classes
- polytracker.taint_forest
- polytracker.tracing
- polytracker.visualizations