Commit graph

112 commits

Author SHA1 Message Date
pancake
89008c734c Fix crossbuild 2013-03-27 12:30:32 +01:00
pancake
e48b9b2f30 Add cfg.sandbox functionality
f.example: $ r2 -c=H -e cfg.sandbox=true -
2012-10-20 00:31:18 +02:00
pancake
e8a601fe53 More makefile simplifications (-56LOC) 2012-10-03 16:32:32 +02:00
pancake
69a12884ed Simplify the build system
doc.sw has been moved to radare2-extras
2012-10-03 14:31:35 +02:00
pancake
dba5de4416 Fix build (R) 2012-09-26 23:58:55 +02:00
pancake
7fc1614cb5 Fix android build, update sdb code from git 2012-09-06 11:01:17 +02:00
pancake
be247348b5 Rename r_file_exist into r_file_exists 2012-09-06 08:59:13 +02:00
pancake
6c10b98d84 Looks like z80 plugin is problematic. disabled build tips 2012-09-04 02:09:01 +02:00
pancake
a8757a695f Fix android build and add r_core->anal_define api
Fix static build (libr.a)
Fix android build farm scripts
Build system is still hacky
2012-09-03 01:27:52 +02:00
pancake
0e82165bf7 Honor make -s and lot of build cleanups 2012-08-14 15:44:17 +02:00
pancake
1586c29785 Fix race conditions in makefiles and clean TODO 2012-08-10 15:59:37 +02:00
pancake
c5452fb379 * Fix sdbpath for long paths 2011-11-01 12:59:07 +01:00
pancake
f5e374e235 * Make w32dist ship sdb and fortunes
* Add support for relative R2_PREFIX for w32
2011-10-24 12:07:12 +02:00
pancake
1f7f9dc036 * Enhacements for rarun2
- add 'timeout' directive
  - directives can now be passed in arguments
  - support more than 3 args for launching
  - show default config file in help
* Added test suite for r_egg
  - Fix nested conditional and loops
  - Some situations can result in broken code
  - Code needs a huge cleanup
* Varioues fixes for x86.nz plugin to make r_egg happy
* Install python plugins into dist-packages only
  - site-packages is not the right place
* Add R2_LIBDIR and R2_PREFIX constants
* Honor LIBDIR in sdbpath for r_syscall
* Fix rabin2 -h for -C
2011-10-24 04:35:42 +02:00
pancake
17dfe1bcf8 * Fix some possible-use-of-uninitialized-variables 2011-10-20 16:36:00 +02:00
pancake
6c0318fa86 * Honor LIBDIR in syscall/d and magic/d
* Show similarity distance in radiff2 -C output
* Add -O flag to radiff2 to use diffops
* Diffing threshold for basic blocks and functions is now configurable
* Explicitly delete the asm object from the nodejs example
2011-10-14 10:09:53 +02:00
pancake
4ea6ee9873 * Add new flags to r2
- -D : enable debugger mode for non native debuggers
  - -c cmd : execute a command before showing prompt
* Initial import of the bfvm (brainfuck virtual machine)
* Initial dummy implementation of the brainfuck debugger plugin
  - Needs to be integrated with bfvm to work
* Added doc/brainfuck
2011-10-07 03:10:44 +02:00
pancake
8933c45e0d * Fix some warnings in r_debug_native for mingw64 2011-09-19 21:08:26 +02:00
pancake
838e6b7466 * Fix java class parser for javac -g files
- Show debug information in sdb format
  - Fix null pointer segfault
  - Still work-in-progress for proper debug info
* Some work on r_egg
  - Fix windows and osx default syscall tables
* Export version number in vapi R2_VERSION
* Hide ccache error if not found in sys/install
2011-09-18 18:56:11 +02:00
pancake
cfccb47b0f * Fix build 2011-09-11 00:42:59 +02:00
pancake
4d6c585672 * Add support for mach0-arm and mach0-x86_64 in r_bin_create
- x86_64 has been tested and works fine, but needs some love
  - the arm mach0 (iPhone) is not yet tested, but the bin looks ok
