Line | Count | Source |
1 | | /* Copyright 2022 Google LLC |
2 | | Licensed under the Apache License, Version 2.0 (the "License"); |
3 | | you may not use this file except in compliance with the License. |
4 | | You may obtain a copy of the License at |
5 | | http://www.apache.org/licenses/LICENSE-2.0 |
6 | | Unless required by applicable law or agreed to in writing, software |
7 | | distributed under the License is distributed on an "AS IS" BASIS, |
8 | | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
9 | | See the License for the specific language governing permissions and |
10 | | limitations under the License. |
11 | | */ |
12 | | |
13 | | #include <config.h> |
14 | | #include <stdint.h> |
15 | | #include <stdio.h> |
16 | | #include <string.h> |
17 | | #include <stdlib.h> |
18 | | |
19 | | #include "gobex/gobex.h" |
20 | | #include "gobex/gobex-packet.h" |
21 | | |
22 | 313 | int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { |
23 | 313 | uint8_t buf[255]; |
24 | 313 | GObexPacket *pkt; |
25 | 313 | GError *err = NULL; |
26 | 313 | pkt = g_obex_packet_decode(data, size, 0, G_OBEX_DATA_REF, &err); |
27 | 313 | if (pkt != NULL) { |
28 | | /* Anything that decodes must encode */ |
29 | 182 | g_obex_packet_encode(pkt, buf, sizeof(buf)); |
30 | 182 | g_obex_packet_free(pkt); |
31 | 182 | } |
32 | | |
33 | 313 | return 0; |
34 | 313 | } |