Roi Martin (@nibble_ds)
7392437491
Fix symbol list regression in ELF parser
2015-01-31 04:42:44 +01:00
pancake
9d7aafc05c
Fix #1994 - Fix crash in ELF loader
2015-01-26 03:32:40 +01:00
jvoisin
9681c6fcf7
More coverity
2015-01-25 14:35:46 +01:00
pancake
e11e1a633e
Fix #1992 - fuzzed elf + dwarf segfaults
2015-01-25 03:23:30 +01:00
pancake
672b7057a4
Fix #1971 - Segfault in ELF parser
2015-01-17 00:32:20 +01:00
pancake
79e4e25d35
Fix #1919 - Autodetect main in ARM linux/arm programs
2015-01-14 23:47:37 +01:00
pancake
7c5c6624c2
Cleanup MD5 code and fix mach0 warning
2015-01-13 03:09:23 +01:00
pancake
ddf3187712
Fix crash for rabin2 -c pe
2015-01-09 17:41:47 +01:00
pancake
f495b5031a
Handle ET_REL ELF relocs, asm.cpu for arm.cs: v8, mcortex
2014-12-28 03:53:39 +01:00
inisider
f18988f21f
fix pdb downloader
2014-12-23 15:06:42 +01:00
skuater
2ef956e2d5
Resolve PE import Ordinal names from RBin
2014-12-23 10:35:00 +01:00
pancake
02d69d72f0
Fix build
2014-12-19 00:22:39 +01:00
pancake
68955c2d46
Handle ^C in /R and /R/
2014-12-18 22:38:12 +01:00
pancake
49446b27c0
Fix #1848 - crash in dex parsing
2014-12-18 01:17:16 +01:00
pancake
c42056228d
Define LC_ENCRYPTION_INFO_64
2014-12-17 13:56:21 +01:00
pancake
f5959d3534
Fix pie main detection with baddr for non-pie
2014-12-12 23:15:16 +01:00
pancake
49af10d42a
Fix #1799 - Detect main symbol in Linux ELF PIE bins
2014-12-12 13:21:53 +01:00
pancake
70658f142d
Fix PE parser issue
2014-12-12 02:04:44 +01:00
pancake
262b0cfd55
A fix for a MACH0 crash
2014-12-11 19:57:01 +01:00
pancake
190d8f1aa5
Fixes for the ELF PIE main detect
2014-12-11 03:10:31 +01:00
pancake
a5703d775c
Detect 'main' symbol in stripped Linux PIE ELFs
2014-12-11 02:44:55 +01:00
pancake
80ab55d714
Make the PE testsuite pass in green
2014-12-11 02:17:36 +01:00
pancake
d1585fafa1
Fix some PE crashes
2014-12-11 02:08:29 +01:00
inisider
155997598f
Add initial support to download PDB files (NodeJS helper)
2014-12-10 17:01:32 +01:00
pancake
274f22001d
Add initial support for CRIS cpu as suggested by LolyRoP
2014-12-07 23:18:22 +01:00
Jeffrey Crowell
ed1aae7fd1
fix lots of spelling
...
fix some errors from the sed script
undo file mode crap
2014-12-07 17:00:59 +01:00
pancake
e2386ba52d
Fix crash in COFF parser
2014-12-03 16:35:44 +01:00
pancake
3a31198ffd
Fix #1702 - Revert and fix the dwarf/dex crashes related to uleb overflows
2014-12-01 23:44:20 +01:00
pancake
21288ac6ab
Cleanup some code from the previous commit
2014-12-01 23:17:28 +01:00
inisider
64a47c6625
RBin.PE: Get debug data and retrieve GUID and debug file name
2014-12-01 23:01:24 +01:00
pancake
1612715a33
Check for uninitialized variables in MACH0 parser (thanks cov)
2014-11-25 12:59:24 +01:00
Riccardo Schirone
aaa822f03b
More work on mach0 format parser
...
* use segment instead of sections
sections are optional. it should be better to rely on segments
* remove r_bin_mach0 prefix
make the source code easier to read. considering this is a plugin, it's
completely separated from other stuff and we can rename things without
problems.
* remove MACH0_ prefix from static functions
* fix a mistake. we should check segs, not sects
* get right entrypoint also for LC_THREAD
* fix logic to retrieve entry offset/addr
first it computes the virtual entrypoint address and then it finds the
offset in the file through addr_to_offset
2014-11-24 11:57:54 +01:00
pancake
a193e9d316
Fix #1665 - PE parser crash
2014-11-24 02:52:03 +01:00
Riccardo Schirone
fb1be4d598
libr/bin/format/mach0: set main_cmd on the first LC_THREAD
...
If there are only LC_THREAD, we get the entrypoint from the first
load_command found.
2014-11-23 11:06:10 +01:00
Riccardo Schirone
236298aaa0
libr/bin/format/mach0: find directly main when bin uses LC_MAIN
2014-11-23 11:06:10 +01:00
Riccardo Schirone
06ddf558d9
libr/bin/format/mach0: remove unused function
2014-11-23 11:06:10 +01:00
Riccardo Schirone
590a18ea23
libr/bin/format/mach0: check filetype in r_bin_mach0_get_baddr
2014-11-23 11:06:10 +01:00
Riccardo Schirone
fa0c74616d
libr/bin/format/mach0: correctly retrieve entrypoint
2014-11-23 11:06:10 +01:00
Riccardo Schirone
ca32f842ad
libr/bin/format/mach0: name consistency
2014-11-23 11:06:10 +01:00
Riccardo Schirone
971223390e
libr/bin/format/mach0: set entrypoint only on first LC_THREAD
2014-11-23 11:06:09 +01:00
Riccardo Schirone
c1441b6ef2
libr/bin/format/mach0: fix baddr
2014-11-23 11:06:09 +01:00
Riccardo Schirone
762f518f25
libr/bin/format/mach0: fix issue with entry offset calculation
...
mach-o/loader.h: comment flavor to follow Apple header
2014-11-23 11:06:09 +01:00
Riccardo Schirone
24368ac3de
libr/bin/format/mach0: check Mach0 format correctness
...
if there is LC_MAIN or LC_UNIXTHREAD in the file, you can't have other
threads
2014-11-23 11:06:09 +01:00
pancake
41b6f99ec1
Revert "Fix several crashes in dalvik. Thanks nightmare!"
...
This reverts commit f6440fc526 .
Conflicts:
libr/bin/dwarf.c
libr/bin/p/bin_dex.c
2014-11-19 12:14:23 +01:00
pancake
182819dcf2
Fix bug in PE parser
2014-11-19 01:16:31 +01:00
pancake
ff72e9f0b8
Fix an overflow in r_buf_read
2014-11-19 01:08:46 +01:00
pancake
8c55285b5d
Fix #1682 - Fix ELF null deref regression with rabin2 -c
2014-11-16 12:05:49 +01:00
pancake
36f66f07d7
Fix another elf crash thanks to melkor
2014-11-10 13:35:40 +01:00
pancake
b298413192
Fix #1640 - Current ELF is passing all those orcs
2014-11-10 05:42:57 +01:00
pancake
9cf541c582
ELF parser is now fuzzer-proof
2014-11-10 05:02:25 +01:00
pancake
9af7b348d5
Reapply 5870b6376c
2014-11-10 04:27:56 +01:00
pancake
0f6c813079
Revert elf.c to 3d3c5a3a14
...
- Reverts all latest changes from pancake, montekki and lemonboy
- Aiming to stabilize the ELF parser for the release
- We loose support for syms in phdr bins
- We loose support for relocs
- But we get proper symbol names and tested in real demos which are now broken
- The branch `elf-ng` contains the latest code with all montekki's and lemon's work
- Once this new branch gets fully tested it will be merged into master
2014-11-10 04:04:07 +01:00
Fedor Sakharov
fa64e18391
Do not ignore UNDEF symbols
...
Fixes #1542
2014-11-06 18:06:32 +01:00
pancake
0142915fb7
Minor code cleanup for the elf parser
2014-11-06 02:12:55 +01:00
pancake
350b13f980
Fix another fuzzed crash in the ELF parser
2014-11-05 23:24:43 +01:00
pancake
5651a8bf85
Fix another boundary check fail in ELF's strtab
2014-11-05 23:19:14 +01:00
pancake
2674032486
Fix another crash in the ELF parser (nightmare)
2014-11-05 22:52:53 +01:00
pancake
5870b6376c
Fix strtab read overflow null-terminating all strtab copies
2014-11-05 22:49:43 +01:00
pancake
cf9880568e
Fix oob read in ELF
2014-11-05 22:36:10 +01:00
Fedor Sakharov
a08b8833a4
Recognize symbols with type SECTION
2014-11-05 22:29:51 +01:00
pancake
89d4ff828f
Fix rabin2 -c elf regression crash (thanks maijin for reporting)
2014-11-05 19:23:37 +01:00
pancake
842b8db4f3
Fix more crashes in DWARF and ELF
2014-11-05 17:15:22 +01:00
pancake
8b86030130
Fix all warnings in the ELF parser
2014-11-05 17:07:56 +01:00
pancake
0764d0bc15
Fix two crashes in the ELF parser
2014-11-05 17:02:08 +01:00
LemonBoy
f990b078a8
Make the elf parser use the phdrs and the DT_DYNAMIC contents
2014-11-05 16:33:34 +01:00
pancake
7b7256d340
Remove boundary checks to fix regression, must redo the patch with more fuzzing
2014-11-05 16:11:01 +01:00
LemonBoy
9dd90c2133
Make the elf parser use the phdrs and the DT_DYNAMIC contents
2014-11-05 16:01:06 +01:00
pancake
3d3c5a3a14
Fix a fancy crash in the ELF parser
2014-11-05 04:20:35 +01:00
pancake
f8595e9abd
Fix crash in ELF parser
2014-11-05 03:16:22 +01:00
pancake
1ec7c21ed0
Fix regression in symbol names.
2014-11-05 02:59:15 +01:00
pancake
561555a595
Fix r_str_nlen for trashed symbols
2014-11-05 00:32:55 +01:00
pancake
f6440fc526
Fix several crashes in dalvik. Thanks nightmare!
2014-11-05 00:15:40 +01:00
pancake
3817068e17
Fix another tiny crash in mach0
2014-11-04 23:26:39 +01:00
pancake
a93d1d496e
Fix crash in mach0 parser
2014-11-04 23:22:05 +01:00
Fedor Sakharov
4c3796a25c
Do more proper boundary checking for relocs
2014-11-04 21:56:20 +01:00
pancake
8e78ebfee5
Fix crash in elf relocs
2014-11-04 16:16:47 +01:00
Fedor Sakharov
7ee086326a
elf: Fix a typo in elf.c
2014-11-04 13:59:54 +01:00
pancake
4790375679
Random enhacements for RHex apis and relocs
2014-11-04 02:16:40 +01:00
pancake
c2b54c1344
Fix reloc addresses in .o files
2014-11-03 15:59:58 +01:00
pancake
7a1596ebbb
Swap paddr <=> vaddr
2014-11-03 13:53:54 +01:00
Fedor Sakharov
6c3b502260
Re-implementation of relocations handling.
2014-11-03 13:43:49 +01:00
Maijin
3e3b222033
Add timestamp
2014-10-31 15:21:52 +01:00
pancake
8e381135e4
Add Shdr and struct sizes, fixes for ELF64 with r2 -nn
...
- Remove debug printfs in 't'ypes
2014-10-16 03:46:58 +02:00
pancake
42232354a7
Add 'ai' - address info, Enhace 'ad' (support patterns and sequences)
...
- ai shows: exec,read,write,flag,func,stack,heap,reg
- Add r_reg_regset_get()
- Implement r2.cmdj in r2.js
2014-10-15 02:24:22 +02:00
Skia
8e7c4c67be
Fix double bitfield and double enum in pf
2014-10-13 16:29:03 +02:00
pancake
9201d86558
Fix crash in elf parser
2014-10-11 01:25:45 +02:00
Skia
6e0285ab90
Fix pf
2014-10-07 17:59:58 +02:00
pancake
f5b578e851
Add some more mach0 headers for r2 -nn
2014-10-05 15:58:31 +02:00
pancake
5cf6900cf9
Fix symbol list on some MACH0 files
2014-10-04 17:44:33 +02:00
pancake
a4eefac793
More fixes for the ELF loader in get_libs()
2014-10-01 20:11:55 +02:00
pancake
664ae46dc5
Should fix #1457 - ELF rpath oob read
2014-10-01 19:59:50 +02:00
pancake
89c32e5d42
Check null ptr in elf
2014-09-30 12:07:29 +02:00
Maijin
a2693f982c
Update elf_header parsing / pf with enum
...
Update elf_header parsing / pf with enum
2014-09-26 23:59:42 +02:00
Alberto Ortega
de73ac8670
Add Nintendo DS ROM loader plugin
2014-09-25 00:04:37 +02:00
jvoisin
3f894a465a
Fix a stupid typo/warning
2014-09-24 01:08:51 +02:00
Maijin
6d33738cd3
Oops
...
Oops
2014-09-23 23:34:17 +02:00
Maijin
08c0ba47c9
Add more define/enum for PE
2014-09-23 20:48:14 +02:00
pancake
5a2c50f8dc
Handle sized bitfields and enums in pf
2014-09-23 16:07:18 +02:00
pancake
34365c7bb3
Handle cparse definitions in rbin sdb
2014-09-23 10:23:28 +02:00
Maijin
1982aa498f
PE Parsing: Add pe_image_data_directory
...
PE Parsing: Add pe_image_data_directory
2014-09-21 03:25:25 +02:00
Maijin
4f8ee8f22b
PE parsing:add pe_nt_img_header support
2014-09-21 00:04:54 +02:00
pancake
ac22f9e25c
Fix several COFF parsing crashes. Bring back /B
2014-09-20 19:28:56 +02:00
pancake
43d213853f
Fix PE crash
2014-09-20 18:43:04 +02:00
pancake
e627c05c4a
Avoid infinite loading times for some crafted mach0
2014-09-20 18:15:09 +02:00
pancake
9977a4721d
Fix some mach0 crashes
2014-09-20 17:45:06 +02:00
pancake
5ff1de1068
Fix another ELF parsing crash (thanks @maijin for reporting)
2014-09-20 16:12:44 +02:00
pancake
4c4173769b
Revert "Fixing the issue where file size exceeds size of an integer":
...
3adb00621b
e2afa84443
0761955fdb
17cc18fad0
135c62fb5d
2014-09-20 15:33:59 +02:00
pancake
143033b5d6
Add PE DOS header struct in r2 -nn (via maijin)
2014-09-20 13:27:54 +02:00
Fedor Sakharov
0592964fe9
propeller initial commit
2014-09-18 18:51:24 +02:00
Adam Pridgen
135c62fb5d
Fixing *most* warnings related to the change in r_file_slurp
2014-09-17 22:37:54 -05:00
pancake
73743ae5ae
Fix a regression in previous elf change
2014-09-17 15:19:40 +02:00
pancake
9be7cc789c
Fix the rest of fuzzed elfs crashes
2014-09-17 13:28:30 +02:00
pancake
ae06dc24b5
Fix file2 and file3 fuzzed ELF files
2014-09-17 11:01:36 +02:00
pancake
dec5580bf4
Fix some ELF OOB crashes (thanks @maijin for reporting)
2014-09-17 00:09:00 +02:00
pancake
7fde96ea63
Add some header structs for MACH0 and fix some for ELF (rabin2 -rk '' related)
2014-09-08 12:20:50 +02:00
pancake
a8d3136bd3
Working demo for 'r2 -nn ..'. See 'pf.' and 'fs *;f'
2014-09-08 04:37:34 +02:00
pancake
4bcb57955f
Initial test exposing elf headers into Sdb and fix crash in bin-any
2014-09-08 04:17:38 +02:00
defragger
b28c239a74
fixes speed of reading the imports
2014-08-27 16:04:35 +02:00
defragger
ceab3f0513
fixes #1210 and some other small issues
2014-08-27 02:57:21 +02:00
jvoisin
052d576ae6
coverifix
2014-08-24 19:40:08 +02:00
jvoisin
952359aa0e
Fix some memleaks
2014-08-18 03:22:16 +02:00
pancake
6f4c6a97be
Fix out of range access in PE parser (thanks mr valgrind!)
2014-08-17 17:05:51 +02:00
pancake
9a3d5476f5
Fix rabin2 -l on some weirdo PE files
2014-08-17 02:19:01 +02:00
pancake
a0570b4144
More fixes related to paddr/vaddr on PE/ELF/XBE
2014-08-15 12:47:05 +02:00
pancake
5a66d7a4d4
Fix #1203 - ELF64 symbol addresses.
2014-08-15 03:55:37 +02:00
pancake
332f21971a
Initial fix to support loading TinyELFs (wip)
2014-08-09 23:53:13 +02:00
jvoisin
f7b05fe65d
Coverifix rampage!
2014-08-04 01:21:38 +02:00
pancake
8a2819256d
Fix some more CIDs in mach0
2014-08-01 12:14:16 +02:00
Rene Laemmert
6ce2cba15a
Update pe.c
2014-08-01 12:07:24 +02:00
pancake
29c3e1ba7a
Fix more CIDs assigned to me
2014-08-01 12:07:08 +02:00
jvoisin
5c61d6f2d7
Fix some coverity issues.
2014-07-24 18:46:46 +02:00
pancake
7e06e13b3b
Fix #1133 - gdbr warnings, and some other
2014-07-21 18:19:31 +02:00
pancake
314ab38a78
Fix all latest coverity issues
2014-07-21 17:51:20 +02:00
pancake
561830d091
Add hackaround for 65536 section bin
2014-07-17 21:03:50 +02:00
pancake
cf64a5dd75
Fix #1117 - Bring back rabin2 -c
2014-07-17 09:40:35 +02:00
LemonBoy
10dc0c6ef4
Make the PE header return vaddrs relative to the image address
2014-07-11 23:32:44 +02:00
LemonBoy
e8dd114774
Re-enable the hack that makes the world tick, one day we'll get rid of that
2014-07-11 23:32:44 +02:00
LemonBoy
6d83b07224
Prettify the mach0 baddr method
2014-07-11 23:32:44 +02:00
LemonBoy
0acf0b1dd2
Various fixes to stop the vaddr translation madness
2014-07-11 23:32:44 +02:00
LemonBoy
37409c3f34
COFF/MZ improvements
2014-07-11 23:32:44 +02:00
pancake
feee9f62c9
Fix re100.exe PE crash
2014-07-08 22:59:38 +02:00
pancake
9368fc7253
Bump capstone again and fix some warns
2014-07-02 17:14:32 +02:00
pancake
3dfadc0b30
Fixed several issues on PE/ELF/MACH0
...
- relocs, entry0 vaddr and baddr
- fix tiny.elf crash (null deref on *bin ptr)
2014-06-27 01:20:54 +02:00
pancake
1533c31a2f
Fix #1071 - rename constants
2014-06-25 18:02:36 +02:00
pancake
a69f56ffe6
Fix all latest coverity issues except the rsa-find ones
2014-06-24 01:01:27 +02:00
tosh
eb6b86dd4b
Some fix in the ELF parser
...
New functions used to prevent integer overflow when add, sub or mul
Fix an out of bound in r_buf_fcpy_at
2014-06-23 15:34:51 +02:00
Jonathan Neuschäfer
6790d8d432
Fix out-of-bounds read in COFF and P9 file recognition
...
(In check_bytes, that is.)
2014-06-21 01:39:27 +02:00
pancake
42792bc172
Aim to fix some PE oob reads (corkami)
2014-06-20 15:27:12 +02:00
pancake
8330ea59fc
Fix stale pointer issue in RBinELF. Add r_mem_dup
2014-06-14 00:04:40 +02:00
pancake
3e5eb05eda
Fix PE exports parsing (adapted inisider patch) and some code cleanup
2014-06-13 16:00:39 +02:00
inisider
565ba636b3
fix exports parsing
2014-06-13 14:34:17 +02:00
pancake
eb4d79a99e
Fix regression parsing import table in PE.
2014-06-07 00:06:12 +02:00
pancake
8613cecae0
Do not load sections with size=0 in PE (fixes 65K infinite loading)
2014-06-06 23:01:53 +02:00
pancake
2284b04f85
Oops. fix elf.nx
2014-06-05 15:55:19 +02:00
pancake
6883f74d57
Add info/elf.relro sdb instance
2014-06-05 15:38:33 +02:00
pancake
1686073c8b
Implement RBinInfo.nx check for ELF (need tests)
2014-06-05 15:26:46 +02:00
pancake
79098f622e
Add elf.relro sdb entry
2014-06-05 04:53:00 +02:00
pancake
00d283a398
Fix all latest coverity issues
2014-06-04 23:57:24 +02:00
inisider
97bb72d376
fix import/delay import parsing
2014-06-04 22:27:40 +02:00
pancake
c225694c7c
Fix build and several coverity issues
2014-05-29 15:27:18 +02:00
Maijin
9e720a79f0
Update pe_specs.h
2014-05-29 15:14:15 +02:00
pancake
8146cb7735
More mach0 parser bugs fixed thanks to zzuf
2014-05-29 15:08:01 +02:00
LemonBoy
e4e8528be9
more kernel thunk names
2014-05-26 21:03:34 +02:00
LemonBoy
8c7984e350
basic sanity checks when loading the thunk import table
2014-05-26 21:00:34 +02:00
LemonBoy
90df6195e1
xbe loader
2014-05-26 20:07:24 +02:00
pancake
aafe8c6eaf
Fix some coverity issues
2014-05-26 14:28:55 +02:00
Anton Kochkov
9ce67f435f
Fix CID 1215820
2014-05-26 14:29:00 +04:00
pancake
810b976b73
More regression fixes for baddr on ELF and MACH0
2014-05-26 12:04:07 +02:00
pancake
a4d9d34259
Handle LC_MAIN in MACH0 to get entrypoint
2014-05-25 02:23:12 +02:00
pancake
98d33eb084
Fix several segfaults found by matalaz in PE, MACH0 and COFF
2014-05-23 14:34:27 +02:00
pancake
3364fa62d5
Fix manyimports PE loading
2014-05-22 04:01:36 +02:00
pancake
c0750f62a8
List .rela.text relocations, still incomplete
2014-05-21 03:46:31 +02:00
pancake
a1224b2156
Refactor rva > vaddr and offset > paddr.
...
That change may make mixing vaddr and paddr more visible
2014-05-21 03:18:00 +02:00
pancake
796dedf83c
Fix close(0) issue in rio
2014-05-21 01:46:01 +02:00
pancake
ea874fcdd7
Fix #947 - PE libs not working
2014-05-20 22:05:06 +02:00
pancake
302d4c245c
Show pe.seh value in 'sdb'
2014-05-20 01:53:14 +02:00
Anton Kochkov
bf9de18c63
Fix CID 1134993, 1135005, 1135004, 1134996, 1134995, 1135002
2014-05-19 06:03:41 +04:00
pancake
644acb8590
Add rabin2 -k to query sdb info, sdbize MZ debug printfs
2014-05-19 01:42:36 +02:00
Adam Pridgen
a633e1526c
Fixed the mach0 entrypoint, i think
2014-05-16 07:50:06 -05:00
pancake
5f5cbde791
Fix more 68k bugs and doesnt git pull capstone
2014-05-15 20:13:47 +02:00
Adam Pridgen
ccd69e569e
Fixing how virtual addresses are assigned to elfs
2014-05-15 00:02:41 -05:00
pancake
03e1407dd9
Expose current opened file in 'k bin/cur/..'
2014-05-14 18:02:56 +02:00
pancake
587c5f51c2
Implement MACH0- crypto and UUID inside Sdb bin/<fd>/info
2014-05-14 05:48:03 +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
pancake
962ac8d307
Fix all java warnings
2014-05-12 10:16:15 +02:00
pancake
216c183b6e
Remove tons of useless 'if (x) free (x)'
2014-05-09 17:40:28 +02:00
pancake
b52be45418
Fix pe parser issues spotted by corkami tests
2014-05-09 01:22:06 +02:00
pancake
773b033620
Fix negative/huge mallocs in PE parser and fix invalid fd close
2014-05-08 01:32:06 +02:00
inisider
ceee413bb3
fix message in eprintf() in r_bin_pe_init_sections() and Issue #666
2014-05-07 14:20:31 -05:00
pancake
213edb513f
Fix all segfaults spotted by my fuzzing tests on MACH0
2014-05-06 12:48:21 +02:00
Adam Pridgen
e9cabecc45
Fix CIDs: 1211131, 1211134, 1211136, 1211133, 1211143
2014-05-04 22:09:20 -05:00
Adam Pridgen
bd297f6788
reworked how bins environmnent variables are set (e.g. io.va, arch, bits, etc.) and fixed some more mach0 regressions
2014-05-04 17:15:55 -05:00
Anton Kochkov
c8d4e04792
Fix build
2014-05-02 14:21:59 +04:00
Anton Kochkov
8b25562c39
Fix CID 1135001
2014-05-02 13:46:51 +04:00
Anton Kochkov
b14b7df820
Fix CID 1135006
2014-05-02 13:38:35 +04:00
Anton Kochkov
dbff404a07
Fix CID 1135007
2014-05-02 13:34:02 +04:00
jvoisin
854bf7db87
Revert "Fix CID 1134998"
...
This reverts commit 44f5b35cb0 .
2014-05-01 19:49:33 +02:00
jvoisin
44f5b35cb0
Fix CID 1134998
2014-05-01 19:27:53 +02:00
jvoisin
87c8cffeea
Fix CID 1134996, 1135005, 1135002, 1134993
2014-05-01 19:13:52 +02:00
jvoisin
e229cfc1f9
Fix CID 1208750
2014-04-30 03:17:09 +02:00
jvoisin
8335cc5180
Fix CID 1208749
2014-04-30 03:15:46 +02:00
jvoisin
89f0ea4285
Fix CID 1135005, 1135004, 1134995, 61134996
2014-04-30 02:32:04 +02:00
Anton Kochkov
32e795f6a0
Fix CID 1135019
2014-04-30 03:08:24 +04:00
Anton Kochkov
463951d9f5
Fix CID 1135020
2014-04-30 03:07:08 +04:00
Anton Kochkov
b6ea32d2fb
Fix CID 1208743
2014-04-28 23:08:31 +04:00
deeso
ce7f33480e
fixing warnings (not the unused ones) in various files
2014-04-28 12:58:35 -05:00
Adam Pridgen
c3d6664756
Adding multi-bin support for files that contain multiple objects and lots of other fixes in libr/bin
2014-04-28 12:11:14 -05:00
pancake
d7ff0e46be
Implement 'ej' to dump config in json and update uncrustify
2014-04-28 11:54:01 +02:00
Anton Kochkov
5a09744510
Fix CID 1134875
2014-04-27 05:25:21 +04:00
Anton Kochkov
c511700337
Fix CID 1134865
2014-04-27 05:25:21 +04:00
pancake
ce4e6de42f
Implement RBin.Symbols for PE
2014-04-26 04:25:13 +02:00
pancake
2b84217ce8
Fix few warns in RBin
2014-04-18 16:37:02 +02:00
Jann Horn
f092afa91f
fix some of the biggest memory leaks that happen during startup
2014-03-26 22:29:06 +01:00
pancake
92c5d8513b
Refix link
2014-03-18 02:21:52 +01:00
pancake
c260d37f39
Fix infinite parsing when loading MACH0 files
...
- Reenable some mouse enabled ansi sequences
2014-03-16 00:16:40 +01:00
condret
b202b05774
Add support for GBA roms and update GB opcode table
...
see http://gbdev.gg8.se/wiki/articles/CPU_Instruction_Set
2014-03-12 15:32:29 +01:00
pancake
7634b8ca77
Bump sdb and fix possible segfault in elf
2014-03-06 00:39:54 +01:00
pancake
d257493fb3
Fix some warnings
2014-02-24 12:18:07 +01:00
Fedor Sakharov
dff9e0d420
coff: Remove debug prints.
2014-02-20 14:01:49 +04:00
Fedor Sakharov
d31c3623cc
coff: Let's support TI coff and tms320 files.
2014-02-20 13:39:05 +04:00
Fedor Sakharov
35e84450a3
Adds some fixes to support x86, amd64 and h8000 together.
2014-02-20 13:39:05 +04:00
Fedor Sakharov
7da39c208e
coff: Try to detect coff. Only h8300 now.
2014-02-20 13:39:05 +04:00
Fedor Sakharov
ead69073ed
coff: Small fixups and coff bin object free implementation.
2014-02-20 13:39:05 +04:00
Fedor Sakharov
906bb8b3ff
coff: Implement optional header, symbols and sections.
2014-02-20 13:39:05 +04:00
Fedor Sakharov
7a76f2f3e1
coff: Initial commit
2014-02-20 13:39:05 +04:00
pancake
4bb63d4c2e
Use dynamically allocated *next (+15% analysis speedup + better analysis)
2014-02-20 00:43:06 +01:00
pancake
12dc36ce23
Sync with sdb 0.8.rc1 - lot of api changes
2014-02-19 05:02:59 +01:00
pancake
c406144aa7
Fix build and implement basic, print_hexdump works with null instance
2014-02-16 03:11:41 +01:00
pancake
693653068e
Fix strings and main offsets in PE
2014-02-13 01:48:15 +01:00
pancake
1390d9f2d5
Add length and size fields in RBinString
2014-02-11 00:08:12 +01:00
condret
0a8fd8b931
Merge condret's GameBoy pull request
...
- Update analysis
- Add p2 (2bpp print command)
- Insert more auto comments for gb roms
- Delete mbc
- Handle gb-halt as cjmp (correct in most situations)
- Update gameboy register profile
- Add symbols for hard-interrupt-handlers
2014-02-10 17:02:43 +01:00
pancake
acc89d63e6
Use even more ut* types
2014-02-10 16:56:10 +01:00
Jüri Aedla
c4a37432bb
Fix pe_get_exports: index function RVA table with ordinal
2014-02-07 03:14:26 +02:00
jvoisin
0121ad2da2
Fix shitload of memleaks on ELF
2014-02-05 20:42:37 +00:00
pancake
70ef729b36
Fix a segfault when parsing a corrupted mach0 header
2014-01-29 03:48:51 +01:00
pancake
47bd319740
Fix another infinite load mach0 bug (thx zzuf!)
2014-01-29 02:58:08 +01:00
pancake
6e8073a67f
Fix @b: command suffix for 'pd' and fix issue with malformed mach0
2014-01-29 02:42:22 +01:00
pancake
5ff6065335
Bump for new sdb
2014-01-23 01:56:35 +01:00
pancake
9f0d7e44d3
Fix some issues reported by coverity
2014-01-15 01:56:28 +01:00
pancake
7c273cfc39
Fix TE section name issue again
2014-01-08 17:19:52 +01:00
Vitezslav Cizek
7033a1de90
fix two off-by-one errors
2014-01-08 00:13:35 +01:00
pancake
38fc28f960
Added more Jamroot files
2014-01-03 00:13:46 +01:00
David Martínez Moreno
cedef51ce4
Fix a round of typos and incorrect man macros.
...
The macro Em. was present in all the manpages and it's incorrect, plus
there's some typos here and there, some of them spotted by lintian.
2013-12-31 23:52:46 -08:00
pancake
a60cf2df8d
Fix mach0 ik test
2013-12-20 13:18:52 +01:00
Roi Martin (@nibble_ds)
e6d5703458
Fix #471 - entrypoint parsing in mach-o
2013-12-20 12:13:28 +01:00
pancake
1185a8210b
Integrate SDB into RBin accessible with the 'ik' command
2013-12-20 01:20:17 +01:00
Roi Martin (@nibble_ds)
3f5ebd9d16
Fix #458 - Negative baddr
...
Fix r_bin_get_vaddr() (needs further testing due to changes in r_io)
2013-12-19 19:43:44 +01:00
Fedor Sakharov
7e28c6977e
Recognize EBC arch in pe/pe.c
2013-12-05 18:43:11 +01:00
Adam Pridgen
20bde77884
Added mixing return after setting RBinAddr entry and offset
2013-12-04 23:42:46 +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
d02df0d306
Fix some issues reported by CoverityScan service
2013-12-03 00:14:59 +01:00
condret
ee62e9d1b9
moar banks for gb
2013-11-24 19:32:05 +01:00
Adam Pridgen
ffc8cc14a3
Chasing a segfault, when program exits
2013-11-22 12:28:44 -06:00
pancake
fb654160e9
Add GameBoy support in RBin
...
- Can identify rom, romtype (mbc,sram, ...), arch, entrypoint and 2 rombanks
2013-11-22 09:45:49 +01:00
pancake
01ac786b5e
Fix #297 - Error: read (shdr) on a crackme
2013-10-27 01:13:13 +02:00
pancake
892a33ef23
Fix build and some warnings
2013-10-24 00:27:07 +02:00
Alberto Ortega
686ba6ccc0
Fixed segfault when malformed ELF
2013-10-18 23:51:56 +02:00
Alberto Ortega
1fba89085b
Fix malformed ELF segfault, re-enable warning
2013-10-16 17:33:22 +02:00
Alberto Ortega
1e1f84c7c4
Fix segfault when loading malformed ELF, improve invalid sections loading
2013-10-15 11:39:17 +02:00
pancake
077ab18846
Fix #253 - Memory leak when opening malformed PE
2013-10-14 22:51:27 +02:00
pancake
08cce66e68
Initial arm64 analysis. Fix loading mach0 kernels. Fix #230
2013-09-30 03:49:08 +02:00
pancake
70e4d294b3
Minor fixes to make testsuite happy
2013-09-30 02:19:19 +02:00
pancake
722659005d
Better brainfuck and arm64 support. Fix some bugs
...
- Fix infinite loop bug in dietline using quoted commands
- Update brainfuck disassembler and analyzer
- Fix #232 - r2 error on corkami's standard.elf (missing strtab)
- Honor 'other' color palete
- Fix bug in disasm.c filtering flag replacements
- Removed '#' prefix for numeric arguments in aarch64 disasembler
- Fix infinite loop in '">"' command
2013-09-30 01:14:04 +02:00
pancake
81d7e5a8a3
Better support for ARM64 and OS autodetect for MACH0 binaries
2013-09-29 20:20:47 +02:00
pancake
666954b00e
Filter trash in import names for PE
2013-09-28 23:58:55 +02:00
pancake
604f6adf64
Fix segfault in PE loader (thanks a0rtega for reporting)
2013-09-28 18:50:23 +02:00
pancake
9e12c60702
Fix #223 - Hardening flags for radare2 $ HARDEN=1 sys/install.sh
2013-09-27 19:50:48 +02:00
pancake
b3c42c9545
Handle ARM64 MACH0 headers in RBin
2013-09-27 17:57:33 +02:00
pancake
cf78623a28
Fix #222 - Malformed ARM ELF causes segfault
2013-09-27 01:37:57 +02:00
pancake
dece987ca3
Fix various bugs on 64bits (mach0 entry, assembler, ragg)
2013-09-14 02:42:02 +02:00
Eduard Burtescu
a3685ae4d2
r_bin/mach0: also process lazy_bind opcodes for relocs.
2013-07-19 12:06:28 +03:00
Eduard Burtescu
96ca1d3815
r_bin/mach0: new relocs using dyld_info bind opcodes.
2013-07-19 09:53:43 +03:00
Eduard Burtescu
6408bf4b9a
r_bin/mach0: updated mach0_specs.h using original Apple headers where possible.
2013-07-19 09:29:58 +03:00
Eduard Burtescu
4a30d17266
Mach-O: new relocs implementation and complementary fixes for imports.
2013-07-19 09:29:58 +03:00
Eduard Burtescu
88030d6f38
r_bin/PE: implement new relocs.
2013-07-19 09:29:58 +03:00
Eduard Burtescu
5e096a4fd7
r_bin: new generalized relocs, with only arch-independent types.
...
Basic implementation for ELF relocs (x86, x64 and ARM).
2013-07-19 09:29:58 +03:00
Eduard Burtescu
4c90534f84
r_bin/ELF: don't ignore the r_addend field from Elf_Rela relocs.
2013-07-19 09:29:58 +03:00
Anton Kochkov
77e2c0c34a
Fix ARCompact ELFs loading
2013-07-16 20:10:07 +04:00
pancake
e236f0cf5a
Fix ELF regression issue
2013-07-15 18:07:42 +02:00
pancake
7cb31941a6
Fix double free when loading malformed PE file
...
FMI: https://corkami.googlecode.com/svn/trunk/src/PE/lfanew_relocW7.asm
2013-07-03 11:57:37 +02:00
pancake
92b50950e4
Fix 'r2 -d ls /' launching program with arguments
2013-07-03 01:38:03 +02:00
pancake
de5889565c
Fixes for ELF imports/symbols listing
2013-06-20 16:20:18 +02:00
pancake
04cfefb9d8
Fixes on dyldcache list and x86 branch analysis
...
Fix some branch analysis issues for x86
Add new simpler r_reg api r_reg_getv()
Store library offset in dyldcache xtract info
Accessible via rabin2 -A or r2 <file>
Looks like dyldcache is too slow and buggy for latest caches
Fix indentation in branch comments
2013-06-20 02:49:39 +02:00
pancake
cdea34616d
Fix some warnings
2013-06-09 02:55:03 +02:00
pancake
3f1d3ba146
Better r_str_hash(), Fixes in CCa, Added ?h, Better rbin for BEOS bins
...
Identify Haiku binaries as 'beos' with noodle()
Fix CCa for non numeric offsets
Use sdb's r_str_hash() instead of old one (much less collisions)
Added ?h command to hash strings
CCa now appends instead of replacing comments
Do not mark as static if bin links to libs
2013-06-07 10:26:37 +02:00
Eduard Burtescu
0b0feba28e
PE: fix buffer overflow regression caused by the fix for #64 ( fcbe3ca).
2013-05-19 10:46:18 +03:00
pancake
afacfbeda4
Fix unitialized pointer in elf
2013-05-03 14:52:02 +02:00
pancake
eeceed230b
Fix sizeof() operand mismatch warning (thanks fam)
2013-04-29 18:49:26 +02:00
pancake
26a7854dd6
Rewrite DEX parser
2013-04-25 03:42:17 +02:00
pancake
b77cdf33d7
Fix loading of MACH0 object files and fix build
2013-04-22 01:34:25 +02:00
pancake
076a2837c9
Update sdb and fix build
2013-04-05 03:09:54 +02:00
pancake
542de1b426
Avoid dup load of DEX, reduce calls to r_meta_cleanup
...
- Nicer output for command 'fd'
- Cache methods to avoi dup loading
- Fix delimiter in internal grep (allow '/')
- Faster r_meta processing (reduce calls to meta_cleanup
2013-04-05 02:55:47 +02:00
Anton Kochkov
e62e837b7a
TE: 16 bit for _TEXT_RE and fixes for virtual addresses calculations
2013-03-29 04:33:45 +04:00
pancake
fcbe3cac4a
Fix #64 (handle 8 char length section names in PE and TE)
2013-03-13 13:30:28 +01:00
pancake
89992670e1
Fix segfault in ELF parsing
2013-03-13 12:42:05 +01:00
pancake
6806c11792
Better ARM analysis, Fix blockread in V[0-9]
2013-03-08 12:58:03 +01:00
pancake
ba3ad8112a
ELF parser more permissive, add 'fsr' and other fixes
...
Make ELF loader more permissive
Add 'fsr' to rename flagspaces
Fix parsing issue in 'yy'
Fix crash in r_num
2013-03-07 23:47:41 +01:00
Anton Kochkov
a68605910b
Fixed x86 bits config for TE format plugin
2013-03-03 14:01:49 +04:00
Anton Kochkov
ca7296c848
TE format plugin cleanups - removed unused code
2013-03-03 13:34:46 +04:00
Anton Kochkov
b2f7037336
Fixed sections offset calculation
2013-03-03 03:57:56 +04:00
Anton Kochkov
ff4d3c8009
Fix reading sections
2013-03-03 03:48:59 +04:00
Anton Kochkov
8fd68f1429
Build fixes for TE plugin
2013-03-03 03:33:05 +04:00
Anton Kochkov
d580e72a70
Initial TE format support
2013-03-03 02:17:51 +04:00
pancake
a7925a8a4f
Add aach64 (ARMv8) support to the ELF parser
2013-02-26 15:35:24 +01:00
pancake
3bfa61946e
Cleaner pvj, fix tinype load, and honor 'ao N's help
...
Fix TinyPE loading
'ao' arg is now number of opcodes, not bytes
'pvj' output is now cleaner
Random refactorings
2013-02-11 10:51:45 +01:00
pancake
2fa48384ad
Fix some bugs reported by clang-analyzer
2013-02-08 11:42:46 +01:00
pancake
f37df0d2c6
Fix fatmach0 extract when unknown files are inside
...
Fix segfault in java class header parser
Fix help message of 'wt' command
2013-01-29 19:39:41 +01:00
pancake
2365918652
Fix slow ELF loading and add anal hints support to projects
...
Fix slow ELF loading when shstr section was huge
Added 'ahj' command to list anal hints in json
Add 'ah*' and use it from r_core_project
Fix 'i*' command
2013-01-22 18:08:33 +01:00
pancake
4d22fcb806
Implement VA (Visual Assemlber), readline with callback and chs
...
r_cons_readline now have a callback api
r_num_chs() to convert from disk CHS to real address.
2012-12-22 02:37:01 +01:00
pancake
8f6459977d
Refactor of {bin|asm}/java into shlr/java
2012-11-16 02:29:30 +01:00
pancake
7ee7f936db
Fixes parsing bug in java class and and rbinelfFixes in java class and and rbinelf))
2012-11-14 04:57:56 +01:00
pancake
6956fe003a
Add PIE (ASLR) field in RBinInfo for ELF, MACH0 and PE
2012-11-07 18:18:52 +01:00
pancake
52d4eff43f
Fix DEX method offsets and help message for @@?
2012-10-29 00:47:20 +01:00
pancake
94b001265a
Fix mach0 ehdr header, new $S and $SS vars, Vdr
...
Show xrefs before comments
cmtright is false by default
Fix ehdr virtual section on mach0 files
Addr 'Vdr' command to rename functions in visual
Add $S and $SS variables (section offset, section size)
2012-10-26 01:33:57 +02:00
pancake
38628b4e17
Fix ELF loader and segfault in disasm->hexdump
2012-10-17 12:13:23 +02:00
pancake
757d692e19
Implement support for mach0-x86-32/64 main finder
...
Fix segfault when loading a plain file after io'd one
2012-09-23 21:42:10 +02:00
pancake
83cfbb2236
Add initial ARC code analysis module (branches)
...
ELF parser setups the proper ARC asm and anal
Fix segfault in the GNU ARC disassembler
2012-09-23 17:33:19 +02:00
pancake
850045c329
Fix many bugs noticed during the training course
...
Fixed ragg2 -e segfault
Fix use of ragg2 -p
Fix memleaks and null derefs in rio and rsocket
Fix some build warnings
Fix the segfaults found in the ELF parser
Dwarf parsing is only done if bin.dwarf is true
2012-09-22 20:32:19 +02:00
pancake
e46efa8a1d
Initial implementation of r_bin_size (rabin2 -Z)
...
Changes in the disasm loop to support continuous fun
Fixes disasm after opcode payload
Added RConstr code in r_util (not yet used)
RBinSize implemented for elf, mach0 and plan9
Fix build
2012-08-23 12:46:55 +02:00
pancake
e6e1490fe6
Add support for Java debug line information
...
Workaround Java CLASS parser bug
Still work-in-progress for full debug line support
$ rabin2 -dr foo.class
2012-08-14 18:22:24 +02:00
pancake
3df277d84b
Initial import of TOP make variable
2012-08-14 13:14:54 +02:00
pancake
e365b90d5f
Implement support for >- (pipe to editor)
...
Fix another race condition in the build system
Fix many null deref reported by clang-analyzer
Assume -w when running r2 with -d
2012-08-13 17:42:25 +02:00
pancake
1586c29785
Fix race conditions in makefiles and clean TODO
2012-08-10 15:59:37 +02:00
pancake
a2ebdcb650
Fix memleaks, nullref and undef (clang-analyzer)
...
Fix multiple inclusions of mk files
2012-08-08 17:19:48 +02:00
pancake
3c967ac89b
More fixes in dalvik disassembler (thx @thuxnder)
...
- Add missing getters in RAnal to make bokken happy
2012-08-07 16:53:09 +02:00
pancake
3fb3f58fcd
Add missing dalvik opcode, rename invoke-direct-empty
...
rabin2 -h works even with other flags passed
random syntax fixups and use R_NEW0 where possible
initial dummy implementation of r_bin_size()
2012-08-07 10:28:03 +02:00
pancake
9362041562
Huge RBin refactoring and fix mach0 section perms
2012-08-04 23:48:06 +02:00
pancake
3e7c4ad992
Add new opcodes for x86.nz assembler
...
- Fix search counter
2012-08-03 02:05:50 +02:00
pancake
690445700a
* Add ^ and $ in cons grep expressions
...
* Minor work on source CL commands, needs review
2012-06-21 10:12:02 +02:00
pancake
a94c9e4780
* Fix segmentation fault in the ELF parser
2012-06-05 18:56:20 +02:00
pancake
bc572ce3df
* QNX/arm port (this is bb10 and playbook devices)
...
- no debugger support yet
2012-06-01 14:50:24 +02:00
pancake
3eb9a85872
* Fix build + initial work on z80 asm/dis
2012-02-03 10:57:45 +01:00
pancake
aeb29106d7
* Build the ewf plugin if requested
...
* Fix valgrind warning thanks to Simon Ruderich
* Add mach0 ARM subtypes and fix parsing
2012-02-03 01:13:09 +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
d02691b086
* Handle ^C in 'af' code analysis
...
* Fix parsing of ELF binaries generated by TCC
* Added iOS/arm register profile for the native debugger
* Swap endian of ptn date
2012-01-19 00:19:01 +01:00
pancake
d779162f07
* Apply @w_levin patch fixing memory leaks
...
- Use r_list in RBin (deprecate list.h) Thanks!
2011-12-13 14:00:22 +01:00
pancake
e40e54984e
* Fix import elf parsing
2011-12-04 23:05:48 +01:00
pancake
e6ee9ef5d0
* Fix elf symbol parsing again
2011-12-04 22:12:54 +01:00
pancake
7c3339bbbe
* Fix ELF parsing for symbols outside the .text section
...
* Do not use tabs in arm and csr disassemblers
* Clear colors in visual prompt V:
2011-12-04 21:02:09 +01:00
pancake
6de942e05d
* Add RBinInfo->has_va
...
- Used to autoforce io.va after loading the bin
- Fixes loading kernel modules and object files
* Fix loading strings on a object file without io.va
* Add install-rev.sh script
2011-11-29 15:29:50 +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
d7f2c850be
* Add initial native support for fat binaries in r2
...
- Select arch/bits with r2 -a and -b (old -b is now -B)
- Kinda hacky, but works for osx-x86/32/64
- Export offset information of fat bins
* Show flags in search output
* Disable interactive console in rabin2
* Do not comment int3 opcodes
2011-11-22 00:59:20 +01:00
pancake
3fd59fdbcd
* Fix double-free segfault in elf parser on netbsd binaries.
...
* Fix bindings build
2011-11-15 20:58:08 +01:00
pancake
686e23c9d8
* Do not store opcodes in basic blocks (-40% mem usage in analysis)
...
* Fix some memory leaks in the elf parser
2011-11-15 09:56:22 +01:00
pancake
7b093a3ed5
* Fix all dangerous bugs reported by llvm-analyzer
2011-11-14 22:46:23 +01:00
pancake
75290251da
* Add initial support for plan9 binaries
...
- supports x86, arm, ppc, sparc, mips
* Use r_cons in r_core_bin
* Fix link of rabin2
- Use r_cons_flush()
- Refix ehdr issue
* r_io_size() now ignores va
* Add R_SYS_BASE
* Move r_anal_get_fcn_get into fcn.c
* Some more fixes
2011-11-12 04:51:45 +01:00
pancake
88c8b08f7a
* Fix various memory leaks (thanks Ender for reporting!)
...
* Add e dir.magic variable
2011-11-11 17:14:09 +01:00
pancake
063ec43194
* Use memmove instead of strcpy in overlapped dietline buffers
...
* Simplify ln -fs in install .. trying to make debian and openbsd happy
* Fix an out-ot-range bug in ELF parser
* Fix segfault when trying to create sections with an empty name
* Install python bindings only in site-packages
* Grep for go in supported.langs
2011-10-24 17:16:54 +02:00
pancake
89968a18b9
* Added linux-x86-32 support for elf-init/fini syms
...
- Yeah, this is a call for contribs
2011-10-20 19:52:19 +02:00
pancake
17dfe1bcf8
* Fix some possible-use-of-uninitialized-variables
2011-10-20 16:36:00 +02:00
pancake
04cbf68819
* Fix segfault in elf (thanks @earada!)
...
* Make cg and cgo work
* Added r_anal_diff_setup_i()
- Fixed bindings
2011-10-16 13:59:05 +02:00
pancake
b42e287156
* Fix typos reported by lintian
...
* bfvm.c changed license from GPL to LGPL
2011-10-13 01:00:07 +02:00
pancake
e9d1dcb4ec
* Fix make w32dist
...
* Update manpages
* Added r2 -H for env and files help
* Add rarun2 -h
* Show assembler/disassembler features in rasm2 -L
* Add opcode 'mov dword [ebp-12],4' to x86.nz
- Make t/test.nz work with x86.olly (32bit only atm)
* Fix unknown os issue with tiny-pe files in r_bin
* Fix some plugin names build fails in mingw32
* MAGICPATH renamed to R_MAGIC_PATH
* Add another experimental way to generate gir files
- Added dummy test.js for nodejs
* Build python-dist in farm
--HG--
rename : man/rarc2-tool.1 => binr/old.rarc2/rarc2-tool.1
rename : man/rarc2.1 => binr/old.rarc2/rarc2.1
2011-10-12 03:24:19 +02:00
pancake
989fdb3dc8
* Implement raw get_main analysis for MACH0 binaries (x86-32/64)
...
* Remove main() from libr/magic .. was using non-portable strlcpy/strlcat
2011-10-10 16:55:39 +02:00
pancake
098b1ba127
* Implement input and output filters for rasm2
...
- Experimental.. not yet ready for release
- Add rasm2 -F flag to specify input and output filters
$ rasm2 -F att2intel
* Add new att2intel r_parse plugin
- make mrproper required
* Initial implementation of RBinClass
- Only experimental and Java-specific atm
- Add rabin2 -C to display classes
* Optimize some r_str functions
2011-10-05 02:38:37 +02:00
pancake
23936cfbe5
* Add an REgg instance into the RCore class
...
- Make r2 -P use the r_egg api instead of the oldie rarc2
2011-10-04 10:10:00 +02:00
pancake
2a0b57d51d
* Implement 'ax' command.
...
- Add r_anal_fcn_xref_{add|del} methods
* Some fixes for r_bin_dex file format
- Properly name all fields and methods
- Add entry support in java too
* Add default sections for dex and java class files
- constant pool, code, data, extra
* Beautify 'S=' command
2011-09-28 02:48:03 +02:00
pancake
677a499440
* Add get_main() for mach0 (32,64)
...
* Proper use of arch/bits. debugger works fine now for osx-32/64
2011-09-22 09:52:00 +02:00
pancake
279d4e6f5f
* Fix make deinstall
...
* rarun2 and rasc2 now depend on r_util
* Add r_mem_protect() as a wrapper for mprotect/VirtualProtect
* Fix segfault in java class parser
--HG--
rename : binr/rarun2/main.c => binr/rarun2/rarun2.c
2011-09-19 13:54:57 +02:00
pancake
0a14411bc1
* Added README documentation for libr/egg programming language
...
* Add -O flag to ragg2 as an alias for -o a.out or -o <file> (without extension)
* Add rabin2 -M (get main) for Java Class files
* Add emit_trace (code tracer) for r_egg. useful to debug
- ragg2 -a trace hello.r
- Add emit->jmp() function pointer and emit->retvar
- many fixes in function calls and definitions
- Added support for 'break;' 'break();' and 'goto();'
- Added .ret variable as an alias for eax, rax or r0
2011-09-19 02:39:33 +02:00
pancake
403aa4b36d
* Fix ~40 off-by-one strncpy's
2011-09-18 20:41:36 +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
d72d66f143
* Honor OSABI in elf for arm bins too
2011-09-14 17:18:40 +02:00
pancake
37fecf7c0c
* Implement RBinCreate.elf-arm
...
* Fix uninitialized shstrtab segfault in r_bin_elf
* Do not create new objects unnecesarily in r_core_magic
* Handle length argument in pb command
* Fix ps command
* @@ now prefixes each line with the offset (useful for search)
- can be problematic when used with macros
> / lib
> ps @@ lib*
* Huge refactoring in r_magic, now using the r2 coding standards
- Use r_magic_new() and _free() instead of open/close
- Reduced -1KLOC
2011-09-12 01:47:28 +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
1732541915
* Fix OS identification in ELF on r_bin
...
* Add missing OSABI definitions
* Fix r_str_case()
* Remove already defined or useless commented config code from r1
2011-09-08 15:10:46 +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
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
Nibble
a95de05ec0
* Fix the resolution of the import addresses of mach-o bins (PIE) in r_bin
2011-09-03 17:50:09 +02:00
Nibble
ad15bfd6b1
* Fix PE section analysis
...
- take into account SizeOfOptionalHeader
2011-09-02 13:36:48 +02:00
pancake
0ae2050448
* Fix segfault in r_bin/pe -- thanks l0gic
...
- sections are not properly read in cdak binaries
2011-09-02 03:09:26 +02:00
pancake
edbcb1cfce
* Add 'rwx' permissions information in MACH0 sections
...
- Lot of syntax indentation fixes
* Use r_name_filter in r_flags
- Fix dangerous flagnames issue
2011-07-19 18:03:31 +02:00
pancake
0d4faf652e
* Set library version number for plugins
...
- Registers for which version of core was compiled
* Use tar --format=posix when GNU tar
- Fixes the dependency on BSD systems
* Fix in doc/fortunes
* Fix this class pointer in asm_java
* Re-Fix uglily the bin_elf strtab issue (needs more work)
* Fix Vala regression in r_asm.vapi
2011-07-19 00:12:36 +02:00
pancake
28e5244064
* rax2 -s (without arg) uses stdin now
...
* Show help when no file given to rabin2 -O help
* Fix ELF strtab section read issue (workaround?)
2011-07-18 00:07:45 +02:00
pancake
188560bf4b
* Fix build and lot of warnings for w64
2011-07-13 18:55:16 +02:00
pancake
edc7da8f7c
* More strcpy/sprintf/strcat exterminations
2011-07-06 09:40:23 +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
earada
a38c2ece6d
* Initial parse of dex files
...
- Load strings and methods
* Fix command 'r' parser
* Fix visual 'g' command without sections defined
2011-07-04 18:54:41 +02:00
earada
29a90901c8
* Add support for io.va mode in g/G visual keys
2011-06-26 23:41:34 +02:00
earada
21a9405a81
* Handle strings meta info in dalvik disassemble
2011-06-26 22:42:34 +02:00
pancake
186cc56603
* Fix invalid free in r_bin_elf
2011-06-09 12:38:11 +02:00
pancake
b68a6811eb
* Show out-of-range errors of bin_elf with eprintf
...
* Fix disasm output for strings
* Implement r_flag_free (less memory leaks O:)
2011-06-03 23:58:31 +02:00
pancake
a55ef74986
* More out-of-bounds fixes for the ELF parser
...
* Some fixes in the htflags code
- There are still bugs, but it works better now
2011-06-03 18:54:12 +02:00
pancake
a6e46f4d2a
* Fix some out of range index accesses in elf parsing
...
- Thanks Ripe for reporting
2011-06-03 11:16:08 +02:00
pancake
ac38d02ccf
* Fix possible segfault in code analysis for x86
...
when the r_anal plugin is buggy
* Add main symbol resolution for r_bin_elf64/openbsd-amd64
* Fix bug in r_str_cpy
2011-05-25 01:39:35 +02:00
pancake
bf95651e69
* Fix DEX parsing segfault
...
* Fix possible segfault on newer glibc
* Fix some indentations and Visual hints
2011-05-24 15:25:52 +02:00
pancake
5b601d4c13
* Fix many possible malloc(0) bugs (Thanks Edd Barret for noticing!)
...
* Set cmd->nullcallback to NULL by default
2011-05-11 19:19:53 +02:00
earada
708e10e413
* Change some files license from GPL3 to LGPL
...
* Fix build
2011-04-28 02:09:43 +02:00
earada
ee7fefb41f
* Initial dex-files format support
2011-04-28 01:54:54 +02:00
pancake
8bef25d14d
* Fix segfault in bin_java (still buggy and duppy)
...
* Change asm_bf license from gpl3 to lgpl
2011-04-27 16:51:41 +02:00
pancake
a6a92aa73e
* Honor --without-debugger
...
* Fix linking of r_anal_x86_simple plugin
* Fix some uninitialized vars reported by debian build system
2011-04-07 23:15:58 +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
47b29fd69d
* Fix previous commit (oops)
2011-01-23 18:44:38 +01:00
pancake
c6b37c3e26
* Fix r_bin_elf for ppc, avr and 68k binaries
2011-01-23 18:32:58 +01:00
pancake
421208a0c7
* Replace main for binsym in r_bin
...
* Added dummy commands for r_debug_fork/clone
2010-11-18 11:41:17 +01:00
pancake
64a94329c5
* Fix segfault in mach0 parser
2010-11-10 02:19:05 +01:00
pancake
e15ecf7e79
* Fix warning noticed by iphone-gcc
...
- Bug in the compiler?
2010-11-09 18:08:07 +01:00
pancake
264f95a40e
* Fix build in iOS 4.1 (darwin-arm)
...
- Honor CFLAGS everywhere
- Use ut?? instead of uint??_t
* Add build instructions in doc/iphone
* Fix some out-of-range conditionals
2010-11-08 19:30:25 +01:00
pancake
0a294261aa
* Many warnings fixed thanks to gentoo build and @astralia
2010-10-27 16:31:51 +02:00
Nibble
65bd1b53e9
* Fix block read in visual mode
...
* Use a more reliable way for fixing the got_offset issues
* Remove ELF_GOTOFF_MASK
2010-10-19 12:57:28 +02:00
pancake
9f7040dbf8
* Fix warnings in asmserv on windows
...
* Some alloca->malloc fixes for w32
* More error checking in r_sys_rmkdir
- Uses the new r_sys_mkdir_failed() api
- works on windows and posix
* Disable asm.dwarf when the plugin fails to init
- Displays a warning message
* Added 'e scr.cols=16'
- Determines the width of the hexdump (px, x)
- Used also by Visual mode hjkl dimensions
2010-10-17 23:03:54 +02:00
Nibble
add2efee74
* Fix reloc offset resolution in r_bin_elf
2010-10-13 04:00:32 +02:00
Nibble
a83355f0b1
* De-warn dyldcache in 32bits
...
* Add dyldcache.mk to libr/bin/p/Makefile
* Update reloc.vala
2010-10-04 23:05:30 +02:00
Nibble
afedad76bb
* Fix memory leak in bin_mach0
2010-10-04 04:20:19 +02:00
Nibble
cec1f3fa73
* r_bin
...
- Refactor r_bin to work better with big fatbins
- Don't load all sub-bins in memory
Only load the fatbin and the selected sub-bin
- Add r_bin_set_archidx() and r_bin_list_archs()
- Update t/{rpathdel.c, test_meta.c}
* rabin2
- Use '-f str' to select sub-bin by name
2010-10-04 03:46:58 +02:00
Nibble
fd084aca33
* Fix segfault in dyldcache
2010-10-02 18:20:46 +02:00
Nibble
d65ad968d7
* r_bin
...
- More work on dyld cache plugin
- Rewrite headers, commands and segments
- Fix offset for syms, imports, sections...
* r_util
- Add r_buf_append_bytes
- fix r_sys_rmkdir
* Update TODO
2010-10-02 17:21:51 +02:00
Nibble
a7d6fc0cc7
* Detect bin sizes in dyld cache plugin
2010-10-01 13:22:37 +02:00
pancake
8081f02601
* Fix uninitialized variable in rabin2
...
* Fix null pointer handling in rbin when no xtr plugin found
* Initial draft code for the x86 debug registers implementation
* Fix avr* command
2010-10-01 11:10:59 +02:00
Nibble
4b558bec3b
* rabin2 -x uses filename.arch_bits as output file
...
* store full path in dyld cache filenames
2010-10-01 08:12:43 +02:00
Nibble
987d8599f9
* Initial implementation of the RBin extractor for dyld cache
...
* Add bin_xtr_dyldcache to plugins.def.cfg
* Show bin name in the output of 'rabin2 -A'
* Minor fix in rabin_list_archs() in rabin2
2010-10-01 04:26:52 +02:00
Nibble
793dae395d
* Massive refactoring of r_bin
...
- Add support for fatbins (currently only fatmach0)
- Minimize creation of r_buffers
* rabin2
- Add flag -A for listing archs
- Add flags -a and -B for selecting arch
- In the next commit -A and -B will be removed and -a will work
with the following format:
[-a arch bits] for selecting arch
[-a] for listing them
--HG--
rename : libr/bin/p/bin_fatmach0.c => libr/bin/p/bin_xtr_fatmach0.c
2010-09-24 21:23:13 +02:00
Nibble
09f5ca50a6
* Minor fixup in r_bin_elf
2010-09-10 11:46:30 +02:00
Nibble
159165fa13
* Add vapi/t/reloc.vala
...
- Print address for each relocation entry
* Update r_bin.vapi
* Minor fixup in r_bin_elf_get_relocs()
* Update TODO
2010-09-10 11:32:49 +02:00
Nibble
5567da9538
* Add support for parsing relocs to r_bin
...
* Add flag -R to rabin2 to list relocs
* Implement reloc resolution in r_bin_elf for 32 & 64 bits
2010-09-10 11:11:38 +02:00
Nibble
b344f96e21
* More work on r_bin_mach0
...
- Parse local symbols
- Resolve non-lazy symbol pointers
- Set import type to FUNC or OBJECT
- Refactoring of get_imports
- Add field type to r_bin_mach0_{import, symbol}
2010-09-10 01:17:55 +02:00
Nibble
a7a4a674f0
* Fix segfault parsing mach-o
2010-09-07 21:38:54 +02:00
Nibble
28ef002c21
* Fill field 'ordinal' in elf symbols
2010-08-16 01:14:54 +02:00
Nibble
8ac0f9e734
* fix get_main for x86 elf64
2010-08-13 15:58:11 +02:00
Nibble
42f7b31d55
* r_bin_elf
...
- Fix resolution of imports in bins without section ".got"
2010-08-12 17:32:23 +02:00
Nibble
d094f42d2f
* r_bin
...
- Fill RBinImport->size within bin plugins
- Add field size to RBinImport
* r_bin_elf
- Correct value of r_bin_elf_symbol_t->size for imports
* rabin2
- Output af+ command in radare mode
* Update TODO
2010-08-01 11:02:55 +02:00
Nibble
62e24bd0c6
* r_bin_fatmach0
...
- Huge refactoring of r_bin_fatmach0
* rabin2
- Don't print msg "n bins extracted" in radare mode
2010-07-29 18:15:02 +02:00
Nibble
bb8cfd866d
* r_bin
...
- Add function r_bin_extract()
- Add lib r_bin_fatmach0 into format/mach0/
- Complete mach0_specs with fat mach-o stuff
- Add plugin bin_fatmach0
- Initial import of mach-ex into r_bin
- Remove mach-ex
* rabin2
- Add flag -x for extracting bins from file
* Build
- Update plugins.def.cfg
- Remove mach-ex stuff from libr/Makefile
2010-07-29 16:04:18 +02:00
Nibble
f853dab09f
* More fixes on mingw32 build
...
* Update VERSION in swig configure script
* Update doc/windows
2010-07-24 12:44:19 +02:00
Nibble
9e5f355e07
* Clean-up built-in grep code
...
* Fix bug parsing imported libs in r_bin_pe
2010-07-16 18:44:39 +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
Nibble
89a63b5c3a
* Fix segfault parsing imports in mach-o
...
* Simplify the output of the command 'S'
* Update TODO
2010-07-11 13:15:18 +02:00
pancake
6e1653881d
* Load constant pool from RCore in RAsm
...
- this is a compiletime module dependency
- java needs to share constantpool between anal, asm and bin
* Added compile-time introspection POC macros in r_types.h.h
2010-06-29 15:47:30 +02:00
pancake
21d2531b7f
* Fix segfault in java disassembler
...
* Update compilation instructions for w32 in doc/windows
* Identify new osx binaries as mach0, not java
* io.va only works when there are configured sections
2010-06-27 23:12:55 +02:00
pancake
c73e43bf40
* Fix print_address function for mips disassembler
...
* Implement 'gp' register index inside .got section for get_main on mips
* Use more switch() in core/cmd.c
* Simplify some random code
2010-06-27 21:33:11 +02:00
Nibble
3eb855f6c4
* r_bin
...
- Rename characteristics into srwx
- Fix ref to binmain in the pe64 plugin
* r_bin_pe
- Rename section.characteristics into section.flags like in
the other formats
2010-06-17 18:45:27 +02:00
pancake
96c7eabd46
* Add -M (get main) in r_bin_pe
2010-06-03 02:23:50 +02:00
pancake
9ceeae1f54
* Added refptr in RAnalOp
...
- Used only from ARM code analysis
* Implement ELF get_main for ARM ELF's
2010-06-02 23:36:05 +02:00
Nibble
2f43431e80
* r_bin
...
- Add r_bin_get_main
- Implement get_main for elf32 & elf64
- Rename RBinEntry to RBinAddr
* rabin2
- Add flag -M to output main offset and va
* bindings
- Update r_bin.vapi
- Minor fixup in r_util.vapi
2010-05-30 06:06:25 +02:00
Nibble
6fa84400a6
* r_bin_elf
...
- New method to resolve the base address
- Fix bug in bins with bin->ehdr.e_phnum = 0
- Fix resolution of symbol address in relocatable bins
2010-05-29 17:11:41 +02:00
Nibble
5c35f6e359
* Rename {r_*_handle_t, R*Handle} to {r_*_plugin_t, R*Plugin}
2010-05-26 01:42:22 +02:00
pancake
eaf11fb341
* Fix off-by-one segfault in PE RBin parser
...
* Fix creation of home directories
2010-05-24 20:02:33 +02:00
Nibble
2368a1e3b6
* r_bin_elf
...
- Fix section va bug
* r_anal
- Store mnemonic in RAnalOp
- Initial work on bindiff
2010-05-23 12:51:37 +02:00
Nibble
195c0417bb
* Clean up r_bin_elf
2010-05-04 01:26:36 +02:00
Nibble
e6e0421ad9
* r_bin_elf
...
- Improve error handling for malformed elfs
- More aesthetic fixes
2010-04-20 12:00:22 +02:00
pancake
46ab7ab8b0
* merge
2010-04-14 14:11:38 +02:00
pancake
7a753ac0cb
* strnlen helper in format/elf/elf.c is now static inline
...
* Some random syntax cleanups
* Fixes some warnings in r_socket on w32
2010-04-14 13:28:56 +02:00
pancake
34435b1285
* Mental note: %lld/%llx does not exist on windows
...
- Use the macro PFMT64{xod} in case
2010-04-14 13:02:23 +02:00
pancake
74034be518
* Oops, fix import name length in ELF
2010-04-13 10:31:01 +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
Nibble
c5396fbb10
* Fix cmd repitition (3x@offset)
...
* Fix seek to invalid offsets
* Improve r_anal graphs
2010-04-08 14:04:34 +02:00
Nibble
acba7af2b1
* Fix segfault in r_bin_elf
2010-04-07 11:08:43 +02:00