Fuzz introspector: decode_client_hello_inner
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
150 150 1 :

['X509_VERIFY_PARAM_set1_policies']

463 494 x509_verify_param_copy(X509_VERIFY_PARAM_st*,X509_VERIFY_PARAM_stconst*,int) call site: 00000 /src/boringssl/crypto/x509/x509_vpm.cc:138
148 148 3 :

['vpaes_capable', 'aes_nohw_set_encrypt_key', 'vpaes_set_encrypt_key']

148 148 aes_ctr_set_key call site: 00000 /src/boringssl/crypto/fipsmodule/aes/aes.cc.inc:167
109 131 2 :

['sk_OPENSSL_STRING_deep_copy', 'sk_OPENSSL_STRING_pop_free']

313 341 x509_verify_param_copy(X509_VERIFY_PARAM_st*,X509_VERIFY_PARAM_stconst*,int) call site: 00000 /src/boringssl/crypto/x509/x509_vpm.cc:144
109 109 5 :

['sk_CRYPTO_BUFFER_deep_copy', 'std::__1::unique_ptr ::reset[abi:ne180100](stack_st_CRYPTO_BUFFER*)', 'std::__1::unique_ptr ::operator bool[abi:ne180100]() const', '_ZNSt3__110unique_ptrI17ssl_credential_stN4bssl8internal7DeleterEEC2B8ne180100ILb1EvEEDn', 'std::__1::unique_ptr ::get[abi:ne180100]() const']

109 145 ssl_credential_st::Dup()const call site: 00000 /src/boringssl/ssl/ssl_credential.cc:138
104 104 1 :

['X509_VERIFY_PARAM_set1_email']

204 207 x509_verify_param_copy(X509_VERIFY_PARAM_st*,X509_VERIFY_PARAM_stconst*,int) call site: 00000 /src/boringssl/crypto/x509/x509_vpm.cc:161
100 100 1 :

['X509_VERIFY_PARAM_set1_ip']

100 100 x509_verify_param_copy(X509_VERIFY_PARAM_st*,X509_VERIFY_PARAM_stconst*,int) call site: 00000 /src/boringssl/crypto/x509/x509_vpm.cc:167
83 83 4 :

['std::__1::unique_ptr ::reset[abi:ne180100](char*)', 'std::__1::unique_ptr ::get[abi:ne180100]() const', 'OPENSSL_strdup', 'bool std::__1::operator==[abi:ne180100] (std::__1::unique_ptr const&, decltype(nullptr))']

83 95 SSL_new call site: 00361 /src/boringssl/ssl/ssl_lib.cc:542
31 33 3 :

['sk_void_free', 'CRYPTO_get_ex_data', 'CRYPTO_atomic_load_u32']

31 33 CRYPTO_free_ex_data call site: 00000 /src/boringssl/crypto/ex_data.cc:113
6 6 1 :

['CTR_DRBG_clear']

6 6 BCM_rand_bytes_with_additional_data call site: 00000 /src/boringssl/crypto/fipsmodule/rand/rand.cc.inc:469
4 112 5 :

['std::__1::optional >::operator*[abi:ne180100]() &', 'bssl::Array & std::__1::optional >::emplace[abi:ne180100]<, void>()', 'bssl::Span ::Span , void, bssl::Array >(bssl::Array const&)', 'std::__1::optional >::operator->[abi:ne180100]()', 'bssl::Array ::CopyFrom(bssl::Span )']

87 207 SSL_new call site: 00357 /src/boringssl/ssl/ssl_lib.cc:534
4 62 2 :

['ERR_put_error', 'cbb_on_error(cbb_st*)']

4 62 CBB_flush call site: 00465 /src/boringssl/crypto/bytestring/cbb.cc:258
4 4 1 :

['cbb_on_error(cbb_st*)']

