diff options
| author | Mason Reed <mason@vector35.com> | 2026-03-13 12:24:18 -0700 |
|---|---|---|
| committer | Mason Reed <35282038+emesare@users.noreply.github.com> | 2026-03-24 18:46:48 -0700 |
| commit | 3c88b11e5df33116580ac008e36092775df66135 (patch) | |
| tree | cd64fbe149f05683ddabcccd0db7b87356f1f8cf /plugins/warp/src/plugin.rs | |
| parent | f325aa7b6026a1daef84931baeb1f50d7da10c10 (diff) | |
[WARP] Improved UX and API
- Exposes WARP type objects directly
- Adds processor API (for generating warp files directly)
- Adds file and chunk API
- Misc cleanup
- Simplified the amount of commands
- Replaced the "Create" commands with a purpose built processor dialog
- Added a native QT viewer for WARP files
- Simplified committing to a remote with a purpose built commit dialog
Diffstat (limited to 'plugins/warp/src/plugin.rs')
| -rw-r--r-- | plugins/warp/src/plugin.rs | 77 |
1 files changed, 2 insertions, 75 deletions
diff --git a/plugins/warp/src/plugin.rs b/plugins/warp/src/plugin.rs index d163205b..8192102d 100644 --- a/plugins/warp/src/plugin.rs +++ b/plugins/warp/src/plugin.rs @@ -9,27 +9,17 @@ use crate::plugin::render_layer::HighlightRenderLayer; use crate::plugin::settings::PluginSettings; use crate::{core_signature_dir, user_signature_dir}; use binaryninja::background_task::BackgroundTask; -use binaryninja::command::{ - register_command, register_command_for_function, register_command_for_project, - register_global_command, -}; +use binaryninja::command::{register_command, register_command_for_function}; use binaryninja::is_ui_enabled; use binaryninja::settings::{QueryOptions, Settings}; -mod commit; -mod create; mod ffi; -mod file; mod function; mod load; -mod project; mod render_layer; mod settings; mod workflow; -#[cfg(debug_assertions)] -mod debug; - fn load_bundled_signatures() { let global_bn_settings = Settings::new(); let plugin_settings = @@ -166,39 +156,12 @@ fn plugin_init() -> bool { workflow::RunMatcher {}, ); - #[cfg(debug_assertions)] - register_command( - "WARP\\Debug\\Cache", - "Debug cache sizes... because...", - debug::DebugCache {}, - ); - - #[cfg(debug_assertions)] - register_command( - "WARP\\Debug\\Invalidate Caches", - "Invalidate all WARP caches", - debug::DebugInvalidateCache {}, - ); - - #[cfg(debug_assertions)] - register_command_for_function( - "WARP\\Debug\\Function Signature", - "Print the entire signature for the function", - debug::DebugFunction {}, - ); - register_command( "WARP\\Load File", - "Load file into the matcher, this does NOT kick off matcher analysis", + "Load WARP file", load::LoadSignatureFile {}, ); - register_global_command( - "WARP\\Commit File", - "Commit file to a source", - commit::CommitFile {}, - ); - register_command_for_function( "WARP\\Include Function", "Add current function to the list of functions to add to the signature file", @@ -217,42 +180,6 @@ fn plugin_init() -> bool { function::RemoveFunction {}, ); - register_command_for_function( - "WARP\\Copy GUID", - "Copy the computed GUID for the function", - function::CopyFunctionGUID {}, - ); - - register_command( - "WARP\\Find GUID", - "Locate the function in the view using a GUID", - function::FindFunctionFromGUID {}, - ); - - register_command( - "WARP\\Create\\From Current View", - "Creates a signature file containing all selected functions", - create::CreateFromCurrentView {}, - ); - - register_global_command( - "WARP\\Create\\From File(s)", - "Creates a signature file containing all selected functions", - create::CreateFromFiles {}, - ); - - register_command( - "WARP\\Show Report", - "Creates a report for the selected file, displaying info on functions and types", - file::ShowFileReport {}, - ); - - register_command_for_project( - "WARP\\Create\\From Project", - "Create signature files from select project files", - project::CreateSignatures {}, - ); - true } |
