blob: 38272b4e9c8d2ab1bab092e7a50c9939883d7bac [file] [log] [blame]
Hasnain Lakhani7ac79ab2025-08-25 14:40:43 -07001# Licensed to the Apache Software Foundation (ASF) under one
2# or more contributor license agreements. See the NOTICE file
3# distributed with this work for additional information
4# regarding copyright ownership. The ASF licenses this file
5# to you under the Apache License, Version 2.0 (the
6# "License"); you may not use this file except in compliance
7# with the License. You may obtain a copy of the License at
8# //
9# http://www.apache.org/licenses/LICENSE-2.0
10# //
11# Unless required by applicable law or agreed to in writing,
12# software distributed under the License is distributed on an
13# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14# KIND, either express or implied. See the License for the
15# specific language governing permissions and limitations
16# under the License.
17
18[package]
19name = "thrift-fuzz"
20version = "0.0.0"
21publish = false
22edition = "2021"
23
24[package.metadata]
25cargo-fuzz = true
26
27[lib]
28path = "lib/mod.rs"
29
30[dependencies]
31libfuzzer-sys = "0.4"
32uuid = { version = "1", features = ["arbitrary"] }
33arbitrary = { version = "1", features = ["derive"] }
34ordered-float = { version = "4.6.0", features = ["arbitrary"] }
35clap = { version = "4.5", features = ["derive"] }
36rand = "0.9"
37
38[dependencies.thrift]
39path = "../../../../lib/rs"
40
41[[bin]]
42name = "corpus_generator"
43path = "bin/corpus_generator.rs"
44
45[[bin]]
46name = "parse_compact"
47path = "fuzz_targets/parse_compact.rs"
48test = false
49doc = false
50bench = false
51
52[[bin]]
53name = "parse_binary"
54path = "fuzz_targets/parse_binary.rs"
55test = false
56doc = false
57bench = false
58
59[[bin]]
60name = "roundtrip_binary"
61path = "fuzz_targets/roundtrip_binary.rs"
62test = false
63doc = false
64bench = false
65
66[[bin]]
67name = "roundtrip_compact"
68path = "fuzz_targets/roundtrip_compact.rs"
69test = false
70doc = false
71bench = false
72
73# TODO (THRIFT-5891): Enable these once we fix round-trip correctness.
74# [[bin]]
75# name = "structured_roundtrip_compact"
76# path = "fuzz_targets/structured_roundtrip_compact.rs"
77# test = false
78# doc = false
79# bench = false
80
81# [[bin]]
82# name = "structured_roundtrip_binary"
83# path = "fuzz_targets/structured_roundtrip_binary.rs"
84# test = false
85# doc = false
86# bench = false