miasm
Reverse engineering framework
miasm.core.objc.CHandler Class Reference
Inheritance diagram for miasm.core.objc.CHandler:
Collaboration diagram for miasm.core.objc.CHandler:

Public Member Functions

def __init__ (self, types_mngr, expr_types=None, C_types=None, simplify_c=access_simplifier, enforce_strict_access=True)
 
def updt_expr_types (self, expr_types)
 
def expr_to_c_access (self, expr, expr_context=None)
 
def expr_to_c_and_types (self, expr, expr_context=None)
 
def expr_to_c (self, expr, expr_context=None)
 
def expr_to_types (self, expr, expr_context=None)
 
def c_to_expr_and_type (self, c_str, c_context=None)
 
def c_to_expr (self, c_str, c_context=None)
 
def c_to_type (self, c_str, c_context=None)
 

Public Attributes

 exprc2expr
 
 access_c_gen
 
 types_mngr
 
 simplify_c
 
 expr_types
 
 C_types
 

Static Public Attributes

 exprCToExpr_cls = ExprCToExpr
 
 exprToAccessC_cls = ExprToAccessC
 

Detailed Description

C manipulator for Miasm
Miasm expr <-> C

Constructor & Destructor Documentation

◆ __init__()

def miasm.core.objc.CHandler.__init__ (   self,
  types_mngr,
  expr_types = None,
  C_types = None,
  simplify_c = access_simplifier,
  enforce_strict_access = True 
)

Member Function Documentation

◆ c_to_expr()

def miasm.core.objc.CHandler.c_to_expr (   self,
  c_str,
  c_context = None 
)
Convert a C string expression to a Miasm expression
@c_str: C string
@c_context: (optional) dictionary linking known tokens (strings) to its
type.
Here is the call graph for this function:

◆ c_to_expr_and_type()

def miasm.core.objc.CHandler.c_to_expr_and_type (   self,
  c_str,
  c_context = None 
)
Convert a C string expression to a Miasm expression and it's
corresponding c type
@c_str: C string
@c_context: (optional) dictionary linking known tokens (strings) to its
type.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ c_to_type()

def miasm.core.objc.CHandler.c_to_type (   self,
  c_str,
  c_context = None 
)
Get the type of a C string expression
@expr: Miasm expression
@c_context: (optional) dictionary linking known tokens (strings) to its
type.
Here is the call graph for this function:

◆ expr_to_c()

def miasm.core.objc.CHandler.expr_to_c (   self,
  expr,
  expr_context = None 
)
Convert a Miasm @expr into it's C equivalent string
@expr_context: a dictionary linking known expressions to a set of types
Here is the call graph for this function:

◆ expr_to_c_access()

def miasm.core.objc.CHandler.expr_to_c_access (   self,
  expr,
  expr_context = None 
)
Generate the C access object(s) for a given native Miasm expression.
@expr: Miasm expression
@expr_context: a dictionary linking known expressions to a set of types
Here is the caller graph for this function:

◆ expr_to_c_and_types()

def miasm.core.objc.CHandler.expr_to_c_and_types (   self,
  expr,
  expr_context = None 
)
Generate the C access string and corresponding type for a given
native Miasm expression.
@expr_context: a dictionary linking known expressions to a set of types
Here is the call graph for this function:
Here is the caller graph for this function:

◆ expr_to_types()

def miasm.core.objc.CHandler.expr_to_types (   self,
  expr,
  expr_context = None 
)
Get the possible types of the Miasm @expr
@expr_context: a dictionary linking known expressions to a set of types
Here is the call graph for this function:

◆ updt_expr_types()

def miasm.core.objc.CHandler.updt_expr_types (   self,
  expr_types 
)
Update expr_types
@expr_types: Dictionary associating name to type

Member Data Documentation

◆ access_c_gen

miasm.core.objc.CHandler.access_c_gen

◆ C_types

miasm.core.objc.CHandler.C_types

◆ expr_types

miasm.core.objc.CHandler.expr_types

◆ exprc2expr

miasm.core.objc.CHandler.exprc2expr

◆ exprCToExpr_cls

miasm.core.objc.CHandler.exprCToExpr_cls = ExprCToExpr
static

◆ exprToAccessC_cls

miasm.core.objc.CHandler.exprToAccessC_cls = ExprToAccessC
static

◆ simplify_c

miasm.core.objc.CHandler.simplify_c

◆ types_mngr

miasm.core.objc.CHandler.types_mngr

The documentation for this class was generated from the following file: