Skip to content

Commit 6b55ef9

Browse files
committed
# 1.3.5
+ updated aliases (added args and kwargs)
1 parent 52d9e9b commit 6b55ef9

File tree

4 files changed

+59
-53
lines changed

4 files changed

+59
-53
lines changed

Makefile

+6-5
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,16 @@ test :
1111
source ./venv/bin/activate; \
1212
fi; \
1313
cd test; \
14-
mkdir bin 2> /dev/null; \
14+
mkdir -p bin; \
1515
gcc sysinfo.c -o bin/sysinfo; \
16+
gcc sysinfo.c -static -o bin/sysinfo_stat; \
1617
vagd clean; \
1718
echo STARTING TEST; \
1819
if python ./test.py GDB; then \
19-
echo "successful"; \
20-
else \
21-
echo "test unsuccessful, pls fix"; \
22-
fi;
20+
echo "successful"; \
21+
else \
22+
echo "test unsuccessful, pls fix"; \
23+
fi;
2324

2425
clean:
2526
rm -r build dist src/*.egg-info || true

pyproject.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "vagd"
3-
version = "1.3.4"
3+
version = "1.3.5"
44
authors = [
55
{ name="0x6fe1be2"},
66
]

src/vagd/res/aliases.txt

+19-15
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
1-
linfo = lambda x: log.info(x)
2-
lwarn = lambda x: log.warn(x)
3-
lerror = lambda x: log.error(x)
4-
lprog = lambda x: log.progress(x)
1+
cst = constants
2+
3+
linfo = lambda x, *a: log.info(x, *a)
4+
lwarn = lambda x, *a: log.warn(x, *a)
5+
lerror = lambda x, *a: log.error(x, *a)
6+
lprog = lambda x, *a: log.progress(x, *a)
57

68
byt = lambda x: x if isinstance(x, bytes) else x.encode() if isinstance(x, str) else repr(x).encode()
79
phex = lambda x, y='': print(y + hex(x))
@@ -23,14 +25,16 @@ cto = lambda x: cyc(cfd(x))
2325

2426
t = None
2527
gt = lambda at=None: at if at else t
26-
sl = lambda x, t=None: gt(t).sendline(byt(x))
27-
se = lambda x, t=None: gt(t).send(byt(x))
28-
sla = lambda x, y, t=None: gt(t).sendlineafter(byt(x), byt(y))
29-
sa = lambda x, y, t=None: gt(t).sendafter(byt(x), byt(y))
30-
ra = lambda t=None: gt(t).recvall()
31-
rl = lambda t=None: gt(t).recvline()
32-
rls = lambda t=None: rl(t)[:-1]
33-
re = lambda x, t=None: gt(t).recv(x)
34-
ru = lambda x, t=None: gt(t).recvuntil(byt(x))
35-
it = lambda t=None: gt(t).interactive()
36-
cl = lambda t=None: gt(t).close()
28+
sl = lambda x, t=None, *a, **kw: gt(t).sendline(byt(x), *a, **kw)
29+
se = lambda x, t=None, *a, **kw: gt(t).send(byt(x), *a, **kw)
30+
ss = lambda x, s, t=None, *a, **kw: sl(x, t, *a, **kw) if len(y) < s else se(x, *a, **kw)
31+
sla = lambda x, y, t=None, *a, **kw: gt(t).sendlineafter(byt(x), byt(y), *a, **kw)
32+
sa = lambda x, y, t=None, *a, **kw: gt(t).sendafter(byt(x), byt(y), *a, **kw)
33+
sas = lambda x, y, s, t=None, *a, **kw: sla(x, y, t, *a, **kw) if len(y) < s else sa(x, y, *a, **kw)
34+
ra = lambda t=None, *a, **kw: gt(t).recvall(*a, **kw)
35+
rl = lambda t=None, *a, **kw: gt(t).recvline(*a, **kw)
36+
rls = lambda t=None, *a, **kw: rl(t=t, *a, **kw)[:-1]
37+
re = lambda x, t=None, *a, **kw: gt(t).recv(x, *a, **kw)
38+
ru = lambda x, t=None, *a, **kw: gt(t).recvuntil(byt(x), *a, **kw)
39+
it = lambda t=None, *a, **kw: gt(t).interactive(*a, **kw)
40+
cl = lambda t=None, *a, **kw: gt(t).close(*a, **kw)

test/test.py

+33-32
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
#!/bin/python
1+
#!/bin/env python3
22
import os
33

44
from pwn import *
55
import vagd.virts.pwngd
66
from vagd import Vagd, Qegd, Shgd, Dogd, Logd, wrapper, Box
77

8-
GDB_OFF = 0x555555555000
8+
GDB_OFF = 0x555555554000
99
IP = ''
1010
PORT = 0
1111
BINARY = './bin/sysinfo'
@@ -69,37 +69,38 @@ def virts():
6969
os.system("vagd clean")
7070

7171

72-
if os.path.exists(Dogd.LOCKFILE):
73-
os.remove(Dogd.LOCKFILE)
74-
log.info("Testing Docker for Ubuntu")
75-
vm = Dogd(exe.path + "_stat", image=Box.DOCKER_NOBLE, packages=['cowsay'], tmp=True, ex=True, fast=True)
76-
assert vm.is_new, "vm should be new"
77-
assert vm._ssh.which('cowsay'), "cowsay wasn't installed"
78-
yield vm
79-
vm._ssh.close()
80-
81-
log.info("Testing Docker for Ubuntu restore")
82-
vm = Dogd(exe.path + "_stat", image=Box.DOCKER_NOBLE, tmp=True, ex=True, fast=True)
83-
assert not vm.is_new, "vm shouldn't be new, restored"
84-
yield vm
85-
vm._ssh.close()
86-
87-
os.system("vagd clean")
88-
log.info("Testing Docker for Alpine")
89-
vm = Dogd(exe.path + "_stat", image=Box.DOCKER_ALPINE_316, tmp=True, ex=True, fast=True)
90-
assert vm.is_new, "vm should be new"
91-
yield vm
92-
vm._ssh.close()
93-
94-
log.info("Testing Docker for Alpine restore")
95-
vm = Dogd(exe.path + "_stat", image=Box.DOCKER_ALPINE_316, tmp=True, ex=True, fast=True)
96-
assert not vm.is_new, "vm shouldn't be new, restored"
97-
yield vm
98-
vm._ssh.close()
99-
100-
os.system("vagd clean")
72+
if not args.NODOGD:
73+
if os.path.exists(Dogd.LOCKFILE):
74+
os.remove(Dogd.LOCKFILE)
75+
log.info("Testing Docker for Ubuntu")
76+
vm = Dogd(exe.path + "_stat", image=Box.DOCKER_NOBLE, packages=['cowsay'], tmp=True, ex=True, fast=True)
77+
assert vm.is_new, "vm should be new"
78+
assert vm._ssh.which('cowsay'), "cowsay wasn't installed"
79+
yield vm
80+
vm._ssh.close()
81+
82+
log.info("Testing Docker for Ubuntu restore")
83+
vm = Dogd(exe.path + "_stat", image=Box.DOCKER_NOBLE, tmp=True, ex=True, fast=True)
84+
assert not vm.is_new, "vm shouldn't be new, restored"
85+
yield vm
86+
vm._ssh.close()
87+
88+
os.system("vagd clean")
89+
log.info("Testing Docker for Alpine")
90+
vm = Dogd(exe.path + "_stat", image=Box.DOCKER_ALPINE_316, tmp=True, ex=True, fast=True)
91+
assert vm.is_new, "vm should be new"
92+
yield vm
93+
vm._ssh.close()
94+
95+
log.info("Testing Docker for Alpine restore")
96+
vm = Dogd(exe.path + "_stat", image=Box.DOCKER_ALPINE_316, tmp=True, ex=True, fast=True)
97+
assert not vm.is_new, "vm shouldn't be new, restored"
98+
yield vm
99+
vm._ssh.close()
100+
101+
os.system("vagd clean")
101102
log.info("Testing Qemu")
102-
vm = Qegd(exe.path + "_stat", img=Box.QEMU_NOBLE, tmp=True, packages=['cowsay'], ex=True, fast=True, detach=True)
103+
vm = Qegd(exe.path + "_stat", img=Box.QEMU_NOBLE, tmp=True, packages=['cowsay'], ex=True, fast=True)
103104
assert vm.is_new, "vm should be new"
104105
assert vm._ssh.which('cowsay'), "cowsay wasn't installed"
105106
yield vm

0 commit comments

Comments
 (0)