Fuzz introspector: md4_fuzzer
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
0 0 None 0 0 md4_init(hash_state**) call site: 00000 /src/pycryptodome/src/MD4.c:51
0 0 None 0 0 md4_init(hash_state**) call site: 00000 /src/pycryptodome/src/MD4.c:56
0 0 None 0 0 md4_digest(hash_stateconst*,unsignedchar*) call site: 00000 /src/pycryptodome/src/MD4.c:196

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 md4_init(hash_state**) [function] [call site] 00001
2 calloc [call site] 00002
1 md4_update(hash_state*, unsigned char const*, unsigned long) [function] [call site] 00003
2 __assert_fail [call site] 00004
2 load_u8to32_little(unsigned char const*) [function] [call site] 00005
3 u8to32_little(unsigned int*, unsigned char const*) [function] [call site] 00006
1 md4_digest(hash_state const*, unsigned char*) [function] [call site] 00007
2 md4_update(hash_state*, unsigned char const*, unsigned long) [function] [call site] 00008
2 md4_update(hash_state*, unsigned char const*, unsigned long) [function] [call site] 00009
2 u32to8_little(unsigned char*, unsigned int const*) [function] [call site] 00010
2 u32to8_little(unsigned char*, unsigned int const*) [function] [call site] 00011
2 u32to8_little(unsigned char*, unsigned int const*) [function] [call site] 00012
2 u32to8_little(unsigned char*, unsigned int const*) [function] [call site] 00013
1 md4_destroy(hash_state*) [function] [call site] 00014