4 4 cbb_add_u(cbb_st*,unsignedlong,unsignedlong) call site: 00000 /src/boringssl/crypto/bytestring/cbb.cc:441

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 __cxa_guard_acquire [call site] 00001
1 TLS_method [function] [call site] 00002
1 SSL_CTX_new [function] [call site] 00003
2 ERR_put_error [function] [call site] 00004
3 err_get_state() [function] [call site] 00005
4 CRYPTO_get_thread_local [function] [call site] 00006
5 CRYPTO_once [function] [call site] 00007
6 pthread_once [call site] 00008
6 abort [call site] 00009
5 thread_local_init() [function] [call site] 00010
6 pthread_key_create [call site] 00011
6 thread_local_destructor(void*) [function] [call site] 00012
7 pthread_mutex_lock [call site] 00013
7 OPENSSL_memcpy(void*, void const*, unsigned long) [function] [call site] 00014
7 pthread_mutex_unlock [call site] 00015
5 pthread_getspecific [call site] 00016
4 OPENSSL_memset(void*, int, unsigned long) [function] [call site] 00017
4 CRYPTO_set_thread_local [function] [call site] 00018
5 CRYPTO_once [function] [call site] 00019
5 thread_local_init() [function] [call site] 00020
5 pthread_getspecific [call site] 00021
5 OPENSSL_memset(void*, int, unsigned long) [function] [call site] 00022
5 pthread_setspecific [call site] 00023
5 pthread_mutex_lock [call site] 00024
5 pthread_mutex_unlock [call site] 00025
4 err_state_free(void*) [function] [call site] 00026
5 err_clear((anonymous namespace)::err_error_st*) [function] [call site] 00027
6 OPENSSL_memset(void*, int, unsigned long) [function] [call site] 00028
3 __errno_location [call site] 00029
3 err_clear((anonymous namespace)::err_error_st*) [function] [call site] 00030
2 std::__1::unique_ptr<ssl_ctx_st, bssl::internal::Deleter> bssl::MakeUnique<ssl_ctx_st, ssl_method_st const*&>(ssl_method_st const*&) [function] [call site] 00031
3 ssl_ctx_st* bssl::New<ssl_ctx_st, ssl_method_st const*&>(ssl_method_st const*&) [function] [call site] 00032
4 OPENSSL_malloc [function] [call site] 00033
5 should_fail_allocation() [function] [call site] 00034
5 __assert_fail [call site] 00035
5 __assert_fail [call site] 00036
5 OPENSSL_memory_alloc [call site] 00037
5 __asan_poison_memory_region(void const*, unsigned long) [function] [call site] 00038
5 ERR_put_error [function] [call site] 00039
4 ssl_ctx_st::ssl_ctx_st(ssl_method_st const*) [function] [call site] 00040
5 bssl::RefCounted<ssl_ctx_st>::RefCounted(bssl::RefCounted<ssl_ctx_st>::CheckSubClass) [function] [call site] 00041
5 bssl::Array<unsigned char>::Array() [function] [call site] 00042
5 bssl::Vector<bssl::CertCompressionAlg>::Vector() [function] [call site] 00043
5 bssl::Array<unsigned short>::Array() [function] [call site] 00044
5 CRYPTO_MUTEX_init [function] [call site] 00045
6 pthread_rwlock_init [call site] 00046
6 abort [call site] 00047
5 CRYPTO_new_ex_data [function] [call site] 00048
5 bssl::Array<unsigned short>::~Array() [function] [call site] 00049
6 bssl::Array<unsigned short>::Reset() [function] [call site] 00050
7 bssl::Array<unsigned short>::Reset(unsigned short*, unsigned long) [function] [call site] 00051
8 OPENSSL_free [function] [call site] 00052
9 OPENSSL_memory_free [call site] 00053
9 __asan_unpoison_memory_region(void const*, unsigned long) [function] [call site] 00054
9 OPENSSL_cleanse [function] [call site] 00055
10 OPENSSL_memset(void*, int, unsigned long) [function] [call site] 00056
6 __clang_call_terminate [call site] 00057
7 __cxa_begin_catch [call site] 00058
5 bssl::Vector<bssl::CertCompressionAlg>::~Vector() [function] [call site] 00059
6 bssl::Vector<bssl::CertCompressionAlg>::clear() [function] [call site] 00060
7 OPENSSL_free [function] [call site] 00061
6 __clang_call_terminate [call site] 00062
5 bssl::Array<unsigned char>::~Array() [function] [call site] 00063
6 bssl::Array<unsigned char>::Reset() [function] [call site] 00064
7 bssl::Array<unsigned char>::Reset(unsigned char*, unsigned long) [function] [call site] 00065
2 std::__1::unique_ptr<bssl::CERT, bssl::internal::Deleter> bssl::MakeUnique<bssl::CERT, bssl::SSL_X509_METHOD const* const&>(bssl::SSL_X509_METHOD const* const&) [function] [call site] 00066
3 bssl::CERT* bssl::New<bssl::CERT, bssl::SSL_X509_METHOD const* const&>(bssl::SSL_X509_METHOD const* const&) [function] [call site] 00067
4 bssl::CERT::CERT(bssl::SSL_X509_METHOD const*) [function] [call site] 00068
5 bssl::Vector<std::__1::unique_ptr<ssl_credential_st, bssl::internal::Deleter> >::Vector() [function] [call site] 00069
5 std::__1::unique_ptr<ssl_credential_st, bssl::internal::Deleter> bssl::MakeUnique<ssl_credential_st, bssl::SSLCredentialType>(bssl::SSLCredentialType&&) [function] [call site] 00070
6 ssl_credential_st* bssl::New<ssl_credential_st, bssl::SSLCredentialType>(bssl::SSLCredentialType&&) [function] [call site] 00071
7 ssl_credential_st::ssl_credential_st(bssl::SSLCredentialType) [function] [call site] 00072
8 bssl::RefCounted<ssl_credential_st>::RefCounted(bssl::RefCounted<ssl_credential_st>::CheckSubClass) [function] [call site] 00073
8 bssl::Array<unsigned short>::Array() [function] [call site] 00074
8 bssl::Array<unsigned char>::Array() [function] [call site] 00075
8 CRYPTO_new_ex_data [function] [call site] 00076
8 bssl::Array<unsigned char>::~Array() [function] [call site] 00077
8 bssl::Array<unsigned short>::~Array() [function] [call site] 00078
5 bssl::InplaceVector<unsigned char, 32ul>::InplaceVector() [function] [call site] 00079
5 bssl::Vector<std::__1::unique_ptr<ssl_credential_st, bssl::internal::Deleter> >::~Vector() [function] [call site] 00080
6 bssl::Vector<std::__1::unique_ptr<ssl_credential_st, bssl::internal::Deleter> >::clear() [function] [call site] 00081
2 lh_SSL_SESSION_new(unsigned int (*)(ssl_session_st const*), int (*)(ssl_session_st const*, ssl_session_st const*)) [function] [call site] 00082
3 OPENSSL_lh_new [function] [call site] 00083
4 OPENSSL_zalloc [function] [call site] 00084
5 OPENSSL_malloc [function] [call site] 00085
5 OPENSSL_memset(void*, int, unsigned long) [function] [call site] 00086
4 OPENSSL_calloc [function] [call site] 00087
5 ERR_put_error [function] [call site] 00088
5 OPENSSL_zalloc [function] [call site] 00089
4 OPENSSL_free [function] [call site] 00090
2 sk_CRYPTO_BUFFER_new_null [function] [call site] 00091
3 OPENSSL_sk_new_null [function] [call site] 00092
4 OPENSSL_sk_new [function] [call site] 00093
5 OPENSSL_zalloc [function] [call site] 00094
5 OPENSSL_calloc [function] [call site] 00095
5 OPENSSL_free [function] [call site] 00096
2 sk_CRYPTO_BUFFER_new_null [function] [call site] 00097
2 bssl::CERT::is_valid() const [function] [call site] 00098
2 SSL_CTX_set_strict_cipher_list [function] [call site] 00099
3 EVP_has_aes_hardware [function] [call site] 00100
4 hwaes_capable [function] [call site] 00101
5 CRYPTO_is_AESNI_capable [function] [call site] 00102
6 OPENSSL_get_ia32cap [function] [call site] 00103
7 OPENSSL_init_cpuid [function] [call site] 00104
8 CRYPTO_once [function] [call site] 00105
8 OPENSSL_cpuid_setup [function] [call site] 00106
9 OPENSSL_cpuid(unsigned int*, unsigned int*, unsigned int*, unsigned int*, unsigned int) [function] [call site] 00107
9 OPENSSL_cpuid(unsigned int*, unsigned int*, unsigned int*, unsigned int*, unsigned int) [function] [call site] 00108
9 OPENSSL_cpuid(unsigned int*, unsigned int*, unsigned int*, unsigned int*, unsigned int) [function] [call site] 00109
9 OPENSSL_xgetbv(unsigned int) [function] [call site] 00110
9 os_supports_avx512(unsigned long) [function] [call site] 00111
9 getenv [call site] 00112
9 OPENSSL_adjust_ia32cap [function] [call site] 00113
10 handle_cpu_env(unsigned int*, char const*, bool) [function] [call site] 00114
11 __errno_location [call site] 00115
11 strtoull [call site] 00116
11 __errno_location [call site] 00117
10 strchr [call site] 00118
10 handle_cpu_env(unsigned int*, char const*, bool) [function] [call site] 00119
4 crypto_gcm_clmul_enabled [function] [call site] 00120
5 CRYPTO_is_PCLMUL_capable [function] [call site] 00121
6 OPENSSL_get_ia32cap [function] [call site] 00122
5 CRYPTO_is_SSSE3_capable [function] [call site] 00123
6 OPENSSL_get_ia32cap [function] [call site] 00124
3 bssl::ssl_create_cipher_list(std::__1::unique_ptr<bssl::SSLCipherPreferenceList, bssl::internal::Deleter>*, bool, char const*, bool) [function] [call site] 00125
4 SSL_get_cipher_by_value [function] [call site] 00126
5 bsearch [call site] 00127
5 ssl_cipher_id_cmp_void(void const*, void const*) [function] [call site] 00128
6 ssl_cipher_id_cmp(ssl_cipher_st const*, ssl_cipher_st const*) [function] [call site] 00129
4 __assert_fail [call site] 00130
4 SSL_get_cipher_by_value [function] [call site] 00131
4 __assert_fail [call site] 00132
4 SSL_get_cipher_by_value [function] [call site] 00133
4 __assert_fail [call site] 00134
4 SSL_get_cipher_by_value [function] [call site] 00135
4 __assert_fail [call site] 00136
4 __assert_fail [call site] 00137
4 strncmp [call site] 00138
4 bssl::ssl_cipher_process_rulestr(char const*, bssl::cipher_order_st**, bssl::cipher_order_st**, bool) [function] [call site] 00139
5 OPENSSL_isalnum [function] [call site] 00140
6 OPENSSL_isalpha [function] [call site] 00141
6 OPENSSL_isdigit [function] [call site] 00142
5 ERR_put_error [function] [call site] 00143
5 __assert_fail [call site] 00144
5 ERR_put_error [function] [call site] 00145
5 bssl::is_cipher_list_separator(char, bool) [function] [call site] 00146
5 bssl::cipher_alias_st::cipher_alias_st() [function] [call site] 00147
5 OPENSSL_isalnum [function] [call site] 00148
5 ERR_put_error [function] [call site] 00149
5 bssl::rule_equals(char const*, char const*, unsigned long) [function] [call site] 00150
6 strncmp [call site] 00151
5 bssl::rule_equals(char const*, char const*, unsigned long) [function] [call site] 00152
5 bssl::rule_equals(char const*, char const*, unsigned long) [function] [call site] 00153
5 ERR_put_error [function] [call site] 00154
5 strncmp [call site] 00155
5 ERR_put_error [function] [call site] 00156
5 bssl::ssl_cipher_strength_sort(bssl::cipher_order_st**, bssl::cipher_order_st**) [function] [call site] 00157
6 SSL_CIPHER_get_bits [function] [call site] 00158
7 __assert_fail [call site] 00159
6 SSL_CIPHER_get_bits [function] [call site] 00160
6 bssl::Array<int>::Array() [function] [call site] 00161
6 bssl::Array<int>::Init(unsigned long) [function] [call site] 00162
7 bssl::Array<int>::InitUninitialized(unsigned long) [function] [call site] 00163
8 bssl::Array<int>::Reset() [function] [call site] 00164
9 bssl::Array<int>::Reset(int*, unsigned long) [function] [call site] 00165
8 ERR_put_error [function] [call site] 00166
8 OPENSSL_malloc [function] [call site] 00167
6 bssl::Array<int>::~Array() [function] [call site] 00168
7 bssl::Array<int>::Reset() [function] [call site] 00169
6 SSL_CIPHER_get_bits [function] [call site] 00170
6 bssl::Array<int>::operator[](unsigned long) [function] [call site] 00171
7 abort [call site] 00172
6 bssl::Array<int>::operator[](unsigned long) [function] [call site] 00173
6 bssl::ssl_cipher_apply_rule(unsigned int, bssl::cipher_alias_st const*, int, int, bool, bssl::cipher_order_st**, bssl::cipher_order_st**) [function] [call site] 00174
7 SSL_CIPHER_get_bits [function] [call site] 00175
7 SSL_CIPHER_get_min_version [function] [call site] 00176
7 bssl::ssl_cipher_is_deprecated(ssl_cipher_st const*) [function] [call site] 00177
7 bssl::ll_append_tail(bssl::cipher_order_st**, bssl::cipher_order_st*, bssl::cipher_order_st**) [function] [call site] 00178
7 bssl::ll_append_tail(bssl::cipher_order_st**, bssl::cipher_order_st*, bssl::cipher_order_st**) [function] [call site] 00179
7 bssl::ll_append_head(bssl::cipher_order_st**, bssl::cipher_order_st*, bssl::cipher_order_st**) [function] [call site] 00180
5 bssl::is_cipher_list_separator(char, bool) [function] [call site] 00181
5 bssl::ssl_cipher_apply_rule(unsigned int, bssl::cipher_alias_st const*, int, int, bool, bssl::cipher_order_st**, bssl::cipher_order_st**) [function] [call site] 00182
5 ERR_put_error [function] [call site] 00183
4 bssl::ssl_cipher_process_rulestr(char const*, bssl::cipher_order_st**, bssl::cipher_order_st**, bool) [function] [call site] 00184
4 sk_SSL_CIPHER_new_null [function] [call site] 00185
5 OPENSSL_sk_new_null [function] [call site] 00186
4 bssl::Array<bool>::Array() [function] [call site] 00187
4 bssl::Array<bool>::InitForOverwrite(unsigned long) [function] [call site] 00188
5 bssl::Array<bool>::InitUninitialized(unsigned long) [function] [call site] 00189
6 bssl::Array<bool>::Reset() [function] [call site] 00190
7 bssl::Array<bool>::Reset(bool*, unsigned long) [function] [call site] 00191
4 sk_SSL_CIPHER_push [function] [call site] 00192
5 OPENSSL_sk_push [function] [call site] 00193
6 OPENSSL_sk_insert [function] [call site] 00194
7 ERR_put_error [function] [call site] 00195
7 OPENSSL_realloc [function] [call site] 00196
8 OPENSSL_malloc [function] [call site] 00197
8 OPENSSL_memory_get_size [call site] 00198
8 __asan_unpoison_memory_region(void const*, unsigned long) [function] [call site] 00199
8 __asan_poison_memory_region(void const*, unsigned long) [function] [call site] 00200
8 OPENSSL_malloc [function] [call site] 00201
8 OPENSSL_free [function] [call site] 00202
7 OPENSSL_memmove(void*, void const*, unsigned long) [function] [call site] 00203
4 bssl::Array<bool>::operator[](unsigned long) [function] [call site] 00204
4 bssl::Array<bool>::Shrink(unsigned long) [function] [call site] 00205
5 abort [call site] 00206
4 std::__1::unique_ptr<bssl::SSLCipherPreferenceList, bssl::internal::Deleter> bssl::MakeUnique<bssl::SSLCipherPreferenceList>() [function] [call site] 00207
5 bssl::SSLCipherPreferenceList* bssl::New<bssl::SSLCipherPreferenceList>() [function] [call site] 00208
6 bssl::SSLCipherPreferenceList::SSLCipherPreferenceList() [function] [call site] 00209
4 bssl::Span<bool const>::Span<bssl::Array<bool>, void, bssl::Array<bool> >(bssl::Array<bool> const&) [function] [call site] 00210
5 bssl::Array<bool>::data() const [function] [call site] 00211
5 bssl::Array<bool>::size() const [function] [call site] 00212
4 bssl::SSLCipherPreferenceList::Init(std::__1::unique_ptr<stack_st_SSL_CIPHER, bssl::internal::Deleter>, bssl::Span<bool const>) [function] [call site] 00213
5 sk_SSL_CIPHER_num [function] [call site] 00214
6 OPENSSL_sk_num [function] [call site] 00215
5 bssl::Span<bool const>::size() const [function] [call site] 00216
5 ERR_put_error [function] [call site] 00217
5 bssl::Array<bool>::Array() [function] [call site] 00218
5 bssl::Array<bool>::CopyFrom(bssl::Span<bool const>) [function] [call site] 00219
6 bssl::Span<bool const>::size() const [function] [call site] 00220
6 bssl::Array<bool>::InitUninitialized(unsigned long) [function] [call site] 00221
6 bssl::Span<bool const>::begin() const [function] [call site] 00222
6 bssl::Span<bool const>::end() const [function] [call site] 00223
5 bssl::Array<bool>::~Array() [function] [call site] 00224
6 bssl::Array<bool>::Reset() [function] [call site] 00225
5 bssl::Array<bool>::Release(bool**, unsigned long*) [function] [call site] 00226
4 sk_SSL_CIPHER_num [function] [call site] 00227
4 ERR_put_error [function] [call site] 00228
4 bssl::Array<bool>::~Array() [function] [call site] 00229
2 SSL_CTX_set_max_proto_version [function] [call site] 00230
3 bssl::set_max_version(bssl::SSL_PROTOCOL_METHOD const*, unsigned short*, unsigned short) [function] [call site] 00231
4 bssl::set_version_bound(bssl::SSL_PROTOCOL_METHOD const*, unsigned short*, unsigned short) [function] [call site] 00232
5 bssl::api_version_to_wire(unsigned short*, unsigned short) [function] [call site] 00233
6 bssl::ssl_protocol_version_from_wire(unsigned short*, unsigned short) [function] [call site] 00234
5 bssl::ssl_method_supports_version(bssl::SSL_PROTOCOL_METHOD const*, unsigned short) [function] [call site] 00235
6 bssl::get_method_versions(bssl::SSL_PROTOCOL_METHOD const*) [function] [call site] 00236
7 bssl::Span<unsigned short const>::Span<3ul>(unsigned short const (&) [3ul]) [function] [call site] 00237
8 bssl::Span<unsigned short const>::Span(unsigned short const*, unsigned long) [function] [call site] 00238
7 bssl::Span<unsigned short const>::Span<4ul>(unsigned short const (&) [4ul]) [function] [call site] 00239
6 bssl::Span<unsigned short const>::begin() const [function] [call site] 00240
6 bssl::Span<unsigned short const>::end() const [function] [call site] 00241
5 ERR_put_error [function] [call site] 00242
2 SSL_CTX_set_min_proto_version [function] [call site] 00243
3 bssl::set_min_version(bssl::SSL_PROTOCOL_METHOD const*, unsigned short*, unsigned short) [function] [call site] 00244
4 bssl::set_version_bound(bssl::SSL_PROTOCOL_METHOD const*, unsigned short*, unsigned short) [function] [call site] 00245
2 ERR_put_error [function] [call site] 00246
1 __cxa_atexit [call site] 00247
1 __cxa_guard_release [call site] 00248
1 __cxa_guard_acquire [call site] 00249
1 SSL_new [function] [call site] 00250
2 ERR_put_error [function] [call site] 00251
2 std::__1::unique_ptr<ssl_st, bssl::internal::Deleter> bssl::MakeUnique<ssl_st, ssl_ctx_st*&>(ssl_ctx_st*&) [function] [call site] 00252
3 ssl_st* bssl::New<ssl_st, ssl_ctx_st*&>(ssl_ctx_st*&) [function] [call site] 00253
4 ssl_st::ssl_st(ssl_ctx_st*) [function] [call site] 00254
5 bssl::UpRef(ssl_ctx_st*) [function] [call site] 00255
6 SSL_CTX_up_ref [function] [call site] 00256
7 bssl::RefCounted<ssl_ctx_st>::UpRefInternal() [function] [call site] 00257
8 CRYPTO_refcount_inc [function] [call site] 00258
9 CRYPTO_atomic_load_u32 [function] [call site] 00259
9 CRYPTO_atomic_compare_exchange_weak_u32 [function] [call site] 00260
5 bssl::UpRef(ssl_ctx_st*) [function] [call site] 00261
5 CRYPTO_new_ex_data [function] [call site] 00262
2 std::__1::unique_ptr<bssl::SSL_CONFIG, bssl::internal::Deleter> bssl::MakeUnique<bssl::SSL_CONFIG, ssl_st*>(ssl_st*&&) [function] [call site] 00263
3 bssl::SSL_CONFIG* bssl::New<bssl::SSL_CONFIG, ssl_st*>(ssl_st*&&) [function] [call site] 00264
4 bssl::SSL_CONFIG::SSL_CONFIG(ssl_st*) [function] [call site] 00265
5 bssl::Array<unsigned short>::Array() [function] [call site] 00266
5 bssl::Array<unsigned char>::Array() [function] [call site] 00267
5 bssl::Vector<bssl::ALPSConfig>::Vector() [function] [call site] 00268
5 __assert_fail [call site] 00269
5 bssl::Array<unsigned short>::~Array() [function] [call site] 00270
5 bssl::Array<unsigned char>::~Array() [function] [call site] 00271
5 bssl::Vector<bssl::ALPSConfig>::~Vector() [function] [call site] 00272
6 bssl::Vector<bssl::ALPSConfig>::clear() [function] [call site] 00273
2 bssl::ssl_cert_dup(bssl::CERT*) [function] [call site] 00274
3 std::__1::unique_ptr<bssl::CERT, bssl::internal::Deleter> bssl::MakeUnique<bssl::CERT, bssl::SSL_X509_METHOD const*&>(bssl::SSL_X509_METHOD const*&) [function] [call site] 00275
4 bssl::CERT* bssl::New<bssl::CERT, bssl::SSL_X509_METHOD const*&>(bssl::SSL_X509_METHOD const*&) [function] [call site] 00276
3 bssl::Vector<std::__1::unique_ptr<ssl_credential_st, bssl::internal::Deleter> >::begin() [function] [call site] 00277
3 bssl::Vector<std::__1::unique_ptr<ssl_credential_st, bssl::internal::Deleter> >::end() [function] [call site] 00278
3 bssl::UpRef(std::__1::unique_ptr<ssl_credential_st, bssl::internal::Deleter> const&) [function] [call site] 00279
4 bssl::UpRef(ssl_credential_st*) [function] [call site] 00280
5 SSL_CREDENTIAL_up_ref [function] [call site] 00281
6 bssl::RefCounted<ssl_credential_st>::UpRefInternal() [function] [call site] 00282
3 bssl::Vector<std::__1::unique_ptr<ssl_credential_st, bssl::internal::Deleter> >::Push(std::__1::unique_ptr<ssl_credential_st, bssl::internal::Deleter>) [function] [call site] 00283
4 bssl::Vector<std::__1::unique_ptr<ssl_credential_st, bssl::internal::Deleter> >::MaybeGrow() [function] [call site] 00284
5 ERR_put_error [function] [call site] 00285
5 ERR_put_error [function] [call site] 00286
5 OPENSSL_malloc [function] [call site] 00287
5 bssl::Vector<std::__1::unique_ptr<ssl_credential_st, bssl::internal::Deleter> >::begin() [function] [call site] 00288
5 bssl::Vector<std::__1::unique_ptr<ssl_credential_st, bssl::internal::Deleter> >::end() [function] [call site] 00289
5 bssl::Vector<std::__1::unique_ptr<ssl_credential_st, bssl::internal::Deleter> >::clear() [function] [call site] 00290
3 ssl_credential_st::Dup() const [function] [call site] 00291
4 __assert_fail [call site] 00292
4 std::__1::unique_ptr<ssl_credential_st, bssl::internal::Deleter> bssl::MakeUnique<ssl_credential_st, bssl::SSLCredentialType const&>(bssl::SSLCredentialType const&) [function] [call site] 00293
5 ssl_credential_st* bssl::New<ssl_credential_st, bssl::SSLCredentialType const&>(bssl::SSLCredentialType const&) [function] [call site] 00294
4 bssl::UpRef(std::__1::unique_ptr<evp_pkey_st, bssl::internal::Deleter> const&) [function] [call site] 00295
5 bssl::UpRef(evp_pkey_st*) [function] [call site] 00296
6 EVP_PKEY_up_ref [function] [call site] 00297
7 CRYPTO_refcount_inc [function] [call site] 00298
4 bssl::UpRef(std::__1::unique_ptr<evp_pkey_st, bssl::internal::Deleter> const&) [function] [call site] 00299
4 bssl::Span<unsigned short const>::Span<bssl::Array<unsigned short>, void, bssl::Array<unsigned short> >(bssl::Array<unsigned short> const&) [function] [call site] 00300
5 bssl::Array<unsigned short>::data() const [function] [call site] 00301
5 bssl::Array<unsigned short>::size() const [function] [call site] 00302
4 bssl::Array<unsigned short>::CopyFrom(bssl::Span<unsigned short const>) [function] [call site] 00303
5 bssl::Span<unsigned short const>::size() const [function] [call site] 00304
5 bssl::Array<unsigned short>::InitUninitialized(unsigned long) [function] [call site] 00305
6 bssl::Array<unsigned short>::Reset() [function] [call site] 00306
5 bssl::Span<unsigned short const>::begin() const [function] [call site] 00307
5 bssl::Span<unsigned short const>::end() const [function] [call site] 00308
4 sk_CRYPTO_BUFFER_deep_copy [function] [call site] 00309
5 OPENSSL_sk_deep_copy [function] [call site] 00310
6 OPENSSL_sk_dup [function] [call site] 00311
7 OPENSSL_zalloc [function] [call site] 00312
7 OPENSSL_memdup [function] [call site] 00313
8 OPENSSL_malloc [function] [call site] 00314
8 OPENSSL_memcpy(void*, void const*, unsigned long) [function] [call site] 00315
7 OPENSSL_sk_free [function] [call site] 00316
8 OPENSSL_free [function] [call site] 00317
8 OPENSSL_free [function] [call site] 00318
6 OPENSSL_sk_free [function] [call site] 00319
5 sk_CRYPTO_BUFFER_call_copy_func [function] [call site] 00320
5 sk_CRYPTO_BUFFER_call_free_func [function] [call site] 00321
4 bssl::UpRef(std::__1::unique_ptr<crypto_buffer_st, bssl::internal::Deleter> const&) [function] [call site] 00322
5 bssl::UpRef(crypto_buffer_st*) [function] [call site] 00323
6 CRYPTO_BUFFER_up_ref [function] [call site] 00324
7 CRYPTO_refcount_inc [function] [call site] 00325
4 bssl::UpRef(std::__1::unique_ptr<crypto_buffer_st, bssl::internal::Deleter> const&) [function] [call site] 00326
4 bssl::UpRef(std::__1::unique_ptr<crypto_buffer_st, bssl::internal::Deleter> const&) [function] [call site] 00327
3 bssl::InplaceVector<unsigned char, 32ul>::operator=(bssl::InplaceVector<unsigned char, 32ul> const&) [function] [call site] 00328
4 bssl::Span<unsigned char const>::Span<bssl::InplaceVector<unsigned char, 32ul>, void, bssl::InplaceVector<unsigned char, 32ul> >(bssl::InplaceVector<unsigned char, 32ul> const&) [function] [call site] 00329
5 bssl::InplaceVector<unsigned char, 32ul>::data() const [function] [call site] 00330
5 bssl::InplaceVector<unsigned char, 32ul>::size() const [function] [call site] 00331
4 bssl::InplaceVector<unsigned char, 32ul>::CopyFrom(bssl::Span<unsigned char const>) [function] [call site] 00332
5 bssl::InplaceVector<unsigned char, 32ul>::TryCopyFrom(bssl::Span<unsigned char const>) [function] [call site] 00333
6 bssl::Span<unsigned char const>::size() const [function] [call site] 00334
6 bssl::InplaceVector<unsigned char, 32ul>::capacity() [function] [call site] 00335
6 bssl::InplaceVector<unsigned char, 32ul>::clear() [function] [call site] 00336
7 bssl::InplaceVector<unsigned char, 32ul>::Shrink(unsigned long) [function] [call site] 00337
8 abort [call site] 00338
8 bssl::InplaceVector<unsigned char, 32ul>::data() [function] [call site] 00339
6 bssl::Span<unsigned char const>::begin() const [function] [call site] 00340
6 bssl::Span<unsigned char const>::end() const [function] [call site] 00341
6 bssl::InplaceVector<unsigned char, 32ul>::data() [function] [call site] 00342
6 bssl::Span<unsigned char const>::size() const [function] [call site] 00343
5 abort [call site] 00344
2 bssl::Span<unsigned short const>::Span<bssl::Array<unsigned short>, void, bssl::Array<unsigned short> >(bssl::Array<unsigned short> const&) [function] [call site] 00345
2 bssl::Array<unsigned short>::CopyFrom(bssl::Span<unsigned short const>) [function] [call site] 00346
2 bssl::Span<unsigned char const>::Span<bssl::Array<unsigned char>, void, bssl::Array<unsigned char> >(bssl::Array<unsigned char> const&) [function] [call site] 00347
3 bssl::Array<unsigned char>::data() const [function] [call site] 00348
3 bssl::Array<unsigned char>::size() const [function] [call site] 00349
2 bssl::Array<unsigned char>::CopyFrom(bssl::Span<unsigned char const>) [function] [call site] 00350
3 bssl::Span<unsigned char const>::size() const [function] [call site] 00351
3 bssl::Array<unsigned char>::InitUninitialized(unsigned long) [function] [call site] 00352
4 bssl::Array<unsigned char>::Reset() [function] [call site] 00353
3 bssl::Span<unsigned char const>::begin() const [function] [call site] 00354
3 bssl::Span<unsigned char const>::end() const [function] [call site] 00355
2 bssl::Span<unsigned short const>::Span<bssl::Array<unsigned short>, void, bssl::Array<unsigned short> >(bssl::Array<unsigned short> const&) [function] [call site] 00356
2 bssl::Array<unsigned short>::CopyFrom(bssl::Span<unsigned short const>) [function] [call site] 00357
2 std::__1::optional<bssl::Array<unsigned char> >::operator*[abi:ne180100]() & [function] [call site] 00358
3 std::__1::__optional_storage_base<bssl::Array<unsigned char>, false>::__get[abi:ne180100]() & [function] [call site] 00359
2 bssl::Span<unsigned char const>::Span<bssl::Array<unsigned char>, void, bssl::Array<unsigned char> >(bssl::Array<unsigned char> const&) [function] [call site] 00360
2 bssl::Array<unsigned char>::CopyFrom(bssl::Span<unsigned char const>) [function] [call site] 00361
2 OPENSSL_strdup [function] [call site] 00362
3 strlen [call site] 00363
3 OPENSSL_memdup [function] [call site] 00364
2 bssl::UpRef(std::__1::unique_ptr<evp_pkey_st, bssl::internal::Deleter> const&) [function] [call site] 00365
1 __cxa_atexit [call site] 00366
1 __cxa_guard_release [call site] 00367
1 bssl::Span<unsigned char const>::Span(unsigned char const*, unsigned long) [function] [call site] 00368
1 cbs_st::cbs_st(bssl::Span<unsigned char const>) [function] [call site] 00369
2 bssl::Span<unsigned char const>::data() const [function] [call site] 00370
2 bssl::Span<unsigned char const>::size() const [function] [call site] 00371
1 CBS_get_u24_length_prefixed [function] [call site] 00372
2 cbs_get_length_prefixed(cbs_st*, cbs_st*, unsigned long) [function] [call site] 00373
3 cbs_get_u(cbs_st*, unsigned long*, unsigned long) [function] [call site] 00374
4 cbs_get(cbs_st*, unsigned char const**, unsigned long) [function] [call site] 00375
3 __assert_fail [call site] 00376
3 CBS_get_bytes [function] [call site] 00377
4 cbs_get(cbs_st*, unsigned char const**, unsigned long) [function] [call site] 00378
1 __cxa_guard_abort [call site] 00380
1 __cxa_guard_abort [call site] 00381
1 bssl::Array<unsigned char>::Array() [function] [call site] 00382
1 cbs_st::operator bssl::Span<unsigned char const>() const [function] [call site] 00383
2 bssl::Span<unsigned char const>::Span(unsigned char const*, unsigned long) [function] [call site] 00384
1 bssl::Array<unsigned char>::CopyFrom(bssl::Span<unsigned char const>) [function] [call site] 00385
1 SSL_parse_client_hello [function] [call site] 00388
2 bssl::Span<unsigned char const>::Span(unsigned char const*, unsigned long) [function] [call site] 00389
2 cbs_st::cbs_st(bssl::Span<unsigned char const>) [function] [call site] 00390
2 bssl::ssl_parse_client_hello_with_trailing_data(ssl_st const*, cbs_st*, ssl_early_callback_ctx*) [function] [call site] 00391
3 OPENSSL_memset(void*, int, unsigned long) [function] [call site] 00392
3 CBS_get_u16 [function] [call site] 00393
4 cbs_get_u(cbs_st*, unsigned long*, unsigned long) [function] [call site] 00394
3 CBS_get_bytes [function] [call site] 00395
3 CBS_get_u8_length_prefixed [function] [call site] 00396
4 cbs_get_length_prefixed(cbs_st*, cbs_st*, unsigned long) [function] [call site] 00397
3 ERR_put_error [function] [call site] 00399
3 SSL_is_dtls [function] [call site] 00404
3 CBS_get_u8_length_prefixed [function] [call site] 00405
3 ERR_put_error [function] [call site] 00406
3 CBS_get_u16_length_prefixed [function] [call site] 00409
4 cbs_get_length_prefixed(cbs_st*, cbs_st*, unsigned long) [function] [call site] 00410
3 CBS_get_u8_length_prefixed [function] [call site] 00412
3 ERR_put_error [function] [call site] 00414
3 CBS_get_u16_length_prefixed [function] [call site] 00420
3 bssl::tls1_check_duplicate_extensions(cbs_st const*) [function] [call site] 00421
4 CBS_get_u16 [function] [call site] 00423
4 CBS_get_u16_length_prefixed [function] [call site] 00424
4 bssl::Array<unsigned short>::Array() [function] [call site] 00425
4 bssl::Array<unsigned short>::InitForOverwrite(unsigned long) [function] [call site] 00426
5 bssl::Array<unsigned short>::InitUninitialized(unsigned long) [function] [call site] 00427
4 bssl::Array<unsigned short>::~Array() [function] [call site] 00428
4 bssl::Array<unsigned short>::size() const [function] [call site] 00429
4 bssl::Array<unsigned short>::operator[](unsigned long) [function] [call site] 00430
4 CBS_get_u16 [function] [call site] 00431
4 CBS_get_u16_length_prefixed [function] [call site] 00432
4 __assert_fail [call site] 00434
4 bssl::Array<unsigned short>::begin() [function] [call site] 00435
4 bssl::Array<unsigned short>::end() [function] [call site] 00436
4 bssl::Array<unsigned short>::operator[](unsigned long) [function] [call site] 00437
3 ERR_put_error [function] [call site] 00438
2 ERR_put_error [function] [call site] 00444
1 bssl::Array<unsigned char>::Array() [function] [call site] 00445
1 bssl::Span<unsigned char const>::Span<bssl::Array<unsigned char>, void, bssl::Array<unsigned char> >(bssl::Array<unsigned char> const&) [function] [call site] 00446
1 bssl::ssl_decode_client_hello_inner(ssl_st*, unsigned char*, bssl::Array<unsigned char>*, bssl::Span<unsigned char const>, ssl_early_callback_ctx const*) [function] [call site] 00447
2 cbs_st::cbs_st(bssl::Span<unsigned char const>) [function] [call site] 00448
2 bssl::ssl_parse_client_hello_with_trailing_data(ssl_st const*, cbs_st*, ssl_early_callback_ctx*) [function] [call site] 00449
2 CBS_get_u8 [function] [call site] 00450
3 cbs_get(cbs_st*, unsigned char const**, unsigned long) [function] [call site] 00451
2 ERR_put_error [function] [call site] 00452
2 bssl::internal::StackAllocated<cbb_st, void, &CBB_zero, &CBB_cleanup>::StackAllocated() [function] [call site] 00453
3 CBB_zero [function] [call site] 00454
4 OPENSSL_memset(void*, int, unsigned long) [function] [call site] 00455
2 bssl::internal::StackAllocated<cbb_st, void, &CBB_zero, &CBB_cleanup>::get() [function] [call site] 00456
2 bssl::ssl_client_hello_write_without_extensions(ssl_early_callback_ctx const*, cbb_st*) [function] [call site] 00457
3 CBB_add_u16 [function] [call site] 00458
4 cbb_add_u(cbb_st*, unsigned long, unsigned long) [function] [call site] 00459
5 CBB_add_space [function] [call site] 00460
6 CBB_flush [function] [call site] 00461
7 cbb_get_base(cbb_st*) [function] [call site] 00462
7 __assert_fail [call site] 00463
7 __assert_fail [call site] 00464
7 CBB_flush [function] [call site] 00465
8 __assert_fail [call site] 00466
8 ERR_put_error [function] [call site] 00467
8 cbb_buffer_add(cbb_buffer_st*, unsigned char**, unsigned long) [function] [call site] 00468
9 cbb_buffer_reserve(cbb_buffer_st*, unsigned char**, unsigned long) [function] [call site] 00469
10 ERR_put_error [function] [call site] 00470
10 ERR_put_error [function] [call site] 00471
10 OPENSSL_realloc [function] [call site] 00472
8 OPENSSL_memmove(void*, void const*, unsigned long) [function] [call site] 00473
8 ERR_put_error [function] [call site] 00474
8 cbb_on_error(cbb_st*) [function] [call site] 00475
9 cbb_get_base(cbb_st*) [function] [call site] 00476
6 cbb_get_base(cbb_st*) [function] [call site] 00477
6 cbb_buffer_add(cbb_buffer_st*, unsigned char**, unsigned long) [function] [call site] 00478
5 cbb_on_error(cbb_st*) [function] [call site] 00479
3 CBB_add_bytes [function] [call site] 00480
4 CBB_add_space [function] [call site] 00481
4 OPENSSL_memcpy(void*, void const*, unsigned long) [function] [call site] 00482
3 CBB_add_u8_length_prefixed [function] [call site] 00483
4 cbb_add_length_prefixed(cbb_st*, cbb_st*, unsigned char) [function] [call site] 00484
5 CBB_flush [function] [call site] 00485
5 cbb_add_child(cbb_st*, cbb_st*, unsigned char, int) [function] [call site] 00486
6 __assert_fail [call site] 00487
6 __assert_fail [call site] 00488
6 cbb_get_base(cbb_st*) [function] [call site] 00489
6 cbb_buffer_add(cbb_buffer_st*, unsigned char**, unsigned long) [function] [call site] 00490
6 OPENSSL_memset(void*, int, unsigned long) [function] [call site] 00491
3 CBB_add_bytes [function] [call site] 00493
3 SSL_is_dtls [function] [call site] 00494
3 CBB_add_u8_length_prefixed [function] [call site] 00495
3 CBB_add_bytes [function] [call site] 00496
3 CBB_add_u16_length_prefixed [function] [call site] 00497
4 cbb_add_length_prefixed(cbb_st*, cbb_st*, unsigned char) [function] [call site] 00498
3 CBB_add_bytes [function] [call site] 00499
3 CBB_add_u8_length_prefixed [function] [call site] 00500
3 CBB_add_bytes [function] [call site] 00501
3 CBB_flush [function] [call site] 00502
2 CBB_add_u16_length_prefixed [function] [call site] 00503
2 ERR_put_error [function] [call site] 00504
2 bssl::internal::StackAllocated<cbb_st, void, &CBB_zero, &CBB_cleanup>::~StackAllocated() [function] [call site] 00505
3 CBB_cleanup [function] [call site] 00506
4 __assert_fail [call site] 00507
4 OPENSSL_free [function] [call site] 00508
3 __clang_call_terminate [call site] 00509
2 bssl::Span<unsigned char const>::Span(unsigned char const*, unsigned long) [function] [call site] 00510
2 bssl::ssl_client_hello_get_extension(ssl_early_callback_ctx const*, cbs_st*, unsigned short) [function] [call site] 00511
3 CBS_get_u16 [function] [call site] 00514
3 CBS_get_u16_length_prefixed [function] [call site] 00515
2 bssl::Span<unsigned char const>::data() const [function] [call site] 00516
2 bssl::Span<unsigned char const>::size() const [function] [call site] 00517
2 CBB_add_bytes [function] [call site] 00518
2 ERR_put_error [function] [call site] 00519
2 bssl::Span<unsigned char const>::data() const [function] [call site] 00521
2 bssl::Span<unsigned char const>::subspan(unsigned long, unsigned long) const [function] [call site] 00522
3 abort [call site] 00523
3 bssl::Span<unsigned char const>::Span(unsigned char const*, unsigned long) [function] [call site] 00524
2 bssl::Span<unsigned char const>::subspan(unsigned long, unsigned long) const [function] [call site] 00526
2 bssl::Span<unsigned char const>::data() const [function] [call site] 00527
2 bssl::Span<unsigned char const>::size() const [function] [call site] 00528
2 CBB_add_bytes [function] [call site] 00529
2 ERR_put_error [function] [call site] 00530
2 CBS_get_u8_length_prefixed [function] [call site] 00531
2 ERR_put_error [function] [call site] 00533
2 CBS_get_u16 [function] [call site] 00536
2 ERR_put_error [function] [call site] 00537
2 ERR_put_error [function] [call site] 00538
2 ERR_put_error [function] [call site] 00540
2 CBS_get_u16 [function] [call site] 00541
2 CBS_get_u16_length_prefixed [function] [call site] 00542
2 ERR_put_error [function] [call site] 00543
2 CBB_add_u16 [function] [call site] 00544
2 CBB_add_u16 [function] [call site] 00546
2 CBB_add_bytes [function] [call site] 00549
2 ERR_put_error [function] [call site] 00550
2 bssl::Span<unsigned char const>::data() const [function] [call site] 00551
2 bssl::Span<unsigned char const>::size() const [function] [call site] 00552
2 CBB_add_bytes [function] [call site] 00553
2 ERR_put_error [function] [call site] 00554
2 CBB_flush [function] [call site] 00555
2 ERR_put_error [function] [call site] 00556
2 CBB_data [function] [call site] 00557
3 __assert_fail [call site] 00558
2 CBB_len [function] [call site] 00559
3 __assert_fail [call site] 00560
3 __assert_fail [call site] 00561
2 bssl::Span<unsigned char const>::Span(unsigned char const*, unsigned long) [function] [call site] 00562
2 bssl::is_valid_client_hello_inner(ssl_st*, unsigned char*, bssl::Span<unsigned char const>) [function] [call site] 00563
3 bssl::Span<unsigned char const>::data() const [function] [call site] 00564
3 bssl::Span<unsigned char const>::size() const [function] [call site] 00565
3 SSL_parse_client_hello [function] [call site] 00566
3 bssl::ssl_client_hello_get_extension(ssl_early_callback_ctx const*, cbs_st*, unsigned short) [function] [call site] 00567
3 bssl::ssl_client_hello_get_extension(ssl_early_callback_ctx const*, cbs_st*, unsigned short) [function] [call site] 00570
3 ERR_put_error [function] [call site] 00571
3 CBS_get_u8_length_prefixed [function] [call site] 00572
3 ERR_put_error [function] [call site] 00575
3 CBS_get_u16 [function] [call site] 00577
3 ERR_put_error [function] [call site] 00578
3 ERR_put_error [function] [call site] 00579
2 bssl::internal::StackAllocated<cbb_st, void, &CBB_zero, &CBB_cleanup>::get() [function] [call site] 00580
2 ERR_put_error [function] [call site] 00581
1 bssl::Array<unsigned char>::~Array() [function] [call site] 00582