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

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
13 2 LLVMFuzzerTestOneInput call site: 00002 nalloc_fail
5 83 mbedtls_gcm_update call site: 00083
2 71 gcm_mult call site: 00071 gcm_mask
2 99 mbedtls_aesni_has_support call site: 00099
2 128 mbedtls_gcm_update_ad call site: 00128 gcm_mult
1 50 mbedtls_cipher_setkey call site: 00050
1 61 mbedtls_cipher_update call site: 00061 mbedtls_gcm_update
1 74 gcm_mask call site: 00074 mbedtls_platform_zeroize
1 77 gcm_mask call site: 00077 gcm_mult
1 93 gcm_gen_table call site: 00093
1 137 mbedtls_gcm_finish call site: 00137 gcm_mult

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 FuzzedDataProvider::remaining_bytes [function] [call site] 00001
1 malloc [function] [call site] 00002
2 nalloc_fail [function] [call site] 00003
3 __sync_fetch_and_add [function] [call site] 00004
3 __sync_fetch_and_sub [function] [call site] 00005
3 nalloc_random_update [function] [call site] 00006
3 nalloc_random_update [function] [call site] 00007
3 nalloc_random_update [function] [call site] 00008
3 nalloc_backtrace_exclude [function] [call site] 00009
4 __sanitizer_print_stack_trace [function] [call site] 00011
3 __sync_fetch_and_sub [function] [call site] 00012
3 __sync_fetch_and_sub [function] [call site] 00013
3 __sync_fetch_and_sub [function] [call site] 00014
2 nalloc_malloc [function] [call site] 00015
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00019
1 FuzzedDataProvider::PickValueInArray [function] [call site] 00020
1 FuzzedDataProvider::ConsumeBytes [function] [call site] 00021
1 FuzzedDataProvider::ConsumeIntegralInRange [function] [call site] 00022
1 FuzzedDataProvider::ConsumeBytes [function] [call site] 00023
1 FuzzedDataProvider::ConsumeIntegralInRange [function] [call site] 00024
1 FuzzedDataProvider::ConsumeIntegralInRange [function] [call site] 00026
1 FuzzedDataProvider::ConsumeBytes [function] [call site] 00027
1 FuzzedDataProvider::ConsumeIntegralInRange [function] [call site] 00028
1 FuzzedDataProvider::ConsumeBytes [function] [call site] 00029
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00032
1 static_cast<mbedtls_cipher_id_t> [function] [call site] 00033
1 FuzzedDataProvider::ConsumeIntegralInRange [function] [call site] 00034
1 FuzzedDataProvider::remaining_bytes [function] [call site] 00036
1 mbedtls_gcm_init [function] [call site] 00037
1 mbedtls_gcm_init [function] [call site] 00040
1 mbedtls_gcm_setkey [function] [call site] 00041
2 GCM_VALIDATE_RET [function] [call site] 00042
2 GCM_VALIDATE_RET [function] [call site] 00043
2 GCM_VALIDATE_RET [function] [call site] 00044
2 mbedtls_cipher_info_from_values [function] [call site] 00045
2 mbedtls_cipher_setkey [function] [call site] 00046
3 CIPHER_VALIDATE_RET [function] [call site] 00047
3 CIPHER_VALIDATE_RET [function] [call site] 00048
3 CIPHER_VALIDATE_RET [function] [call site] 00049
3 mbedtls_cipher_context_t*::cipher_info::base::setkey_enc_func [function] [call site] 00050
3 mbedtls_cipher_context_t*::cipher_info::base::setkey_dec_func [function] [call site] 00051
2 gcm_gen_table [function] [call site] 00052
3 mbedtls_cipher_update [function] [call site] 00054
4 CIPHER_VALIDATE_RET [function] [call site] 00055
4 CIPHER_VALIDATE_RET [function] [call site] 00056
4 CIPHER_VALIDATE_RET [function] [call site] 00057
4 CIPHER_VALIDATE_RET [function] [call site] 00058
4 mbedtls_cipher_get_block_size [function] [call site] 00059
5 MBEDTLS_INTERNAL_VALIDATE_RET [function] [call site] 00060
4 mbedtls_cipher_context_t*::cipher_info::base::ecb_func [function] [call site] 00061
4 mbedtls_gcm_update [function] [call site] 00062
5 GCM_VALIDATE_RET [function] [call site] 00063
5 GCM_VALIDATE_RET [function] [call site] 00064
5 GCM_VALIDATE_RET [function] [call site] 00065
5 GCM_VALIDATE_RET [function] [call site] 00066
5 gcm_mult [function] [call site] 00067
6 MBEDTLS_PUT_UINT64_BE [function] [call site] 00068
6 MBEDTLS_PUT_UINT64_BE [function] [call site] 00069
6 mbedtls_aesni_gcm_mult [function] [call site] 00070
6 MBEDTLS_PUT_UINT64_BE [function] [call site] 00071
6 MBEDTLS_PUT_UINT64_BE [function] [call site] 00072
5 gcm_mask [function] [call site] 00073
6 mbedtls_cipher_update [function] [call site] 00074
6 mbedtls_platform_zeroize [function] [call site] 00075
6 xorbytes3d [function] [call site] 00076
6 xorbytes3e [function] [call site] 00077
4 mbedtls_cipher_context_t*::cipher_info::base::cbc_func [function] [call site] 00086
4 mbedtls_cipher_context_t*::cipher_info::base::cbc_func [function] [call site] 00088
3 MBEDTLS_GET_UINT32_BE [function] [call site] 00089
3 MBEDTLS_GET_UINT32_BE [function] [call site] 00090
3 MBEDTLS_GET_UINT32_BE [function] [call site] 00091
3 MBEDTLS_GET_UINT32_BE [function] [call site] 00092
1 std::vector::data [function] [call site] 00102
1 std::vector::size [function] [call site] 00103
1 mbedtls_gcm_setkey [function] [call site] 00104
1 std::vector::data [function] [call site] 00105
1 std::vector::size [function] [call site] 00106
1 mbedtls_gcm_crypt_and_tag [function] [call site] 00107
2 GCM_VALIDATE_RET [function] [call site] 00108
2 GCM_VALIDATE_RET [function] [call site] 00109
2 GCM_VALIDATE_RET [function] [call site] 00110
2 GCM_VALIDATE_RET [function] [call site] 00111
2 GCM_VALIDATE_RET [function] [call site] 00112
2 GCM_VALIDATE_RET [function] [call site] 00113
2 mbedtls_gcm_starts [function] [call site] 00114
3 GCM_VALIDATE_RET [function] [call site] 00115
3 GCM_VALIDATE_RET [function] [call site] 00116
3 MBEDTLS_PUT_UINT64_BE [function] [call site] 00121
3 mbedtls_cipher_update [function] [call site] 00126
2 mbedtls_gcm_update_ad [function] [call site] 00127
2 mbedtls_gcm_update [function] [call site] 00134
2 mbedtls_gcm_finish [function] [call site] 00135
3 GCM_VALIDATE_RET [function] [call site] 00136
3 GCM_VALIDATE_RET [function] [call site] 00137
3 MBEDTLS_PUT_UINT64_BE [function] [call site] 00141
3 MBEDTLS_PUT_UINT64_BE [function] [call site] 00142
1 std::vector::size [function] [call site] 00146
1 std::vector::data [function] [call site] 00147
1 std::vector::size [function] [call site] 00148
1 std::vector::data [function] [call site] 00149
1 std::vector::size [function] [call site] 00150
1 std::vector::data [function] [call site] 00151
1 mbedtls_gcm_auth_decrypt [function] [call site] 00152
2 GCM_VALIDATE_RET [function] [call site] 00153
2 GCM_VALIDATE_RET [function] [call site] 00154
2 GCM_VALIDATE_RET [function] [call site] 00155
2 GCM_VALIDATE_RET [function] [call site] 00156
2 GCM_VALIDATE_RET [function] [call site] 00157
2 GCM_VALIDATE_RET [function] [call site] 00158
2 mbedtls_gcm_crypt_and_tag [function] [call site] 00159
2 mbedtls_platform_zeroize [function] [call site] 00160
1 std::vector::size [function] [call site] 00161
1 std::vector::data [function] [call site] 00162
1 std::vector::size [function] [call site] 00163
1 std::vector::data [function] [call site] 00164
1 std::vector::size [function] [call site] 00165
1 std::vector::data [function] [call site] 00168
1 std::vector::size [function] [call site] 00169
1 mbedtls_gcm_free [function] [call site] 00171
1 mbedtls_gcm_free [function] [call site] 00172