* Install syscall sdb files into versioned directory in lib/radare2
2011-09-09 01:09:36 +02:00
pancake
aebf800b8e * Lot of fixes in r_syscall api related to the use of RPair
- Fix segfault in OpenBSD (thanks vext01 for reporting)
  - Add openbsd-x86-64 syscall definitions
2011-07-02 10:14:46 +02:00
pancake
deb6e216fa * Build syscall/d at compile time
* Handle ud_disassemble return value
* Added dummy r_pair_{[de]serialize}
* Fix 'pf' command for arrays
2011-09-06 00:38:56 +02:00
pancake
55a29f976b * Add dummy darwin-x86-64 syscall information
- OS is 'darwin', not 'macos' (r_bin)
* Fix r_syscall vapi
* Honor DESTDIR (thanks l0gic)
2011-09-04 20:25:32 +02:00
earada
5f0043a846 * Add linux-x86-64 syscall definition 2011-09-04 18:02:37 +02:00
Nibble
ee8ca52b57 * Add decode str to ranal2 output
* Fix syscall installation
2011-09-04 17:47:26 +02:00
Nibble
0f8cc36a58 * Fix build
- Add r_db to DEPS in Makefiles
2011-09-04 11:49:32 +02:00
pancake
833abfa19b * Major refactoring in r_syscall
- Requires rebuild, still not fully tested
  - Use r_pair (nosql db) to store all this info
  - Added lot of new platform descriptions for RSyscall
2011-09-04 05:33:59 +02:00
pancake
2c92c7d172 * Merge rapatch2 into rabin2 -p
* Honor bits in r_syscall_setup
  - Initial work on RPair in r_syscall
  - Not yet integrated, but design is mostly done
* Add r_str_split()
* Add python2 and python3 makefile rules in r2-bindings
2011-09-04 03:56:35 +02:00
pancake
76e4cfdd31 * Add dummy sparc/linux syscall tables 2011-09-03 01:35:58 +02:00
pancake
168d38fc44 * Add rax2 -x to calculate string hash
* Use trim to avoid noisy chars in symbol names for egg/lang
* Properly handle osx/w32 os strings in r_egg
* Make string construction works in r_egg
* Initial work on while() constructs
2011-08-09 11:06:50 +02:00
earada
bff20dd916 * Add 8/16/32 bits register definitions in linux/x86_64
* Fix r_syscall_reg, to show syscall params correctly
2011-07-22 13:33:43 +02:00
pancake
c47da60578 * Some fixes in r_syscall (thanks vext01!)
* Use x86.olly before x86.nasm
* Add r_asm_assemble_file() method
  - Accessible with 'waf' command
2011-07-07 00:53:08 +02:00
pancake
510c08f4e4 * Do not use strcpy/strcat/sprintf
- There are still some 3rd party files that require update
  - Makes OpenBSD linking less verbose
2011-07-06 03:01:21 +02:00
pancake
020dd97a8b * Fix many segfaults discovered in OpenBSD
* Fix segfaults caused by read buffer overflow in x86im
  - use a 16 byte delta buffer in function and basic block analysis
* Fix r_list_delete segfault caused by an use-after-free bug
  - Thanks Edd Barrett for notifying :)
* Clean up many warnings reported by OpenBSD's gcc
* Reduce analysis depth to 50
* Fix OpenBSD syscall definitions and fix generator python script
2011-04-03 02:43:15 +02:00
pancake
a2a58c8dc3 * Commited syscall entries for OpenBSD (thanks Edd Barrett!) 2011-04-28 18:31:06 +02:00
Eloi Sanfelix
7c04f11226 Initial SH4 support 2011-03-29 14:55:41 +02:00
pancake
d953cd9adf * Initial implementation of the java name mangling
- Added as comments before the method names
* Some fixes in r_bin_java
* Added r_buf(append/prepend)
* Show flags always in new lines
2011-02-27 20:30:41 +01:00
pancake
1f1a36c817 * Initial implementation of the r_anal_aop_execute api
- It's like r_vm, but using r_anal
  - r_vm is going to be deprecated
