summaryrefslogtreecommitdiff
path: root/python/examples
diff options
context:
space:
mode:
authorJordan Wiens <jordan@psifertex.com>2016-09-21 11:16:35 -0400
committerJordan Wiens <jordan@psifertex.com>2016-09-21 11:16:35 -0400
commit0ee439859c9f09ed0d725bef385bcc9ac6d635a1 (patch)
tree95f131f6ae98b60230d1cb06d49527755ce9e89b /python/examples
parente7bb1c066ba1067e6ba93c9bffcf5beb4162f11f (diff)
update for new plugins and mention difference between personal and commercial
Diffstat (limited to 'python/examples')
-rw-r--r--python/examples/README.md25
1 files changed, 20 insertions, 5 deletions
diff --git a/python/examples/README.md b/python/examples/README.md
index 5f89496f..43af34be 100644
--- a/python/examples/README.md
+++ b/python/examples/README.md
@@ -4,11 +4,14 @@ The following examples demonstrate some of the Binary Ninja API. They include bo
## Stand-alone
-* bin-info.py - general binary information
+These plugins only operate when run directly outside of the UI
+
+* bin_info.py - general binary information
* print_syscalls.py - extract syscall numbers from IL on specified file. Can be run both headless and in Binary Ninja
-* version-switcher.py - uses the update API to see raw version notes and manually downgrade or upgrade
+* version_switcher.py - uses the update API to see raw version notes and manually downgrade or upgrade
+* instruction_iterator.py - very simple plugin that iterates through functions, blocks, and instructions
-To use the stand-alone Python examples, make sure your `PYTHON_PATH` includes the API, like:
+To use the stand-alone Python examples, make sure your `PYTHON_PATH` includes the API, as shown below. Please note, this is a feature that requires the "GUI-less processing" capability not available in the personal edition. In the personal edition, all scripts must by run from the integrated python console (follow the directions below under "Loading Plugins" section)
```
PYTHONPATH=$PYTHONPATH:/Applications/Binary\ Ninja.app/Contents/Resources/python
@@ -16,9 +19,21 @@ PYTHONPATH=$PYTHONPATH:/Applications/Binary\ Ninja.app/Contents/Resources/python
## GUI Plugins
-* nes.py - 6502 CPU architecture including LLIL lifting and `.NES` file format parser
+These plugins require the UI to be running
+
* breakpoint.py - small example showing how to modify a file and register a GUI menu item
-* jump-table.py - stop-gap jump table plugin triggered via right-click menu at an indirect jump
+* jump_table.py - heuristic based jump table detection for when the data-flow based computation fails, triggered by right-clicking on the location where the jump value is computed
+* angr_plugin.py - a plugin to demonstrate both background threads, the simplified plugin UI elements, and highlighting
+* export_svg.py - exports the graph view of a function to an SVG file for including in reports
+
+## Both
+
+These plugins are able to operate in either the GUI or as stand-alone plugins
+
+* nes.py - 6502 CPU architecture including LLIL lifting and `.NES` file format parser
+
+
+## Loading Plugins
Plugins are meant to be loaded into a running Binary Ninja GUI and should either be copied or symlinked into the appropriate plugin folder. You'll need to then re-start Binary Ninja.