Solved.

When you use a flag like length, radare uses the offset of that flag. So "pD
main" its like "pD 0x00407c00". Too much info to disasm.

In order to avoid problems, we've limited the length with the enviroment var
"cfg.maxbsize". Actually the max value is 512K but can be changed with "e
cfg.maxbsize [your value]".

Thanks.

2011/3/13 phr0nak <[email protected]>

>  On 13/03/11 05:01, Eduardo - wrote:
>
> The print commands need a length param, not a flag. If you want to print N
> elems at any flag use '@'
> Examples:
> pD 10 @ main # Disasm 10 bytes at main
> pD @ main # Disasm 64 (blocksize) bytes at main
>
>
> Yes, I know that the correct print command need a lengh param, for this
> reason, I've said that casually I found these bugs. xDD
>
>
>  Anyway, a segfault its a segfault, tomorrow morning i will try to fix them
> :)
> Thanks for the report and gdb info.
>
>
> Thanks.
>
> // phr0nak
>
>
> Regards.
>
> 2011/3/13 phr0nak <[email protected]>
>
>> Hey,
>>
>> Casually, I found several segfaults on print block options of radare2.
>>
>> The problem not exists in options: pd, pf, pm, pS, ps, psp, pu, pU.
>>
>> Here are the GDB outputs:
>>
>> --START HERE--
>> ...
>> [0xb7fe2800]> pD main
>> Program received signal SIGSEGV, Segmentation fault.
>> 0xb7f1aee1 in x86im_search_cmd (i=0xb7946fff "", opd=0xbfffc78c,
>> io=0xbfffc961) at p/../arch/x86/x86im/x86im.c:1828
>> 1828            modrm = *( i + 1 );
>> ---
>> ...
>> [0xb7fe2800]> pb main
>> Program received signal SIGSEGV, Segmentation fault.
>> 0xb7d0f9f6 in memcpy () from /lib/libc.so.6
>> ---
>> ...
>> [0xb7fe2800]> p8 main
>> Program received signal SIGSEGV, Segmentation fault.
>> 0xb7eb5b77 in r_print_bytes (p=0x80ad038, buf=0xb765f008
>> "\211\340\350y?", len=134542384, fmt=0xb7fb73bb "%02x") at print.c:255
>> 255            p->printf (fmt, buf[i]);
>> ---
>> ...
>> [0xb7fe2800]> po main
>> Program received signal SIGSEGV, Segmentation fault.
>> 0xb7eb5a67 in r_print_hexdump (p=0x80ad038, addr=3086886912,
>> buf=0xb765f008 "\211\340\350y?", len=134542384, base=8, step=1) at
>> print.c:239
>> 239                r_print_byte(p, fmt, j, buf[j]);
>> ---
>> ...
>> [0xb7fe2800]> pc main
>> Program received signal SIGSEGV, Segmentation fault.
>> 0xb7eb55e7 in r_print_code (p=0x80ad038, addr=3086886912, buf=0xb765f008
>> "\211\340\350y?", len=134542384) at print.c:151
>> 151            p->printf("0x%02x, ", buf[i]);
>> ---
>> ...
>> [0xb7fe2800]> pt main
>> Program received signal SIGSEGV, Segmentation fault.
>> 0xb7d0f9f6 in memcpy () from /lib/libc.so.6
>> ---
>> ...
>> [0xb7fe2800]> pr main
>> Program received signal SIGSEGV, Segmentation fault.
>> 0xb7d0f9f6 in memcpy () from /lib/libc.so.6
>> ---
>> ...
>> [0xb7fe2800]> px main
>> Program received signal SIGSEGV, Segmentation fault.
>> 0xb7eb5a67 in r_print_hexdump (p=0x80ad038, addr=3086886912,
>> buf=0xb765f008 "\211\340\350y?", len=134542384, base=16, step=1) at
>> print.c:239
>> 239                r_print_byte(p, fmt, j, buf[j]);
>> ---
>> ...
>> [0xb7fe2800]> pZ main
>> Program received signal SIGSEGV, Segmentation fault.
>> 0xb7d0f507 in memset () from /lib/libc.so.6
>> ---
>>
>> --END HERE--
>>
>> I hope it's helpful ;)
>>
>> Regards.
>>
>>
>> // phr0nak
>> _______________________________________________
>> radare mailing list
>> [email protected]
>> http://lists.nopcode.org/listinfo.cgi/radare-nopcode.org
>>
>
>
>
> _______________________________________________
> radare mailing list
> [email protected]
> http://lists.nopcode.org/listinfo.cgi/radare-nopcode.org
>
>
_______________________________________________
radare mailing list
[email protected]
http://lists.nopcode.org/listinfo.cgi/radare-nopcode.org

Reply via email to