blob: c8ea39913ee7fbbb093541f16d9b9f1059d830a2 [file] [log] [blame]
Peter Boström62e9bda2015-11-23 15:12:06 +01001# Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
2#
3# Use of this source code is governed by a BSD-style license
4# that can be found in the LICENSE file in the root of the source
5# tree. An additional intellectual property rights grant can be found
6# in the file PATENTS. All contributing project authors may
7# be found in the AUTHORS file in the root of the source tree.
8
ehmaldonado38a21322016-09-02 04:10:34 -07009import("../../build/webrtc.gni")
Peter Boström62e9bda2015-11-23 15:12:06 +010010import("//build/config/features.gni")
katrielc839315b2016-06-20 06:03:39 -070011import("//testing/libfuzzer/fuzzer_test.gni")
Peter Boström62e9bda2015-11-23 15:12:06 +010012
ehmaldonado38a21322016-09-02 04:10:34 -070013rtc_static_library("webrtc_fuzzer_main") {
Peter Boström62e9bda2015-11-23 15:12:06 +010014 sources = [
15 "webrtc_fuzzer_main.cc",
16 ]
17 deps = [
Peter Boström89d658f2015-11-25 21:58:36 +010018 "../../system_wrappers:field_trial_default",
Peter Boström871c4192015-11-26 14:52:23 +010019 "../../system_wrappers:metrics_default",
Peter Boström62e9bda2015-11-23 15:12:06 +010020 "//testing/libfuzzer:libfuzzer_main",
21 ]
22}
23
katrielc839315b2016-06-20 06:03:39 -070024template("webrtc_fuzzer_test") {
25 fuzzer_test(target_name) {
26 forward_variables_from(invoker, "*")
27 deps += [ ":webrtc_fuzzer_main" ]
kjellandere40a7ee2016-10-16 23:56:12 -070028 if (!build_with_chromium && is_clang) {
29 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
katrielc839315b2016-06-20 06:03:39 -070030 suppressed_configs = [ "//build/config/clang:find_bad_constructs" ]
31 }
32 }
33}
34
Peter Boström1e0cfd92015-12-17 14:28:16 +010035webrtc_fuzzer_test("h264_depacketizer_fuzzer") {
36 sources = [
37 "h264_depacketizer_fuzzer.cc",
38 ]
39 deps = [
40 "../../modules/rtp_rtcp",
41 ]
42}
43
44webrtc_fuzzer_test("vp8_depacketizer_fuzzer") {
45 sources = [
46 "vp8_depacketizer_fuzzer.cc",
47 ]
48 deps = [
49 "../../modules/rtp_rtcp",
50 ]
51}
52
Peter Boström78315b92015-12-15 21:57:52 +010053webrtc_fuzzer_test("vp9_depacketizer_fuzzer") {
Peter Boström62e9bda2015-11-23 15:12:06 +010054 sources = [
55 "vp9_depacketizer_fuzzer.cc",
56 ]
57 deps = [
Peter Boström62e9bda2015-11-23 15:12:06 +010058 "../../modules/rtp_rtcp",
59 ]
Peter Boström62e9bda2015-11-23 15:12:06 +010060}
Peter Boström871c4192015-11-26 14:52:23 +010061
Peter Boström78315b92015-12-15 21:57:52 +010062webrtc_fuzzer_test("vp8_qp_parser_fuzzer") {
Peter Boström871c4192015-11-26 14:52:23 +010063 sources = [
64 "vp8_qp_parser_fuzzer.cc",
65 ]
66 deps = [
Peter Boström871c4192015-11-26 14:52:23 +010067 "../../modules/video_coding/",
68 ]
Peter Boström871c4192015-11-26 14:52:23 +010069}
Henrik Lundinfe32a762015-12-08 11:27:27 +010070
pbosc6b4e542016-11-05 03:10:22 -070071webrtc_fuzzer_test("h264_bitstream_parser_fuzzer") {
72 sources = [
73 "h264_bitstream_parser_fuzzer.cc",
74 ]
75 deps = [
76 "../../modules/video_coding/",
77 ]
78}
79
brandtrcada34c2016-10-03 02:02:49 -070080webrtc_fuzzer_test("flexfec_header_reader_fuzzer") {
81 sources = [
82 "flexfec_header_reader_fuzzer.cc",
83 ]
84 deps = [
85 "../../modules/rtp_rtcp/",
86 ]
87}
88
89webrtc_fuzzer_test("ulpfec_header_reader_fuzzer") {
90 sources = [
91 "ulpfec_header_reader_fuzzer.cc",
92 ]
93 deps = [
94 "../../modules/rtp_rtcp/",
95 ]
96}
97
brandtr869e7cd2016-10-31 05:27:07 -070098webrtc_fuzzer_test("ulpfec_generator_fuzzer") {
Stefan Holmer4c1093b2015-12-11 18:25:45 +010099 sources = [
brandtr869e7cd2016-10-31 05:27:07 -0700100 "ulpfec_generator_fuzzer.cc",
Stefan Holmer4c1093b2015-12-11 18:25:45 +0100101 ]
102 deps = [
Stefan Holmer4c1093b2015-12-11 18:25:45 +0100103 "../../modules/rtp_rtcp/",
104 ]
Stefan Holmer4c1093b2015-12-11 18:25:45 +0100105}
106
brandtre405d9b2016-10-18 01:18:04 -0700107webrtc_fuzzer_test("flexfec_receiver_fuzzer") {
108 sources = [
109 "flexfec_receiver_fuzzer.cc",
110 ]
111 deps = [
112 "../../modules/rtp_rtcp/",
113 ]
114 libfuzzer_options = [ "max_len=2000" ]
115}
116
Peter Boströmba3e25e2016-02-23 11:35:30 +0100117webrtc_fuzzer_test("rtcp_receiver_fuzzer") {
118 sources = [
119 "rtcp_receiver_fuzzer.cc",
120 ]
121 deps = [
122 "../../modules/rtp_rtcp/",
123 ]
katrielcbddc94b2016-06-22 06:43:22 -0700124 seed_corpus = "corpora/rtcp-corpus"
Peter Boströmba3e25e2016-02-23 11:35:30 +0100125}
126
danilchap1edb7ab2016-04-20 05:25:10 -0700127webrtc_fuzzer_test("rtp_packet_fuzzer") {
128 sources = [
129 "rtp_packet_fuzzer.cc",
130 ]
131 deps = [
132 "../../modules/rtp_rtcp/",
133 ]
katrielcbddc94b2016-06-22 06:43:22 -0700134 seed_corpus = "corpora/rtp-corpus"
danilchap1edb7ab2016-04-20 05:25:10 -0700135}
136
katrielcd4bcdad2016-06-23 03:50:39 -0700137webrtc_fuzzer_test("rtp_header_fuzzer") {
138 sources = [
139 "rtp_header_fuzzer.cc",
140 ]
141 deps = [
142 "../../modules/rtp_rtcp/",
143 ]
144}
145
stefanbded44b2016-07-18 09:26:06 -0700146webrtc_fuzzer_test("congestion_controller_feedback_fuzzer") {
147 sources = [
148 "congestion_controller_feedback_fuzzer.cc",
149 ]
150 deps = [
skvladcc91d282016-10-03 18:31:22 -0700151 "../../logging:rtc_event_log_impl",
stefanbded44b2016-07-18 09:26:06 -0700152 "../../modules/congestion_controller/",
153 ]
154}
155
kjellanderb62dbbe2016-09-23 00:38:52 -0700156rtc_static_library("audio_decoder_fuzzer") {
Henrik Lundinfe32a762015-12-08 11:27:27 +0100157 sources = [
158 "audio_decoder_fuzzer.cc",
159 "audio_decoder_fuzzer.h",
160 ]
Henrik Lundinfe32a762015-12-08 11:27:27 +0100161}
162
Peter Boström78315b92015-12-15 21:57:52 +0100163webrtc_fuzzer_test("audio_decoder_ilbc_fuzzer") {
Henrik Lundinfe32a762015-12-08 11:27:27 +0100164 sources = [
165 "audio_decoder_ilbc_fuzzer.cc",
166 ]
167 deps = [
168 ":audio_decoder_fuzzer",
169 "../../modules/audio_coding:ilbc",
170 ]
171}
172
Peter Boström78315b92015-12-15 21:57:52 +0100173webrtc_fuzzer_test("audio_decoder_isac_fuzzer") {
Henrik Lundinfe32a762015-12-08 11:27:27 +0100174 sources = [
175 "audio_decoder_isac_fuzzer.cc",
176 ]
177 deps = [
178 ":audio_decoder_fuzzer",
179 "../../modules/audio_coding:isac",
180 ]
181}
182
henrik.lundinfd2be272016-02-09 00:00:23 -0800183webrtc_fuzzer_test("audio_decoder_isac_incoming_packet_fuzzer") {
184 sources = [
185 "audio_decoder_isac_incoming_packet_fuzzer.cc",
186 ]
187 deps = [
188 ":audio_decoder_fuzzer",
189 "../../modules/audio_coding:isac",
190 ]
191}
192
Peter Boström78315b92015-12-15 21:57:52 +0100193webrtc_fuzzer_test("audio_decoder_isacfix_fuzzer") {
Henrik Lundinfe32a762015-12-08 11:27:27 +0100194 sources = [
195 "audio_decoder_isacfix_fuzzer.cc",
196 ]
197 deps = [
198 ":audio_decoder_fuzzer",
199 "../../modules/audio_coding:isac_fix",
200 ]
201}
202
Peter Boström78315b92015-12-15 21:57:52 +0100203webrtc_fuzzer_test("audio_decoder_opus_fuzzer") {
Henrik Lundinfe32a762015-12-08 11:27:27 +0100204 sources = [
205 "audio_decoder_opus_fuzzer.cc",
206 ]
207 deps = [
208 ":audio_decoder_fuzzer",
209 "../../modules/audio_coding:webrtc_opus",
210 ]
211}
henrik.lundinfd2be272016-02-09 00:00:23 -0800212
213webrtc_fuzzer_test("audio_decoder_opus_redundant_fuzzer") {
214 sources = [
215 "audio_decoder_opus_redundant_fuzzer.cc",
216 ]
217 deps = [
218 ":audio_decoder_fuzzer",
219 "../../modules/audio_coding:webrtc_opus",
220 ]
221}
katrielc262ba772016-07-06 05:59:23 -0700222
phoglund667bd072016-09-16 05:05:39 -0700223webrtc_fuzzer_test("turn_unwrap_fuzzer") {
224 sources = [
225 "turn_unwrap_fuzzer.cc",
226 ]
227 deps = [
228 "../../media:media",
229 ]
230}
katrielc1d4fefb2016-07-06 08:02:00 -0700231
henrik.lundin58466f62016-10-05 02:27:42 -0700232webrtc_fuzzer_test("neteq_rtp_fuzzer") {
233 sources = [
234 "neteq_rtp_fuzzer.cc",
235 ]
236 deps = [
237 "../../modules/audio_coding:neteq",
238 "../../modules/audio_coding:neteq_test_minimal",
239 "../../modules/audio_coding:pcm16b",
240 "../../modules/rtp_rtcp",
241 ]
242}
243
phoglund667bd072016-09-16 05:05:39 -0700244webrtc_fuzzer_test("sdp_parser_fuzzer") {
245 sources = [
246 "sdp_parser_fuzzer.cc",
247 ]
248 deps = [
249 "../../api:libjingle_peerconnection",
250 ]
251 seed_corpus = "corpora/sdp-corpus"
252}
katrielc1d4fefb2016-07-06 08:02:00 -0700253
phoglund667bd072016-09-16 05:05:39 -0700254webrtc_fuzzer_test("stun_parser_fuzzer") {
255 sources = [
256 "stun_parser_fuzzer.cc",
257 ]
258 deps = [
259 "../../p2p:rtc_p2p",
260 ]
261 seed_corpus = "corpora/stun-corpus"
262 dict = "corpora/stun.tokens"
263}
katrielc1d4fefb2016-07-06 08:02:00 -0700264
phoglund667bd072016-09-16 05:05:39 -0700265webrtc_fuzzer_test("stun_validator_fuzzer") {
266 sources = [
267 "stun_validator_fuzzer.cc",
268 ]
269 deps = [
270 "../../p2p:rtc_p2p",
271 ]
272 seed_corpus = "corpora/stun-corpus"
273 dict = "corpora/stun.tokens"
274}
katrielc44905cf2016-07-07 05:52:24 -0700275
phoglund667bd072016-09-16 05:05:39 -0700276webrtc_fuzzer_test("pseudotcp_parser_fuzzer") {
277 sources = [
278 "pseudotcp_parser_fuzzer.cc",
279 ]
280 deps = [
281 "../../p2p:rtc_p2p",
282 ]
katrielc262ba772016-07-06 05:59:23 -0700283}