Crate haybale_pitchfork[−][src]
Expand description
For an introduction to the crate and how to get started, see the crate’s README.
Modules
This module contains helper functions that may be useful in writing function hooks.
This module contains a few simple built-in function hooks which can be used
with Config.function_hooks
.
This module contains the dynamic taint-tracking layer implemented on
top of haybale
. It provides a haybale::backend::Backend
which
performs dynamic taint tracking and reports constant-time violations.
Structs
An abstract description of a value: its size, whether it is a pointer or not, whether it is public or secret (or maybe it’s a struct with some public and some secret fields, or maybe it’s a public pointer that points to some secret data), etc.
Various settings which affect how the symbolic execution is performed.
Holds information about the results of a constant-time analysis of a particular function.
Some statistics which can be computed from a
ConstantTimeResultForFunction
.
pitchfork
-specific configuration options, in addition to the configuration
options in haybale::Config
.
A Project
is a collection of LLVM code to be explored,
consisting of one or more LLVM modules.
Enums
A variety of ways to specify a numerical value, from completely unconstrained to fully constrained.
Holds information about the results of a constant-time analysis of a single path.
Functions
Checks whether a function is “constant-time” in the secrets identified by the
args
data structure. That is, does the function ever make branching
decisions, or perform address calculations, based on secrets.
Checks whether a function is “constant-time” in its inputs. That is, does the function ever make branching decisions, or perform address calculations, based on its inputs.
This function is designed to be called in your main()
.
It processes command-line arguments and coordinates the overall analysis.
Get a formatted version of the coverage results as a String
.
Type Definitions
A map from struct name to an AbstractData
description of the struct