Commit graph

141 commits

Author SHA1 Message Date
pancake
504f006d5d Fixes more gunzip support in r_util 2014-08-10 18:24:00 +02:00
pancake
3d66ed5378 Add r_file_gzslurp() to read GZIPped files easily 2014-08-10 18:13:12 +02:00
pancake
f67850fcb2 FIx w32 build 2014-06-25 04:19:23 +02:00
pancake
b788deac00 Fix latest coverity issues
CID 1221463
CID 1221462
CID 1221461
2014-06-07 11:23:14 +02:00
pancake
06ec145106 Fix r_file_truncate 2014-06-06 01:10:43 +02:00
pancake
e06b6695e8 Fix r_file_slurp() for /proc files 2014-06-04 03:51:18 +02:00
pancake
2890b25e42 Fix w32 build 2014-05-19 10:54:29 +02:00
deeso
1fbc7f2168 Added load_bytes, Pushed curplugin down to RBinObj, Reworking the RBinFIle loading to accomodate RBinObj reworked how all bins are loaded. Needed to hack IO to make
this work with rbinfiles and rbinobjects.

Conflicts:
	libr/bin/bin.c
	libr/bin/p/bin_te.c
2014-05-13 21:54:18 -05:00
Adam Pridgen
e9cabecc45 Fix CIDs: 1211131, 1211134, 1211136, 1211133, 1211143 2014-05-04 22:09:20 -05:00
deeso
3adcb54f17 Overhauled how files are loaded. Now *all* files use an IO plugin the default one is mmap'ed 2014-05-01 20:13:57 -05:00
Fedor Sakharov
179147bf77 util: Read strings from file correctly 2014-04-21 19:22:37 +04:00
jvoisin
ea2363d926 Fix some coverity issues 2014-03-16 00:16:43 +01:00
Fedor Sakharov
bb68fa072c util: Fix umask when making temp file 2014-03-09 00:01:04 +04:00
Fedor Sakharov
61193c6527 Fix coverity issues in r_util 2014-03-08 11:56:15 +01:00
pancake
8b40a53080 Update sdb from git and fix 'test.cparse' 2014-02-08 03:09:03 +01:00
pancake
99a6dec209 Fix r_file_is_directory() 2014-01-21 02:08:51 +01:00
pancake
cacb12cafc Fix opening block devices (S_IFDIR wtf) 2014-01-20 15:04:16 +01:00
pancake
da33633680 Fix #491 - Project untrusted input
- Fix various project related issues
- Do not save in directories. Projects are file + file.d/
- Do not show division by zero issue (e cfg.foo=/bin/ls)
2013-12-28 02:34:15 +01:00
pancake
05d7188a9a Fix dynamic format string functions
- s/r_str_dup_printf/r_str_newf/g
- Add r_strbuf_setf()
2013-12-04 00:20:52 +01:00
pancake
42a8bb440e Fix #345 - fix some segfaults in yank and num.c 2013-09-05 05:10:57 +02:00
jvoisin
da002cc95d Fix a memory leak 2013-09-27 18:57:07 +02:00
pancake
e25567cb09 Implement .-. Fixes for cfg.editor and handle RCons.editor() 2013-09-04 00:35:48 +02:00
pancake
a46eb958e7 Initial implementation of the wip multiline text editor 2013-08-28 03:06:10 +02:00
pancake
602bb70a30 Simplify shlr build and some w32 fixes 2013-08-27 01:18:42 +02:00
pancake
ced24c443d Load <file>.r2 if exists, last 3 args of 'S' are now optional 2013-06-09 01:09:47 +02:00
pancake
735bcc2fb9 Use r_file_abspath() and add dir.projects eval config var 2013-05-05 18:35:14 +02:00
Shane Peelar
24ccb7aabb Fixed compilation problems on Windows with MinGW-w64 4.8 2013-05-02 10:17:59 +02:00
pancake
8afdf330ae List and remove projects using '-p' and '-p -$prj' 2013-04-18 09:39:37 +02:00
pancake
dacede5ae9 Initial port of io-mmap to w32 2013-03-12 13:24:48 +01:00
pancake
8f4d23a5ce Initial implementation of io.map plugin 2013-03-12 01:50:55 +01:00
pancake
2fa48384ad Fix some bugs reported by clang-analyzer 2013-02-08 11:42:46 +01:00
pancake
150c43d33c Oops. w32 typo 2013-01-23 18:41:31 +01:00
pancake
9b1df62609 Fix mmap and other minor issues on w32 2013-01-23 18:38:08 +01:00
pancake
3635f85336 Better http support and handle asm.offset in 'px'.
Implement dirlisting in http
get in /up/. Honor asm.offset in 'px'.
Fix r_file_root and crosspath vuln in http server
2013-01-04 10:16:41 +01:00
pancake
a8a4c5e3e8 Initial implementation of http.upload (disabled by default)
Open http://localhost:9090/upload.html to upload
curl -F file=@/bin/ls http://localhost:9090/up/ls.bin
Tested on 10MB files without problems
Default upload directory is $TMPDIR
2013-01-03 00:47:58 +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
5ad9ae97ed Fix some bugs (nullptr, memleak) reported by clang-analyzer 2012-09-26 10:01:43 +02:00
pancake
3861772e6d Initial implementation of r_io.zip plugin
Allows to: r2 zip://foo.apk//classes.dex
Honor LDFLAGS in r_bin
Fix filename issue in r_io_redirect
Add testing on-activate event in r2w2
2012-09-07 03:26:38 +02:00
pancake
61fc7e5899 Force HTTP/1.1 and better interface for r2w
Many bugfixes in the webserver implementation
Fix check for temporary directory
Fix vapi file for r_print
2012-09-07 01:48:09 +02:00
pancake
2f48e2fee7 Fix build 2012-09-06 12:58:07 +02:00
pancake
6d66f627b3 Fix bug in r_file_mkstemp
Use /data/local/tmp as default TMPDIR for android
Fix segfault in http server shutdown
Fix http.browser for android
2012-09-06 12:47:32 +02:00
pancake
be247348b5 Rename r_file_exist into r_file_exists 2012-09-06 08:59:13 +02:00
pancake
46e29afb98 Initial working web ui: r2 -c =H /bin/ls
Autodetect osx, win, linux and android browsers
Default port is 9090
Add support for local networking in RSocket
Add r_str_unescape() helper function
Fix htmlgraph.sh script.
Added wwwroot in shlr/www
Swap eval/cmd load order in r2
Add r_core_cmd_str_pipe()
Use RCons in 'fs'
2012-09-06 03:12:54 +02:00
pancake
9362041562 Huge RBin refactoring and fix mach0 section perms 2012-08-04 23:48:06 +02:00
pancake
0104a6cd6d * Add ?ip and r_cons_hud_path()
- atm only for files
  - o `?y` doesnt works with path with spaces
