Fuzz introspector: git/oss-fuzz/fuzz-cmd-version.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
90209 103443 22 :

['run_parallel_checkout', 'setup_collided_checkout_detection', 'should_update_submodules', 'remove_scheduled_dirs', 'BUG_fl', 'finish_delayed_checkout', 'unlink_entry', 'must_checkout', 'git_attr_set_direction', 'stop_progress.51294', 'load_gitmodules_file', 'init_parallel_checkout', 'pc_queue_size', 'enable_delayed_checkout', 'invalidate_lstat_cache', 'prefetch_cache_entries', 'get_parallel_checkout_configs', 'checkout_entry.51272', 'report_collided_checkout', 'display_progress', 'repo_has_promisor_remote', 'get_progress']

90667 104627 check_updates call site: 00000 /src/git/unpack-trees.c:439
83907 88764 18 :

['strbuf_addf', 'trace2_region_leave_fl', 'fsm_settings__get_hook_path', 'trace2_data_intmax_fl', 'strbuf_release', 'trace2_region_enter_fl', 'fsmonitor_refresh_callback', 'strbuf_addstr.28473', 'strbuf_detach', 'fsmonitor_hook_version', 'free', 'fsmonitor_ipc__send_query', 'trace_performance_fl', 'getnanotime', 'trace_pass_fl.28450', 'trace_printf_key_fl', 'warning', 'query_fsmonitor_hook']

83907 88764 refresh_fsmonitor call site: 00000 /src/git/fsmonitor.c:526
48997 62846 14 :

['find_short_object_filename', 'oid_array_for_each', 'advise', '_.34741', 'const_error.34770', 'oid_array_clear', 'strbuf_release', 'error', 'BUG_fl', 'finish_object_disambiguation', 'reprepare_packed_git', 'find_short_packed_object', 'repo_for_each_abbrev', 'sort_ambiguous_oid_array']

48997 62846 get_short_oid call site: 00000 /src/git/object-name.c:563
40757 56278 3 :

['do_diff_combined', 'do_remerge_diff', 'show_log']

40757 101411 log_tree_diff call site: 00000 /src/git/log-tree.c:1095
37619 40662 17 :

['filter_string_list', 'longest_ancestor_length', 'ensure_valid_ownership', 'strbuf_setlen.46097', 'git_is_dir_sep.46170', 'string_list_clear', 'xstrdup', 'string_list_split', 'read_gitfile_gently', 'trace2_data_string_fl', 'git_env_bool', 'get_allowed_bare_repo', 'free', 'get_device_or_die', 'strbuf_addch.46103', 'is_implicit_bare_repo', 'is_git_directory']

37619 40662 setup_git_directory_gently_1 call site: 00000 /src/git/setup.c:1442
36869 61652 13 :

['strlen', 'oidcpy.34760', 'refs_head_ref', 'get_main_ref_store', 'diagnose_invalid_index_path', 'free_commit_list', 'memcmp', 'index_name_pos', 'commit_list_sort_by_date', 'repo_read_index', 'refs_for_each_ref', 'reject_tree_in_index', 'get_oid_oneline']

37484 62681 get_oid_with_context_1 call site: 00000 /src/git/object-name.c:2024
36811 49160 9 :

['get_tree_entry_follow_symlinks', 'die', 'resolve_relative_path', '_.34741', 'free', 'get_oid_1', 'get_tree_entry', 'xstrdup', 'diagnose_invalid_oid_path']

36811 49160 get_oid_with_context_1 call site: 00000 /src/git/object-name.c:2096
36422 60856 11 :

['find_cache_entry', 'mark_ce_used', 'mark_ce_used_same_name', 'cache_tree_matches_traversal', 'add_same_unmerged', 'is_sparse_directory_entry', 'compare_entry', 'next_cache_entry', 'traverse_trees_recursive', 'unpack_index_entry', 'unpack_single_entry']

