radareorg / radare2

UNIX-like reverse engineering framework and command-line toolset
https://www.radare.org/
GNU Lesser General Public License v3.0
20.81k stars 3.02k forks source link

Windows failing tests #10613

Closed XVilka closed 5 years ago

XVilka commented 6 years ago
[**]                db\tools\rabin2   OK   23 BR    2 XX    0 FX    0
[**]                    db\cmd\0000   OK   23 BR    3 XX    0 FX    0
[**]                   db\cmd\archs   OK   30 BR    3 XX    0 FX    0
[**]            db\cmd\backtickgrep   OK   31 BR    3 XX    0 FX    0
[**]                   db\cmd\basic   OK   36 BR    3 XX    0 FX    0
[XX] db\cmd\bitmask bitmask cmp data  31
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064dVS1HnlPZwZZ.tmp -
b 16
wx 414243
e scr.null=1
cx 41..43 2>/dev/null
e scr.null=0
?! ?e thats fine
e scr.null=1
cx 41..11 2>/dev/null
e scr.null=0
?! ?e thats wrong
 thats fine
-
+thats wrong
EXPECT64=dGhhdHMgZmluZQp0aGF0cyB3cm9uZwo=
[**]                 db\cmd\bitmask   OK   36 BR    3 XX    1 FX    0
[**]                db\cmd\bug_3788   OK   40 BR    3 XX    1 FX    0
[**]            db\cmd\bug_backtick   OK   41 BR    3 XX    1 FX    0
[**]                    db\cmd\cmds   OK   52 BR    4 XX    1 FX    0
[**]                   db\cmd\cmd_0   OK  124 BR    4 XX    1 FX    0
[**]                  db\cmd\cmd_af   OK  124 BR    5 XX    1 FX    0
[**]                  db\cmd\cmd_ah   OK  127 BR    5 XX    1 FX    0
[**]                 db\cmd\cmd_ahi   OK  149 BR    5 XX    1 FX    0
[**]               db\cmd\cmd_alias   OK  154 BR    5 XX    1 FX    0
[**]                 db\cmd\cmd_ara   OK  158 BR    5 XX    1 FX    0
[**]                 db\cmd\cmd_att   OK  162 BR    5 XX    1 FX    0
[**]                  db\cmd\cmd_av   OK  163 BR    5 XX    1 FX    0
[**]                  db\cmd\cmd_Ch   OK  164 BR    5 XX    1 FX    0
[**]                db\cmd\cmd_cond   OK  172 BR    5 XX    1 FX    0
[XX] db\cmd\cmd_disassembly pd 4 > nul; ?=  47
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064sQ00NrdcBGnP.tmp -
wx 00000000000000000000
e asm.arch=x86
e asm.bits=32
pd 4 > /dev/null
?=
-0x8
+0x0
EXPECT64=MHgwCg==
[**]         db\cmd\cmd_disassembly   OK  183 BR    5 XX    2 FX    0
[**]            db\cmd\cmd_dr_equal   OK  184 BR    5 XX    2 FX    0
[**]                 db\cmd\cmd_env   OK  185 BR    5 XX    2 FX    0
[**]                db\cmd\cmd_eval   OK  189 BR    5 XX    2 FX    0
[**]              db\cmd\cmd_extend   OK  194 BR    5 XX    2 FX    0
[**]               db\cmd\cmd_flags   OK  233 BR    5 XX    2 FX    0
[**]        db\cmd\cmd_flags_stress   OK  236 BR    5 XX    2 FX    0
[XX] db\cmd\cmd_fs md hfs  141
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -n -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064XQzUW9C4JbP2.tmp C:\projects\radare2-shvdd\radare2-regressions\bins\fs\hfs.img
m /root hfs
md /root
-d bin
-d etc
-f README.md
EXPECT64=
[XX] db\cmd\cmd_fs md hfs cat file  156
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -n -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-206469wOo6H05Iuy.tmp C:\projects\radare2-shvdd\radare2-regressions\bins\fs\hfs.img
m /root hfs
mg /root/README.md
-This is an HFS partition
EXPECT64=
[XX] db\cmd\cmd_fs m hfs auto  218
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064RITlI3MFvcFx.tmp C:\projects\radare2-shvdd\radare2-regressions\bins\fs\hfs.img
m
-hfs    0x0 /root
EXPECT64=
[**]                  db\cmd\cmd_fs   OK  247 BR    5 XX    5 FX    0
[**]              db\cmd\cmd_fuzzed   OK  252 BR    5 XX    5 FX    0
[**]               db\cmd\cmd_graph   OK  272 BR    6 XX    5 FX    0
[**]                db\cmd\cmd_hash   OK  274 BR    6 XX    5 FX    0
[XX] db\cmd\cmd_i izzz* (file x86_64)  750
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-206485sPB12hDk6h.tmp C:\projects\radare2-shvdd\radare2-regressions\bins\elf\analysis\hello-linux-x86_64
izzz*~:0
izzz*~:1
 f str.8 10 @ 0x00400034
-Cs 10 @ 0x00400034
+Cs 936302870538 @ 0x00400034
EXPECT64=ZiBzdHIuOCAxMCBAIDB4MDA0MDAwMzQKQ3MgOTM2MzAyODcwNTM4IEAgMHgwMDQwMDAzNAo=
[**]                   db\cmd\cmd_i   OK  344 BR    6 XX    6 FX    0
[**]                 db\cmd\cmd_idp   OK  346 BR    6 XX    6 FX    0
[**]           db\cmd\cmd_interpret   OK  347 BR    6 XX    6 FX    0
[**]                db\cmd\cmd_json   OK  350 BR    6 XX    6 FX    0
[XX] db\cmd\cmd_k k syscall/  16
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064JVPa2np75L0L.tmp malloc://512
e asm.arch=x86
e asm.bits=64
e asm.os=linux
k syscall/0x80.4
-stat
EXPECT64=
[**]                   db\cmd\cmd_k   OK  351 BR    6 XX    7 FX    0
[**]                 db\cmd\cmd_log   OK  357 BR    6 XX    7 FX    0
[**]         db\cmd\cmd_long_string   OK  358 BR    7 XX    7 FX    0
[**]              db\cmd\cmd_macros   OK  369 BR    7 XX    7 FX    0
[**]                db\cmd\cmd_meta   OK  371 BR    7 XX    7 FX    0
[XX] db\cmd\cmd_open oj-  313
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064Q9QSjMTf5zRv.tmp malloc://1024
o-`oj~{[0].fd}`;o
-
+ 3 * rwx 0x00000400 malloc://1024
EXPECT64=IDMgKiByd3ggMHgwMDAwMDQwMCBtYWxsb2M6Ly8xMDI0Cg==
[**]                db\cmd\cmd_open   OK  390 BR    7 XX    8 FX    0
[XX] db\cmd\cmd_ownshell mkdir; ls  31
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-20645XR5IKE9Vv11.tmp -
rm /tmp/blah/bleh
rm /tmp/blah
mkdir /tmp/blah
? 1+1 > /tmp/blah/bleh
ls -l /tmp/blah~bleh[4]
rm /tmp/blah/bleh
rm /tmp/blah
-/tmp/blah/bleh
+Cannot create "/tmp/blah"
EXPECT64=Q2Fubm90IGNyZWF0ZSAiL3RtcC9ibGFoIgo=
[**]            db\cmd\cmd_ownshell   OK  391 BR    8 XX    9 FX    0
[**]                  db\cmd\cmd_p-   OK  392 BR    8 XX    9 FX    0
[**]                  db\cmd\cmd_pa   OK  394 BR    8 XX    9 FX    0
[**]                  db\cmd\cmd_pB   OK  398 BR    8 XX    9 FX    0
[**]                  db\cmd\cmd_pc   OK  410 BR    8 XX    9 FX    0
[XX] db\cmd\cmd_pd data ref with no analop.ptr (#9610)  1312
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064wtmOMgkiFX5D.tmp C:\projects\radare2-shvdd\radare2-regressions\bins\firmware\main.bin
f str.hello 12 @ 0x276
axd str.hello @ 0x260
pd 1 @ 0x260
-            0x00000260      80e0           ldi r24, 0x00               ; 0x276 ; "hello world!"
+            0x00000260      80e090         and al, 0x90                ; 0x276 ; "hello world!"
EXPECT='            0x00000260      80e090         and al, 0x90                ; 0x276 ; "hello world!"
'
[**]                  db\cmd\cmd_pd   OK  511 BR    8 XX   10 FX    0
[**]                 db\cmd\cmd_pdc   OK  512 BR    8 XX   10 FX    0
[**]                 db\cmd\cmd_pdr   OK  514 BR    8 XX   10 FX    0
[**]             db\cmd\cmd_pd_bugs   OK  530 BR    9 XX   10 FX    0
[**]            db\cmd\cmd_pd_bytes   OK  535 BR    9 XX   10 FX    0
[**]                  db\cmd\cmd_pf   OK  576 BR   10 XX   10 FX    0
[**]                 db\cmd\cmd_pf2   OK  589 BR   10 XX   10 FX    0
[**]                 db\cmd\cmd_pfd   OK  595 BR   11 XX   10 FX    0
[**]              db\cmd\cmd_pf_elf   OK  604 BR   11 XX   10 FX    0
[**]                  db\cmd\cmd_ph   OK  605 BR   11 XX   10 FX    0
[**]                 db\cmd\cmd_pif   OK  606 BR   12 XX   10 FX    0
[**]               db\cmd\cmd_print   OK  652 BR   14 XX   10 FX    0
[**]          db\cmd\cmd_print_misc   OK  653 BR   14 XX   10 FX    0
[XX] db\cmd\cmd_ps ps+ libc++ 64bit  31
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -n -m 0x00600dc8 -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064g6Ub6fgW7lQt.tmp C:\projects\radare2-shvdd\radare2-regressions\bins\elf\stdstring64-libc++.LOAD1
on ../bins/elf/stdstring64-libc++.heap 0x0128b000 > /dev/null
f obj.empty_str 24 0x006010b8
f obj.long_str1 24 0x00601088
f obj.short_str1 24 0x00601058
f obj.long_str2 24 0x006010a0
f obj.short_str2 24 0x00601070
e asm.bits=64
ps+ @ obj.short_str1
ps+ @ obj.short_str2
ps+ @ obj.empty_str
ps+ @ obj.long_str1
ps+ @ obj.long_str2
 a
 abcdefghijklmnopqrstuv
-abcdefghijklmnopqrstuvw
-abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
+\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff
+\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff
EXPECT64=YQphYmNkZWZnaGlqa2xtbm9wcXJzdHV2CgpceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmClx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmYK
[XX] db\cmd\cmd_ps ps+ libc++ 32bit  15
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -n -m 0x08049ee8 -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064X0yXkaBMgeeN.tmp C:\projects\radare2-shvdd\radare2-regressions\bins\elf\stdstring32-libc++.LOAD1
on ../bins/elf/stdstring32-libc++.heap 0x09eb8000 > /dev/null
f obj.empty_str 12 0x0804a064
f obj.long_str1 12 0x0804a04c
f obj.short_str1 12 0x0804a034
f obj.long_str2 12 0x0804a058
f obj.short_str2 12 0x0804a040
e asm.bits=32
ps+ @ obj.short_str1
ps+ @ obj.short_str2
ps+ @ obj.empty_str
ps+ @ obj.long_str1
ps+ @ obj.long_str2
 a
 abcdefghij
-abcdefghijk
-abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
+\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff
+\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff
EXPECT64=YQphYmNkZWZnaGlqCgpceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmClx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmYK
[**]                  db\cmd\cmd_ps   OK  656 BR   14 XX   12 FX    0
[**]                 db\cmd\cmd_psj   OK  660 BR   14 XX   12 FX    0
[**]                  db\cmd\cmd_px   OK  664 BR   14 XX   12 FX    0
[**]                 db\cmd\cmd_pxd   OK  667 BR   14 XX   12 FX    0
[**]                 db\cmd\cmd_pxw   OK  678 BR   14 XX   12 FX    0
[**]                   db\cmd\cmd_r   OK  680 BR   14 XX   12 FX    0
[**]             db\cmd\cmd_repeats   OK  684 BR   14 XX   12 FX    0
[**]                 db\cmd\cmd_rop   OK  696 BR   14 XX   12 FX    0
[XX] db\cmd\cmd_search /s search syscall  1203
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064EpSDwcG4zq0u.tmp C:\projects\radare2-shvdd\radare2-regressions\bins\elf\analysis\x86-simple
aeim
aeip
/s
-0x08048070 exit
EXPECT64=
[**]              db\cmd\cmd_search   OK  749 BR   16 XX   13 FX    0
[XX] db\cmd\cmd_search_hit cmd.hit for /s  1000
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064LIP8qTANrjzK.tmp C:\projects\radare2-shvdd\radare2-regressions\bins\elf\analysis\x86-simple
aeim
aeip
e cmd.hit = pi 1
/s
-0x08048070 exit
 int 0x80
-
EXPECT64=aW50IDB4ODAK
[**]          db\cmd\cmd_search_hit   OK  770 BR   18 XX   14 FX    0
[**]           db\cmd\cmd_search_in   OK  776 BR   18 XX   14 FX    0
[**]             db\cmd\cmd_section   OK  779 BR   18 XX   14 FX    0
[**]                db\cmd\cmd_seek   OK  789 BR   18 XX   14 FX    0
[**]               db\cmd\cmd_shift   OK  792 BR   18 XX   14 FX    0
[XX] db\cmd\cmd_system !echo "test"  125
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064KQJvzLNhE1Z1.tmp -
!echo "test"
"!echo test"
+"test"
 test
-test
EXPECT64=InRlc3QiCnRlc3QK
[XX] db\cmd\cmd_system %ENV=33 !echo "$ENV"  125
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064d8bs2N3vjOS7.tmp -
%ENV=World
!echo $ENV
-World
+$ENV
EXPECT64=JEVOVgo=
[**]              db\cmd\cmd_system   OK  798 BR   18 XX   16 FX    0
[**]              db\cmd\cmd_tmpbuf   OK  800 BR   20 XX   16 FX    0
[**]                  db\cmd\cmd_to   OK  804 BR   20 XX   16 FX    0
[XX] db\cmd\cmd_visual Vc+cq  32
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-20646KiVl5Q3S5RX.tmp -
e scr.interactive=true
Vc+cq
p8 1
-01
+00
EXPECT64=MDAK
[XX] db\cmd\cmd_visual visual hex scroll  32
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064GAfu2OG4aH7A.tmp -
e scr.interactive=true
e asm.arch=x86
e asm.bits=64
wx 4889e54889e5
Vjq
s
-0x10
+0x0
EXPECT64=MHgwCg==
[XX] db\cmd\cmd_visual visual hex pP scroll  47
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064EajaYAoHg2hU.tmp -
e asm.arch=x86
e asm.bits=64
e scr.interactive=true
wx 4889e54889e5
VpPjq
s
-0x10
+0x0
EXPECT64=MHgwCg==
[XX] db\cmd\cmd_visual visual op scroll  63
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-20646rmLgxqfCnQz.tmp -
e asm.arch=x86
e asm.bits=64
e scr.interactive=true
wx 4889e54889e5
Vpjq
s
-0x3
+0x0
EXPECT64=MHgwCg==
[**]              db\cmd\cmd_visual   OK  804 BR   20 XX   20 FX    0
[**]                 db\cmd\cmd_wop   OK  814 BR   20 XX   20 FX    0
[**]                db\cmd\cmd_yank   OK  817 BR   20 XX   20 FX    0
[**]           db\cmd\cmd_zignature   OK  857 BR   20 XX   20 FX    0
[**]                db\cmd\comments   OK  867 BR   20 XX   20 FX    0
[XX] db\cmd\data cmp data  31
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064pzf4AcUvezMA.tmp -
b 16
wx 41
e scr.null=1
cx 41 2>/dev/null
e scr.null=0
?! ?e thats fine
e scr.null=1
cx 11 2>/dev/null
e scr.null=0
?! ?e thats wrong
 thats fine
-
+thats wrong
EXPECT64=dGhhdHMgZmluZQp0aGF0cyB3cm9uZwo=
[**]                    db\cmd\data   OK  867 BR   20 XX   21 FX    0
[XX] db\cmd\describe asm.describe alignment with memory access  15
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-206466bSdeFYrXbV.tmp -
e asm.arch = x86
e anal.arch = x86
e asm.bits=32
"wa mov eax, [0x100]"
e asm.describe = true
pd 1
-            0x00000000      a100010000     mov eax, dword [0x100]      ; [0x100:4]=0 ; moves data from src to dst
+            0x00000000      a100010000     mov eax, dword [0x100]      ; [0x100:4]=0
EXPECT64=ICAgICAgICAgICAgMHgwMDAwMDAwMCAgICAgIGExMDAwMTAwMDAgICAgIG1vdiBlYXgsIGR3b3JkIFsweDEwMF0gICAgICA7IFsweDEwMDo0XT0wCg==
[XX] db\cmd\describe asm.describe alignment  15
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064O9Fp2QbUq6RX.tmp -
wa nop
e asm.describe = true
pd 1
-            0x00000000      90             nop                         ; no operation
+            0x00000000      90             nop
EXPECT64=ICAgICAgICAgICAgMHgwMDAwMDAwMCAgICAgIDkwICAgICAgICAgICAgIG5vcAo=
[**]                db\cmd\describe   OK  867 BR   20 XX   23 FX    0
[**]            db\cmd\display_flag   OK  869 BR   20 XX   23 FX    0
[**]                    db\cmd\echo   OK  870 BR   20 XX   23 FX    0
[**]                     db\cmd\egg   OK  873 BR   20 XX   23 FX    0
[**]                     db\cmd\elf   OK  874 BR   20 XX   23 FX    0
[**]                     db\cmd\err   OK  876 BR   20 XX   23 FX    0
[**]         db\cmd\feat_arithmetic   OK  884 BR   20 XX   23 FX    0
[**]             db\cmd\feat_arroba   OK  892 BR   20 XX   23 FX    0
[**]             db\cmd\feat_astabs   OK  893 BR   20 XX   23 FX    0
[**]             db\cmd\feat_base64   OK  895 BR   20 XX   23 FX    0
[**]            db\cmd\feat_foreach   OK  899 BR   20 XX   23 FX    0
[**]          db\cmd\feat_graphdiff   OK  900 BR   20 XX   23 FX    0
[**]              db\cmd\feat_input   OK  916 BR   20 XX   23 FX    0
[**]             db\cmd\feat_segoff   OK  917 BR   20 XX   23 FX    0
[**]          db\cmd\feat_variables   OK  939 BR   20 XX   23 FX    0
[**]               db\cmd\feat_yank   OK  945 BR   20 XX   23 FX    0
[**]                    db\cmd\glue   OK  946 BR   20 XX   23 FX    0
[**]                    db\cmd\hash   OK  947 BR   20 XX   23 FX    0
[XX] db\cmd\hex search count  125
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-20645BYewBeohKGC.tmp malloc://1024
wx 2f @ 0x100
wx 2f @ 0x110
wx 2f @ 0x120
/x 2f > /dev/null
?vi $?
-3
+0
EXPECT64=MAo=
[**]                     db\cmd\hex   OK  956 BR   20 XX   24 FX    0
[**]               db\cmd\lea_intel   OK  957 BR   20 XX   24 FX    0
[**]                  db\cmd\malloc   OK  958 BR   20 XX   24 FX    0
[**]                db\cmd\manyundo   OK  958 BR   21 XX   24 FX    0
[XX] db\cmd\md5sha1 crca 'hello world'  94
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2064y9cqJEweZVpP.tmp -
b 12
w hello world
!rahash2 -qa rahash2 -a crc8smbus,crc15can,crc16hdlc,crc16usb,crc16citt,crc24,crc32c,crc32ecma267 -s 'hello world'
ph crc8smbus 11
ph crc15can 11
ph crc16hdlc 11
ph crc16usb 11
ph crc16citt 11
ph crc24 11
ph crc32c 11
ph crc32ecma267 11
+76
+3748
+95f4
+072b
+303b
+287e34
+8b945bd3
+22e095b2
 a8
 727a
 ae06
 2238
 efeb
 b03cb7
 c99465aa
 ac86f845
-a8
-727a
-ae06
-2238
-efeb
-b03cb7
-c99465aa
-ac86f845
EXPECT64=NzYKMzc0OAo5NWY0CjA3MmIKMzAzYgoyODdlMzQKOGI5NDViZDMKMjJlMDk1YjIKYTgKNzI3YQphZTA2CjIyMzgKZWZlYgpiMDNjYjcKYzk5NDY1YWEKYWM4NmY4NDUK
[XX] db\cmd\md5sha1 ph crc32  94
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-20647vUdXbCKY6pC.tmp -
b 12
w hello world
!rahash2 -qa crc16 -s 'hello world'
ph crc16 11
!rahash2 -qa crc32 -s 'hello world'
ph crc32 11
+e3d4
 39c1
-39c1
+5b59c5b6
 0d4a1185
-0d4a1185
EXPECT64=ZTNkNAozOWMxCjViNTljNWI2CjBkNGExMTg1Cg==
[**]                 db\cmd\md5sha1   OK  959 BR   21 XX   26 FX    0
[**]                db\cmd\metadata   OK  989 BR   22 XX   26 FX    0
[**]                db\cmd\midflags   OK 1002 BR   23 XX   26 FX    0
[**]         db\cmd\mm_search_issue   OK 1003 BR   23 XX   26 FX    0
[**]                db\cmd\noreturn   OK 1011 BR   23 XX   26 FX    0
[**]                   db\cmd\print   OK 1015 BR   23 XX   26 FX    0
[**]               db\cmd\print_bug   OK 1017 BR   23 XX   26 FX    0
[**]                  db\cmd\regexp   OK 1019 BR   23 XX   26 FX    0
[**]                 db\cmd\retries   OK 1020 BR   23 XX   26 FX    0
[**]                 db\cmd\sandbox   OK 1022 BR   23 XX   26 FX    0
[**]         db\cmd\section-mapping   OK 1022 BR   25 XX   26 FX    0
[**]                 db\cmd\seekbug   OK 1026 BR   25 XX   26 FX    0
[**]                   db\cmd\shell   OK 1029 BR   25 XX   26 FX    0
[**]                  db\cmd\sidbug   OK 1031 BR   25 XX   26 FX    0
[**]              db\cmd\simple-elf   OK 1033 BR   25 XX   26 FX    0
[**]                  db\cmd\spaces   OK 1034 BR   26 XX   26 FX    0
[**]              db\cmd\structures   OK 1037 BR   26 XX   26 FX    0
[**]                   db\cmd\sugar   OK 1038 BR   26 XX   26 FX    0
[**]                db\cmd\undoredo   OK 1039 BR   26 XX   26 FX    0
[**]                 db\cmd\unified   OK 1040 BR   26 XX   26 FX    0
[**]                   db\cmd\utf32   OK 1041 BR   26 XX   26 FX    0
[**]                      db\cmd\va   OK 1042 BR   26 XX   26 FX    0
Bins Done
[**]                     db\bin\elf   OK 1042 BR   26 XX   26 FX    0
[**]                    db\asm\8051   OK 1153 BR   26 XX   26 FX    0
[**]                  db\asm\arc_16   OK 1183 BR   28 XX   26 FX    0
[**]                  db\asm\arc_32   OK 1231 BR   35 XX   26 FX    0
[**]              db\asm\arm.gnu_32   OK 1235 BR   35 XX   26 FX    0
[**]       db\asm\arm.gnu_cortex_16   OK 1236 BR   35 XX   26 FX    0
[XX] db\asm\arm_16 arm,16: "and r8, r9, 0xfa000000" => 09f07a48 (assemble)  
$ r2 
-09f07a48
+09f00008
[XX] db\asm\arm_16 arm,16: "ands r2, r7, 0xab00ab00" => 17f0ab22 (assemble)  
$ r2 
-17f0ab22
+17f00002
[XX] db\asm\arm_16 arm,16: "eor r1, r9, 0xabababab" => 89f0ab31 (assemble)  
$ r2 
-89f0ab31
[XX] db\asm\arm_16 arm,16: "mov r7, 0xb200b200" => 4ff0b227 (assemble)  
$ r2 
-4ff0b227
+4ff00007
[XX] db\asm\arm_16 arm,16: "orn r6, r10, 0xabababab" => 6af0ab36 (assemble)  
$ r2 
-6af0ab36
[XX] db\asm\arm_16 arm,16: "orr r6, 0xf7000000" => 46f07746 (assemble)  
$ r2 
-46f07746
[XX] db\asm\arm_16 arm,16: "rsbs r7, r9, 0xab00ab00" => d9f1ab27 (assemble)  
$ r2 
-d9f1ab27
[XX] db\asm\arm_16 arm,16: "sbcs r2, r5, 0xab00ab00" => 75f1ab22 (assemble)  
$ r2 
-75f1ab22
+60f10000
[**]                  db\asm\arm_16   OK 2521 BR   59 XX   34 FX    0
[**]                  db\asm\arm_32   OK 2691 BR  165 XX   34 FX    0
[**]                  db\asm\arm_64   OK 2942 BR  169 XX   34 FX    0
[**]           db\asm\arm_cortex_16   OK 2943 BR  169 XX   34 FX    0
[**]                     db\asm\avr   OK 3077 BR  169 XX   34 FX    0
[**]                    db\asm\cr16   OK 3160 BR  169 XX   34 FX    0
[**]                  db\asm\dalvik   OK 3395 BR  170 XX   34 FX    0
[**]                     db\asm\ebc   OK 3435 BR  170 XX   34 FX    0
[**]                      db\asm\gb   OK 3935 BR  170 XX   34 FX    0
[**]                   db\asm\h8300   OK 4063 BR  170 XX   34 FX    0
[**]                    db\asm\java   OK 4141 BR  170 XX   34 FX    0
[**]                  db\asm\lh5801   OK 4301 BR  177 XX   34 FX    0
[**]             db\asm\mips.gnu_64   OK 4386 BR  177 XX   34 FX    0
[**]                 db\asm\mips_64   OK 4455 BR  188 XX   34 FX    0
[**]              db\asm\mips_v2_64   OK 4457 BR  188 XX   34 FX    0
[**]                  db\asm\msp430   OK 4511 BR  188 XX   34 FX    0
[**]             db\asm\pic_pic18_8   OK 4531 BR  189 XX   34 FX    0
[**]                db\asm\riscv_32   OK 4716 BR  189 XX   34 FX    0
[**]                      db\asm\sh   OK 4732 BR  189 XX   34 FX    0
[**]         db\asm\tms320_c55x+_32   OK 4756 BR  189 XX   34 FX    0
[**]          db\asm\tms320_c55x_32   OK 5107 BR  189 XX   34 FX    0
[**]                    db\asm\v810   OK 5164 BR  189 XX   34 FX    0
[**]                    db\asm\wasm   OK 5180 BR  189 XX   34 FX    0
[**]                      db\asm\ws   OK 5191 BR  193 XX   34 FX    0
[XX] db\asm\x86_16 x86,16: e95bec => "jmp 0xfec50" (disassemble)  
$ r2 
-jmp 0xfec50
+jmp 0xec50
[XX] db\asm\x86_16 x86,16: e95bec => "jmp 0x1fec50" (disassemble)  
$ r2 
-jmp 0x1fec50
+jmp 0xec50
[**]                  db\asm\x86_16   OK 5198 BR  194 XX   36 FX    0
[XX] db\asm\x86_32 x86,32: "adc al, byte [eax]" => 1200 (assemble)  
$ r2 
-1200
[XX] db\asm\x86_32 x86,32: "adc eax, dword [eax]" => 1300 (assemble)  
$ r2 
-1300
[XX] db\asm\x86_32 x86,32: "add al, byte [eax]" => 0200 (assemble)  
$ r2 
-0200
[XX] db\asm\x86_32 x86,32: "add eax, dword [eax]" => 0300 (assemble)  
$ r2 
-0300
[XX] db\asm\x86_32 x86,32: "and al, byte [eax]" => 2200 (assemble)  
$ r2 
-2200
[XX] db\asm\x86_32 x86,32: "and eax, dword [eax]" => 2300 (assemble)  
$ r2 
-2300
[XX] db\asm\x86_32 x86,32: "cmp al, byte [eax]" => 3a00 (assemble)  
$ r2 
-3a00
[XX] db\asm\x86_32 x86,32: "cmp eax, dword [eax]" => 3b00 (assemble)  
$ r2 
-3b00
[XX] db\asm\x86_32 x86,32: "jmp [ebx+43]" => ff632b (assemble)  
$ r2 
-ff632b
[XX] db\asm\x86_32 x86,32: "jmp [ecx+200]" => ffa1c8000000 (assemble)  
$ r2 
-ffa1c8000000
[XX] db\asm\x86_32 x86,32: "jmp [edx-10]" => ff62f6 (assemble)  
$ r2 
-ff62f6
[XX] db\asm\x86_32 x86,32: "jmp [eax-140]" => ffa074ffffff (assemble)  
$ r2 
-ffa074ffffff
[XX] db\asm\x86_32 x86,32: "or eax, dword [eax]" => 0b00 (assemble)  
$ r2 
-0b00
[XX] db\asm\x86_32 x86,32: "sbb al, byte [eax]" => 1a00 (assemble)  
$ r2 
-1a00
[XX] db\asm\x86_32 x86,32: "sbb eax, dword [eax]" => 1b00 (assemble)  
$ r2 
-1b00
[XX] db\asm\x86_32 x86,32: "sub al, byte [eax]" => 2a00 (assemble)  
$ r2 
-2a00
[XX] db\asm\x86_32 x86,32: "sub eax, dword [eax]" => 2b00 (assemble)  
$ r2 
-2b00
[XX] db\asm\x86_32 x86,32: "xor al, byte [eax]" => 3200 (assemble)  
$ r2 
-3200
[XX] db\asm\x86_32 x86,32: "xor eax, dword [eax]" => 3300 (assemble)  
$ r2 
-3300
[**]                  db\asm\x86_32   OK 6802 BR  819 XX   55 FX    0
[**]                  db\asm\x86_64   OK 7505 BR  842 XX   55 FX    0
[**]                     db\asm\z80   OK 8641 BR  842 XX   55 FX    0
[**]                   db\anal\6502   OK 8642 BR  842 XX   55 FX    0
Maijin commented 6 years ago

We will get more as we continue the translation to new

XVilka commented 6 years ago

In fact the count of failing tests increased from 55 to 159. Judging by the failing tests radare2 is hardly usable on Windows... log.txt

xarkes commented 6 years ago

We need to reach 0 and make appveyor become red when any test fail. I don't really have the time to do this, but anyone working on Windows could help on that.

a1ext commented 6 years ago

Some of the failed tests cases are related to /dev/null usage (not available on windows, nul has to be used instead) and environment variables like this one test:

%ENV=World
!echo $ENV
-World
+$ENV

through subcommand, env var have to be accessed by echo %ENV%.

P.S. I don't see there a way to turn on/off some test cases depending on OS, so such test cases which differs in platform-related things can be handled properly by a test writer.

Maijin commented 6 years ago

Those cases must be rewritten to not use /dev/null nor nul. Not disabled.

XVilka commented 5 years ago

See updated log here https://ci.appveyor.com/project/radare/radare2-shvdd/builds/22924861/job/qiboqswep2w3pvyg

XVilka commented 5 years ago

@a1ext you can see that most of the failing tests are those using !rasm2 or !rahash2 calls. So by reusing internal r2 commands you can fix the tests.

a1ext commented 5 years ago

Lets fix them one-by-one.

Next one is the following:

[00:08:53] [XX] db\tools\rahash2 rahash2 -s hello\x31  992
[00:08:53] $ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2356OLtWbSqcQN45.tmp -
[00:08:53] !rahash2 -qa md5 -s hello\\x31
[00:08:53] 
[00:08:53] -203ad5ffa1d7c650ad681fdff3965cd2
[00:08:53] +827dd13a4b222a80edbc195239fd7c5c
[00:08:53] 
[00:08:53] EXPECT=<<RUN
[00:08:53] 827dd13a4b222a80edbc195239fd7c5c

It caused by double-backslash \\ because on windows it \ is valid shell character so it hasn't be escaped. So, I dunno how to fix this

radare commented 5 years ago

Even in quotes? We can also feed an hexpair string

On 21 Mar 2019, at 09:26, a1ext notifications@github.com wrote:

Lets fix them one-by-one.

Next one is the following:

[00:08:53] [XX] db\tools\rahash2 rahash2 -s hello\x31 992 [00:08:53] $ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-2356OLtWbSqcQN45.tmp - [00:08:53] !rahash2 -qa md5 -s hello\x31 [00:08:53] [00:08:53] -203ad5ffa1d7c650ad681fdff3965cd2 [00:08:53] +827dd13a4b222a80edbc195239fd7c5c [00:08:53] [00:08:53] EXPECT=<<RUN [00:08:53] 827dd13a4b222a80edbc195239fd7c5c It caused by double-backslash \ because on windows it \ is valid shell character so it hasn't be escaped. So, I dunno how to fix this

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.

a1ext commented 5 years ago

yeah, image

XVilka commented 5 years ago

Also something strange happens in demangling:

[XX] db\formats\mangling\mangling Abbreviation Of Repetead Names (Name with Template Arguments) demangler test  1285
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-4216W63kLQr4i94O.tmp -
"!rabin2 -D msvc ?xyz@?\$abc@V?\$def@H@@PAX@@YAXXZ"
-void __cdecl abc<class def<int>, void *>::xyz(void)
+?xyz@?\$abc@V?\$def@H@@PAX@@YAXXZ
EXPECT=<<EOF
?xyz@?\$abc@V?\$def@H@@PAX@@YAXXZ
[XX] db\formats\mangling\mangling Abbreviation Of Name with template demangler test  1372
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-4216XTjIkyr6272K.tmp -
"!rabin2 -D msvc ??\$MyTemplateFunction@VClass1@@@Class1@@QAEXPAV0@@Z"
-public: void __thiscall Class1::MyTemplateFunction<class Class1>(class Class1 *)
+??\$MyTemplateFunction@VClass1@@@Class1@@QAEXPAV0@@Z
EXPECT=<<EOF
??\$MyTemplateFunction@VClass1@@@Class1@@QAEXPAV0@@Z
[**]   db\formats\mangling\mangling   OK 1465 BR   86 XX   20 FX   15
[XX] db\formats\mangling\rust rust static type with hash  1224
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-4216wWX65sYmJpDp.tmp -
"!rabin2 -D rust _ZN96_\$LT\$core..fmt..Write..write_fmt..Adapter\$LT\$\$u27\$a\$C\$\$u20\$T\$GT\$\$u20\$as\$u20\$core..fmt..Write\$GT\$9write_str17he4f4768a2f446facE"
-<core::fmt::Write::write_fmt::Adapter<'a, T> as core::fmt::Write>::write_str::he4f4768a2f446fac
+_ZN96_\$LT\$core..fmt..Write..write_fmt..Adapter\$LT\$\$u27\$a\$C\$\$u20\$T\$GT\$\$u20\$as\$u20\$core..fmt..Write\$GT\$9write_str17he4f4768a2f446facE
EXPECT=<<EOF
_ZN96_\$LT\$core..fmt..Write..write_fmt..Adapter\$LT\$\$u27\$a\$C\$\$u20\$T\$GT\$\$u20\$as\$u20\$core..fmt..Write\$GT\$9write_str17he4f4768a2f446facE
[XX] db\formats\mangling\rust rust static type  1275
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-4216tWaLTOTFkhnb.tmp -
"!rabin2 -D rust _ZN71_\$LT\$Test\$u20\$\$u2b\$\$u20\$\$u27\$static\$u20\$as\$u20\$foo..Bar\$LT\$Test\$GT\$\$GT\$3barE"
-<Test + 'static as foo::Bar<Test>>::bar
+_ZN71_\$LT\$Test\$u20\$\$u2b\$\$u20\$\$u27\$static\$u20\$as\$u20\$foo..Bar\$LT\$Test\$GT\$\$GT\$3barE
EXPECT=<<EOF
XVilka commented 5 years ago

This one is probably due to some format string difference between GCC and MSVC:

[XX] db\cmd\cmd_help "? -1"  408
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-42164UGuM31k6iLu.tmp --
? -1
 int64   -1
 hex     0xffffffffffffffff
 octal   01777777777777777777777
-unit    16.0E
+unit    16E
 segment fffff000:0fff
 string  "\xff

And I remember @radare recently met these on another platform:

[**]                db\cmd\cmd_help   OK 2803 BR  142 XX   25 FX   19
[XX] db\cmd\cmd_i izzz* (file x86_64)  557
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-4216KERD4Q8IuEkK.tmp ../bins/elf/analysis/hello-linux-x86_64
izzz*~:0
izzz*~:1
 f str.8 10 @ 0x00400034
-Cs 10 @ 0x00400034
+Cs 2314987372554 @ 0x00400034
EXPECT=<<EOF
f str.8 10 @ 0x00400034
Cs 2314987372554 @ 0x00400034
[XX] db\cmd\cmd_i utf8 (possibly malformed) filenames with non-printable chars  483
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-4216NITLz91cdKtM.tmp -
cd `e dir.tmp`
e io.cache=true
"(show_fname fname, wz $0, wtf `prz`, o `prz`, i~file, ij, rm `prz`)"
.(show_fname A\x1b¢\302\200€𝄞\363\240\201\201\\.bin)
.(show_fname B\x1b¢\302\200€𝄞\363\240\201\201\\.bin)
# INVALID FILENAME .(show_fname B\x1b¢\302\200\200€𝄞\363\240\201\201\\.bin)
-file     A�€€𝄞󠁁\.bin
-{"core":{"type":"","file":"A\u001b¢\u0080€𝄞\udb40\udc41\\.bin","fd":4,"size":256,"humansz":"256","iorw":true,"mode":"r-x","obsz":0,"block":256,"format":"any"}}
-file     B�€€𝄞󠁁\.bin
-{"core":{"type":"","file":"B\u001b¢\u0080€𝄞\udb40\udc41\\.bin","fd":5,"size":256,"humansz":"256","iorw":true,"mode":"r-x","obsz":0,"block":256,"format":"any"}}
+file     malloc://512
+{"core":{"type":"","file":"malloc://512","fd":3,"size":512,"humansz":"512","iorw":true,"mode":"rwx","obsz":0,"block":256,"format":"any"}}
+file     malloc://512
+{"core":{"type":"","file":"malloc://512","fd":3,"size":512,"humansz":"512","iorw":true,"mode":"rwx","obsz":0,"block":256,"format":"any"}}
EXPECT=<<EOF
file     malloc://512
{"core":{"type":"","file":"malloc://512","fd":3,"size":512,"humansz":"512","iorw":true,"mode":"rwx","obsz":0,"block":256,"format":"any"}}
file     malloc://512
{"core":{"type":"","file":"malloc://512","fd":3,"size":512,"humansz":"512","iorw":true,"mode":"rwx","obsz":0,"block":256,"format":"any"}}
[XX] db\cmd\cmd_i iS=  546
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-4216GYS48qWjbG4j.tmp ../bins/mach0/fatmach0-3true
iS=
-00* 0x100000ef8 |##--------| 0x100000f3f    71 r-x  0.__TEXT.__text
-01  0x100000f40 |--#-------| 0x100000f46     6 r-x  1.__TEXT.__symbol_stub1
-02  0x100000f46 |--#-------| 0x100000f60    26 r-x  2.__TEXT.__stub_helper
-03  0x100000f60 |--####----| 0x100000fb4    84 r-x  3.__TEXT.__unwind_info
-04  0x100000fb8 |-----###--| 0x100001000    72 r-x  4.__TEXT.__eh_frame
-05  0x100001000 |-------#--| 0x100001010    16 rw-  5.__DATA.__nl_symbol_ptr
-06  0x100001010 |-------#--| 0x100001018     8 rw-  6.__DATA.__la_symbol_ptr
-07  0x100001020 |--------##| 0x100001048    40 rw-  7.__DATA.__program_vars
-08  0x100001048 |---------#| 0x100001068    32 rw-  8.__DATA.__data
-=>  0x100000ef8 |----------| 0x100000ef7
EXPECT=''
XVilka commented 5 years ago

This one is due to platform environment variables differences: '%' vs '$' and making quotes a part of the variable:

[XX] db\cmd\cmd_system %ENV=33 !echo "$ENV"  1021
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-4216cx7o1ZK2rfXz.tmp -
%ENV=World
!echo $ENV
-World
+$ENV
EXPECT=<<EOF
$ENV
[XX] db\cmd\cmd_system !echo "test"  1007
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-4216aDuIzVAjSGDd.tmp -
!echo "test"
"!echo test"
+"test"
 test
-test
EXPECT=<<EOF
"test"
test

This test looks very non-portable:

[XX] db\cmd\feat_redirect "pb>x;!wc -c x"  352
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-4216UsSgYZTIej4j.tmp malloc://1024
p8 10 > dump
!wc -c dump|sed 's/^[ \t]*//;s/[ \t]*$//'
p8 12800 > dump
!wc -c dump|sed 's/^[ \t]*//;s/[ \t]*$//'
!rm -f dump
-21
-25601
+21 dump
+25601 dump
Maijin commented 5 years ago

This discussion should be moved to r2r and issues open accordingly for every mentioned problems

XVilka commented 5 years ago

@a1ext note, that some !commands can be replaced with builtin alternatives:

a1ext commented 5 years ago

This discussion should be moved to r2r and issues open accordingly for every mentioned problems

Why? Mostly problems fixes are in r2 side

a1ext commented 5 years ago

@a1ext note, that some !commands can be replaced with builtin alternatives:

  • !cat with cat
  • !rm with rm
  • !ls with `ls'
  • !wc with ~?
  • !wc -c with ~?.

What about sed?

radare commented 5 years ago

Portability and performance

On 22 Mar 2019, at 09:09, a1ext notifications@github.com wrote:

This discussion should be moved to r2r and issues open accordingly for every mentioned problems

Why? Mostly problems fixes are in r2 side

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

radare commented 5 years ago

Use ~ for sed but better not to have tests depending on it

On 22 Mar 2019, at 09:09, a1ext notifications@github.com wrote:

@a1ext note, that some !commands can be replaced with builtin alternatives:

!cat with cat !rm with rm !ls with `ls' !wc with ~? !wc -c with ~?. What about sed?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

Maijin commented 5 years ago

Because some are related to tests writing and not r2

a1ext commented 5 years ago

ok, could you transfer the issue to r2r?

Maijin commented 5 years ago

I cannot automatically because radare2 and radare2-regressions are not in radare2org #13263 . I will check later to do that manually.

XVilka commented 5 years ago

@a1ext is there any progress on this?

a1ext commented 5 years ago

@a1ext is there any progress on this?

Actually I have no time to work on any open-source at the moment, very busy. You can involve somebody else for the issue.

XVilka commented 5 years ago

@GustavoLCR you might want to take a look at those by the way.

radare commented 5 years ago

How many XX now?

XVilka commented 5 years ago

@radare 41, before the master was broken.

radare commented 5 years ago

status now?

GustavoLCR commented 5 years ago

24 XX

GustavoLCR commented 5 years ago

Ok, I think that's it. Now waiting for @radare to release both r2r-js and r2pipe-js and see if everything is green.

radare commented 5 years ago

Both releases done

On 23 Jun 2019, at 03:31, GustavoLCR notifications@github.com wrote:

Ok, I think that's it. Now waiting for @radare to release both r2r-js and r2pipe-js and see if everything is green.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

XVilka commented 5 years ago

@GustavoLCR still 2 XX (see https://ci.appveyor.com/project/radare/radare2-shvdd/build/job/ea3a7x0f1tb9kj4x):

[XX] db\formats\mangling\mangling Abbreviation Of Repetead Names (Name with Template Arguments) demangler test  1510
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-4040b5VtciOCu83F -
"!rabin2 -D msvc ?xyz@?\$abc@V?\$def@H@@PAX@@YAXXZ"
-void __cdecl abc<class def<int>, void *>::xyz(void)
+?xyz@?\$abc@V?\$def@H@@PAX@@YAXXZ
EXPECT=<<EOF
?xyz@?\$abc@V?\$def@H@@PAX@@YAXXZ
[XX] db\formats\mangling\mangling Abbreviation Of Name with template demangler test  1466
$ r2 -escr.utf8=0 -escr.color=0 -escr.interactive=0 -N -Q -i C:\Users\appveyor\AppData\Local\Temp\1\tmp-4040HShhxRCI7n56 -
"!rabin2 -D msvc ??\$MyTemplateFunction@VClass1@@@Class1@@QAEXPAV0@@Z"
-public: void __thiscall Class1::MyTemplateFunction<class Class1>(class Class1 *)
+??\$MyTemplateFunction@VClass1@@@Class1@@QAEXPAV0@@Z
EXPECT=<<EOF
??\$MyTemplateFunction@VClass1@@@Class1@@QAEXPAV0@@Z
XVilka commented 5 years ago

Amazing job @GustavoLCR!

GustavoLCR commented 5 years ago

Amazing job @GustavoLCR!

Thanks!