Skip to content

Commit

Permalink
More vapi fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
radare committed Jun 9, 2022
1 parent d9e6fd7 commit 7287e07
Show file tree
Hide file tree
Showing 4 changed files with 22 additions and 15 deletions.
7 changes: 5 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ jobs:
run: sudo apt install -y valac
- name: Build and run some tests
run: |
./configure
./configure --prefix=/usr
sudo make -C vapi install
make -C vapi/t
swig-python:
runs-on: ubuntu-20.04
Expand All @@ -29,9 +30,11 @@ jobs:
- name: Install valabind and swig
run: |
sudo apt install -y swig valac
r2pm -cgi valabind
r2pm -ci valabind
- name: Configure
run: ./configure
- name: Test valabind
run: r2pm -r valabind --version
- name: Build swig bindings
run: r2pm -r make -C python
- name: Build dlang bindings
Expand Down
2 changes: 1 addition & 1 deletion vapi/r_core.vapi
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ public class RCore {

/* asm */
//public static RCore.AsmHit asm_hit_new();
// public RList<RCore.AsmHit> asm_strsearch(string input, uint64 from, uint64 to, int maxhits, int regexp);
// public RList<RCore.AsmHit> asm_strsearch(string input, uint64 from, uint64 to, int maxhits, int regexp, int a, int b);
public RList<RCore.AsmHit> asm_bwdisassemble(uint64 addr, int n, int len);

/*
Expand Down
20 changes: 11 additions & 9 deletions vapi/t/Makefile
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
include ../../config.mk

# all: config lang regs sc hash socket search list plugin.${SOEXT}
TESTS=core asm lang regs sc hash
TESTS=core asm lang regs sc hash sc
ALLTESTS=$(TESTS) bin socket search list

all: $(ALLTESTS)
Expand All @@ -20,6 +19,9 @@ plugin.${SOEXT}:
config:
valac --vapidir=.. cfg.vala --pkg r_config --pkg r_util --pkg r_db

code_search:
valac --vapidir=.. code_search.vala --pkg r_core --pkg r_bin

rgot:
valac --vapidir=.. rgot.vala --pkg r_bin --pkg r_util

Expand All @@ -46,13 +48,13 @@ genie:
valac --vapidir=.. --pkg r_search --pkg libr search.gs

io:
valac --vapidir=${PWD}/.. --pkg r_io io.vala
valac --vapidir=.. --pkg r_io io.vala

db:
valac --vapidir=${PWD}/.. --pkg r_db db.vala
valac --vapidir=.. --pkg r_db db.vala

sc:
valac --vapidir=${PWD}/.. sc.vala --pkg r_syscall --pkg r_util
valac --vapidir=.. sc.vala --pkg r_syscall --pkg r_util

core:
valac --vapidir=.. core.vala --pkg r_asm --pkg r_anal --pkg r_core --pkg r_cons --pkg r_bp
Expand All @@ -64,19 +66,19 @@ bwdisassemble:
valac --vapidir=.. bwdisassemble.vala --pkg r_core --pkg r_bin -o bwdisassemble

search:
valac --vapidir=${PWD}/.. search.vala --pkg r_search --pkg r_util
valac --vapidir=.. search.vala --pkg r_search --pkg r_util

asm:
valac --vapidir=.. --pkg r_asm asm.vala

bin:
valac --vapidir=${PWD}/.. bin.vala --pkg r_bin --pkg r_util
valac --vapidir=.. bin.vala --pkg r_bin --pkg r_util

hash:
valac --vapidir=${PWD}/.. hash.vala --pkg r_hash
valac --vapidir=.. hash.vala --pkg r_hash

socket:
valac --vapidir=${PWD}/.. socket.vala --pkg r_socket --pkg posix
valac --vapidir=.. socket.vala --pkg r_socket --pkg posix

clean:
-rm -f `ls *.c | grep -v wrap` hash sc *.o *.h core socket asm search bin io rgot reloc asmsearch bwdisassemble
Expand Down
8 changes: 5 additions & 3 deletions vapi/t/code_search.vala
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,15 @@ static void dosearch(string pattern) {
var baddr = c.bin.get_baddr ();
/* Iterate over sections and search in the executable ones */
foreach (var scn in c.bin.get_sections ()) {
if ((scn.srwx & 0x1) == 0)
if ((scn.perm & 1) == 0)
continue;
var from= baddr + scn.rva;
var from = baddr + scn.vaddr;
var to = from + scn.size;
foreach (var hit in c.asm_strsearch (pattern, from, to))
/*
foreach (var hit in c.asm_strsearch (pattern, from, to, 0, 0, 0, 0))
print ("0x%08"+uint64.FORMAT_MODIFIER+"x - %s (%i)\n",
hit.addr, hit.code, hit.len);
*/
}
}

Expand Down

0 comments on commit 7287e07

Please sign in to comment.