/src/librabbitmq/fuzz/fuzz_table.c
Line | Count | Source |
1 | | // Copyright 2007 - 2022, Alan Antonuk and the rabbitmq-c contributors. |
2 | | // SPDX-License-Identifier: mit |
3 | | |
4 | | #include <errno.h> |
5 | | #include <inttypes.h> |
6 | | #include <math.h> |
7 | | #include <stdarg.h> |
8 | | #include <stdio.h> |
9 | | #include <stdlib.h> |
10 | | #include <string.h> |
11 | | |
12 | | #include <rabbitmq-c/amqp.h> |
13 | | |
14 | 1.46k | extern int LLVMFuzzerTestOneInput(const char *data, size_t size) { |
15 | | |
16 | 1.46k | int unused_result; |
17 | 1.46k | amqp_pool_t pool; |
18 | | |
19 | 1.46k | init_amqp_pool(&pool, 4096); |
20 | 1.46k | { |
21 | 1.46k | amqp_table_t decoded; |
22 | 1.46k | size_t decoding_offset = 0; |
23 | 1.46k | amqp_bytes_t decoding_bytes; |
24 | 1.46k | decoding_bytes.len = size; |
25 | 1.46k | decoding_bytes.bytes = (uint8_t *)data; |
26 | | |
27 | 1.46k | unused_result = |
28 | 1.46k | amqp_decode_table(decoding_bytes, &pool, &decoded, &decoding_offset); |
29 | 1.46k | } |
30 | 1.46k | empty_amqp_pool(&pool); |
31 | 1.46k | return 0; |
32 | 1.46k | } |