xref: /btstack/test/fuzz/fuzz_hfp_at_parser.c (revision 941838bd23366b7985574e745f221471960cab83)
1*941838bdSMilanka Ringwald #include <stdint.h>
2*941838bdSMilanka Ringwald #include <stddef.h>
3*941838bdSMilanka Ringwald 
4*941838bdSMilanka Ringwald #include "classic/hfp.h"
5*941838bdSMilanka Ringwald 
LLVMFuzzerTestOneInput(const uint8_t * data,size_t size)6*941838bdSMilanka Ringwald int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
7*941838bdSMilanka Ringwald     // test ad iterator by calling simple function that uses it
8*941838bdSMilanka Ringwald     if (size < 1) return 0;
9*941838bdSMilanka Ringwald 
10*941838bdSMilanka Ringwald     int is_handsfree = data[0] & 1;
11*941838bdSMilanka Ringwald     hfp_connection_t hfp_connection;
12*941838bdSMilanka Ringwald     memset(&hfp_connection, 0, sizeof(hfp_connection_t));
13*941838bdSMilanka Ringwald 
14*941838bdSMilanka Ringwald     uint32_t i;
15*941838bdSMilanka Ringwald     for (i = 1; i < size; i++){
16*941838bdSMilanka Ringwald         hfp_parse(&hfp_connection, data[i], is_handsfree);
17*941838bdSMilanka Ringwald     }
18*941838bdSMilanka Ringwald 
19*941838bdSMilanka Ringwald     return 0;
20*941838bdSMilanka Ringwald }
21