* Add r_file_is_directory()
* Documentate ?V command
* Add support for prompt in r_cons_hud()
2012-02-01 03:32:14 +01:00
pancake
29166cc940 * Initial import of the hud input method for the visual mode
* Use '_' key in visual mode to enter in hud mode
* Support mach0 files with multiple sections with same name
* Fix parsing of commands with nested quotes
* rename ?z to ?l
* added new command ?y to get and set yank buffer contents to stdout
* ?i stores the input into the yank buffer now
* ?I accepts a file name as argument which is loaded as hud
* ?k used as key=value temporal storage
* Add calc.c .. plans are:
  - support proper parenthesis in math.c
  - support floating point arithmetics
2012-01-31 02:45:17 +01:00
pancake
840550aa3a * Add asm.tabs for bearuty for free (enable by default?)
* Apply @l0gic patch for ELF parsing segfault
* Improve a lot the startup time by using r_file_mmap
* Fix build on osx
2012-01-26 03:18:45 +01:00
pancake
696961d15d * Cleanup for rsakey (still unused)
* Move sflib into libr/include
* Added r_file_size()

--HG--
rename : binr/ragg2/d/sflib/common/sfsocketcall.h => libr/include/sflib/common/sfsocketcall.h
rename : binr/ragg2/d/sflib/common/sftypes.h => libr/include/sflib/common/sftypes.h
rename : binr/ragg2/d/sflib/darwin-x86-32/sflib.h => libr/include/sflib/darwin-x86-32/sflib.h
rename : binr/ragg2/d/sflib/darwin-x86-32/sfsyscall.h => libr/include/sflib/darwin-x86-32/sfsyscall.h
rename : binr/ragg2/d/sflib/darwin-x86-32/sfsysnr.h => libr/include/sflib/darwin-x86-32/sfsysnr.h
rename : binr/ragg2/d/sflib/linux-x86-32/sflib.h => libr/include/sflib/linux-x86-32/sflib.h
rename : binr/ragg2/d/sflib/linux-x86-32/sfsyscall.h => libr/include/sflib/linux-x86-32/sfsyscall.h
rename : binr/ragg2/d/sflib/linux-x86-32/sfsysnr.h => libr/include/sflib/linux-x86-32/sfsysnr.h
rename : binr/ragg2/d/sflib/linux-x86-64/sflib.h => libr/include/sflib/linux-x86-64/sflib.h
rename : binr/ragg2/d/sflib/linux-x86-64/sfsyscall.h => libr/include/sflib/linux-x86-64/sfsyscall.h
rename : binr/ragg2/d/sflib/linux-x86-64/sfsysnr.h => libr/include/sflib/linux-x86-64/sfsysnr.h
2011-12-01 10:53:02 +01:00
pancake
ee665da38e * Fix load of object elf files (kernel modules too)
- thanks Sebastian Reichel for reporting!
* Use O_BINARY in open() on windows
  - Will this fix the disassembler problems on w32?
