u-boot/drivers/fuzz/sandbox_fuzzing_engine.c
Andrew Scull 0518e7a28f sandbox: Implement fuzzing engine driver
Add a fuzzing engine driver for the sandbox to take inputs from
libfuzzer and expose them to the fuzz tests.

Signed-off-by: Andrew Scull <ascull@google.com>
2022-06-23 12:58:19 -04:00

35 lines
794 B
C

/* SPDX-License-Identifier: GPL-2.0+ */
/*
* Copyright (c) 2022 Google, Inc.
* Written by Andrew Scull <ascull@google.com>
*/
#include <common.h>
#include <dm.h>
#include <fuzzing_engine.h>
#include <asm/fuzzing_engine.h>
static int get_input(struct udevice *dev,
const uint8_t **data,
size_t *size)
{
return sandbox_fuzzing_engine_get_input(data, size);
}
static const struct dm_fuzzing_engine_ops sandbox_fuzzing_engine_ops = {
.get_input = get_input,
};
static const struct udevice_id sandbox_fuzzing_engine_match[] = {
{
.compatible = "sandbox,fuzzing-engine",
},
{},
};
U_BOOT_DRIVER(sandbox_fuzzing_engine) = {
.name = "sandbox-fuzzing-engine",
.id = UCLASS_FUZZING_ENGINE,
.of_match = sandbox_fuzzing_engine_match,
.ops = &sandbox_fuzzing_engine_ops,
};