mirror of
https://github.com/radareorg/r2xsql.git
synced 2026-11-07 06:36:02 -10:00
r2xsql exposes a radare2 analysis session as live SQL virtual tables: every
query re-issues the JSON form of the relevant r2 command (aflj, izj, axtj, ...)
against the current core, so results are never a stale dump. Reads are SELECTs;
annotation is ordinary SQL writes -- rename functions, set prototypes, comments,
flags, locals, types, bookmarks, patches -- and work saves back through
radare2's native project format.
Two interchangeable flavors over one SQL surface:
- r2xsql portable; drives radare2 over r2pipe, needs only the radare2
binary on PATH at runtime. Always built.
- r2xsql-full in-process (libr) build; also ships core_r2xsql, an in-r2
plugin that adds the `sql` command inside radare2. ABI-locked
to the radare2 it was built against.
~48 tables and 13 views span functions, blocks, instructions, xrefs, strings,
imports/exports, sections/segments, flags, comments, types, classes, relocs,
registers, syscalls, calling conventions, ROP gadgets, ESIL, and decompilation.
An always-on HTTP REST endpoint and an MCP server expose the same surface to
tooling and agents.
Build with CMake (both flavors, MCP, tests), or -- for the plugin alone -- a
radare2-native Makefile / meson build (plugin paths from `r2 -H`, radare2 via
pkg-config r_core). Agent skills for driving r2xsql live in
radareorg/radare2-skills.
Developed by Elias Bachaalany, in collaboration with the radare2 project (radareorg).
4 lines
133 B
Plaintext
4 lines
133 B
Plaintext
# Shell scripts must stay LF so they run on Linux CI runners regardless of a
|
|
# contributor's core.autocrlf setting.
|
|
*.sh text eol=lf
|