blob: ccc15a61005e9d3ae862f00c62d2d5a689f3a497 [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
mbonadei9aa3f0a2017-01-24 06:58:22 -08009import("../../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 = [
ehmaldonadof6a861a2017-07-19 10:40:47 -070018 "../../rtc_base:rtc_base_approved",
Peter Boström62e9bda2015-11-23 15:12:06 +010019 "//testing/libfuzzer:libfuzzer_main",
20 ]
Mirko Bonadei15212f32018-09-18 23:41:33 +020021
22 # When WebRTC fuzzer tests are built on Chromium bots they need to link
Christian Fremereyee002e62018-09-19 12:33:57 -070023 # with Chromium's implementation of metrics and field trial.
Mirko Bonadei15212f32018-09-18 23:41:33 +020024 if (build_with_chromium) {
Christian Fremereyee002e62018-09-19 12:33:57 -070025 deps += [
26 "../../../webrtc_overrides:field_trial",
27 "../../../webrtc_overrides:metrics",
28 ]
Mirko Bonadei15212f32018-09-18 23:41:33 +020029 }
Peter Boström62e9bda2015-11-23 15:12:06 +010030}
31
philipel0c87e292018-05-17 16:44:47 +020032rtc_static_library("fuzz_data_helper") {
33 sources = [
34 "fuzz_data_helper.cc",
35 "fuzz_data_helper.h",
36 ]
37 deps = [
38 "../../api:array_view",
39 "../../modules/rtp_rtcp:rtp_rtcp_format",
40 ]
41 visibility = [ ":*" ] # Only targets in this file can depend on this.
42}
43
katrielc839315b2016-06-20 06:03:39 -070044template("webrtc_fuzzer_test") {
45 fuzzer_test(target_name) {
46 forward_variables_from(invoker, "*")
Niels Möller6e878502017-10-05 10:58:49 +020047 deps += [
philipel0c87e292018-05-17 16:44:47 +020048 ":fuzz_data_helper",
Niels Möller6e878502017-10-05 10:58:49 +020049 ":webrtc_fuzzer_main",
50
51 # Link unconditionally with webrtc's TaskQueue, regardless of
52 # rtc_link_task_queue_impl flag.
53 "../../rtc_base:rtc_task_queue_impl",
54 ]
kjellandere40a7ee2016-10-16 23:56:12 -070055 if (!build_with_chromium && is_clang) {
56 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
katrielc839315b2016-06-20 06:03:39 -070057 suppressed_configs = [ "//build/config/clang:find_bad_constructs" ]
58 }
59 }
60}
61
Peter Boström1e0cfd92015-12-17 14:28:16 +010062webrtc_fuzzer_test("h264_depacketizer_fuzzer") {
63 sources = [
64 "h264_depacketizer_fuzzer.cc",
65 ]
66 deps = [
67 "../../modules/rtp_rtcp",
68 ]
69}
70
71webrtc_fuzzer_test("vp8_depacketizer_fuzzer") {
72 sources = [
73 "vp8_depacketizer_fuzzer.cc",
74 ]
75 deps = [
76 "../../modules/rtp_rtcp",
77 ]
78}
79
Peter Boström78315b92015-12-15 21:57:52 +010080webrtc_fuzzer_test("vp9_depacketizer_fuzzer") {
Peter Boström62e9bda2015-11-23 15:12:06 +010081 sources = [
82 "vp9_depacketizer_fuzzer.cc",
83 ]
84 deps = [
Peter Boström62e9bda2015-11-23 15:12:06 +010085 "../../modules/rtp_rtcp",
86 ]
Peter Boström62e9bda2015-11-23 15:12:06 +010087}
Peter Boström871c4192015-11-26 14:52:23 +010088
Peter Boström78315b92015-12-15 21:57:52 +010089webrtc_fuzzer_test("vp8_qp_parser_fuzzer") {
Peter Boström871c4192015-11-26 14:52:23 +010090 sources = [
91 "vp8_qp_parser_fuzzer.cc",
92 ]
93 deps = [
mbonadei3edccb92017-06-01 04:47:20 -070094 "../../modules/video_coding:video_coding_utility",
Peter Boström871c4192015-11-26 14:52:23 +010095 "../../modules/video_coding/",
96 ]
Peter Boström871c4192015-11-26 14:52:23 +010097}
Henrik Lundinfe32a762015-12-08 11:27:27 +010098
asapersson23ec19d2017-06-06 23:41:44 -070099webrtc_fuzzer_test("vp9_qp_parser_fuzzer") {
100 sources = [
101 "vp9_qp_parser_fuzzer.cc",
102 ]
103 deps = [
104 "../../modules/video_coding:video_coding_utility",
105 "../../modules/video_coding/",
106 ]
107}
108
pbosc6b4e542016-11-05 03:10:22 -0700109webrtc_fuzzer_test("h264_bitstream_parser_fuzzer") {
110 sources = [
111 "h264_bitstream_parser_fuzzer.cc",
112 ]
113 deps = [
mbonadei3edccb92017-06-01 04:47:20 -0700114 "../../common_video",
pbosc6b4e542016-11-05 03:10:22 -0700115 "../../modules/video_coding/",
116 ]
117}
118
Rasmus Brandt49ccbdb2017-12-13 14:04:24 +0100119webrtc_fuzzer_test("forward_error_correction_fuzzer") {
120 sources = [
121 "forward_error_correction_fuzzer.cc",
122 ]
123 deps = [
124 "../../modules/rtp_rtcp",
125 "../../modules/rtp_rtcp:rtp_rtcp_format",
126 "../../rtc_base:rtc_base_approved",
127 ]
128 libfuzzer_options = [ "max_len=5000" ]
129}
130
brandtrcada34c2016-10-03 02:02:49 -0700131webrtc_fuzzer_test("flexfec_header_reader_fuzzer") {
132 sources = [
133 "flexfec_header_reader_fuzzer.cc",
134 ]
135 deps = [
kjellandere0629c02017-04-25 04:04:50 -0700136 "../../modules/rtp_rtcp",
Mirko Bonadeib5728d92017-12-06 07:51:33 +0100137 "../../modules/rtp_rtcp:rtp_rtcp_format",
ehmaldonadof6a861a2017-07-19 10:40:47 -0700138 "../../rtc_base:rtc_base_approved",
brandtrcada34c2016-10-03 02:02:49 -0700139 ]
140}
141
brandtr554becd2016-11-06 22:45:15 -0800142webrtc_fuzzer_test("flexfec_sender_fuzzer") {
143 sources = [
144 "flexfec_sender_fuzzer.cc",
145 ]
146 deps = [
kjellandere0629c02017-04-25 04:04:50 -0700147 "../../modules/rtp_rtcp",
Mirko Bonadeib5728d92017-12-06 07:51:33 +0100148 "../../modules/rtp_rtcp:rtp_rtcp_format",
mbonadei3edccb92017-06-01 04:47:20 -0700149 "../../system_wrappers",
brandtr554becd2016-11-06 22:45:15 -0800150 ]
151 libfuzzer_options = [ "max_len=200" ]
152}
153
brandtrcada34c2016-10-03 02:02:49 -0700154webrtc_fuzzer_test("ulpfec_header_reader_fuzzer") {
155 sources = [
156 "ulpfec_header_reader_fuzzer.cc",
157 ]
158 deps = [
kjellandere0629c02017-04-25 04:04:50 -0700159 "../../modules/rtp_rtcp",
160 "../../modules/rtp_rtcp:fec_test_helper",
Mirko Bonadeib5728d92017-12-06 07:51:33 +0100161 "../../modules/rtp_rtcp:rtp_rtcp_format",
ehmaldonadof6a861a2017-07-19 10:40:47 -0700162 "../../rtc_base:rtc_base_approved",
brandtrcada34c2016-10-03 02:02:49 -0700163 ]
164}
165
brandtr869e7cd2016-10-31 05:27:07 -0700166webrtc_fuzzer_test("ulpfec_generator_fuzzer") {
Stefan Holmer4c1093b2015-12-11 18:25:45 +0100167 sources = [
brandtr869e7cd2016-10-31 05:27:07 -0700168 "ulpfec_generator_fuzzer.cc",
Stefan Holmer4c1093b2015-12-11 18:25:45 +0100169 ]
170 deps = [
Ying Wang6b33e602018-07-02 17:28:07 +0200171 "../../modules:module_api_public",
kjellandere0629c02017-04-25 04:04:50 -0700172 "../../modules/rtp_rtcp",
173 "../../modules/rtp_rtcp:fec_test_helper",
Mirko Bonadeib5728d92017-12-06 07:51:33 +0100174 "../../modules/rtp_rtcp:rtp_rtcp_format",
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100175 "../../rtc_base:checks",
ehmaldonadof6a861a2017-07-19 10:40:47 -0700176 "../../rtc_base:rtc_base_approved",
Stefan Holmer4c1093b2015-12-11 18:25:45 +0100177 ]
Stefan Holmer4c1093b2015-12-11 18:25:45 +0100178}
179
Mark Brand0c720502017-10-20 16:23:23 +0200180webrtc_fuzzer_test("ulpfec_receiver_fuzzer") {
181 sources = [
182 "ulpfec_receiver_fuzzer.cc",
183 ]
184 deps = [
185 "../../modules/rtp_rtcp",
Mirko Bonadeib5728d92017-12-06 07:51:33 +0100186 "../../modules/rtp_rtcp:rtp_rtcp_format",
Mark Brand0c720502017-10-20 16:23:23 +0200187 "../../rtc_base:rtc_base_approved",
188 ]
189 libfuzzer_options = [ "max_len=2000" ]
190}
191
brandtre405d9b2016-10-18 01:18:04 -0700192webrtc_fuzzer_test("flexfec_receiver_fuzzer") {
193 sources = [
194 "flexfec_receiver_fuzzer.cc",
195 ]
196 deps = [
kjellandere0629c02017-04-25 04:04:50 -0700197 "../../modules/rtp_rtcp",
Mirko Bonadeib5728d92017-12-06 07:51:33 +0100198 "../../modules/rtp_rtcp:rtp_rtcp_format",
ehmaldonadof6a861a2017-07-19 10:40:47 -0700199 "../../rtc_base:rtc_base_approved",
brandtre405d9b2016-10-18 01:18:04 -0700200 ]
201 libfuzzer_options = [ "max_len=2000" ]
202}
203
philipelea142f82017-01-11 02:01:56 -0800204webrtc_fuzzer_test("packet_buffer_fuzzer") {
205 sources = [
206 "packet_buffer_fuzzer.cc",
207 ]
208 deps = [
mbonadeib80ef8c2017-04-24 13:05:47 -0700209 "../../modules/video_coding/",
mbonadei3edccb92017-06-01 04:47:20 -0700210 "../../system_wrappers",
philipelea142f82017-01-11 02:01:56 -0800211 ]
philipel0c87e292018-05-17 16:44:47 +0200212 libfuzzer_options = [ "max_len=200000" ]
philipelea142f82017-01-11 02:01:56 -0800213}
214
Peter Boströmba3e25e2016-02-23 11:35:30 +0100215webrtc_fuzzer_test("rtcp_receiver_fuzzer") {
216 sources = [
217 "rtcp_receiver_fuzzer.cc",
218 ]
219 deps = [
kjellandere0629c02017-04-25 04:04:50 -0700220 "../../modules/rtp_rtcp",
Jonathan Metzman9f80b972018-10-05 10:38:13 -0700221 "../../modules/rtp_rtcp:rtp_rtcp_format",
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100222 "../../rtc_base:checks",
ehmaldonadof6a861a2017-07-19 10:40:47 -0700223 "../../rtc_base:rtc_base_approved",
mbonadei3edccb92017-06-01 04:47:20 -0700224 "../../system_wrappers:system_wrappers",
Peter Boströmba3e25e2016-02-23 11:35:30 +0100225 ]
katrielcbddc94b2016-06-22 06:43:22 -0700226 seed_corpus = "corpora/rtcp-corpus"
Peter Boströmba3e25e2016-02-23 11:35:30 +0100227}
228
danilchap1edb7ab2016-04-20 05:25:10 -0700229webrtc_fuzzer_test("rtp_packet_fuzzer") {
230 sources = [
231 "rtp_packet_fuzzer.cc",
232 ]
233 deps = [
Mirko Bonadeib5728d92017-12-06 07:51:33 +0100234 "../../modules/rtp_rtcp:rtp_rtcp_format",
danilchap1edb7ab2016-04-20 05:25:10 -0700235 ]
katrielcbddc94b2016-06-22 06:43:22 -0700236 seed_corpus = "corpora/rtp-corpus"
danilchap1edb7ab2016-04-20 05:25:10 -0700237}
238
katrielcd4bcdad2016-06-23 03:50:39 -0700239webrtc_fuzzer_test("rtp_header_fuzzer") {
240 sources = [
241 "rtp_header_fuzzer.cc",
242 ]
243 deps = [
kjellandere0629c02017-04-25 04:04:50 -0700244 "../../modules/rtp_rtcp",
Mirko Bonadeib5728d92017-12-06 07:51:33 +0100245 "../../modules/rtp_rtcp:rtp_rtcp_format",
katrielcd4bcdad2016-06-23 03:50:39 -0700246 ]
247}
248
stefanbded44b2016-07-18 09:26:06 -0700249webrtc_fuzzer_test("congestion_controller_feedback_fuzzer") {
250 sources = [
251 "congestion_controller_feedback_fuzzer.cc",
252 ]
253 deps = [
mbonadei3edccb92017-06-01 04:47:20 -0700254 "../../logging:rtc_event_log_api",
Qingsi Wang970b0882018-02-01 11:04:46 -0800255 "../../logging:rtc_event_log_impl_base",
Niels Möller245f17e2017-08-21 10:45:07 +0200256 "../../modules/congestion_controller",
257 "../../modules/pacing",
mbonadei3edccb92017-06-01 04:47:20 -0700258 "../../modules/remote_bitrate_estimator:remote_bitrate_estimator",
Mirko Bonadeib5728d92017-12-06 07:51:33 +0100259 "../../modules/rtp_rtcp:rtp_rtcp_format",
stefanbded44b2016-07-18 09:26:06 -0700260 ]
261}
262
kjellanderb62dbbe2016-09-23 00:38:52 -0700263rtc_static_library("audio_decoder_fuzzer") {
Henrik Lundinfe32a762015-12-08 11:27:27 +0100264 sources = [
265 "audio_decoder_fuzzer.cc",
266 "audio_decoder_fuzzer.h",
267 ]
mbonadei3edccb92017-06-01 04:47:20 -0700268 deps = [
269 "../..:webrtc_common",
270 "../../api/audio_codecs:audio_codecs_api",
Mirko Bonadeib5728d92017-12-06 07:51:33 +0100271 "../../modules/rtp_rtcp:rtp_rtcp_format",
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100272 "../../rtc_base:checks",
ehmaldonadof6a861a2017-07-19 10:40:47 -0700273 "../../rtc_base:rtc_base_approved",
Danil Chapovalov431abd92018-06-18 12:54:17 +0200274 "//third_party/abseil-cpp/absl/types:optional",
mbonadei3edccb92017-06-01 04:47:20 -0700275 ]
Henrik Lundinfe32a762015-12-08 11:27:27 +0100276}
277
Peter Boström78315b92015-12-15 21:57:52 +0100278webrtc_fuzzer_test("audio_decoder_ilbc_fuzzer") {
Henrik Lundinfe32a762015-12-08 11:27:27 +0100279 sources = [
280 "audio_decoder_ilbc_fuzzer.cc",
281 ]
282 deps = [
283 ":audio_decoder_fuzzer",
284 "../../modules/audio_coding:ilbc",
285 ]
Henrik Lundin0f5dc8b2018-07-05 15:37:57 +0200286
287 libfuzzer_options = [ "max_len=10000" ]
Henrik Lundinfe32a762015-12-08 11:27:27 +0100288}
289
Peter Boström78315b92015-12-15 21:57:52 +0100290webrtc_fuzzer_test("audio_decoder_isac_fuzzer") {
Henrik Lundinfe32a762015-12-08 11:27:27 +0100291 sources = [
292 "audio_decoder_isac_fuzzer.cc",
293 ]
294 deps = [
295 ":audio_decoder_fuzzer",
296 "../../modules/audio_coding:isac",
297 ]
Henrik Lundin0f5dc8b2018-07-05 15:37:57 +0200298
299 libfuzzer_options = [ "max_len=20000" ]
Henrik Lundinfe32a762015-12-08 11:27:27 +0100300}
301
henrik.lundinfd2be272016-02-09 00:00:23 -0800302webrtc_fuzzer_test("audio_decoder_isac_incoming_packet_fuzzer") {
303 sources = [
304 "audio_decoder_isac_incoming_packet_fuzzer.cc",
305 ]
306 deps = [
307 ":audio_decoder_fuzzer",
308 "../../modules/audio_coding:isac",
309 ]
Henrik Lundin0f5dc8b2018-07-05 15:37:57 +0200310
311 libfuzzer_options = [ "max_len=20000" ]
henrik.lundinfd2be272016-02-09 00:00:23 -0800312}
313
Peter Boström78315b92015-12-15 21:57:52 +0100314webrtc_fuzzer_test("audio_decoder_isacfix_fuzzer") {
Henrik Lundinfe32a762015-12-08 11:27:27 +0100315 sources = [
316 "audio_decoder_isacfix_fuzzer.cc",
317 ]
318 deps = [
319 ":audio_decoder_fuzzer",
320 "../../modules/audio_coding:isac_fix",
321 ]
Henrik Lundin0f5dc8b2018-07-05 15:37:57 +0200322
323 libfuzzer_options = [ "max_len=20000" ]
Henrik Lundinfe32a762015-12-08 11:27:27 +0100324}
325
Peter Boström78315b92015-12-15 21:57:52 +0100326webrtc_fuzzer_test("audio_decoder_opus_fuzzer") {
Henrik Lundinfe32a762015-12-08 11:27:27 +0100327 sources = [
328 "audio_decoder_opus_fuzzer.cc",
329 ]
330 deps = [
331 ":audio_decoder_fuzzer",
332 "../../modules/audio_coding:webrtc_opus",
333 ]
334}
henrik.lundinfd2be272016-02-09 00:00:23 -0800335
336webrtc_fuzzer_test("audio_decoder_opus_redundant_fuzzer") {
337 sources = [
338 "audio_decoder_opus_redundant_fuzzer.cc",
339 ]
340 deps = [
341 ":audio_decoder_fuzzer",
342 "../../modules/audio_coding:webrtc_opus",
343 ]
344}
katrielc262ba772016-07-06 05:59:23 -0700345
Henrik Lundina29b1482018-05-09 14:56:08 +0200346webrtc_fuzzer_test("audio_encoder_opus_fuzzer") {
347 sources = [
348 "audio_encoder_opus_fuzzer.cc",
349 ]
350 deps = [
Henrik Lundina29b1482018-05-09 14:56:08 +0200351 "../../api:array_view",
352 "../../api/audio_codecs/opus:audio_encoder_opus",
353 "../../rtc_base:checks",
354 "../../rtc_base:rtc_base_approved",
355 ]
356}
357
phoglund667bd072016-09-16 05:05:39 -0700358webrtc_fuzzer_test("turn_unwrap_fuzzer") {
359 sources = [
360 "turn_unwrap_fuzzer.cc",
361 ]
362 deps = [
363 "../../media:media",
Mirko Bonadei75baa492018-01-11 17:07:30 +0100364 "../../media:rtc_media_base",
phoglund667bd072016-09-16 05:05:39 -0700365 ]
366}
katrielc1d4fefb2016-07-06 08:02:00 -0700367
henrik.lundin58466f62016-10-05 02:27:42 -0700368webrtc_fuzzer_test("neteq_rtp_fuzzer") {
369 sources = [
370 "neteq_rtp_fuzzer.cc",
371 ]
372 deps = [
kwiberg529662a2017-09-04 05:43:17 -0700373 "../../api:array_view",
mbonadei3d7b0e22017-04-26 00:38:48 -0700374 "../../modules/audio_coding:neteq",
mbonadei3edccb92017-06-01 04:47:20 -0700375 "../../modules/audio_coding:neteq_test_tools",
henrik.lundinb637a942017-04-28 00:59:45 -0700376 "../../modules/audio_coding:neteq_tools_minimal",
henrik.lundin58466f62016-10-05 02:27:42 -0700377 "../../modules/audio_coding:pcm16b",
Mirko Bonadeib5728d92017-12-06 07:51:33 +0100378 "../../modules/rtp_rtcp:rtp_rtcp_format",
ehmaldonadof6a861a2017-07-19 10:40:47 -0700379 "../../rtc_base:rtc_base_approved",
380 "../../rtc_base:rtc_base_tests_utils",
henrik.lundin58466f62016-10-05 02:27:42 -0700381 ]
Henrik Lundin36c69d52018-07-04 11:23:20 +0200382
383 libfuzzer_options = [ "max_len=100000" ]
henrik.lundin58466f62016-10-05 02:27:42 -0700384}
385
Henrik Lundinb82de302017-10-20 10:38:56 +0200386webrtc_fuzzer_test("neteq_signal_fuzzer") {
387 sources = [
388 "neteq_signal_fuzzer.cc",
389 ]
390 deps = [
391 "../../api:array_view",
392 "../../modules/audio_coding:neteq",
393 "../../modules/audio_coding:neteq_test_tools",
394 "../../modules/audio_coding:neteq_tools_minimal",
395 "../../modules/audio_coding:pcm16b",
Henrik Lundinb82de302017-10-20 10:38:56 +0200396 "../../rtc_base:rtc_base_approved",
397 "../../rtc_base:rtc_base_tests_utils",
398 ]
Henrik Lundin36c69d52018-07-04 11:23:20 +0200399
400 libfuzzer_options = [ "max_len=100000" ]
Henrik Lundinb82de302017-10-20 10:38:56 +0200401}
402
ivoc860249e2017-05-16 06:50:11 -0700403webrtc_fuzzer_test("residual_echo_detector_fuzzer") {
404 sources = [
405 "residual_echo_detector_fuzzer.cc",
406 ]
407 deps = [
ivoc860249e2017-05-16 06:50:11 -0700408 "../../modules/audio_processing:audio_processing",
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100409 "../../rtc_base:checks",
ehmaldonadof6a861a2017-07-19 10:40:47 -0700410 "../../rtc_base:rtc_base_approved",
ivoc860249e2017-05-16 06:50:11 -0700411 ]
412}
413
phoglund667bd072016-09-16 05:05:39 -0700414webrtc_fuzzer_test("sdp_parser_fuzzer") {
415 sources = [
416 "sdp_parser_fuzzer.cc",
417 ]
418 deps = [
Mirko Bonadeie51f7852017-12-06 11:23:19 +0100419 "../../api:libjingle_peerconnection_api",
ossu7bb87ee2017-01-23 04:56:25 -0800420 "../../pc:libjingle_peerconnection",
phoglund667bd072016-09-16 05:05:39 -0700421 ]
422 seed_corpus = "corpora/sdp-corpus"
Patrik Höglund547e3162018-05-22 13:23:36 +0200423 libfuzzer_options = [ "max_len=16384" ]
phoglund667bd072016-09-16 05:05:39 -0700424}
katrielc1d4fefb2016-07-06 08:02:00 -0700425
phoglund667bd072016-09-16 05:05:39 -0700426webrtc_fuzzer_test("stun_parser_fuzzer") {
427 sources = [
428 "stun_parser_fuzzer.cc",
429 ]
430 deps = [
431 "../../p2p:rtc_p2p",
432 ]
433 seed_corpus = "corpora/stun-corpus"
434 dict = "corpora/stun.tokens"
435}
katrielc1d4fefb2016-07-06 08:02:00 -0700436
phoglund667bd072016-09-16 05:05:39 -0700437webrtc_fuzzer_test("stun_validator_fuzzer") {
438 sources = [
439 "stun_validator_fuzzer.cc",
440 ]
441 deps = [
442 "../../p2p:rtc_p2p",
443 ]
444 seed_corpus = "corpora/stun-corpus"
445 dict = "corpora/stun.tokens"
446}
katrielc44905cf2016-07-07 05:52:24 -0700447
Qingsi Wang558b93b2018-08-30 10:38:44 -0700448webrtc_fuzzer_test("mdns_parser_fuzzer") {
449 sources = [
450 "mdns_parser_fuzzer.cc",
451 ]
452 deps = [
453 "../../p2p:rtc_p2p",
454 "../../rtc_base:rtc_base_approved",
455 "//third_party/abseil-cpp/absl/memory",
456 ]
457 seed_corpus = "corpora/mdns-corpus"
458}
459
phoglund667bd072016-09-16 05:05:39 -0700460webrtc_fuzzer_test("pseudotcp_parser_fuzzer") {
461 sources = [
462 "pseudotcp_parser_fuzzer.cc",
463 ]
464 deps = [
465 "../../p2p:rtc_p2p",
ehmaldonadof6a861a2017-07-19 10:40:47 -0700466 "../../rtc_base:rtc_base",
phoglund667bd072016-09-16 05:05:39 -0700467 ]
katrielc262ba772016-07-06 05:59:23 -0700468}
minyue435ddf92017-01-23 08:07:05 -0800469
470webrtc_fuzzer_test("transport_feedback_packet_loss_tracker_fuzzer") {
471 sources = [
472 "transport_feedback_packet_loss_tracker_fuzzer.cc",
473 ]
474 deps = [
kwiberg529662a2017-09-04 05:43:17 -0700475 "../../api:array_view",
Fredrik Solenberga8b7c7f2018-01-17 11:18:31 +0100476 "../../audio",
Mirko Bonadeib5728d92017-12-06 07:51:33 +0100477 "../../modules/rtp_rtcp:rtp_rtcp_format",
ehmaldonadof6a861a2017-07-19 10:40:47 -0700478 "../../rtc_base:rtc_base_approved",
minyue435ddf92017-01-23 08:07:05 -0800479 ]
480}
Alex Loikoab20a602018-01-16 12:50:34 +0100481rtc_static_library("audio_processing_fuzzer_helper") {
aleloi8c512822017-06-20 05:26:55 -0700482 sources = [
Alex Loikoab20a602018-01-16 12:50:34 +0100483 "audio_processing_fuzzer_helper.cc",
484 "audio_processing_fuzzer_helper.h",
aleloi8c512822017-06-20 05:26:55 -0700485 ]
486 deps = [
Alex Loikoab20a602018-01-16 12:50:34 +0100487 ":fuzz_data_helper",
Fredrik Solenbergbbf21a32018-04-12 22:44:09 +0200488 "../../api/audio:audio_frame_api",
aleloi8c512822017-06-20 05:26:55 -0700489 "../../modules/audio_processing",
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100490 "../../rtc_base:checks",
ehmaldonadof6a861a2017-07-19 10:40:47 -0700491 "../../rtc_base:rtc_base_approved",
Danil Chapovalov431abd92018-06-18 12:54:17 +0200492 "//third_party/abseil-cpp/absl/types:optional",
aleloi8c512822017-06-20 05:26:55 -0700493 ]
494}
Henrik Lundin5dcbbfd2017-12-07 09:21:36 +0100495
Alex Loikoab20a602018-01-16 12:50:34 +0100496webrtc_fuzzer_test("audio_processing_fuzzer") {
497 sources = [
498 "audio_processing_configs_fuzzer.cc",
499 ]
500 deps = [
501 ":audio_processing_fuzzer_helper",
Gustaf Ullberg0efa9412018-02-27 13:58:45 +0100502 "../../api/audio:aec3_factory",
Alex Loikoab20a602018-01-16 12:50:34 +0100503 "../../modules/audio_processing",
Gustaf Ullbergf35c6662018-02-23 13:18:29 +0100504 "../../modules/audio_processing/aec3",
Alex Loikof344dbb2018-06-19 12:33:20 +0200505 "../../modules/audio_processing/aec_dump:mock_aec_dump",
506 "../../rtc_base:ptr_util",
Alex Loikoa05ee822018-02-20 15:58:36 +0100507 "../../rtc_base:rtc_base_approved",
Karl Wiberg12edf4c2018-03-07 14:18:56 +0100508 "../../rtc_base:safe_minmax",
Mirko Bonadei17f48782018-09-28 08:51:10 +0200509 "../../system_wrappers:field_trial",
Mirko Bonadeie9b18542018-07-24 10:17:20 +0200510 "//third_party/abseil-cpp/absl/memory",
Alex Loikoab20a602018-01-16 12:50:34 +0100511 ]
Alex Loiko38c15d32018-03-02 13:53:09 +0100512 seed_corpus = "corpora/audio_processing-corpus"
Alex Loikoab20a602018-01-16 12:50:34 +0100513}
514
Sam Zackrissonf341f3f2018-06-21 14:09:16 +0200515webrtc_fuzzer_test("agc_fuzzer") {
516 sources = [
517 "agc_fuzzer.cc",
518 ]
519 deps = [
520 ":fuzz_data_helper",
521 "../../modules/audio_processing",
522 "../../rtc_base:rtc_base_approved",
523 "../../rtc_base:safe_minmax",
Mirko Bonadeie9b18542018-07-24 10:17:20 +0200524 "//third_party/abseil-cpp/absl/memory",
Sam Zackrissonf341f3f2018-06-21 14:09:16 +0200525 ]
526
527 seed_corpus = "corpora/agc-corpus"
528 libfuzzer_options = [ "max_len=200000" ]
529}
530
Henrik Lundin5dcbbfd2017-12-07 09:21:36 +0100531webrtc_fuzzer_test("comfort_noise_decoder_fuzzer") {
532 sources = [
533 "comfort_noise_decoder_fuzzer.cc",
534 ]
535 deps = [
Henrik Lundin5dcbbfd2017-12-07 09:21:36 +0100536 "../../api:array_view",
537 "../../modules/audio_coding:cng",
538 "../../rtc_base:rtc_base_approved",
539 ]
Henrik Lundinc05bd732018-07-04 11:01:06 +0200540
541 libfuzzer_options = [ "max_len=5000" ]
Henrik Lundin5dcbbfd2017-12-07 09:21:36 +0100542}
543
philipelc1ee9d52018-05-16 14:06:13 +0200544webrtc_fuzzer_test("rtp_frame_reference_finder_fuzzer") {
545 sources = [
546 "rtp_frame_reference_finder_fuzzer.cc",
547 ]
548 deps = [
549 "../../modules/video_coding/",
550 "../../rtc_base:ptr_util",
551 "../../system_wrappers",
Mirko Bonadeie9b18542018-07-24 10:17:20 +0200552 "//third_party/abseil-cpp/absl/memory",
philipelc1ee9d52018-05-16 14:06:13 +0200553 ]
554 libfuzzer_options = [ "max_len=20000" ]
555}
philipel1e9cf7f2018-05-17 13:34:53 +0200556
557webrtc_fuzzer_test("frame_buffer2_fuzzer") {
558 sources = [
559 "frame_buffer2_fuzzer.cc",
560 ]
561 deps = [
562 "../../modules/video_coding/",
563 "../../system_wrappers:system_wrappers",
564 ]
565 libfuzzer_options = [ "max_len=10000" ]
566}