diff options
Diffstat (limited to 'plugins/bntl_utils')
| -rw-r--r-- | plugins/bntl_utils/src/command/create.rs | 8 | ||||
| -rw-r--r-- | plugins/bntl_utils/src/command/diff.rs | 9 | ||||
| -rw-r--r-- | plugins/bntl_utils/src/command/dump.rs | 10 | ||||
| -rw-r--r-- | plugins/bntl_utils/src/command/validate.rs | 9 | ||||
| -rw-r--r-- | plugins/bntl_utils/src/lib.rs | 8 |
5 files changed, 20 insertions, 24 deletions
diff --git a/plugins/bntl_utils/src/command/create.rs b/plugins/bntl_utils/src/command/create.rs index 5fa8c2be..96d0eb60 100644 --- a/plugins/bntl_utils/src/command/create.rs +++ b/plugins/bntl_utils/src/command/create.rs @@ -3,7 +3,7 @@ use crate::process::{new_processing_state_background_thread, TypeLibProcessor}; use crate::validate::TypeLibValidater; use binaryninja::background_task::BackgroundTask; use binaryninja::binary_view::{BinaryView, BinaryViewExt}; -use binaryninja::command::{Command, ProjectCommand}; +use binaryninja::command::{Command, GlobalCommand, ProjectCommand}; use binaryninja::interaction::{Form, FormInputField, MessageBoxButtonSet, MessageBoxIcon}; use binaryninja::platform::Platform; use binaryninja::project::Project; @@ -188,14 +188,14 @@ impl CreateFromDirectory { } } -impl Command for CreateFromDirectory { - fn action(&self, _view: &BinaryView) { +impl GlobalCommand for CreateFromDirectory { + fn action(&self) { thread::spawn(move || { CreateFromDirectory::execute(); }); } - fn valid(&self, _view: &BinaryView) -> bool { + fn valid(&self) -> bool { true } } diff --git a/plugins/bntl_utils/src/command/diff.rs b/plugins/bntl_utils/src/command/diff.rs index 48501433..6cc0fe0a 100644 --- a/plugins/bntl_utils/src/command/diff.rs +++ b/plugins/bntl_utils/src/command/diff.rs @@ -2,8 +2,7 @@ use crate::command::OutputDirectoryField; use crate::diff::TILDiff; use crate::helper::path_to_type_libraries; use binaryninja::background_task::BackgroundTask; -use binaryninja::binary_view::BinaryView; -use binaryninja::command::Command; +use binaryninja::command::GlobalCommand; use binaryninja::interaction::{Form, FormInputField}; use std::path::PathBuf; use std::thread; @@ -95,14 +94,14 @@ impl Diff { } } -impl Command for Diff { - fn action(&self, _view: &BinaryView) { +impl GlobalCommand for Diff { + fn action(&self) { thread::spawn(move || { Diff::execute(); }); } - fn valid(&self, _view: &BinaryView) -> bool { + fn valid(&self) -> bool { true } } diff --git a/plugins/bntl_utils/src/command/dump.rs b/plugins/bntl_utils/src/command/dump.rs index 96c3b264..7b48900d 100644 --- a/plugins/bntl_utils/src/command/dump.rs +++ b/plugins/bntl_utils/src/command/dump.rs @@ -2,8 +2,7 @@ use crate::command::{InputDirectoryField, OutputDirectoryField}; use crate::dump::TILDump; use crate::helper::path_to_type_libraries; use binaryninja::background_task::BackgroundTask; -use binaryninja::binary_view::BinaryView; -use binaryninja::command::Command; +use binaryninja::command::GlobalCommand; use binaryninja::interaction::Form; pub struct Dump; @@ -48,15 +47,14 @@ impl Dump { } } -impl Command for Dump { - // TODO: We need a command type that does not require a binary view. - fn action(&self, _view: &BinaryView) { +impl GlobalCommand for Dump { + fn action(&self) { std::thread::spawn(move || { Dump::execute(); }); } - fn valid(&self, _view: &BinaryView) -> bool { + fn valid(&self) -> bool { true } } diff --git a/plugins/bntl_utils/src/command/validate.rs b/plugins/bntl_utils/src/command/validate.rs index b95699e0..921309fd 100644 --- a/plugins/bntl_utils/src/command/validate.rs +++ b/plugins/bntl_utils/src/command/validate.rs @@ -1,8 +1,7 @@ use crate::command::{InputDirectoryField, OutputDirectoryField}; use crate::helper::path_to_type_libraries; use crate::validate::TypeLibValidater; -use binaryninja::binary_view::BinaryView; -use binaryninja::command::Command; +use binaryninja::command::GlobalCommand; use binaryninja::interaction::Form; use binaryninja::platform::Platform; @@ -68,14 +67,14 @@ impl Validate { } } -impl Command for Validate { - fn action(&self, _view: &BinaryView) { +impl GlobalCommand for Validate { + fn action(&self) { std::thread::spawn(move || { Validate::execute(); }); } - fn valid(&self, _view: &BinaryView) -> bool { + fn valid(&self) -> bool { true } } diff --git a/plugins/bntl_utils/src/lib.rs b/plugins/bntl_utils/src/lib.rs index aad6cdcf..fb96746a 100644 --- a/plugins/bntl_utils/src/lib.rs +++ b/plugins/bntl_utils/src/lib.rs @@ -35,25 +35,25 @@ fn plugin_init() -> Result<(), ()> { command::create::CreateFromProject {}, ); - binaryninja::command::register_command( + binaryninja::command::register_global_command( "BNTL\\Create\\From Directory", "Create .bntl files from the given directory", command::create::CreateFromDirectory {}, ); - binaryninja::command::register_command( + binaryninja::command::register_global_command( "BNTL\\Diff", "Diff two .bntl files and output the difference to a file", command::diff::Diff {}, ); - binaryninja::command::register_command( + binaryninja::command::register_global_command( "BNTL\\Dump To Header", "Dump a .bntl file to a header file", command::dump::Dump {}, ); - binaryninja::command::register_command( + binaryninja::command::register_global_command( "BNTL\\Validate", "Validate a .bntl file and report the issues", command::validate::Validate {}, |