* Added r_mem_set_num()
* Remove deprecated asm/t/fastcall example
* Fix warnings in r_syscall_regs
  - Integrated with r_syscall_use()
  - Fix r_syscall_reg() out of bound bug

--HG--
rename : libr/syscall/regs.c => libr/syscall/fastcall.h
2011-02-03 00:20:39 +01:00
pancake
259883630b * Move r_asm_fastcall into r_syscall_regs (-42LOC) 2011-02-02 13:02:20 +01:00
pancake
124786c1ac * Added 'drd' command to show only modified regs
* Added r_list_foreach_prev()
* Add RSyscallPort to handle Hardware I/O ports
* Remove libr/TODO and refactor /TODO
* Link with 'ld' in rarc2-tool for nasm
2010-09-24 16:45:56 +02:00
pancake
183dffcd6b * Fix push immediate opcode analysis in basic x86 analysis
* Import simple arm assembler
* Some fixes for the brainfuck disassembler plugin
2010-09-08 19:49:34 +02:00
pancake
8f6bdc3560 * Add 'avrr' and 'avrc' commands to setup vm regs
* Many minor random fixes
* RVm api has an own architecture description file
  - r_vm_set_arch(vm, arch, bits);
  - add x86-16, x86-32, x86-64, arm-32
2010-08-23 00:48:44 +02:00
pancake
c101235102 * Analyze 'svc' opcode in ARM as software interrupt
- Interrupt number is stored in aop->value
  - Add dummy syscall table for osx/arm
  - Fix identification of syscall table on iOS bins
* Fix rabin2 -z on MACH0 binaries
2010-08-09 23:38:32 +02:00
pancake
56baae7e6e * Use RList in r_sign (Thanks edu for the patch!)
* Implement dummy darwin-arm syscall table to disable warnings in iphoneos
2010-07-16 00:40:28 +02:00
pancake
f641df833b * Initial working version of the MIPS code analysis
- imported from r1
* Implement the syscall table for linux-mips
* Do not use tabs in the mips disassembler
* Fix other uninitialized state segfaults in r_debug
2010-06-23 13:43:08 +02:00
pancake
276f186e7e * Add rafind2.1 manpage
* Many cleanups in the TODO files
2010-06-18 17:52:30 +02:00
Nibble
5c35f6e359 * Rename {r_*_handle_t, R*Handle} to {r_*_plugin_t, R*Plugin} 2010-05-26 01:42:22 +02:00
Nibble
7abcfe6852 * Refactoring
- Remove all init functions (included in _new)
  - Update vapi's (needs more work)
2010-05-20 17:40:58 +02:00
pancake
4137587cb3 * Fix compilation under mingw32
- Linking fixed for r_sign and
* Fix some reads out-of-bounds in r_bin_elf
  - Use __strnlen instead of ELF_STRING_LENGTH
  - Some simplifications using macros
* Open plugins in radare2 found in '.' by default
  - Make w32 happy
  - Fix RLib for w32 and local plugin files
* Implement r_sys_cmd_str() for w32
  - Also r_sys_setenv()
* Fix printfs in lib/t example
* win7 syscall list is now default windows one
* Added 'r_sys_perror' to make it portable on *nix and w32
* Rename RLibrary into RLib
2010-04-12 02:22:52 +02:00
pancake
68cb13b0a6 * Do not ask to save project when project file is ""
* Clean and refactor of the TODO
2010-04-07 11:07:59 +02:00
pancake
a19c5c6197 * Added linux-arm syscalls
* Lot of syntax cleanup (reduce locs, unify syntax)
2010-03-08 12:45:22 +01:00
pancake
fcbcc00d1e * Huge refactoring on r_syscall
- Integrated with core 'as' command. as? for help
  - Display formatted parametters of syscalls
  - Needs to fully implement this everywhere
  - Syscall argument parsing is not yet complete (<4args)
    - r_debug_arg_{set|get}
