fuzz: reorganise the path for existing oss-fuzz fuzzers
In order to provide a better organisation for oss-fuzz fuzzers and to avoid top-level clustters in the git repository when more fuzzers are introduced, move the existing fuzzer-related sources to their own oss-fuzz/ hierarchy. Grouping the fuzzers into their own directory, separate their application on fuzz-testing from the core functionalities of the git code, prvides better and tidier structure the oss-fuzz fuzzing library to manage, locate, build and execute those fuzzers for fuzz-testing purposes in future development. Signed-off-by: Arthur Chan <arthur.chan@adalogics.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
committed by
Junio C Hamano
parent
a0feb8611d
commit
6713bfc70c
3
oss-fuzz/.gitignore
vendored
Normal file
3
oss-fuzz/.gitignore
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
fuzz-commit-graph
|
||||
fuzz-pack-headers
|
||||
fuzz-pack-idx
|
||||
19
oss-fuzz/fuzz-commit-graph.c
Normal file
19
oss-fuzz/fuzz-commit-graph.c
Normal file
@ -0,0 +1,19 @@
|
||||
#include "commit-graph.h"
|
||||
#include "repository.h"
|
||||
|
||||
struct commit_graph *parse_commit_graph(struct repository *r,
|
||||
void *graph_map, size_t graph_size);
|
||||
|
||||
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size);
|
||||
|
||||
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
|
||||
{
|
||||
struct commit_graph *g;
|
||||
|
||||
initialize_the_repository();
|
||||
g = parse_commit_graph(the_repository, (void *)data, size);
|
||||
repo_clear(the_repository);
|
||||
free_commit_graph(g);
|
||||
|
||||
return 0;
|
||||
}
|
||||
14
oss-fuzz/fuzz-pack-headers.c
Normal file
14
oss-fuzz/fuzz-pack-headers.c
Normal file
@ -0,0 +1,14 @@
|
||||
#include "packfile.h"
|
||||
|
||||
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size);
|
||||
|
||||
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
|
||||
{
|
||||
enum object_type type;
|
||||
unsigned long len;
|
||||
|
||||
unpack_object_header_buffer((const unsigned char *)data,
|
||||
(unsigned long)size, &type, &len);
|
||||
|
||||
return 0;
|
||||
}
|
||||
13
oss-fuzz/fuzz-pack-idx.c
Normal file
13
oss-fuzz/fuzz-pack-idx.c
Normal file
@ -0,0 +1,13 @@
|
||||
#include "object-store.h"
|
||||
#include "packfile.h"
|
||||
|
||||
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size);
|
||||
|
||||
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
|
||||
{
|
||||
struct packed_git p;
|
||||
|
||||
load_idx("fuzz-input", GIT_SHA1_RAWSZ, (void *)data, size, &p);
|
||||
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user