Fuzz introspector: fuzz_iolog_legacy
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
26 38 2 :

['sudo_warnx_nodebug_v1', 'sudo_warn_gettext_v1']

26 40 iolog_parse_loginfo_legacy call site: 00048 /src/sudo/lib/iolog/./iolog_legacy.c:132
26 38 2 :

['sudo_warnx_nodebug_v1', 'sudo_warn_gettext_v1']

26 40 iolog_parse_loginfo_legacy call site: 00050 /src/sudo/lib/iolog/./iolog_legacy.c:138
10 10 2 :

['fputs', 'putc']

12 14 warning call site: 00000 /src/sudo/lib/util/./fatal.c:192
5 5 1 :

['sudo_basename_v1']

14 14 initprogname2 call site: 00003 /src/sudo/lib/util/./progname.c:67
2 2 1 :

['strcmp']

9 9 initprogname2 call site: 00004 /src/sudo/lib/util/./progname.c:79
0 0 None 26 40 iolog_parse_loginfo_legacy call site: 00039 /src/sudo/lib/iolog/./iolog_legacy.c:99
0 0 None 26 40 iolog_parse_loginfo_legacy call site: 00042 /src/sudo/lib/iolog/./iolog_legacy.c:110
0 0 None 26 40 iolog_parse_loginfo_legacy call site: 00045 /src/sudo/lib/iolog/./iolog_legacy.c:122
0 0 None 12 16 warning call site: 00000 /src/sudo/lib/util/./fatal.c:189
0 0 None 6 6 sudo_strtonumx call site: 00028 /src/sudo/lib/util/./strtonum.c:56
0 0 None 6 6 sudo_strtonumx call site: 00030 /src/sudo/lib/util/./strtonum.c:111
0 0 None 2 2 sudo_warn_gettext_v1 call site: 00020 /src/sudo/lib/util/./fatal.c:334

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 initprogname [function] [call site] 00001
2 initprogname2 [function] [call site] 00002
3 sudo_getprogname [function] [call site] 00003
3 sudo_basename_v1 [function] [call site] 00004
4 strrchr [call site] 00005
3 strcmp [call site] 00006
3 sudo_setprogname [function] [call site] 00007
4 sudo_basename_v1 [function] [call site] 00008
1 getenv [call site] 00009
1 sudo_warn_set_conversation_v1 [function] [call site] 00010
1 fuzz_conversation [function] [call site] 00011
1 open_data [function] [call site] 00012
2 fmemopen [call site] 00013
1 calloc [call site] 00014
1 iolog_parse_loginfo_legacy [function] [call site] 00015
2 sudo_debug_enter_v1 [function] [call site] 00016
2 getdelim [call site] 00017
2 getdelim [call site] 00018
2 getdelim [call site] 00019
2 sudo_warn_gettext_v1 [function] [call site] 00020
3 dgettext [call site] 00021
2 strcspn [call site] 00022
2 strcspn [call site] 00023
2 strcspn [call site] 00024
2 strchr [call site] 00025
2 sudo_warn_gettext_v1 [function] [call site] 00026
2 sudo_strtonum [function] [call site] 00027
3 sudo_strtonumx [function] [call site] 00028
4 __ctype_b_loc [call site] 00029
4 __ctype_b_loc [call site] 00030
4 __ctype_b_loc [call site] 00031
4 __ctype_b_loc [call site] 00032
4 __errno_location [call site] 00033
4 __errno_location [call site] 00034
4 __errno_location [call site] 00035
3 __errno_location [call site] 00036
2 sudo_warn_gettext_v1 [function] [call site] 00037
2 sudo_warn_gettext_v1 [function] [call site] 00038
2 strndup [call site] 00039
2 sudo_warn_gettext_v1 [function] [call site] 00040
2 sudo_warn_gettext_v1 [function] [call site] 00041
2 strndup [call site] 00042
2 sudo_warn_gettext_v1 [function] [call site] 00043
2 sudo_warn_gettext_v1 [function] [call site] 00044
2 strndup [call site] 00045
2 sudo_warn_gettext_v1 [function] [call site] 00046
2 strchr [call site] 00047
2 strdup [call site] 00048
2 sudo_warn_gettext_v1 [function] [call site] 00049
2 strndup [call site] 00050
2 sudo_warn_gettext_v1 [function] [call site] 00051
2 strchr [call site] 00052
2 sudo_strtonum [function] [call site] 00053
2 sudo_debug_printf2_v1 [function] [call site] 00054
2 sudo_strtonum [function] [call site] 00055
2 sudo_debug_printf2_v1 [function] [call site] 00056
2 sudo_debug_exit_bool_v1 [function] [call site] 00057
1 eventlog_free [function] [call site] 00058
2 sudo_debug_enter_v1 [function] [call site] 00059
2 sudo_debug_exit_v1 [function] [call site] 00060
1 fclose [call site] 00061
1 fflush [call site] 00062