diff options
author | Edward Thomson <ethomson@edwardthomson.com> | 2022-09-21 05:09:46 -0400 |
---|---|---|
committer | Edward Thomson <ethomson@edwardthomson.com> | 2023-02-12 22:02:00 +0000 |
commit | fe2ee3a018286b04cd0c64f84d437c7317c8f138 (patch) | |
tree | 196a29fc72ef0a27e0277b4d142cc93c28fa4cb7 /fuzzers | |
parent | 6204499242101d0f93cd7e56e259c900828e41e1 (diff) | |
download | libgit2-fe2ee3a018286b04cd0c64f84d437c7317c8f138.tar.gz |
object: lookup sha256 objects
This is much of the plumbing for the object database to support SHA256,
and for objects to be able to parse SHA256 versions of themselves.
Diffstat (limited to 'fuzzers')
-rw-r--r-- | fuzzers/objects_fuzzer.c | 2 | ||||
-rw-r--r-- | fuzzers/packfile_fuzzer.c | 9 |
2 files changed, 9 insertions, 2 deletions
diff --git a/fuzzers/objects_fuzzer.c b/fuzzers/objects_fuzzer.c index 51b4a1ed4..7294e9b35 100644 --- a/fuzzers/objects_fuzzer.c +++ b/fuzzers/objects_fuzzer.c @@ -39,7 +39,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) * to do. */ for (i = 0; i < ARRAY_SIZE(types); i++) { - if (git_object__from_raw(&object, (const char *) data, size, types[i]) < 0) + if (git_object__from_raw(&object, (const char *) data, size, types[i], GIT_OID_SHA1) < 0) continue; git_object_free(object); object = NULL; diff --git a/fuzzers/packfile_fuzzer.c b/fuzzers/packfile_fuzzer.c index 52a813760..aeba9575c 100644 --- a/fuzzers/packfile_fuzzer.c +++ b/fuzzers/packfile_fuzzer.c @@ -67,6 +67,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) git_str path = GIT_STR_INIT; git_oid oid; bool append_hash = false; + int error; if (size == 0) return 0; @@ -82,7 +83,13 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) abort(); } - if (git_indexer_new(&indexer, ".", 0, odb, NULL) < 0) { +#ifdef GIT_EXPERIMENTAL_SHA256 + error = git_indexer_new(&indexer, ".", GIT_OID_SHA1, NULL); +#else + error = git_indexer_new(&indexer, ".", 0, odb, NULL); +#endif + + if (error < 0) { fprintf(stderr, "Failed to create the indexer: %s\n", git_error_last()->message); abort(); |