summaryrefslogtreecommitdiff
path: root/rust
AgeCommit message (Collapse)Author
2024-05-28fix multiple memory leaks related to CStr/BnStringRubens Brandao
2024-05-28update `Session::load_with_option` to the new APIRubens Brandao
2024-05-28allow `load_with_option` to accept json optionsRubens Brandao
2024-05-28Solved issue #1180 by adding new APIsZichuan Li
1. Add two new APIs for multiple entry functions `GetAllAnalysisEntryFunctions` and `AddToEntryFunctions` 2. Add Python APIs `entry_functions` and `add_to_entry_functions`. `entry_functions` resturns a list of functions, which supports parsing functions in `init_array`, `fini_array` and TLS callbacks. 3. Modify bin-info, it now prints all entry functions
2024-05-27Update load APIs to take a JSON string for options.Brian Potchik
2024-05-24Fix do while condition and body being flipped in Rust HLIL bindingsRusty Wagner
2024-05-24arch: multiple delay slot support, suppress spurious mips warningRyan Snyder
2024-05-20Fix ARM64 Linux buildRusty Wagner
2024-05-20Implement python Function methods to rustRubens Brandao
Squashed: add Function::add_tag method add Function::{add_user_code_ref,remove_user_code_ref} methods add Function::{add_user_type_field_ref, remove_user_type_field_ref} methods add Function::{add_user_type_ref, remove_user_type_ref} methods add Function::apply_auto_discovered_type add Function/MediumLevelILFunction user_var_values and related functions simplify UserVariableValues::values_from_variable cargo fmt fix fix doc and QualifiedName params fix MediumLevelILFunction::is_var_user_defined parameter Remove unecessary Safety comment add Function::{create_auto_stack_var,delete_auto_stack_var} methods add MediumLevelILFunction::create_auto_var method move Function::{create_auto_stack_var,delete_auto_stack_var} methods to MediumLevelILFunction add MediumLevelILFunction::{create_user_stack_var,delete_user_stack_var} methods add Function::block_annotations method add Function::{call_stack_adjustment, call_type_adjustment} method add Function::{constant_data, constants_referenced_by, constants_referenced_by_address_if_available} methods add Function::function_tags method add Function::{indirect_branches, indirect_branches_at} methods add Function::instr_highlight method add Function::instruction_containing_address method add Function::{int_display_type,int_enum_display_typeid,int_display_type_and_typeid} methods add MediumLevelILFunction::{var_refs, var_refs_from} methods add Function::{parameter_at, parameter_at_low_level_il_instruction} methods rebase GAT changes add Function::{reg_value_at, reg_value_after, reg_value_at_exit} methods Add alpha to HighlightColor::NoHighlightColor add Function::{regs_read_by, regs_written_by} methods add Function::{stack_contents_at, stack_contents_after} methods add Function::{stack_vars_referenced_by, stack_vars_referenced_by_address_if_available} methods add Function::{tags_at, tags_at_range} methods add Function::type_tokens method add Function::variables method add Function::{is_call_instruction, is_var_user_defined} methods add Function::{mark_updates_required, mark_caller_updates_required, mark_recent_use} methods add Function::{merge_vars, unmerge_vars, split_var, unsplit_var} methods add Function::reanalyze method add Function::request_debug_report method add Function::remove_tag method add Function::remove_tags_of_type method add Function::analysis_performance_info method add Function::call_sites method add Function::caller_sites method add Function::{calling_convention, set_calling_convention} methods add Function::{can_return, set_can_return} methods add Function::comments method add Function::{clobbered_regs, set_clobbered_regs} methods add Function::{has_explicitly_defined_type, has_user_annotations, has_user_type, has_variable_arguments} methods fix Function::set_can_return_user function add Function::{high_level_il_if_available, medium_level_il_if_available, low_level_il_if_available, lifted_il_if_available} methods add Function::{global_pointer_value, has_unresolved_indirect_branches} methods add Function::lowest_address method add Function::{inline_during_analysis, set_auto_inline_during_analysis, set_user_inline_during_analysis} methods add Function::{is_pure, is_too_large, is_update_needed} methods add Function::{provenance, stack_adjustment, set_user_stack_adjustment, set_auto_stack_adjustment} methods add Function::{set_user_pure, set_auto_pure} methods add Function::set_auto_type method add Function::{return_regs, set_return_regs} methods add Function::{set_auto_return_type, set_user_return_type} methods add Function::unresolved_stack_adjustment_graph method add Function::create_graph method add Function::tags method add Function::split_variables method add Function::{reg_stack_adjustments, set_reg_stack_adjustments} methods add Function::{mapped_medium_level_il, merged_variables} methods add Function::{set_auto_instr_highlight, set_user_instr_highlight} methods add stack_adjustments methods add Function::set_user_call_stack_adjustment add Function::set_auto_call_stack_adjustment add Function::call_type_adjustment add Function::set_user_call_type_adjustment add Function::set_auto_call_type_adjustment add Function::call_reg_stack_adjustment add Function::set_user_call_reg_stack_adjustment add Function::set_auto_call_reg_stack_adjustment add Function::call_reg_stack_adjustment_for_reg_stack add Function::set_user_call_reg_stack_adjustment_for_reg_stack add Function::set_auto_call_reg_stack_adjustment_for_reg_stack add Function::set_user_reg_stack_adjustments add Function::set_auto_reg_stack_adjustments add Function::set_auto_reg_stack_adjustments add Function::set_auto_calling_convention method add Function::set_auto_can_return method add Function::{set_user_has_variable_arguments, set_auto_has_variable_arguments} methods add Function::{set_user_indirect_branches, set_auto_indirect_branches} methods add Function::set_int_display_type method add Function::{set_user_parameter_variables, set_auto_parameter_variables} methods fix documentation add Function::unresolved_indirect_branches method add Function::mapped_medium_level_il_if_available method change methods `Function::{set_user_type, set_auto_type}` to receive `&Type` merge RegisterList and RegisterSet into CoreRegister impl fix function names fix function names fix documentation syntax fix documentation syntax fix Function documentation by adding MediumLevelILInstruction::get_split_var_for_definition fix documentation links rename `VariableDefinitions` to `MediumLevelILInstructionList` fix `PossibleValueSet` switched `NotInSetOfValues` and `ReturnAddressValue`
2024-05-15Allow Rust CoreAPI FFI to implement DefaultRubens Brandao
2024-05-15Rust: change signatures of `define_{auto,user}_data_var`Michael Krasnitski
2024-05-15Apply suggestions from code reviewKyle Martin
Co-authored-by: Michael Krasnitski <42564254+mkrasnitski@users.noreply.github.com>
2024-05-15Fix invalid write to uninitialized reserved VecRubens Brandao
2024-05-15Fix invalid write to uninitialized VecRubens Brandao
2024-05-15DWARF Import : Add support for variable argumentsKyleMiles
2024-05-10Rust API : Misc cargo clippy fixesKyleMiles
2024-05-10Fix remaining Rust doc examples; We now make sure examples build in PR CIKyleMiles
2024-05-10use the new public/private Array trait implRubens Brandao
2024-05-10hide array implementation detailsRubens Brandao
2024-05-09implement open/create database with progress functionRubens Brandao
2024-05-09fix GAT CoreArrayWrapper implRubens Brandao
2024-05-09fix rust doc codeRubens Brandao
2024-05-09Add Array GAT to StructureMemberRubens Brandao
2024-05-09add StructureBuilder missing python methodsRubens Brandao
2024-05-09Fix clippy warnings and run rustfmtMichael Krasnitski
2024-05-09replace Vec<T> with Box<[T]>Rubens Brandao
2024-05-09Fix binja_path in case the lib is a symlinkRubens Brandao
2024-05-09only create FlowGraph with RefRubens Brandao
2024-05-03Expose LLVM demanglerMason Reed
2024-05-01rust: account for changes to NameAndType bindingsRyan Snyder
2024-05-01Merge branch 'fix-vec-leak' of github.com:rbran/binaryninja-api into devRyan Snyder
2024-05-01Merge branch 'fix-into-raw-2' of github.com:rbran/binaryninja-api into devRyan Snyder
2024-05-01Merge branch 'fix-non-escaped' of github.com:rbran/binaryninja-api into devRyan Snyder
2024-05-01Merge branch 'name-and-type-transparent' of github.com:rbran/binaryninja-api ↵Ryan Snyder
into dev
2024-05-01Merge branch 'fix-form-input-builder' of github.com:rbran/binaryninja-api ↵Ryan Snyder
into dev
2024-05-01Merge branch 'remove-zeroed-init' of github.com:rbran/binaryninja-api into devRyan Snyder
2024-05-01Merge branch 'fix-metadata-from' of github.com:rbran/binaryninja-api into devRyan Snyder
2024-05-01Merge branch 'remove-shrink_to_fit' of github.com:rbran/binaryninja-api into devRyan Snyder
2024-05-01Merge branch 'fix-array-2' of github.com:rbran/binaryninja-api into devRyan Snyder
2024-04-30Add HLIL APIs to fetch the root or by instruction index, and expose the ↵Rusty Wagner
operation size in the Rust API
2024-04-30Add MLIL APIs for getting by instruction index, and expose the operation ↵Rusty Wagner
size in the Rust API
2024-04-30Allow fetching target instruction index in LLIL branches from the Rust APIRusty Wagner
2024-04-30Add parameter_variables API to Function in RustRusty Wagner
2024-04-30Fill out int_arg_registers and float_arg_registers in the Rust APIRusty Wagner
2024-04-29replace Vec into_raw_parts with BoxRubens Brandao
2024-04-25Remove From Conf<Ref<Type>> impl for BNTypeWithConfidenceRubens Brandao
2024-04-25Fix non-escaped CStrRubens Brandao
2024-04-22Fix pdb compile on Free editionGlenn Smith
2024-04-22Public release of PDB parser pluginGlenn Smith
2024-04-17remove unnecessary transmutionsRubens Brandao