Fuzz introspector: fuzz-rtcp
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
80 112 2 :

['pj_mutex_lock', 'pj_mutex_create_simple']

88 122 pj_thread_create call site: 00000 /src/pjsip/pjlib/build/../src/pj/os_core_unix.c:756
78 78 2 :

['term_set_color', 'term_restore_color']

78 78 pj_log_write call site: 00000 /src/pjsip/pjlib/build/../src/pj/log_writer_stdout.c:48
7 7 2 :

['pj_thread_get_name', 'strlen']

9 46 pj_log call site: 00255 /src/pjsip/pjlib/build/../src/pj/log.c:419
6 6 1 :

['pj_utoa']

17 78 pj_log call site: 00246 /src/pjsip/pjlib/build/../src/pj/log.c:380
6 6 1 :

['__errno_location']

6 6 pj_sem_create call site: 00000 /src/pjsip/pjlib/build/../src/pj/os_core_unix.c:1779
6 6 1 :

['__errno_location']

6 6 pj_sem_wait call site: 00000 /src/pjsip/pjlib/build/../src/pj/os_core_unix.c:1835
6 6 1 :

['__errno_location']

6 6 pj_sem_post call site: 00143 /src/pjsip/pjlib/build/../src/pj/os_core_unix.c:1892
6 6 1 :

['__errno_location']

6 6 pj_sem_destroy call site: 00158 /src/pjsip/pjlib/build/../src/pj/os_core_unix.c:1926
6 6 1 :

['__errno_location']

6 6 pj_gettimeofday call site: 00181 /src/pjsip/pjlib/build/../src/pj/os_time_unix.c:39
6 6 1 :

['__errno_location']

6 6 pj_get_timestamp call site: 00070 /src/pjsip/pjlib/build/../src/pj/os_timestamp_posix.c:288
4 4 1 :

['pj_thread_local_free']

4 4 pj_log_init call site: 00007 /src/pjsip/pjlib/build/../src/pj/log.c:161
4 4 2 :

['pthread_mutex_destroy', 'pthread_mutex_unlock']

