integration ¤
Decompiler integration.
Modules:
-
binja–Talks to an XMLRPC server running inside of an active Binary Ninja instance,
-
ida–Talks to an XMLRPC server running inside of an active IDA Pro instance,
Classes:
-
IntegrationProvider–A class representing an integration that provides intelligence external to GDB.
-
ConfigurableProvider–A wrapper around an IntegrationProvider that skips calling functions if disabled in config.
Functions:
-
set_provider–Call this from provider-specific code whenever you establish a connection.
-
unset_provider–Call this from provider-specific code whenever a connection stops.
Attributes:
provider_name module-attribute ¤
provider_name = add_param(
"integration-provider",
"none",
"which provider to use for integration features",
param_class=PARAM_ENUM,
enum_sequence=["none", "binja", "ida"],
)
symbol_lookup module-attribute ¤
symbol_lookup = add_param(
"integration-symbol-lookup",
True,
"whether to use integration to look up unknown symbols",
)
smart_enhance module-attribute ¤
smart_enhance = add_param(
"integration-smart-enhance",
True,
"use integration to determine when to disassemble during enhancing",
)
function_lookup module-attribute ¤
function_lookup = add_param(
"integration-function-lookup",
True,
"use integration to look up function type signatures",
)
IntegrationProvider ¤
A class representing an integration that provides intelligence external to GDB.
Methods:
-
get_symbol–Get a symbol at an address, or an offset from a symbol.
-
get_versions–Gets any version strings relevant to the integration,
-
is_in_function–Checks if integration thinks that an address is in a function,
-
get_comment_lines–Gets any comments attached to an instruction.
-
decompile–Decompiles the code near an address given a line count.
-
get_func_type–Gets the type signature of a function, used for argument labeling.
-
get_stack_var_name–Gets the name of a stack variable based on only the address of the variable.
-
disable–Notify the provider that it should disable itself.
get_symbol ¤
Get a symbol at an address, or an offset from a symbol.
get_versions ¤
Gets any version strings relevant to the integration, which are used when displaying the version command.
is_in_function ¤
Checks if integration thinks that an address is in a function, which is used to determine if tel should try to disassemble something.
If uncertain, it's better to default to True than to False.
get_comment_lines ¤
Gets any comments attached to an instruction.
decompile ¤
Decompiles the code near an address given a line count.
get_func_type ¤
get_func_type(addr: int) -> Function | None
Gets the type signature of a function, used for argument labeling.
get_stack_var_name ¤
Gets the name of a stack variable based on only the address of the variable.
ConfigurableProvider dataclass ¤
ConfigurableProvider(inner: IntegrationProvider)
Bases: IntegrationProvider
A wrapper around an IntegrationProvider that skips calling functions if disabled in config.
Methods:
-
get_symbol– -
get_versions– -
is_in_function– -
get_comment_lines– -
decompile– -
get_func_type– -
get_stack_var_name– -
disable–
Attributes:
set_provider ¤
set_provider(prov: IntegrationProvider) -> None
Call this from provider-specific code whenever you establish a connection.
unset_provider ¤
Call this from provider-specific code whenever a connection stops.