| // Copyright 2019 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // +build !build_with_native_toolchain |
| |
| package main |
| |
| // #include <stddef.h> |
| // #include <stdint.h> |
| import "C" |
| |
| import ( |
| "unsafe" |
| |
| target "GO_FUZZER_PKG" // replaced by go_fuzzer.gni |
| ) |
| |
| //export LLVMFuzzerTestOneInput |
| func LLVMFuzzerTestOneInput(data *C.uint8_t, size C.size_t) C.int { |
| s := make([]byte, size) |
| if size != 0 { |
| copy(s, (*[1 << 30]byte)(unsafe.Pointer(data))[:size:size]) |
| } |
| |
| target.GO_FUZZER_FUNC(s) |
| return 0 |
| } |
| |
| func main() { |
| } |