2011-11-29 04:25:18 +01:00
pancake
7b093a3ed5 * Fix all dangerous bugs reported by llvm-analyzer 2011-11-14 22:46:23 +01:00
pancake
0eb0eabd19 * Do not dist w32 test bins
* rahash2 now depends on r_io
  - support for huge files is wip
* Handle offset in afl command
* Fix libs.mk syntax issue
2011-09-23 12:25:06 +02:00
pancake
56fb04bb79 * Say different error if -w is used in r2 and fails
* p= command is now an alias for !rahash2 -a entropy -b 512 $FILE
* Some work in the 'G' key in visual
* Fix zoom on io.va=1
* r_sys_getcwd now returns a heap ptr and its named to r_sys_getdir()
* Show invalid instructions in 'pd'
* Fix prompt for 'w' key in visual
* More work with RPair
  - Looks like it's finally usable. Let's use it from r_syscall
  - Update sdb from hg
  - Enhace test program
* Show newlines in 'ps' command
2011-09-04 02:34:54 +02:00
pancake
0a7eefc9f8 * Fix some memory leaks 2011-08-28 00:01:03 +02:00
pancake
d2cf5e4425 * Import chmod() from sbase as r_file_chmod()
- Support recursive chmod
  - Handles string-based octal/expression formats
  - Used by rabin2 -c to chmod +x the created binary
2011-07-25 23:42:39 +02:00
pancake
a173eedcaf * Added support for ELF32-linux-x86 binaries for rabin2 -c
- Allow to create tiny elf binaries (only text section)
  $ rabin2 -a x86_32 -c elf:31c040bb2a000000cd80 a.out
* Added api for 16 and 64 uint write in RBuffer
2011-07-25 23:20:49 +02:00
pancake
840190602c * Use strncpy instead of strcpy in asm and util
- Also avoid using sprintf and strcat
  - Some speedup and buffer overflows fixed
* Reimplement 'ap' command using the API
  - Fixes some issues related to nested console buffers
  - Faster and more reliable