4 4 pj_mutex_destroy call site: 00153 /src/pjsip/pjlib/build/../src/pj/os_core_unix.c:1581

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 calloc [call site] 00001
1 pj_init [function] [call site] 00002
2 pj_log_init [function] [call site] 00003
3 pj_thread_local_alloc [function] [call site] 00004
4 __assert_fail [call site] 00005
4 pthread_key_create [call site] 00006
3 pj_thread_local_alloc [function] [call site] 00007
3 pj_thread_local_free [function] [call site] 00008
4 pthread_key_delete [call site] 00009
3 pj_atexit [function] [call site] 00010
3 logging_shutdown [function] [call site] 00011
4 pj_thread_local_free [function] [call site] 00012
4 pj_thread_local_free [function] [call site] 00013
3 pj_log_get_decor [function] [call site] 00014
2 pj_thread_init [function] [call site] 00015
3 pj_thread_local_alloc [function] [call site] 00016
3 pj_thread_register [function] [call site] 00017
4 pj_str [function] [call site] 00018
5 strlen [call site] 00019
4 pj_thread_local_get [function] [call site] 00020
5 pthread_getspecific [call site] 00021
4 pj_log_get_level [function] [call site] 00022
4 pthread_self [call site] 00023
4 pthread_self [call site] 00025
4 pj_strlen [function] [call site] 00026
4 snprintf [call site] 00027
4 snprintf [call site] 00028
4 pj_thread_local_set [function] [call site] 00029
5 pthread_setspecific [call site] 00030
2 init_mutex [function] [call site] 00032
3 pthread_mutexattr_init [call site] 00033
3 pthread_mutexattr_settype [call site] 00034
3 pthread_mutexattr_settype [call site] 00035
3 pthread_mutex_init [call site] 00036
3 pthread_mutexattr_destroy [call site] 00037
3 pthread_mutex_destroy [call site] 00038
3 strchr [call site] 00039
3 snprintf [call site] 00040
3 pj_ansi_strxcpy [function] [call site] 00041
4 __assert_fail [call site] 00042
3 pj_log_get_level [function] [call site] 00043
2 pj_exception_id_alloc [function] [call site] 00044
3 pj_enter_critical_section [function] [call site] 00045
4 pj_mutex_lock [function] [call site] 00046
5 __assert_fail [call site] 00047
5 pj_log_get_level [function] [call site] 00048
5 pthread_mutex_lock [call site] 00049
5 pj_thread_this [function] [call site] 00050
6 pj_thread_local_get [function] [call site] 00051
6 __assert_fail [call site] 00052
5 pj_ansi_strxcpy [function] [call site] 00053
5 pj_log_get_level [function] [call site] 00054
3 pj_leave_critical_section [function] [call site] 00055
4 pj_mutex_unlock [function] [call site] 00056
5 __assert_fail [call site] 00057
5 pj_thread_this [function] [call site] 00058
5 __assert_fail [call site] 00059
5 pj_log_get_level [function] [call site] 00060
5 pthread_mutex_unlock [call site] 00061
3 pj_leave_critical_section [function] [call site] 00062
2 pj_generate_unique_string [function] [call site] 00063
3 pj_enter_critical_section [function] [call site] 00064
3 init_guid_chars [function] [call site] 00065
3 pj_leave_critical_section [function] [call site] 00066
3 pj_rand [function] [call site] 00067
4 rand [call site] 00068
2 pj_get_timestamp [function] [call site] 00069
3 clock_gettime [call site] 00070
3 __errno_location [call site] 00071
2 __assert_fail [call site] 00072
2 pj_log_get_level [function] [call site] 00073
1 pj_caching_pool_init [function] [call site] 00074
2 pj_list_init [function] [call site] 00076
2 pj_list_init [function] [call site] 00077
2 pj_memcpy [function] [call site] 00078
2 pj_pool_create_on_buf [function] [call site] 00079
3 __assert_fail [call site] 00080
3 pool_buf_initialize [function] [call site] 00081
4 pj_atexit [function] [call site] 00082
4 pool_buf_cleanup [function] [call site] 00083
5 pj_thread_local_free [function] [call site] 00084
4 pj_thread_local_alloc [function] [call site] 00085
3 pj_thread_local_set [function] [call site] 00086
3 pj_pool_create_int [function] [call site] 00087
4 __assert_fail [call site] 00088
4 pj_list_init [function] [call site] 00090
4 pj_list_insert_after [function] [call site] 00091
4 pj_pool_init_int [function] [call site] 00092
5 strchr [call site] 00093
5 snprintf [call site] 00094
5 pj_ansi_strxcpy [function] [call site] 00095
4 pj_log_get_level [function] [call site] 00096
2 pj_lock_create_simple_mutex [function] [call site] 00097
3 create_mutex_lock [function] [call site] 00098
4 __assert_fail [call site] 00099
4 pj_pool_alloc [function] [call site] 00100
5 pj_pool_alloc_from_block [function] [call site] 00101
5 pj_pool_allocate_find [function] [call site] 00102
6 pj_pool_alloc_from_block [function] [call site] 00103
6 pj_log_get_level [function] [call site] 00104
6 pj_log_get_level [function] [call site] 00105
6 pj_pool_create_block [function] [call site] 00106
7 __assert_fail [call site] 00107
7 pj_log_get_level [function] [call site] 00108
7 pj_list_insert_after [function] [call site] 00109
7 pj_log_get_level [function] [call site] 00110
6 pj_pool_alloc_from_block [function] [call site] 00111
6 __assert_fail [call site] 00112
4 pj_memcpy [function] [call site] 00113
4 pj_mutex_create [function] [call site] 00114
5 __assert_fail [call site] 00115
5 pj_pool_alloc [function] [call site] 00116
5 __assert_fail [call site] 00117
5 init_mutex [function] [call site] 00118
2 __assert_fail [call site] 00119
1 pj_pool_create [function] [call site] 00120
1 pj_log_set_level [function] [call site] 00121
1 pjmedia_event_mgr_create [function] [call site] 00122
2 pj_pool_zalloc [function] [call site] 00123
3 pj_pool_calloc [function] [call site] 00124
4 pj_pool_alloc [function] [call site] 00125
2 pj_pool_create [function] [call site] 00127
2 pj_list_init [function] [call site] 00128
2 pj_list_init [function] [call site] 00129
2 event_worker_thread [function] [call site] 00130
3 pj_mutex_lock [function] [call site] 00131
3 event_mgr_distribute_events [function] [call site] 00132
4 pj_mutex_lock [function] [call site] 00133
4 pj_mutex_unlock [function] [call site] 00134
4 pj_mutex_unlock [function] [call site] 00135
4 pj_mutex_lock [function] [call site] 00136
3 pj_mutex_unlock [function] [call site] 00137
2 pjmedia_event_mgr_destroy [function] [call site] 00138
3 pjmedia_event_mgr_instance [function] [call site] 00139
3 __assert_fail [call site] 00140
3 pj_sem_post [function] [call site] 00141
4 pj_log_get_level [function] [call site] 00142
4 sem_post [call site] 00143
4 __errno_location [call site] 00144
3 pj_thread_join [function] [call site] 00145
4 pj_thread_this [function] [call site] 00146
4 pj_log_get_level [function] [call site] 00147
4 pthread_join [call site] 00148
3 pj_thread_destroy [function] [call site] 00149
4 pj_mutex_destroy [function] [call site] 00150
5 __assert_fail [call site] 00151
5 pj_log_get_level [function] [call site] 00152
5 pthread_mutex_destroy [call site] 00153
5 pthread_mutex_unlock [call site] 00154
3 pj_sem_destroy [function] [call site] 00155
4 __assert_fail [call site] 00156
4 pj_log_get_level [function] [call site] 00157
4 sem_destroy [call site] 00158
4 __errno_location [call site] 00159
3 pj_mutex_destroy [function] [call site] 00160
3 pj_mutex_destroy [function] [call site] 00161
3 pj_pool_release [function] [call site] 00162
2 pj_mutex_create_recursive [function] [call site] 00163
3 pj_mutex_create [function] [call site] 00164
2 pjmedia_event_mgr_destroy [function] [call site] 00165
2 pj_mutex_create_recursive [function] [call site] 00166
2 pjmedia_event_mgr_destroy [function] [call site] 00167
1 rtcp_parser [function] [call site] 00168
2 pjmedia_rtcp_session_setting_default [function] [call site] 00169
2 pjmedia_rtcp_init2 [function] [call site] 00171
3 pj_htons [function] [call site] 00173
4 htons [call site] 00174
3 pj_htonl [function] [call site] 00175
4 htonl [call site] 00176
3 pj_memcpy [function] [call site] 00177
3 pj_memcpy [function] [call site] 00179
3 pj_gettimeofday [function] [call site] 00180
4 gettimeofday [call site] 00181
4 __errno_location [call site] 00182
3 pj_get_timestamp [function] [call site] 00183
3 pj_get_timestamp_freq [function] [call site] 00184
3 pjmedia_rtcp_init_stat [function] [call site] 00185
4 __assert_fail [call site] 00186
4 pj_math_stat_init [function] [call site] 00188
4 pj_math_stat_init [function] [call site] 00190
4 pj_math_stat_init [function] [call site] 00191
4 pj_math_stat_init [function] [call site] 00192
4 pj_math_stat_init [function] [call site] 00193
4 pj_gettimeofday [function] [call site] 00194
2 pjmedia_rtcp_rx_rtcp [function] [call site] 00195
3 pj_ntohs [function] [call site] 00196
4 ntohs [call site] 00197
3 parse_rtcp_report [function] [call site] 00198
4 pj_ntohl [function] [call site] 00199
5 ntohl [call site] 00200
4 pj_get_timestamp [function] [call site] 00202
4 pj_math_stat_update [function] [call site] 00203
4 pj_math_stat_update [function] [call site] 00205
4 pjmedia_rtcp_get_ntp_time [function] [call site] 00208
5 pj_get_timestamp [function] [call site] 00209
5 __assert_fail [call site] 00210
4 pj_log_get_level [function] [call site] 00211
4 pj_math_stat_update [function] [call site] 00212
4 pj_log_get_level [function] [call site] 00213
4 pj_gettimeofday [function] [call site] 00214
3 parse_rtcp_sdes [function] [call site] 00215
4 pj_memcpy [function] [call site] 00217
4 pj_log_get_level [function] [call site] 00218
3 parse_rtcp_bye [function] [call site] 00219
4 pj_memcpy [function] [call site] 00220
4 pj_log_get_level [function] [call site] 00221
3 parse_rtcp_fb [function] [call site] 00222
4 pj_perror_3 [function] [call site] 00223
5 pj_perror_imp [function] [call site] 00224
6 pj_ansi_strxcpy [function] [call site] 00225
6 pj_strerror [function] [call site] 00226
7 __assert_fail [call site] 00227
7 snprintf [call site] 00228
7 pjlib_error [function] [call site] 00229
8 strlen [call site] 00230
8 pj_memcpy [function] [call site] 00231
8 snprintf [call site] 00232
7 platform_strerror [function] [call site] 00233
8 strerror [call site] 00234
7 snprintf [call site] 00235
6 invoke_log [function] [call site] 00236
7 pj_log [function] [call site] 00237
8 is_logging_suspended [function] [call site] 00238
9 pj_thread_local_get [function] [call site] 00239
8 suspend_logging [function] [call site] 00240
9 pj_thread_local_set [function] [call site] 00241
8 pj_gettimeofday [function] [call site] 00242
8 pj_time_decode [function] [call site] 00243
9 localtime_r [call site] 00244
8 pj_ansi_strxcpy [function] [call site] 00245
8 pj_ansi_strxcpy [function] [call site] 00246
8 pj_utoa_pad [function] [call site] 00249
8 pj_utoa_pad [function] [call site] 00250
8 pj_utoa_pad [function] [call site] 00251
8 pj_utoa_pad [function] [call site] 00252
8 pj_utoa_pad [function] [call site] 00253
8 pj_utoa_pad [function] [call site] 00254
8 strlen [call site] 00255
8 pj_thread_this [function] [call site] 00256
8 strlen [call site] 00257
8 pj_thread_this [function] [call site] 00258
8 pj_log_get_indent [function] [call site] 00259
9 log_get_raw_indent [function] [call site] 00260
10 pj_thread_local_get [function] [call site] 00261
8 pj_memset [function] [call site] 00262
8 vsnprintf [call site] 00263
8 snprintf [call site] 00264
8 resume_logging [function] [call site] 00265
9 pj_thread_local_set [function] [call site] 00266
4 pj_get_timestamp [function] [call site] 00267
4 pjmedia_rtcp_fb_parse_nack [function] [call site] 00268
5 __assert_fail [call site] 00269
5 pj_memcpy [function] [call site] 00271
5 pj_memcpy [function] [call site] 00273
4 pjmedia_event_init [function] [call site] 00275
4 pjmedia_event_publish [function] [call site] 00277
5 __assert_fail [call site] 00278
5 pjmedia_event_mgr_instance [function] [call site] 00279
5 __assert_fail [call site] 00280
5 pj_mutex_lock [function] [call site] 00281
5 event_queue_add_event [function] [call site] 00282
6 pj_log_get_level [function] [call site] 00283
6 pjmedia_fourcc_name [function] [call site] 00284
6 pj_memcpy [function] [call site] 00285
5 pj_sem_post [function] [call site] 00286
5 event_queue_add_event [function] [call site] 00287
5 event_queue_add_event [function] [call site] 00288
5 event_mgr_distribute_events [function] [call site] 00289
5 pj_mutex_unlock [function] [call site] 00290
4 pjmedia_rtcp_fb_parse_pli [function] [call site] 00291
5 __assert_fail [call site] 00292
5 __assert_fail [call site] 00293
4 pjmedia_event_init [function] [call site] 00294
4 pj_strset2 [function] [call site] 00295
5 strlen [call site] 00296
4 pjmedia_event_publish [function] [call site] 00297
1 pjmedia_event_mgr_instance [function] [call site] 00298
1 pj_pool_release [function] [call site] 00299
1 pj_caching_pool_destroy [function] [call site] 00300
2 pj_list_erase [function] [call site] 00301
3 pj_link_node [function] [call site] 00302
3 pj_list_init [function] [call site] 00303
2 pj_pool_destroy_int [function] [call site] 00304
3 pj_log_get_level [function] [call site] 00305
3 reset_pool [function] [call site] 00306
4 pj_list_erase [function] [call site] 00307
2 pj_list_erase [function] [call site] 00308
2 pj_log_get_level [function] [call site] 00309
2 pj_pool_destroy_int [function] [call site] 00310
2 pj_lock_destroy [function] [call site] 00311
3 __assert_fail [call site] 00312
2 pj_lock_create_null_mutex [function] [call site] 00313
3 __assert_fail [call site] 00314