rizin/libr
pancake 8d06dd2f02 * Initial implementation of rabin2 -c
- Allow to create tiny binaries with r_bin
  - ATM only MACH0 format for x86-32 is supported
  $ ./rabin2 -a x86_32 -c mach0:31c040682a00000081ec04000000cd80 a.out
* Rename r_bin_set_arch{idx} to r_bin_select{idx}
  - New API r_bin_create and r_bin_use_arch()
2011-07-25 21:10:25 +02:00
..
anal * Theorical build fix for OpenBSD/arm/sparc64 2011-07-22 11:29:58 +02:00
asm * Set library version number for plugins 2011-07-19 00:12:36 +02:00
bin * Initial implementation of rabin2 -c 2011-07-25 21:10:25 +02:00
bp * Set library version number for plugins 2011-07-19 00:12:36 +02:00
cmd * Fix build on clean systems (thanks sre) 2011-07-19 18:24:04 +02:00
config * More strcpy/sprintf/strcat exterminations 2011-07-06 09:40:23 +02:00
cons * Add from/to arguments to search_preludes() 2011-07-06 11:48:16 +02:00
core * Implemented 'dd' command for UNIX and FreeBSD 2011-07-25 04:49:54 +02:00
crypto * Set library version number for plugins 2011-07-19 00:12:36 +02:00
db * Initial import of the hashtable implementation of WayLand 2011-03-17 19:05:39 +01:00
debug * Support sockets in FreeBSD's 'dd' command 2011-07-25 20:17:19 +02:00
diff * Initial implementation of the r_anal_aop_execute api 2011-02-03 00:20:39 +01:00
flags * Add 'rwx' permissions information in MACH0 sections 2011-07-19 18:03:31 +02:00
fs * Set library version number for plugins 2011-07-19 00:12:36 +02:00
hash * Use OpenSSL (cflags/ldflags) from pkg-config 2011-07-13 19:22:38 +02:00
include * Initial implementation of rabin2 -c 2011-07-25 21:10:25 +02:00
io * Fix build for GNU/kFreeBSD 2011-07-20 17:34:00 -04:00
lang * Various gcc-4.6 warnings fixed 2011-06-30 00:17:12 +02:00
lib * Fix many warning messages 2011-05-13 10:22:28 +02:00
line * Theorical build fix for OpenBSD/arm/sparc64 2011-07-22 11:29:58 +02:00
parse * Set library version number for plugins 2011-07-19 00:12:36 +02:00
print * Enhacements in keybindings used in visual mounts menus 2011-07-12 17:26:56 +02:00
reg * Finally fix a segfault in the htflags implementation 2011-06-29 00:36:52 +02:00
search * Fix null pointer segfault when keyword creation fails 2011-06-09 11:56:32 +02:00
sign * Fix build when compiling in a clean system (thx @esanfelix!) 2011-03-07 20:50:10 +01:00
socket * Use OpenSSL (cflags/ldflags) from pkg-config 2011-07-13 19:22:38 +02:00
syscall * Add 8/16/32 bits register definitions in linux/x86_64 2011-07-22 13:33:43 +02:00
sysproxy
th * Some cosmetic fixes in 'pd' 2010-12-13 00:49:33 +01:00
util * Initial implementation of rabin2 -c 2011-07-25 21:10:25 +02:00
vm * Fix make -j for paralel builds 2010-10-29 03:10:10 +02:00
config.h.head
config.h.tail
config.mk.head
config.mk.tail * Set library version number for plugins 2011-07-19 00:12:36 +02:00
depgraph.pl
libr.pc.acr * Merge r_meta inside r_anal 2010-08-20 00:36:22 +02:00
Makefile * Added __KFBSD__ define and enable new proc/maps for GNU/kFreeBSD 2011-07-20 19:26:07 +02:00
README
rules.mk * Honor LIBDIR and VERSION in pkgcfg 2011-07-19 13:19:09 +02:00
stripsyms.sh
symgraph.pl * Do not show color prompt in windows 2010-09-24 19:04:33 +02:00
waitfordeps.sh * Fix build in OSX 2011-06-20 23:53:38 +02:00

                                 ___ ___
  =========================     |  _\_  \
  libr - codename 'radare2'     |   /  _/
  =========================     |_|__\__\


LibR is the refactoring of the old radare1 core in a set of libraries
defining the APIs of radare2.

The library 'libr' is composed by different modules, each one implementing
working modules of radare, so then, we get a complete set of libraries for
analyzing code, disassembling bytes, dumping bytes, plugin handling, etc..

The 'R' is for refactoring, reversing, radare, ...

Each module has its own test directory (t/) which contains simple applications
using the upper directory code and linking against the direct dependencies.

Each mode can own a plugin directory (p/) that contains extensions for the
parent library module (libr/asm/p/asm_x86).

There's also the possibility to define a list of static plugins to be built
inside the parent module. This way you can avoid some flexibility to ease
portability and build single binaries with some embedded features.

The library can be used from 'pkg-config', this way you can easy build an
application or plugin that links against libr or just few elements of it.

This enables a fine-grained test level for checking all functionalities in
one shot and give us the opportunity to write radare2 as test programs.

  --pancake