summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Cargo.toml2
-rw-r--r--README.md2
-rw-r--r--src/lib.rs16
3 files changed, 17 insertions, 3 deletions
diff --git a/Cargo.toml b/Cargo.toml
index 1941181..74cf3f4 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -22,6 +22,8 @@ thiserror = "1.0.43"
coolfindpattern = "0.1.6"
binary-search = "0.1.2"
+
+# Due to a breaking change in the binaryninja crate, you will also need to uncomment the relevant portion of code in the entrypoint.
# Dev
# binaryninja = { git = "https://github.com/Vector35/binaryninja-api", branch = "dev" }
# Stable
diff --git a/README.md b/README.md
index f9b4414..1803029 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,7 @@
# binja_coolsigmaker
+(**I apologize for the inconvenience, but due to a breaking change in the binaryninja crate, you will need to make a change to the entry point depending on which branch you build for.**)
+
We all know signature scanning can be extremely useful. Sadly, the two public offerings for Binja are either very slow, or crash extremely often.
This is why I wrote this plugin. It's a signature scanning and creating plugin for x86 (more archs are planned!), written in Rust. It's extremely fast, supports multiple signature styles, and works like a charm.
diff --git a/src/lib.rs b/src/lib.rs
index fecc2dc..aec6e15 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -989,9 +989,19 @@ impl Command for SigFinderCommand {
#[no_mangle]
pub extern "C" fn CorePluginInit() -> bool {
- binaryninja::logger::Logger::new("coolsigmaker")
- .with_level(log::LevelFilter::Info)
- .init();
+
+ // Due to a breaking change in binaryninja-api, you will need to edit this line depending on which version you are building for.
+
+ // For dev branch:
+ // binaryninja::logger::Logger::new("coolsigmaker")
+ // .with_level(log::LevelFilter::Info)
+ // .init();
+
+ // For stable branch:
+ // binaryninja::logger::init(log::LevelFilter::Info).unwrap();
+
+ // And uncomment this. Sorry for the inconvenience.
+ compile_error!("sadly, due to a breaking change in the api crate, you will need to make a change to the code above this error.");
// TODO: (maybe) if signature not found, maybe go back a few instructions and attempt to create a signature with an offset.
// TODO: introduce a setting for "dumb" searches, where we also search non-executable segments for uniqueness, incase the user doesn't want to check the segments before scanning them.