* Use Color_ definitions instead of hardcoded values in r_print
2011-07-06 01:29:18 +02:00
pancake
e0f8869e1b * Various minor visual fixups
* Add r_file_temp
2011-05-22 02:45:59 +02:00
pancake
a6f48ded22 * Added CC! command to use cfg.editor to modify comment
- CC-* removes all comments
  - Many bugfixes in comment handling code
  - comments are now turqoise and have no ';'
* Added r_cons_column -- add support for columned text
  - Added r_cons_justify to align text to right
  - Added r_cons_memset as a helper
  - Vv menu displays options and list in left and disasm at right
  - Allow to rename functions
  - Added ':' prompt in Vv menu
* Initial implementation for s/ command (search+seek)
* Use core->num->value for 'p' command (number of bytes used)
* Implement /i to search ignoring case
* Help for e scr.fkey=?
* Added r_core_editor() helper
* Fix use-after-free in r_anal/meta
2011-05-21 14:27:46 +02:00
pancake
3e77100e78 * Refactor r_file_tmpdir() 2011-05-03 19:36:06 +02:00
pancake
7b221b7089 * Import of a reviewed Glyn's patch (Thanks!)
- Use files in x86.nasm plugin to fix portability issues
2011-03-18 09:24:16 +01:00
pancake
d868fec5ba * Fix build of io_haret plugin
* Implement backtrace for OSX
* Fix build util/file.c for Solaris
  - Added doc/solaris
2011-03-13 21:00:46 +01:00
pancake
dc3d11d7d5 * Fix segfault in r_cons_memcat
* Add yp command and document yt
* Add p6d and p6e to decode and encode base64 strings
* Remove vm.* config vars
* Fix RNum evaulation for $ variables
* Implement r_fs_posix
2011-02-23 02:10:28 +01:00
pancake
16eefe9762 * Fix w32 mmap implementation for r_mmap api 2011-01-07 00:42:27 +01:00
earada
93413ab59e * Oops, type error un r_util 2011-01-02 14:45:36 +01:00
earada
0eaceff162 * Fix function asciiart in r_print_disas
* Add mmap & mmap_free windows support
2011-01-02 14:39:25 +01:00
pancake
13b04ecaf6 * Fix build for w32 2010-12-16 13:55:20 +01:00
pancake
6d515cc1a8 * Update and reorder TODO tasks
* Added r_file_mmap() functions in r_util
* Do not hash files bigger than 10MB
* Fix abspath() return value and signature
2010-11-17 21:15:34 +01:00
pancake
d2c2c27607 * Added /proc/pid/task support to get thread list in Linux
* Initial work on boolt typedefinition
2010-11-16 18:19:51 +01:00
Nibble
31b0d33479 * Fix ret value in r_file_dump() 2010-11-09 18:09:37 +01:00
Nibble
6d1aa00b42 * Fix r_file_slurp()
- handle correctly fread return value
2010-10-27 16:53:06 +02:00
pancake
0a294261aa * Many warnings fixed thanks to gentoo build and @astralia 2010-10-27 16:31:51 +02:00
pancake
7ff20e59db * Add -t flag to launch rabin2 in a thread
* Fix ^D using threaded load
* Only load rabin info when no project file exists
* r_core_project_open does not works on directories now
* Sync r_core.vapi
2010-06-24 23:14:12 +02:00
Nibble
08cfc25e85 * Fix segfault related to dwarf 2010-04-20 19:32:04 +02:00
pancake
cb9ee58920 * Fix possible overflow in PE format loader
- Do not used trashed bytes from r_file_slurp_range
* Implement r_sys_cmd_strf
  - Simplify code in addr2line r_bin_meta plugin
* Install again in site-packages for py2.6
  - Debian/Ubuntu uses dist-packages, but not in arch
2010-04-13 21:19:54 +02:00
pancake
ef5f65c2b8 * Fix ELF64 header identification
- This bug was causing bin_load fail sometimes
    on mingw32 and linux on elf32
