unplugged-system/external/cronet/testing/libfuzzer/expose_fuzzer_run_driver.cc

18 lines
692 B
C++

// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "third_party/libFuzzer/src/FuzzerDefs.h"
// Small shim to expose LLVMFuzzerRunDriver from libfuzzer.
// This is exposed as a visible symbol in the libfuzzer-API-compatible
// fuzzers framework centipede, but for some reason is not exposed in libfuzzer
// itself. Expose it so we can write a fuzzer the same way for each.
extern "C" __attribute__((visibility("default"))) int LLVMFuzzerRunDriver(
int* argc,
char*** argv,
int (*UserCb)(const uint8_t* Data, size_t Size)) {
return fuzzer::FuzzerDriver(argc, argv, UserCb);
}