]>
Commit | Line | Data |
---|---|---|
3f807c6b AS |
1 | /* SPDX-License-Identifier: GPL-2.0+ */ |
2 | /* | |
3 | * Copyright (c) 2022 Google, Inc. | |
4 | * Written by Andrew Scull <[email protected]> | |
5 | */ | |
6 | ||
7 | #ifndef __FUZZING_ENGINE_H | |
8 | #define __FUZZING_ENGINE_H | |
9 | ||
10 | struct udevice; | |
11 | ||
12 | /** | |
13 | * dm_fuzzing_engine_get_input() - get an input from the fuzzing engine device | |
14 | * | |
15 | * The function will return a pointer to the input data and the size of the | |
16 | * data pointed to. The pointer will remain valid until the next invocation of | |
17 | * this function. | |
18 | * | |
19 | * @dev: fuzzing engine device | |
20 | * @data: output pointer to input data | |
21 | * @size output size of input data | |
22 | * Return: 0 if OK, -ve on error | |
23 | */ | |
24 | int dm_fuzzing_engine_get_input(struct udevice *dev, | |
25 | const uint8_t **data, | |
26 | size_t *size); | |
27 | ||
28 | /** | |
29 | * struct dm_fuzzing_engine_ops - operations for the fuzzing engine uclass | |
30 | * | |
31 | * This contains the functions implemented by a fuzzing engine device. | |
32 | */ | |
33 | struct dm_fuzzing_engine_ops { | |
34 | /** | |
35 | * @get_input() - get an input | |
36 | * | |
37 | * The function will return a pointer to the input data and the size of | |
38 | * the data pointed to. The pointer will remain valid until the next | |
39 | * invocation of this function. | |
40 | * | |
41 | * @get_input.dev: fuzzing engine device | |
42 | * @get_input.data: output pointer to input data | |
43 | * @get_input.size output size of input data | |
44 | * @get_input.Return: 0 if OK, -ve on error | |
45 | */ | |
46 | int (*get_input)(struct udevice *dev, | |
47 | const uint8_t **data, | |
48 | size_t *size); | |
49 | }; | |
50 | ||
51 | #endif /* __FUZZING_ENGINE_H */ |