Fuzz introspector: rtp_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
6 6 3 :

['localtime_r', 'strftime', 'time']

6 6 janus_rtp_header_extension_parse_dependency_desc call site: 00048 /src/janus-gateway/src/rtp.c:323
2 2 1 :

['ntohl']

2 2 janus_rtp_header_extension_parse_abs_sent_time call site: 00041 /src/janus-gateway/src/rtp.c:347
0 0 None 0 0 srtp_validate_rtp_header call site: 00027 /src/janus-gateway/fuzzers/rtp_fuzzer.c:27
0 0 None 0 0 janus_rtp_payload call site: 00051 /src/janus-gateway/src/rtp.c:26
0 0 None 0 0 janus_rtp_header_extension_parse_audio_level call site: 00032 /src/janus-gateway/src/rtp.c:221
0 0 None 0 0 janus_rtp_header_extension_parse_audio_level call site: 00032 /src/janus-gateway/src/rtp.c:223
0 0 None 0 0 janus_rtp_header_extension_parse_playout_delay call site: 00036 /src/janus-gateway/src/rtp.c:262
0 0 None 0 0 janus_rtp_header_extension_parse_playout_delay call site: 00036 /src/janus-gateway/src/rtp.c:264
0 0 None 0 0 janus_rtp_header_extension_parse_mid call site: 00026 /src/janus-gateway/src/rtp.c:282
0 0 None 0 0 janus_rtp_header_extension_parse_rid call site: 00010 /src/janus-gateway/src/rtp.c:304
0 0 None 0 0 janus_rtp_header_extension_parse_dependency_desc call site: 00050 /src/janus-gateway/src/rtp.c:327
0 0 None 0 0 janus_rtp_header_extension_parse_abs_sent_time call site: 00041 /src/janus-gateway/src/rtp.c:341

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 janus_is_rtp [function] [call site] 00001
1 janus_rtp_header_extension_parse_rid [function] [call site] 00002
2 janus_rtp_header_extension_find [function] [call site] 00003
3 ntohs [call site] 00004
3 ntohs [call site] 00005
3 ntohl [call site] 00006
3 ntohs [call site] 00007
3 ntohl [call site] 00008
2 time [call site] 00009
2 janus_vprintf [function] [call site] 00010
3 janus_log_getbuf [function] [call site] 00011
4 g_mutex_lock [call site] 00012
4 g_mutex_unlock [call site] 00013
4 g_malloc [call site] 00014
3 janus_get_real_time [function] [call site] 00015
4 clock_gettime [call site] 00016
3 vsnprintf [call site] 00017
3 g_realloc [call site] 00018
3 vsnprintf [call site] 00019
3 g_mutex_lock [call site] 00020
3 g_cond_signal [call site] 00021
3 g_mutex_unlock [call site] 00022
1 janus_rtp_header_extension_parse_mid [function] [call site] 00023
2 janus_rtp_header_extension_find [function] [call site] 00024
2 time [call site] 00025
2 janus_vprintf [function] [call site] 00026
1 srtp_validate_rtp_header [function] [call site] 00027
2 ntohs [call site] 00028
1 janus_rtp_header_extension_parse_audio_level [function] [call site] 00029
2 janus_rtp_header_extension_find [function] [call site] 00030
2 time [call site] 00031
2 janus_vprintf [function] [call site] 00032
1 janus_rtp_header_extension_parse_playout_delay [function] [call site] 00033
2 janus_rtp_header_extension_find [function] [call site] 00034
2 time [call site] 00035
2 janus_vprintf [function] [call site] 00036
1 janus_rtp_header_extension_parse_transport_wide_cc [function] [call site] 00037
2 janus_rtp_header_extension_find [function] [call site] 00038
2 ntohs [call site] 00039
1 janus_rtp_header_extension_parse_abs_sent_time [function] [call site] 00040
2 janus_rtp_header_extension_find [function] [call site] 00041
2 ntohl [call site] 00042
1 janus_rtp_header_extension_parse_video_orientation [function] [call site] 00043
2 janus_rtp_header_extension_find [function] [call site] 00044
2 time [call site] 00045
2 janus_vprintf [function] [call site] 00046
1 janus_rtp_header_extension_parse_dependency_desc [function] [call site] 00047
2 janus_rtp_header_extension_find [function] [call site] 00048
2 time [call site] 00049
2 janus_vprintf [function] [call site] 00050
1 janus_rtp_payload [function] [call site] 00051
2 ntohs [call site] 00052
1 janus_h264_is_keyframe [function] [call site] 00053
2 janus_h264_contains_nal [function] [call site] 00054
3 time [call site] 00055
3 janus_vprintf [function] [call site] 00056
3 ntohs [call site] 00057
3 time [call site] 00058
3 janus_vprintf [function] [call site] 00059
1 janus_vp8_is_keyframe [function] [call site] 00060
2 time [call site] 00061
2 janus_vprintf [function] [call site] 00062
2 time [call site] 00063
2 janus_vprintf [function] [call site] 00064
2 time [call site] 00065
2 janus_vprintf [function] [call site] 00066
2 ntohs [call site] 00067
2 time [call site] 00068
2 janus_vprintf [function] [call site] 00069
2 time [call site] 00070
2 janus_vprintf [function] [call site] 00071
2 time [call site] 00072
2 janus_vprintf [function] [call site] 00073
2 time [call site] 00074
2 janus_vprintf [function] [call site] 00075
2 ntohl [call site] 00076
2 time [call site] 00077
2 janus_vprintf [function] [call site] 00078
2 time [call site] 00079
2 janus_vprintf [function] [call site] 00080
2 time [call site] 00081
2 janus_vprintf [function] [call site] 00082
1 janus_vp8_parse_descriptor [function] [call site] 00083
2 ntohs [call site] 00084
1 janus_vp8_simulcast_descriptor_update [function] [call site] 00085
2 janus_vp8_parse_descriptor [function] [call site] 00086
2 janus_vp8_replace_descriptor [function] [call site] 00087
3 htons [call site] 00088
1 janus_vp9_is_keyframe [function] [call site] 00089
2 ntohs [call site] 00090
2 ntohs [call site] 00091
2 ntohs [call site] 00092
2 time [call site] 00093
2 janus_vprintf [function] [call site] 00094
1 janus_vp9_parse_svc [function] [call site] 00095
2 ntohs [call site] 00096
2 time [call site] 00097
2 janus_vprintf [function] [call site] 00098
2 time [call site] 00099
2 janus_vprintf [function] [call site] 00100
2 time [call site] 00101
2 janus_vprintf [function] [call site] 00102