* Add ht benchmarks * Initial implementation * Finalize native per-group lookup support * Lookup SSE2 implementation * Improve hashing * Add support for custom elem_size * Avoid double h2 hashing when reserving slot * Make custom elem_size support conditional * Fix issues with bitwise and default lookup implementations * Implement deletion trick optimization * Track growth_size instead of deleted_slots * Refactor SDB to access ht via API instead of internals * Modify SDB tests which rely on hashtable order * Fix SDB build warnings * Fix bug with finding next power of two * foreach_kv to return a bool result * Change SDB diff order expected by serialize_analysis unit test * Fix bug in the bitwise lookup implementation * Remove second call to rz_core_init() which causes memory leaks * Update some regression tests to accept reordered output * Adapt ht clear to new implementation * Use fini_kv_pair and fix 1 potential leak on malloc failure * Fix cmd/types test after merge * Avoid second call to calsize_key and avoid iter leaks on malloc failure * Improve hash distribution * Extend benchmark suite * Fix bug with string hashing * Branchless write to mirrored ctrl bytes * Simplify string hash and remove potential UB * Move RZ_PREFETCH macro to rz_types.h * Add SSE2 discovery in Meson * Forward SDB string hash function to ht string hash * Try to revert test_cpu_profiles() to avoid relying on a baked SDB file * Revert SDB/CDB hash function change * Fix SDB reference to HT hash function instead of CDB hash * Change calloc to malloc * Avoid storing/checking key_len and key_value if they are ut64 * Improve string hash function * Rename default hash functions * Improve bench code * linter.yml: set clang-path to point to llvm-18
73 lines
1.1 KiB
Text
73 lines
1.1 KiB
Text
NAME=gc - get/set config option
|
|
FILE==
|
|
CMDS=<<EOF
|
|
e asm.arch=x86
|
|
e asm.bits=32
|
|
e asm.os=linux
|
|
gc
|
|
gi exec
|
|
gc
|
|
EOF
|
|
EXPECT=<<EOF
|
|
egg.shellcode :
|
|
egg.encoder :
|
|
egg.padding :
|
|
key :
|
|
cmd :
|
|
suid :
|
|
egg.shellcode : exec
|
|
egg.encoder :
|
|
egg.padding :
|
|
key :
|
|
cmd :
|
|
suid :
|
|
EOF
|
|
RUN
|
|
|
|
NAME=gl - list plugins
|
|
FILE==
|
|
CMDS=<<EOF
|
|
e asm.arch=x86
|
|
e asm.bits=32
|
|
e asm.os=linux
|
|
gl
|
|
EOF
|
|
EXPECT=<<EOF
|
|
enc xor : xor encoder for shellcode
|
|
shc exec : execute cmd=/bin/sh suid=false
|
|
EOF
|
|
RUN
|
|
|
|
NAME=g - compile the shellcode
|
|
FILE==
|
|
CMDS=<<EOF
|
|
e asm.arch=x86
|
|
e asm.bits=32
|
|
e asm.os=linux
|
|
gi exec
|
|
g
|
|
gr
|
|
e asm.bits=64
|
|
gi exec
|
|
g
|
|
EOF
|
|
EXPECT=<<EOF
|
|
31c050682f2f7368682f62696e89e3505389e199b00bcd80
|
|
31c048bbd19d9691d08c97ff48f7db53545f995257545eb03b0f05
|
|
EOF
|
|
RUN
|
|
|
|
NAME=g - compile the shellcode from file
|
|
BROKEN=1
|
|
FILE==
|
|
CMDS=<<EOF
|
|
e asm.arch=x86
|
|
e asm.bits=32
|
|
e asm.os=linux
|
|
g bins/other/rz-gg/simple_cmp.r
|
|
EOF
|
|
EXPECT=<<EOF
|
|
5589e581ec80000000c745086869210ac7450c6e000000c74510000000008d4508898504000000c7450501000000c745060200000055583b45060f8f5a0000006a04546a018b1c248b8c24040000008b942408000000b804000000cd8083c40c6a008b1c24b801000000cd8083c40481c4800000005dc3
|
|
EOF
|
|
RUN
|
|
|