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
57 367 9 :

['iconv', 'mutt_mem_free', 'strlen', 'mutt_ch_iconv_open', 'mutt_mem_malloc', 'mutt_ch_iconv', 'mutt_ch_chscmp', 'iconv_t_valid.16641', 'mutt_str_adjust']

57 367 mutt_ch_convert_string call site: 00000 /src/neomutt/mutt/charset.c:836
24 24 1 :

['mutt_param_delete']

24 24 mutt_param_set call site: 00000 /src/neomutt/email/parameter.c:115
18 18 1 :

['mutt_exit']

18 76 neomutt_new call site: 00000 /src/neomutt/core/neomutt.c:61
18 18 1 :

['mutt_exit']

18 56 buf_addstr_n call site: 00000 /src/neomutt/mutt/buffer.c:113
18 18 1 :

['mutt_exit']

18 44 buf_alloc call site: 00000 /src/neomutt/mutt/buffer.c:362
17 17 1 :

['imap_auth_is_valid']

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

['smtp_auth_is_valid']

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

['pop_auth_is_valid']

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

['__errno_location', 'strerror']

52 3280 mutt_rfc822_read_header call site: 00000 /src/neomutt/email/parse.c:1178
4 4 2 :

['getpwnam', 'strchr']

4 97 mutt_path_tilde call site: 00000 /src/neomutt/mutt/path.c:235
2 10 3 :

['iconv_t_valid.16641', 'iconv_close', 'mutt_mem_free']

6 14 mutt_ch_iconv_open call site: 00000 /src/neomutt/mutt/charset.c:645
0 276 2 :

['cs_subset_he_native_get', 'mutt_str_equal']

0 276 cc_config_observer call site: 00000 /src/neomutt/core/config_cache.c:57

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
6 exit [call site] 00035
4 regcomp [call site] 00036
4 __assert_fail [call site] 00037
4 mutt_mem_calloc [function] [call site] 00038
3 regexec [call site] 00039
3 __assert_fail [call site] 00040
2 mutt_regmatch_start [function] [call site] 00041
2 __isoc99_sscanf [call site] 00042
2 mutt_regmatch_start [function] [call site] 00043
2 mutt_date_check_month [function] [call site] 00044
2 mutt_regmatch_start [function] [call site] 00045
2 __isoc99_sscanf [call site] 00046
2 mutt_regmatch_start [function] [call site] 00047
2 __isoc99_sscanf [call site] 00048
2 mutt_regmatch_start [function] [call site] 00049
2 __isoc99_sscanf [call site] 00050
2 mutt_regmatch_start [function] [call site] 00051
2 __isoc99_sscanf [call site] 00052
2 mutt_regmatch_start [function] [call site] 00053
2 mutt_regmatch_start [function] [call site] 00054
2 __isoc99_sscanf [call site] 00055
2 mutt_regmatch_start [function] [call site] 00056
2 mutt_regmatch_len [function] [call site] 00057
2 mutt_date_make_time [function] [call site] 00059