36422 61359 unpack_callback call site: 00000 /src/git/unpack-trees.c:1526
30266 30266 2 :

['show_signature', 'show_mergetag']

85697 113822 show_log call site: 00000 /src/git/log-tree.c:824
27075 64589 26 :

['strerror', 'git_bswap32.39661', 'die', 'trace2_data_intmax_fl', 'pthread_create', 'online_cpus', 'ensure_correct_sparsity', 'pthread_join', 'load_index_extensions', 'repo_config_get_index_threads', 'read_ieot_extension', 'load_all_cache_entries', 'xmmap_gently', 'read_eoie_extension', 'prepare_repo_settings', 'fstat64', 'mmap_os_err', 'load_cache_entries_threaded', 'close', 'free', 'xcalloc', 'ensure_full_index', 'oidread.39706', 'munmap', 'xsize_t.39672', 'verify_hdr']

27915 65429 do_read_index call site: 00000 /src/git/read-cache.c:2230
26077 26077 9 :

['get_merge_parent', 'strcmp', 'xfopen', 'reduce_heads_replace', 'die_errno', 'fclose', 'stat64', 'strbuf_getline_lf', 'commit_list_append']

53895 199484 cmd_commit call site: 00000 /src/git/builtin/commit.c:1768
24516 24516 1 :

['copy_or_rename_branch']

