This is one of the first steps to improve analysis. This way we'll have
one single place to change if we want to change the meaning of the
"size" field. (size -> realsize)
End gadgat instruction may be part of a different
isntruction, depends on starting offset. Therefore,
rop searching should try some starting offsets that
are smaller than the previous end gadgat.
- `r_io_read` calls `r_io_read_at` with vaddrs, and not with maddr
- `r_io_section_maddr_to_vaddr` uses a reverse iterator to check the
sections
- adds `r_io_section_mget_prev`: this function can be removed if the
behavior of `r_io_section_mget` is changed to use a reverse iterator
Squashed commit of the following:
commit a31d359bf1
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed Dec 9 11:40:54 2015 -0800
fetches sections starting from the back
commit 0b687439ea
Merge: 848567692c1631
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Tue Dec 8 23:40:35 2015 -0800
Merge branch 'master' of https://github.com/radare/radare2 into revert_3788
commit 8485676cf5
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Tue Dec 8 23:09:05 2015 -0800
This seems to be the "correct" patch...
...but it breaks some tests... apprently searches a few bytes
out of the section creating some false-positives hits
I'm just commiting this PR to give an idea of where the bug is
commit 2e4b8de397
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Tue Dec 8 22:46:29 2015 -0800
not good... reverting
commit 324afba7e2
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Tue Dec 8 22:09:25 2015 -0800
workaround for bug 3788
commit 6e6283eaa1
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Tue Dec 8 15:14:12 2015 -0800
Reverts fix for bug #3788
please, reopen bug #3788