Fuzz introspector: fuzz_pcap
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
17 17 2 :

['pcapint_fmt_errmsg_for_errno', '__errno_location']

17 17 pcap_alloc_pcap_t call site: 00000 /src/libpcap/pcap.c:2496
17 17 2 :

['pcapint_fmt_errmsg_for_errno', '__errno_location']

17 17 pcap_fopen_offline_with_tstamp_precision call site: 00031 /src/libpcap/savefile.c:504
17 17 2 :

['pcapint_fmt_errmsg_for_errno', '__errno_location']

17 17 pcap_check_header call site: 00000 /src/libpcap/sf-pcap.c:258
17 17 2 :

['pcapint_fmt_errmsg_for_errno', '__errno_location']

17 17 pcap_next_packet call site: 00000 /src/libpcap/sf-pcap.c:534
17 17 2 :

['pcapint_fmt_errmsg_for_errno', '__errno_location']

17 17 pcap_next_packet call site: 00000 /src/libpcap/sf-pcap.c:688
17 17 2 :

['pcapint_fmt_errmsg_for_errno', '__errno_location']

17 17 pcap_next_packet call site: 00000 /src/libpcap/sf-pcap.c:719
17 17 2 :

['pcapint_fmt_errmsg_for_errno', '__errno_location']

17 17 pcap_next_packet call site: 00000 /src/libpcap/sf-pcap.c:771
17 17 2 :

['pcapint_fmt_errmsg_for_errno', '__errno_location']

17 17 pcap_ng_check_header call site: 00000 /src/libpcap/sf-pcapng.c:820
17 17 2 :

['pcapint_fmt_errmsg_for_errno', '__errno_location']

17 17 pcap_ng_check_header call site: 00000 /src/libpcap/sf-pcapng.c:835
17 17 2 :

['pcapint_fmt_errmsg_for_errno', '__errno_location']

17 17 read_bytes call site: 00000 /src/libpcap/sf-pcapng.c:263
2 2 1 :

['__errno_location']

2 2 bufferToFile call site: 00009 /src/libpcap/build/../testprogs/fuzz/fuzz_pcap.c:21
0 0 None 42 144 pcap_next_packet call site: 00000 /src/libpcap/sf-pcap.c:679

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 fopen [call site] 00001
1 snprintf [call site] 00002
1 mkstemp [call site] 00003
1 close [call site] 00004
1 bufferToFile [function] [call site] 00005
2 remove [call site] 00006
2 __errno_location [call site] 00007
2 __errno_location [call site] 00008
2 fopen [call site] 00009
2 __errno_location [call site] 00010
2 fwrite [call site] 00011
2 fclose [call site] 00012
2 fclose [call site] 00013
1 unlink [call site] 00014
1 pcap_open_offline [function] [call site] 00015
2 pcap_open_offline_with_tstamp_precision [function] [call site] 00016
3 snprintf [call site] 00017
3 snprintf [call site] 00018
3 fopen [call site] 00019
3 __errno_location [call site] 00020
3 pcapint_fmt_errmsg_for_errno [function] [call site] 00021
4 pcapint_vfmt_errmsg_for_errno [function] [call site] 00022
5 vsnprintf [call site] 00023
5 strlen [call site] 00024
5 pcap_strerror [function] [call site] 00025
6 strerror_r [call site] 00026
5 snprintf [call site] 00027
3 pcap_fopen_offline_with_tstamp_precision [function] [call site] 00028
4 snprintf [call site] 00029
4 fread [call site] 00030
4 ferror [call site] 00031
4 __errno_location [call site] 00032
4 pcapint_fmt_errmsg_for_errno [function] [call site] 00033
4 snprintf [call site] 00034
4 snprintf [call site] 00035
4 fileno [call site] 00036
3 fclose [call site] 00037
1 fprintf [call site] 00038
1 unlink [call site] 00039
1 pcap_next_ex [function] [call site] 00040
2 pcapint_offline_read [function] [call site] 00041
3 pcapint_filter [function] [call site] 00042
4 pcapint_filter_with_aux_data [function] [call site] 00043
5 abort [call site] 00044
5 EXTRACT_BE_U_4 [function] [call site] 00045
6 ntohl [call site] 00046
5 EXTRACT_BE_U_2 [function] [call site] 00047
6 ntohs [call site] 00048
5 EXTRACT_BE_U_4 [function] [call site] 00049
5 EXTRACT_BE_U_2 [function] [call site] 00050
1 fprintf [call site] 00051
1 pcap_next_ex [function] [call site] 00052
1 pcap_stats [function] [call site] 00053
1 fprintf [call site] 00054
1 pcap_close [function] [call site] 00055