* Check null pointer in r_file_slurp_range
* Fix compilation (oops)
2010-04-12 11:46:15 +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
010695c5b9 * Added 'dct' and 'dctl' commands for touchtrace
* Added r_file_basename helper
* Random syntax cleanups
2010-03-03 11:35:03 +01:00
pancake
9c0636e5ca * Fix return value of bin_meta_elf
* Added 'dsl' command to step until next meta information
  line is reached.
* Display file:line with context 5 with 'CL' command
  - Fix r_file_slurp_line
* Added 'dcu' command to continue until an address
  - bp,dc,bp-
* Added dbg.swstep to configure stepping debugger algorithm
* Add file.type. fixes warning. Defined by rabin2
* Load rabin2 in va format when debug or va modes are enabled
* Ask to kill the child before quitting
* cmd_quit is no longer calling 'exit'.
  - Returns R_CORE_CMD_EXIT (-2)
  - Return value can be captured at core->num.value
* Implement native kill as a debugger callback
* cmd.visual is now cmd.vprompt
* Add r_debug_reg_{get|set}
  - Handle register name aliases
  - Works only with ut64 type
* 'dr:eax' is now 'dr?eax'
* Lot of random syntax cleanups
2010-02-28 22:58:21 +01:00
Nibble
336d1ce982 * Add r_file_abspath to r_util 2010-02-20 06:40:02 +01:00
pancake
58c557f316 * Apply 'whats' fix for r_file_slurp_hexpairs()
- Fixes segfault
  - Added test program
* RAPIfy the r_util/file.c
2009-09-17 14:02:44 +02:00
pancake
b37ec4f0b1 * Added 'mk/stat' tools
- Perform statistics about XXX and TODOs
* Change signature of r_debug_mmu_
* Added io->cached_reads
* RAPIfy the r_lang
* Reviewing of the r_lib API
  - Write the vapi file
  - Check for null mallocs
* Fix build of r_reg
2009-09-17 11:48:36 +02:00
Nibble
94445e1540 * Change the name of some types
- s/u64/ut64/
  - s/u32/ut32/
  - s/u16/ut16/
  - s/u8/ut8/
2009-07-08 13:49:55 +02:00
pancake
0509263cbd * Initial import of r_db 2009-06-15 02:44:05 +00:00
pancake/fluendo
4a33771947 * Fix segfault in r_file_slurp_random()
- Thanks elektranox
2009-04-20 12:31:12 +02:00
pancake/fluendo
29ed9ca8d3 * Added 'yt' command (yank to)
* Fix help for ?$ -> ???
  - New variables (sync with r1 are available)
  - $$, $$$, $e, $j, $f, $r and ${..}
* Implement wf, wF and wt (but not wtf :P)
* Fix some minor warnings
* Added new slurp_hexpairs helper
2009-04-15 20:24:19 +02:00
pancake
99f284f358 * Some work for r_bininfo library
- Extend API to get file and line numbers from a virtual address
  - Added addr2line-like test program 'rabini'
  - Added 'addr2line' plugin
* Add r_file_slurp_line helper in r_util
* Added initial work to support multiple compilers (gcc only atm)
  - tcc support under development
  - Make HAVE_REGEXP be optional
2009-03-22 04:37:46 +00:00
pancake
fc22e99c95 * Initial fixup for default LIBR_PLUGINS on installed r_lib
* Initial work to simplify build porting for OSX and W32
2009-03-10 21:58:00 +00:00
pancake
03a613e7d2 * Fix lot of warning messages 2009-03-06 00:00:41 +00:00
pancake
008112edba * Initial integrated implementation of r_lang in r_core
- Added two dummy plugins for r_lang (dummy and lua)
  - Accessible thru the '#!' command.
2009-02-10 15:56:20 -08:00
pancake
9bd9cbe135 * Fix LIBR_PLUGINS in env.sh
* Initial implementation of the visual mode in core
* Added pc and ps print formats (c code and string)
* Added '/' command in core (search hexa and str)
* Add '-d' to radare2 test program
* New r_file_path to resolve file path thru $PATH
* 'make install' works everywhere
2009-02-09 01:54:09 +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