On backend.c
- Hide 'Runtime returned CL_KERNEL_WORK_GROUP_SIZE ...' with --machine-readable
On test_edge.sh
- Skip attack types other than Straight with hash types with attack exec outside kernel by default
- Override the previous skip with --allow-all-attacks options
- Fix inconsistent error messages
- Add attack exec filter with -A
- Skip output check for hash-types 14000, 14100 and 22000
- Add execution time at the end of tests
- Add errors counter and show a message at the end of tests
Hashcat is evolving, both in its core and in the supported algorithms.
To uncover bugs in the code, I implemented edge case testing to verify the settings defined in the specific algorithm test modules (e.g., m00000.pm), as well as the behavior of the kernels (pure and optimized) in relation to the different attack modes (-a0, -a1, etc.).