libTriton  version 0.6 build 1375
Classes | Typedefs | Enumerations
Callbacks
Collaboration diagram for Callbacks:

Classes

class  triton::callbacks::Callbacks
 The callbacks class. More...
 

Typedefs

using triton::callbacks::getConcreteMemoryValueCallback = ComparableFunctor< void(triton::API &, const triton::arch::MemoryAccess &)>
 The prototype of a GET_CONCRETE_MEMORY_VALUE callback. More...
 
using triton::callbacks::getConcreteRegisterValueCallback = ComparableFunctor< void(triton::API &, const triton::arch::Register &)>
 The prototype of a GET_CONCRETE_REGISTER_VALUE callback. More...
 
using triton::callbacks::setConcreteMemoryValueCallback = ComparableFunctor< void(triton::API &, const triton::arch::MemoryAccess &, const triton::uint512 &value)>
 The prototype of a SET_CONCRETE_MEMORY_VALUE callback. More...
 
using triton::callbacks::setConcreteRegisterValueCallback = ComparableFunctor< void(triton::API &, const triton::arch::Register &, const triton::uint512 &value)>
 The prototype of a SET_CONCRETE_REGISTER_VALUE callback. More...
 
using triton::callbacks::symbolicSimplificationCallback = ComparableFunctor< triton::ast::SharedAbstractNode(triton::API &, const triton::ast::SharedAbstractNode &)>
 The prototype of a SYMBOLIC_SIMPLIFICATION callback. More...
 

Enumerations

enum  triton::callbacks::callback_e {
  triton::callbacks::GET_CONCRETE_MEMORY_VALUE, triton::callbacks::GET_CONCRETE_REGISTER_VALUE, triton::callbacks::SET_CONCRETE_MEMORY_VALUE, triton::callbacks::SET_CONCRETE_REGISTER_VALUE,
  triton::callbacks::SYMBOLIC_SIMPLIFICATION
}
 

Detailed Description

Typedef Documentation

◆ getConcreteMemoryValueCallback

The prototype of a GET_CONCRETE_MEMORY_VALUE callback.

The callback takes an API context as first argument and a memory access as second argument. Callbacks will be called each time that the Triton library will need to LOAD a concrete memory value.

Definition at line 53 of file callbacks.hpp.

◆ getConcreteRegisterValueCallback

The prototype of a GET_CONCRETE_REGISTER_VALUE callback.

The callback takes an API context as first argument and a register as second argument. Callbacks will be called each time that the Triton library will need to GET a concrete register value.

Definition at line 60 of file callbacks.hpp.

◆ setConcreteMemoryValueCallback

The prototype of a SET_CONCRETE_MEMORY_VALUE callback.

The callback takes an API context as first argument, a memory access as second argument and the value at third. Callbacks will be called each time that the Triton library will need to STORE a concrete memory value.

Definition at line 67 of file callbacks.hpp.

◆ setConcreteRegisterValueCallback

The prototype of a SET_CONCRETE_REGISTER_VALUE callback.

The callback takes an API context as first argument, a register as second argument and the value at third. Callbacks will be called each time that the Triton library will neet to PUT a concrete register value.

Definition at line 74 of file callbacks.hpp.

◆ symbolicSimplificationCallback

The prototype of a SYMBOLIC_SIMPLIFICATION callback.

The callback takes as arguments an API context as first argument and an abstract node as second argument The callback must return a valid abstract node which will be used as assignment according to the instruction semantics. See also the page about SMT simplification passes for more information about semantic transformations.

Definition at line 82 of file callbacks.hpp.

Enumeration Type Documentation

◆ callback_e

Enumerates all kinds callbacks.

Enumerator
GET_CONCRETE_MEMORY_VALUE 

LOAD concrete memory value callback

GET_CONCRETE_REGISTER_VALUE 

GET concrete register value callback

SET_CONCRETE_MEMORY_VALUE 

STORE concrete memory value callback

SET_CONCRETE_REGISTER_VALUE 

PUT concrete register value callback

SYMBOLIC_SIMPLIFICATION 

Symbolic simplification callback

Definition at line 40 of file callbacks.hpp.