Commit 912c59c9484ea364c61bcf067c470c8d7d74bbc2

Nelson Elhage 2018-06-24T06:51:08

while fuzzing, limit # objects read

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
diff --git a/src/indexer.c b/src/indexer.c
index 744a03c..9cb0cc1 100644
--- a/src/indexer.c
+++ b/src/indexer.c
@@ -563,6 +563,11 @@ int git_indexer_append(git_indexer *idx, const void *data, size_t size, git_tran
 			total_objects = (unsigned int)idx->nr_objects;
 		else
 			total_objects = UINT_MAX;
+#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
+		if (total_objects > 4096) {
+			total_objects = 4096;
+		}
+#endif
 
 		idx->pack->idx_cache = git_oidmap_alloc();
 		GITERR_CHECK_ALLOC(idx->pack->idx_cache);