blob: 88dceacf72f8b6549ebf4b8fef7a12b981ace71f [file] [log] [blame]
David Horstmann4e0cc402021-11-29 18:55:16 +00001#include "mbedtls/build_info.h"
Daniel Axtensf0710242020-05-28 11:43:41 +10002
3#if defined(MBEDTLS_HAVE_TIME)
Philippe Antoine08633822019-06-04 14:03:06 +02004#include "mbedtls/platform_time.h"
Daniel Axtensf0710242020-05-28 11:43:41 +10005#endif
6#include <stddef.h>
Philippe Antoine499c7352019-06-04 14:14:33 +02007#include <stdint.h>
8
Gilles Peskine449bd832023-01-11 14:50:10 +01009typedef struct fuzzBufferOffset {
Philippe Antoine499c7352019-06-04 14:14:33 +020010 const uint8_t *Data;
11 size_t Size;
12 size_t Offset;
13} fuzzBufferOffset_t;
Philippe Antoine08633822019-06-04 14:03:06 +020014
Daniel Axtensf0710242020-05-28 11:43:41 +100015#if defined(MBEDTLS_HAVE_TIME)
Gilles Peskine449bd832023-01-11 14:50:10 +010016mbedtls_time_t dummy_constant_time(mbedtls_time_t *time);
Daniel Axtensf0710242020-05-28 11:43:41 +100017#endif
Gowtham Suresh Kumar186731b2023-07-26 15:47:45 +010018void dummy_init(void);
Philippe Antoine499c7352019-06-04 14:14:33 +020019
Gilles Peskine449bd832023-01-11 14:50:10 +010020int dummy_send(void *ctx, const unsigned char *buf, size_t len);
21int fuzz_recv(void *ctx, unsigned char *buf, size_t len);
22int dummy_random(void *p_rng, unsigned char *output, size_t output_len);
23int dummy_entropy(void *data, unsigned char *output, size_t len);
24int fuzz_recv_timeout(void *ctx, unsigned char *buf, size_t len,
25 uint32_t timeout);
Michael Schustere708e862024-06-01 21:08:45 +020026
27/* Implemented in the fuzz_*.c sources and required by onefile.c */
28int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size);