You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The easiest one is r2pipe, see the radare2-r2pipe repository, but basically provides a way to talk to the current r2 session using two pipes exposed via R2PIPE_IN/OUT env vars.
R2 pipe can also spawn an r2 and run commands on it.
But additionatlly it can also provide other ways of talking to r2 like using http or dlopen the core lib and use the rcorenew , rcorecmdstr and rcorefree functions, additionally theres also http support by making get requests to the given url +/cmd/$cmd
Rlang basically provides a way to keep a running vm of the given language like python, lua or whatver this way you can have a repl for the given language or run scripts by using the api directly which is faster and keeps the state
And finally the api bindings are the harder to maintain and are a bit outdated. Take a look at the radare2-bindings repository which containd a vapidir with all the definitions of the public apis of r2. Using valabind those files are converted into swig or py/go/.. files that expose an api to use the native apis directly from the given language
To finalyze theres also an r2pipe-api project that exposes a high level api on top of r2pipe, being manually maintained and providing a more idiomatic way to use r2
The text was updated successfully, but these errors were encountered:
There are three kinds of bindings for r2.
The easiest one is r2pipe, see the radare2-r2pipe repository, but basically provides a way to talk to the current r2 session using two pipes exposed via R2PIPE_IN/OUT env vars.
R2 pipe can also spawn an r2 and run commands on it.
But additionatlly it can also provide other ways of talking to r2 like using http or dlopen the core lib and use the rcorenew , rcorecmdstr and rcorefree functions, additionally theres also http support by making get requests to the given url +/cmd/$cmd
Rlang basically provides a way to keep a running vm of the given language like python, lua or whatver this way you can have a repl for the given language or run scripts by using the api directly which is faster and keeps the state
And finally the api bindings are the harder to maintain and are a bit outdated. Take a look at the radare2-bindings repository which containd a vapidir with all the definitions of the public apis of r2. Using valabind those files are converted into swig or py/go/.. files that expose an api to use the native apis directly from the given language
To finalyze theres also an r2pipe-api project that exposes a high level api on top of r2pipe, being manually maintained and providing a more idiomatic way to use r2
The text was updated successfully, but these errors were encountered: