rizin/test/db/formats/ne
Riccardo Schirone 1c78aee3cd
Convert i commands to rzshell (#1238)
* Start to create some RzBinObject specific API

Adding some unit tests

Fix for new relocs storage system

Fix test_bin unit test for oob-write

* Add `iA` command to newshell

Add `ie`/`iee` commands

Add support for `is`/`iE` commands

Add support for `ii` command

Add support for `il` command

Add support for `iM` command

Add support for `ir` command

Add support for `iS`/`iSS` commands

Add support for `iz` command

Add support for `i` command

Add support for `ic` command

Add support for `iC` command

Add support for `ih` and `iHH` commands

Add support for `iI` command

Add support for `iL` command

Fix descriptions of commands already converted

Add support for `idp` commands

Add support for `iD` command

Add support for `im` commands

Add support for `iR` command

Add support for `it` command

Add support for `iV` commands

Add support for `iw` command

Add support for `ix` commands

Add support for `iZ` command

Add support for `ik` command

Add support for `is.` command

Add support for `iS.` command

Reduce arguments in print_arch

Few Doxygen and ownership annotations

Add support for `iS=` command

Add support for `izz` and `izzz` commands

Add support for `ib` command

Add support for `ic*` command

Put section flags as the last field of the table

* Proper language detection.

* Rewritten blang.c

* implemented `icc/icm/icf <class name>`

* ignore blocks when printing langs

Remove num from `iA` output

* Fixed flags on java and added class column

Add support for `ia` commands

Fix `iCj` command

* RzBin: add rz_bin_object_sections_mapping_list API

* Fix rz-bin for new API

Remove unused va var in rz-bin.c

Fix `iA`/`-A` output

* implemented classdump_cpp

* Support namespaces

Use `icc`, `icl` does not exist anymore

Update output of broken tests for `icc`

Add `rz_return_*()` asserts in new `*_print()` functions

* Provide rz_core_bin_print API

* Select which parts to print also based on the mode

* Return bool from all `rz_core_bin_*_print()` API

* Use RzBinFile in new `rz_core_bin_*_print()` API

* Restore `dbg_dmi` test

* Remove oldshell handlers for `i` commands

* Remove `ieq` call in rizin, not needed

* Allow NULL `bf` in `rz_cmd_info_handler()`

* Re-add support for RZ_BIN_PREFIX for symbols/sections/segments/imports/relocs

* Move `ib` command to `obR`

* Show 'N/A' in `i` command when info are not available

* Assert on bf->o, just to be sure

* Make error messages clearer in `idp` commands

Co-authored-by: wargio <wargio@libero.it>
Co-authored-by: Giovanni <561184+wargio@users.noreply.github.com>
2021-09-04 22:37:05 +08:00

89 lines
2.2 KiB
Text

NAME=NE Symbols
FILE=bins/ne/anim8.exe
CMDS=is
EXPECT=<<EOF
nth paddr vaddr bind type size lib name
----------------------------------------------------------
0 0x00000a00 0x00000a00 NONE NONE 0 ANIM8
1 0x00000d8e 0x00000d8e GLOBAL NONE 0 WNDPROC
2 0x00002b5a 0x00002b5a GLOBAL NONE 0 DIAL_ABOUT
0 0x00000a00 0x00000a00 NONE NONE 0 ANIM8
EOF
RUN
NAME=NE Segments
FILE=bins/ne/anim8.exe
CMDS=iSS
EXPECT=<<EOF
paddr size vaddr vsize align perm name
--------------------------------------------------------------
0x00000a00 0x54ee 0x00000a00 0x54ee 0x0 ---x MOVEABLE.2560
0x00007600 0x3ec4 0x00007600 0x3ec4 0x0 -rwx MOVEABLE.30208
EOF
RUN
NAME=NE Module imports
FILE=bins/ne/anim8.exe
CMDS=ii
EXPECT=<<EOF
nth vaddr bind type lib name
-------------------------------------
1 ---------- NONE NONE KERNEL
2 ---------- NONE NONE USER
3 ---------- NONE NONE GDI
4 ---------- NONE NONE WIN87EM
EOF
RUN
NAME=NE Relocs
FILE=bins/ne/anim8.exe
CMDS=ir~0x?
EXPECT=<<EOF
718
EOF
RUN
NAME=NE Relocs and resolve function ordinal names
FILE=bins/ne/anim8.exe
CMDS=<<EOF
ir~WIN87EM
ir~:0..9
EOF
EXPECT=<<EOF
0x00004c98 0x00004c98 SET_32 WIN87EM.__FPMATH
0x00004cb2 0x00004cb2 SET_16 WIN87EM.__FPMATH
0x00004cb8 0x00004cb8 SET_16 WIN87EM.__FPMATH
0x00004cbd 0x00004cbd SET_32 WIN87EM.__FPMATH
0x00004ccb 0x00004ccb SET_32 WIN87EM.__FPMATH
0x0000569a 0x0000569a ADD_16 WIN87EM.0
0x000056a0 0x000056a0 ADD_16 WIN87EM.0
0x000056b3 0x000056b3 ADD_16 WIN87EM.0
0x00005891 0x00005891 ADD_16 WIN87EM.0
vaddr paddr type name
--------------------------------------------------------------
0x00000a01 0x00000a01 SET_32 KERNEL.INITTASK
0x00000a25 0x00000a25 SET_32 KERNEL.LOCKSEGMENT
0x00000a3c 0x00000a3c SET_32 KERNEL.WAITEVENT
0x00000a45 0x00000a45 SET_32 USER.INITAPP
0x00000a74 0x00000a74 SET_32 KERNEL.GETWINFLAGS
0x00000ad0 0x00000ad0 SET_32 KERNEL.UNLOCKSEGMENT
0x00000b86 0x00000b86 SET_32 KERNEL.CATCH
EOF
RUN
NAME=NE Code
FILE=bins/ne/anim8.exe
CMDS=pi 10 @ sym.WNDPROC
EXPECT=<<EOF
mov ax, ds
nop
inc bp
push bp
mov bp, sp
push ds
mov ds, ax
mov ax, 0x5c
call 0x4d35
push si
EOF
RUN