Fuzz introspector: fuzz/date.c
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
389 389 1 :

['finalize_chunk']

389 444 rfc2047_decode call site: 00000 /src/neomutt/email/rfc2047.c:741
69 69 1 :

['address_new']

69 115 address_reset call site: 00000 /src/neomutt/config/address.c:202
55 150 2 :

['cs_inherit_variable', 'cs_subset_create_inheritance']

55 150 cs_subset_create_inheritance call site: 00000 /src/neomutt/config/subset.c:211
19 19 1 :

['mutt_exit']

19 58 buf_addstr_n call site: 00000 /src/neomutt/mutt/buffer.c:113
17 78 2 :

['mutt_ch_charset_lookup', 'mutt_ch_canonical_charset']

31 134 mutt_ch_iconv_open call site: 00000 /src/neomutt/mutt/charset.c:599
14 14 1 :

['imap_auth_is_valid']

14 14 imap_auth_validator call site: 00000 /src/neomutt/imap/config.c:47
14 14 1 :

['pop_auth_is_valid']

14 14 pop_auth_validator call site: 00000 /src/neomutt/pop/config.c:45
14 14 1 :

['smtp_auth_is_valid']

14 14 smtp_auth_validator call site: 00000 /src/neomutt/send/config.c:66
12 12 1 :

['compute_tz']

12 12 mutt_date_make_time call site: 00018 /src/neomutt/mutt/date.c:285
4 4 2 :

['strchr', 'getpwnam']

4 39 mutt_path_tilde call site: 00000 /src/neomutt/mutt/path.c:232
4 4 2 :

['strerror', '__errno_location']

4 4 mutt_file_seek call site: 00000 /src/neomutt/mutt/file.c:715
2 13 2 :

['regerror', 'regex_free']

2 13 regex_new call site: 00000 /src/neomutt/config/regex.c:106

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 mutt_date_parse_date [function] [call site] 00001
2 mutt_date_parse_rfc5322_strict [function] [call site] 00002
3 strlen [call site] 00003
3 eqi4 [function] [call site] 00004
4 make_lowercase_mask [function] [call site] 00005
4 make_lowercase_mask [function] [call site] 00006
4 make_lowercase_mask [function] [call site] 00007
4 make_lowercase_mask [function] [call site] 00008
3 parse_small_uint [function] [call site] 00010
3 mutt_date_check_month [function] [call site] 00011
3 parse_small_uint [function] [call site] 00012
3 __ctype_b_loc [call site] 00013
3 __ctype_b_loc [call site] 00014
3 find_tz [function] [call site] 00015
4 mutt_istrn_equal [function] [call site] 00016
5 strncasecmp [call site] 00017
3 mutt_date_make_time [function] [call site] 00018
4 compute_tz [function] [call site] 00019
5 mutt_date_localtime [function] [call site] 00020
6 localtime_r [call site] 00021
6 mktime [call site] 00022
2 mutt_prex_capture [function] [call site] 00023
3 prex [function] [call site] 00024
4 __assert_fail [call site] 00025
4 __assert_fail [call site] 00026
4 mutt_mem_calloc [function] [call site] 00027
5 calloc [call site] 00028
5 mutt_exit [function] [call site] 00029
6 mutt_endwin [function] [call site] 00030
7 __errno_location [call site] 00031
7 mutt_refresh [function] [call site] 00032
8 wrefresh [call site] 00033
7 endwin [call site] 00034
7 __errno_location [call site] 00035
6 exit [call site] 00036
4 regcomp [call site] 00037
4 __assert_fail [call site] 00038
4 mutt_mem_calloc [function] [call site] 00039
3 regexec [call site] 00040
3 __assert_fail [call site] 00041
2 mutt_regmatch_start [function] [call site] 00042
2 __isoc99_sscanf [call site] 00043
2 mutt_regmatch_start [function] [call site] 00044
2 mutt_date_check_month [function] [call site] 00045
2 mutt_regmatch_start [function] [call site] 00046
2 __isoc99_sscanf [call site] 00047
2 mutt_regmatch_start [function] [call site] 00048
2 __isoc99_sscanf [call site] 00049
2 mutt_regmatch_start [function] [call site] 00050
2 __isoc99_sscanf [call site] 00051
2 mutt_regmatch_start [function] [call site] 00052
2 mutt_regmatch_start [function] [call site] 00053
2 __isoc99_sscanf [call site] 00054
2 mutt_regmatch_start [function] [call site] 00055
2 mutt_regmatch_start [function] [call site] 00056
2 __isoc99_sscanf [call site] 00057
2 mutt_regmatch_start [function] [call site] 00058
2 mutt_regmatch_start [function] [call site] 00059
2 mutt_regmatch_len [function] [call site] 00060
2 mutt_date_make_time [function] [call site] 00062