* Implement continue until syscall on Linux debugger backend
* Lot of syntax cleanup to use the new code convention
  - Clean r_sign, r_search, r_syscall
* Define global R_SYS_ARCH, _OS and _BITS
  - Handle asm.os and asm.arch to hook r_syscall plugins
  - Display 8 or 16 zeros depending on asm.bits
  - Added r_str_filter () to filter nonprintable chars

--HG--
rename : libr/search/stripstr.c => libr/search/strings.c
2010-03-04 01:46:25 +01:00
pancake/imac
9890c6e8b0 * Fix build in OSX
- env.sh now also uses DYLD_LIBRARY_PATH
  - Fixes in ollyasm/dis to link with no global variables
    - Remove double definition of global _state
    - Same for asm_java
  - Split -shared and -Wl,-R into LDFLAGS_{LIB|LINKPATH}
    - Fixes linkage in osx
  - anal_x86_bea plugin now links correctly against BeaEgine.o
  - dietline is now #include'd from line.c
  - no debugger support yet
  - Do not externalize any variable. Some linkage does not support it
* Remove bininfo dependency .. aims to be merged into bin soon
* Added r_str_case() method to change to lower/upper case a string
2010-02-21 20:21:36 +01:00
pancake
648f8ebe23 * Fix 'const char*' issue in valaswig bindings
- 'unowned string' is the correct vala type
  - Depends on valaswig tip
  - type checking is now more strict
* Build libr.so again for swig bindings
* Added test-r_bin.py
2010-02-12 00:43:11 +01:00
pancake
9442317413 * Major refactoring patch
- Remove plugin prefixes
    - It was unnecessary complicated
  - Remove unused code
  - Some RAPIfication
  - Rename _set( methods into _use(
  - Simplify some string processing
  - r_parse is working again
  - Sync all those api changes in r_core
  - External static plugin lists moved to .c
  - Fix some cast-related segfaults in core
* Review the r_search API
  - RAPIfication
  - Allow to pass NULL as binmask
  - Added TODO with some more ideas
2009-09-24 12:29:05 +02:00
pancake
bc1b1b976e * Initial implementation of r_asm_fastcall()
- VAPI sync
  - Used to get register N to call fastcalls (syscalls f.ex)
* Code analysis marked as 8-bit compliant
2009-08-14 00:37:18 +00:00
Nibble
620431982f * Fixed r_bin_pe segfault with .NET PE files
* Added windows 7 syscalls table to r_syscall under win7.c
2009-06-12 19:33:31 +02:00
pancake
19fa55ba33 * Add random documentation for dynamic language plugins
* Properly installation of vapi files
  - Lot of fixtures to build a external hello world in gtk+vala+r_asm
  - default staticplugins for r_asm are:
    mips, java and x86_olly by default
  - Add r_util.vapi and make .pc file point to -lr_util
  - Use .deps to generate dependencies between vapi files
  - Fix r_asm.vapi (Added Asm.Aop struct)
    - add set(string) method
    - asm/disasm -> assemble/disassemble
* Fix warning + build in sign.c
  - Included in default build
* Fix segfault in r_lib with NULL in opendir()
* More fixtures for r_asm_plugin_*
  - use #ifndef CORELIB
  - drop 'static'
* Update README
2009-03-10 01:49:24 +00:00
Nibble
389cce05f6 * r_anal // r_asm
- Initial AOP parser (needs more love)
  - Adds buf and inst_len to r_asm_t
  - Refactoring
* More Makefile refactoring
2009-02-09 00:19:06 +01:00
Nibble
710adba920 * More Makefile refactoring and cleanup
* Minor cleanups in r_asm.h
* First work in r_anal
2009-02-06 18:22:27 +01:00
pancake
c5e588e6e5 * Initial import of libr
- Previous commits has been reported in the ChangeLog file
  - hg log has been lost (moved inside ChangeLog)
  - Old radare1 repository has removed all the libr
2009-02-05 22:08:46 +01:00