25758 25758 cmd_branch call site: 00000 /src/git/builtin/branch.c:912

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 cmd_version [function] [call site] 00001
2 parse_options [function] [call site] 00002
3 git_env_bool [function] [call site] 00003
4 getenv [call site] 00004
4 git_parse_maybe_bool [function] [call site] 00005
5 git_parse_maybe_bool_text [function] [call site] 00006
6 strcasecmp [call site] 00007
6 strcasecmp [call site] 00008
6 strcasecmp [call site] 00009
6 strcasecmp [call site] 00010
6 strcasecmp [call site] 00011
6 strcasecmp [call site] 00012
5 git_parse_int [function] [call site] 00013
6 git_parse_signed [function] [call site] 00014
7 BUG_fl [function] [call site] 00015
8 BUG_vfl [function] [call site] 00016
9 BUG_vfl_common [function] [call site] 00017
10 snprintf [call site] 00018
10 vreportf [function] [call site] 00019
11 strlen [call site] 00020
11 fprintf [call site] 00021
11 abort [call site] 00022
11 vsnprintf [call site] 00023
11 _ [function] [call site] 00024
12 gettext [call site] 00025
11 fprintf [call site] 00026
11 fflush [call site] 00027
11 write_in_full [function] [call site] 00028
12 xwrite [function] [call site] 00029
13 write [call site] 00030
13 __errno_location [call site] 00031
13 __errno_location [call site] 00032
13 handle_nonblock [function] [call site] 00033
14 poll [call site] 00034
12 __errno_location [call site] 00035
9 abort [call site] 00036
9 trace2_cmd_error_va_fl [function] [call site] 00037
10 tr2_dst_trace_want [function] [call site] 00038
11 tr2_dst_get_trace_fd [function] [call site] 00039
12 tr2_sysenv_get [function] [call site] 00040
13 getenv [call site] 00042
13 xstrdup [function] [call site] 00043
14 strdup [call site] 00044
14 die [function] [call site] 00045
15 fputs [call site] 00046
15 common_exit [function] [call site] 00047
16 check_bug_if_BUG [function] [call site] 00048
16 trace2_cmd_exit_fl [function] [call site] 00050
17 trace2_collect_process_info [function] [call site] 00051
18 trace2_is_enabled [function] [call site] 00052
18 push_ancestry_name [function] [call site] 00053
19 stat_parent_pid [function] [call site] 00054
20 strbuf_addf [function] [call site] 00055
21 strbuf_vaddf [function] [call site] 00056
22 strbuf_avail [function] [call site] 00057
22 strbuf_grow [function] [call site] 00058
23 xrealloc [function] [call site] 00063
24 xmalloc [function] [call site] 00064
25 do_xmalloc [function] [call site] 00065
26 memory_limit_check [function] [call site] 00066
27 git_env_ulong [function] [call site] 00067
28 getenv [call site] 00068
28 git_parse_ulong [function] [call site] 00069
29 git_parse_unsigned [function] [call site] 00070
30 strchr [call site] 00071
30 __errno_location [call site] 00072
30 __errno_location [call site] 00073
30 strtoumax [call site] 00074
30 __errno_location [call site] 00075
30 __errno_location [call site] 00076
30 get_unit_factor [function] [call site] 00077
31 strcasecmp [call site] 00078
31 strcasecmp [call site] 00079
31 strcasecmp [call site] 00080
30 __errno_location [call site] 00081
30 __errno_location [call site] 00082
30 __errno_location [call site] 00083
27 const_error [function] [call site] 00087
26 const_error [function] [call site] 00091
24 memory_limit_check [function] [call site] 00092
24 realloc [call site] 00093
22 vsnprintf [call site] 00095
22 strbuf_avail [function] [call site] 00098
22 strbuf_grow [function] [call site] 00099
22 vsnprintf [call site] 00100
22 strbuf_avail [function] [call site] 00101
22 strbuf_setlen [function] [call site] 00103
23 __assert_fail [call site] 00105
20 git_fopen [function] [call site] 00106
21 fopen64 [call site] 00107
21 fileno [call site] 00108
21 fclose [call site] 00109
21 fclose [call site] 00110
21 __errno_location [call site] 00111
20 strbuf_fread [function] [call site] 00112
21 strbuf_grow [function] [call site] 00113
21 fread [call site] 00114
21 strbuf_setlen [function] [call site] 00115
21 strbuf_release [function] [call site] 00116
22 strbuf_init [function] [call site] 00117
23 strbuf_grow [function] [call site] 00118
20 parse_proc_stat [function] [call site] 00119
21 strchr [call site] 00120
21 strrchr [call site] 00121
21 strtol [call site] 00122
21 strbuf_add [function] [call site] 00123
22 strbuf_grow [function] [call site] 00124
22 strbuf_setlen [function] [call site] 00125
20 fclose [call site] 00126
20 strbuf_release [function] [call site] 00127
20 strbuf_release [function] [call site] 00128
19 strvec_push [function] [call site] 00129
20 strvec_push_nodup [function] [call site] 00131
19 push_ancestry_name [function] [call site] 00134
20 strbuf_release [function] [call site] 00135
18 trace2_cmd_ancestry_fl [function] [call site] 00136
19 tr2_dst_trace_want [function] [call site] 00137
18 strvec_clear [function] [call site] 00138
19 strvec_init [function] [call site] 00139
17 getnanotime [function] [call site] 00140
18 highres_nanos [function] [call site] 00141
19 clock_gettime [call site] 00142
18 gettimeofday_nanos [function] [call site] 00143
19 gettimeofday [call site] 00144
18 gettimeofday_nanos [function] [call site] 00145
18 highres_nanos [function] [call site] 00146
17 tr2tls_absolute_elapsed [function] [call site] 00147
17 tr2_dst_trace_want [function] [call site] 00148
12 strcmp [call site] 00149
12 strcasecmp [call site] 00150
12 strcmp [call site] 00151
12 strlen [call site] 00152
12 atoi [call site] 00153
12 is_absolute_path [function] [call site] 00154
13 git_is_dir_sep [function] [call site] 00155
12 is_directory [function] [call site] 00156
12 tr2_dst_try_auto_path [function] [call site] 00157
13 tr2_sid_get [function] [call site] 00158
14 tr2_sid_compute [function] [call site] 00159
15 getenv [call site] 00160
15 strbuf_addstr [function] [call site] 00161
16 strlen [call site] 00162
16 strbuf_add [function] [call site] 00163
15 strbuf_addch [function] [call site] 00164
16 strbuf_avail [function] [call site] 00165
16 strbuf_grow [function] [call site] 00166
15 tr2_sid_append_my_sid_component [function] [call site] 00167
16 getpid [call site] 00168
16 tr2_tbuf_utc_datetime [function] [call site] 00169
17 gmtime_r [call site] 00170
16 strbuf_addstr [function] [call site] 00176
16 strbuf_addch [function] [call site] 00177
16 xgethostname [function] [call site] 00178
17 gethostname [call site] 00179
16 strbuf_add [function] [call site] 00180
16 hash_to_hex_algop_r [function] [call site] 00181
16 strbuf_addch [function] [call site] 00182
16 strbuf_add [function] [call site] 00183
16 strbuf_addf [function] [call site] 00184
15 setenv [call site] 00185
13 strrchr [call site] 00186
13 strbuf_addstr [function] [call site] 00187
13 git_is_dir_sep [function] [call site] 00188
13 strbuf_addch [function] [call site] 00189
13 strbuf_addstr [function] [call site] 00190
13 tr2_dst_too_many_files [function] [call site] 00191
14 tr2_sysenv_get [function] [call site] 00192
14 strbuf_addstr [function] [call site] 00193
14 git_is_dir_sep [function] [call site] 00194
14 strbuf_addbuf [function] [call site] 00195
15 strbuf_grow [function] [call site] 00196
15 strbuf_setlen [function] [call site] 00197
14 strbuf_addstr [function] [call site] 00198
14 opendir [call site] 00199
14 readdir64 [call site] 00200
14 closedir [call site] 00201
14 open64 [call site] 00202
14 strbuf_release [function] [call site] 00203
14 strbuf_release [function] [call site] 00204
13 strbuf_setlen [function] [call site] 00205
13 strbuf_addf [function] [call site] 00206
13 open64 [call site] 00207
13 strbuf_release [function] [call site] 00208
13 tr2_dst_want_warning [function] [call site] 00209
14 tr2_sysenv_get [function] [call site] 00210
13 tr2_sysenv_display_name [function] [call site] 00211
13 tr2_dst_want_warning [function] [call site] 00214
13 tr2_sysenv_display_name [function] [call site] 00215
13 __errno_location [call site] 00216
13 tr2_dst_trace_disable [function] [call site] 00218
14 close [call site] 00219
13 strbuf_release [function] [call site] 00220
13 strbuf_release [function] [call site] 00221
12 tr2_dst_try_path [function] [call site] 00222
13 open64 [call site] 00223
13 tr2_dst_want_warning [function] [call site] 00224
13 tr2_sysenv_display_name [function] [call site] 00225
13 __errno_location [call site] 00226
13 tr2_dst_trace_disable [function] [call site] 00228
12 starts_with [function] [call site] 00229
12 tr2_dst_try_unix_domain_socket [function] [call site] 00230
13 skip_prefix [function] [call site] 00231
13 skip_prefix [function] [call site] 00232
13 skip_prefix [function] [call site] 00233
13 tr2_dst_want_warning [function] [call site] 00234
13 tr2_sysenv_display_name [function] [call site] 00235
13 tr2_dst_trace_disable [function] [call site] 00237
13 is_absolute_path [function] [call site] 00238
13 strlen [call site] 00239
13 tr2_dst_want_warning [function] [call site] 00240
13 tr2_sysenv_display_name [function] [call site] 00241
13 tr2_dst_trace_disable [function] [call site] 00243
13 tr2_dst_try_uds_connect [function] [call site] 00244
14 socket [call site] 00245
14 gitstrlcpy [function] [call site] 00246
15 strlen [call site] 00247
14 connect [call site] 00248
14 close [call site] 00249
14 __errno_location [call site] 00250
13 __errno_location [call site] 00251
13 tr2_dst_try_uds_connect [function] [call site] 00252
13 tr2_dst_want_warning [function] [call site] 00253
13 tr2_sysenv_display_name [function] [call site] 00254
13 __errno_location [call site] 00255
13 tr2_dst_trace_disable [function] [call site] 00257
12 tr2_dst_malformed_warning [function] [call site] 00258
13 tr2_sysenv_display_name [function] [call site] 00259
12 tr2_dst_trace_disable [function] [call site] 00261
9 common_exit [function] [call site] 00262
9 exit [call site] 00263
7 __errno_location [call site] 00264
7 strtoimax [call site] 00265
7 __errno_location [call site] 00266
7 __errno_location [call site] 00267
7 get_unit_factor [function] [call site] 00268
7 __errno_location [call site] 00269
7 __errno_location [call site] 00270
7 __errno_location [call site] 00271
3 parse_options_step [function] [call site] 00322
4 parse_nodash_opt [function] [call site] 00323
5 get_value [function] [call site] 00324
6 do_get_value [function] [call site] 00325
7 optname [function] [call site] 00327
8 strbuf_setlen [function] [call site] 00328
8 strbuf_addf [function] [call site] 00329
8 strbuf_addf [function] [call site] 00330
8 strbuf_addf [function] [call site] 00331
7 const_error [function] [call site] 00334
7 const_error [function] [call site] 00338
7 fix_filename [function] [call site] 00349
8 prefix_filename_except_for_dash [function] [call site] 00350
9 strcmp [call site] 00351
9 prefix_filename [function] [call site] 00353
10 strlen [call site] 00354
10 is_absolute_path [function] [call site] 00355
10 strbuf_add [function] [call site] 00356
10 strbuf_addstr [function] [call site] 00357
10 strbuf_detach [function] [call site] 00358
7 const_error [function] [call site] 00364
7 strtol [call site] 00365
7 const_error [function] [call site] 00369
7 git_parse_ulong [function] [call site] 00371
7 const_error [function] [call site] 00375
6 optnamearg [function] [call site] 00377
6 optnamearg [function] [call site] 00383
6 const_error [function] [call site] 00386
4 parse_subcommand [function] [call site] 00387
5 strcmp [call site] 00388
4 const_error [function] [call site] 00391
4 usage_with_options [function] [call site] 00392
5 usage_with_options_internal [function] [call site] 00393
6 strlen [call site] 00395
6 fprintf [call site] 00398
6 string_list_split [function] [call site] 00400
7 string_list_append [function] [call site] 00402
8 string_list_append_nodup [function] [call site] 00404
7 strchr [call site] 00407
7 string_list_append_nodup [function] [call site] 00409
7 string_list_append [function] [call site] 00410
6 fprintf_ln [function] [call site] 00412
7 vfprintf [call site] 00413
7 putc [call site] 00414
6 fputc [call site] 00415
6 fprintf_ln [function] [call site] 00416
6 fprintf_ln [function] [call site] 00417
6 string_list_clear [function] [call site] 00418
6 fputc [call site] 00419
6 fprintf [call site] 00421
6 fputc [call site] 00422
6 usage_indent [function] [call site] 00423
7 fprintf [call site] 00424
6 fprintf [call site] 00425
6 fprintf [call site] 00426
6 fprintf [call site] 00427
6 skip_prefix [function] [call site] 00428
6 fprintf [call site] 00429
6 fprintf [call site] 00430
6 utf8_fprintf [function] [call site] 00432
7 strbuf_vaddf [function] [call site] 00433
7 fputs [call site] 00434
7 utf8_strwidth [function] [call site] 00435
8 strlen [call site] 00436
8 utf8_strnwidth [function] [call site] 00437
9 display_mode_esc_sequence_len [function] [call site] 00438
9 utf8_width [function] [call site] 00439
10 pick_one_utf8_char [function] [call site] 00440
10 git_wcwidth [function] [call site] 00441
9 cast_size_t_to_int [function] [call site] 00444
7 strbuf_release [function] [call site] 00446
6 usage_argh [function] [call site] 00447
7 strpbrk [call site] 00448
7 utf8_fprintf [function] [call site] 00450
6 usage_padding [function] [call site] 00451
7 fprintf [call site] 00452
7 fprintf [call site] 00453
6 fprintf_ln [function] [call site] 00455
6 strchrnul [call site] 00457
6 usage_padding [function] [call site] 00458
6 fwrite [call site] 00459
6 fputc [call site] 00460
6 find_option_by_long_name [function] [call site] 00461
7 strcmp [call site] 00462
6 usage_indent [function] [call site] 00463
6 fprintf [call site] 00464
6 usage_padding [function] [call site] 00465
6 fprintf_ln [function] [call site] 00467
6 fputc [call site] 00468
6 fputs [call site] 00469
5 common_exit [function] [call site] 00470
5 exit [call site] 00471
4 strcmp [call site] 00473
4 strcmp [call site] 00474
4 show_gitcomp [function] [call site] 00475
5 starts_with [function] [call site] 00476
5 printf [call site] 00477
5 show_negated_gitcomp [function] [call site] 00478
6 skip_prefix [function] [call site] 00479
6 printf [call site] 00480
6 printf [call site] 00481
5 show_negated_gitcomp [function] [call site] 00482
5 fputc [call site] 00483
4 strcmp [call site] 00484
4 show_gitcomp [function] [call site] 00485
4 parse_short_opt [function] [call site] 00486
4 check_typos [function] [call site] 00504
4 parse_short_opt [function] [call site] 00505
4 strcmp [call site] 00508
4 strcmp [call site] 00509
4 usage_with_options_internal [function] [call site] 00510
4 strcmp [call site] 00511
4 parse_long_opt [function] [call site] 00512
5 strchrnul [call site] 00513
5 skip_prefix [function] [call site] 00514
5 skip_prefix [function] [call site] 00515
5 skip_prefix [function] [call site] 00516
5 skip_prefix [function] [call site] 00517
5 get_value [function] [call site] 00518
5 strncmp [call site] 00519
5 register_abbrev [function] [call site] 00520
6 is_alias [function] [call site] 00521
7 has_string [function] [call site] 00522
8 strcmp [call site] 00523
7 has_string [function] [call site] 00524
5 starts_with [function] [call site] 00525
5 register_abbrev [function] [call site] 00526
5 const_error [function] [call site] 00530
5 get_value [function] [call site] 00531
4 usage_with_options_internal [function] [call site] 00533
3 common_exit [function] [call site] 00534
3 exit [call site] 00535
3 common_exit [function] [call site] 00536
3 exit [call site] 00537
3 const_error [function] [call site] 00540
3 usage_with_options [function] [call site] 00541
3 const_error [function] [call site] 00544
3 const_error [function] [call site] 00547
3 const_error [function] [call site] 00550
3 usage_with_options [function] [call site] 00551
3 precompose_argv_prefix [function] [call site] 00552
3 free_preprocessed_options [function] [call site] 00553
3 parse_options_end [function] [call site] 00554
2 get_version_info [function] [call site] 00557
3 strbuf_addf [function] [call site] 00558
3 strbuf_addf [function] [call site] 00559
3 strbuf_addf [function] [call site] 00560
3 strbuf_addstr [function] [call site] 00561
3 strbuf_addf [function] [call site] 00562
3 strbuf_addf [function] [call site] 00563
3 strbuf_addf [function] [call site] 00564
3 fsmonitor_ipc__is_supported [function] [call site] 00565
3 strbuf_addstr [function] [call site] 00566
3 strbuf_addf [function] [call site] 00567
3 strbuf_addf [function] [call site] 00568
3 strbuf_addf [function] [call site] 00569
2 printf [call site] 00570
2 strbuf_release [function] [call site] 00571