From ef403b6687ec5739933f9f215093e1ea5c923666 Mon Sep 17 00:00:00 2001 From: Alice Frosi Date: Wed, 17 May 2023 15:46:57 +0200 Subject: cooker, seitan: simple working example parser: - add OP_BLOCK and OP_RETURN to the parser seitan: - fix op_cmp in seitan, it was jmp when comparison was true Working example: demo.json: [ { "match": [ /* qemu-pr-helper and similar */ { "connect": { "addr": { "family": "unix", "path": "/tmp/test.sock" } } } ], "return": 0 } ] Create gluten and the bpf filter: $ seitan-cooker demo.hjson demo.gluten demo.bpf Launch the seitan eater with the target program: $ seitan-eater -i demo.bpf -- strace -e connect tests-utils/test-syscalls connect Start seitan with gluten: $ seitan -i demo.gluten -p $(pgrep seitan-eater) Seitan mocks the connect syscall and `connect` returns successfully: $ seitan-eater -i demo.bpf -- strace -e connect tests-utils/test-syscalls connect Test syscall: connect connect(4, {sa_family=AF_UNIX, sun_path="/tmp/test.sock"}, 108) = 0 --- operations.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'operations.h') diff --git a/operations.h b/operations.h index 9d017e0..b1d0ac2 100644 --- a/operations.h +++ b/operations.h @@ -21,7 +21,7 @@ if (res == 0) \ (op)++; \ else if (res == -1) \ - return -1; \ + return -1; \ else \ (op) += res; \ } while (0); \ -- cgit v1.2.3