1*d9f75844SAndroid Build Coastguard Worker# Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. 2*d9f75844SAndroid Build Coastguard Worker# 3*d9f75844SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license 4*d9f75844SAndroid Build Coastguard Worker# that can be found in the LICENSE file in the root of the source 5*d9f75844SAndroid Build Coastguard Worker# tree. An additional intellectual property rights grant can be found 6*d9f75844SAndroid Build Coastguard Worker# in the file PATENTS. All contributing project authors may 7*d9f75844SAndroid Build Coastguard Worker# be found in the AUTHORS file in the root of the source tree. 8*d9f75844SAndroid Build Coastguard Worker 9*d9f75844SAndroid Build Coastguard Workerimport("//build/config/features.gni") 10*d9f75844SAndroid Build Coastguard Workerimport("//testing/libfuzzer/fuzzer_test.gni") 11*d9f75844SAndroid Build Coastguard Workerimport("../../webrtc.gni") 12*d9f75844SAndroid Build Coastguard Worker 13*d9f75844SAndroid Build Coastguard Workerrtc_library("webrtc_fuzzer_main") { 14*d9f75844SAndroid Build Coastguard Worker sources = [ "webrtc_fuzzer_main.cc" ] 15*d9f75844SAndroid Build Coastguard Worker deps = [ 16*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:logging", 17*d9f75844SAndroid Build Coastguard Worker "//testing/libfuzzer:libfuzzer_main", 18*d9f75844SAndroid Build Coastguard Worker ] 19*d9f75844SAndroid Build Coastguard Worker 20*d9f75844SAndroid Build Coastguard Worker # When WebRTC fuzzer tests are built on Chromium bots they need to link 21*d9f75844SAndroid Build Coastguard Worker # with Chromium's implementation of metrics, field trial, and system time. 22*d9f75844SAndroid Build Coastguard Worker if (build_with_chromium) { 23*d9f75844SAndroid Build Coastguard Worker deps += [ 24*d9f75844SAndroid Build Coastguard Worker "../../../webrtc_overrides:field_trial", 25*d9f75844SAndroid Build Coastguard Worker "../../../webrtc_overrides:metrics", 26*d9f75844SAndroid Build Coastguard Worker "../../../webrtc_overrides:system_time", 27*d9f75844SAndroid Build Coastguard Worker ] 28*d9f75844SAndroid Build Coastguard Worker } 29*d9f75844SAndroid Build Coastguard Worker} 30*d9f75844SAndroid Build Coastguard Worker 31*d9f75844SAndroid Build Coastguard Workerrtc_library("fuzz_data_helper") { 32*d9f75844SAndroid Build Coastguard Worker testonly = true 33*d9f75844SAndroid Build Coastguard Worker sources = [ 34*d9f75844SAndroid Build Coastguard Worker "fuzz_data_helper.cc", 35*d9f75844SAndroid Build Coastguard Worker "fuzz_data_helper.h", 36*d9f75844SAndroid Build Coastguard Worker ] 37*d9f75844SAndroid Build Coastguard Worker deps = [ 38*d9f75844SAndroid Build Coastguard Worker "../../api:array_view", 39*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_rtcp_format", 40*d9f75844SAndroid Build Coastguard Worker ] 41*d9f75844SAndroid Build Coastguard Worker visibility = [ ":*" ] # Only targets in this file can depend on this. 42*d9f75844SAndroid Build Coastguard Worker} 43*d9f75844SAndroid Build Coastguard Worker 44*d9f75844SAndroid Build Coastguard Workerset_defaults("webrtc_fuzzer_test") { 45*d9f75844SAndroid Build Coastguard Worker configs = rtc_add_configs 46*d9f75844SAndroid Build Coastguard Worker absl_deps = [] 47*d9f75844SAndroid Build Coastguard Worker} 48*d9f75844SAndroid Build Coastguard Worker 49*d9f75844SAndroid Build Coastguard Workertemplate("webrtc_fuzzer_test") { 50*d9f75844SAndroid Build Coastguard Worker fuzzer_test(target_name) { 51*d9f75844SAndroid Build Coastguard Worker forward_variables_from(invoker, "*") 52*d9f75844SAndroid Build Coastguard Worker deps += [ 53*d9f75844SAndroid Build Coastguard Worker ":fuzz_data_helper", 54*d9f75844SAndroid Build Coastguard Worker ":webrtc_fuzzer_main", 55*d9f75844SAndroid Build Coastguard Worker ] 56*d9f75844SAndroid Build Coastguard Worker additional_configs = configs 57*d9f75844SAndroid Build Coastguard Worker 58*d9f75844SAndroid Build Coastguard Worker # If absl_deps is [], no action is needed. If not [], then it needs to be 59*d9f75844SAndroid Build Coastguard Worker # converted to //third_party/abseil-cpp:absl when build_with_chromium=true 60*d9f75844SAndroid Build Coastguard Worker # otherwise it just needs to be added to deps. 61*d9f75844SAndroid Build Coastguard Worker if (absl_deps != []) { 62*d9f75844SAndroid Build Coastguard Worker if (!defined(deps)) { 63*d9f75844SAndroid Build Coastguard Worker deps = [] 64*d9f75844SAndroid Build Coastguard Worker } 65*d9f75844SAndroid Build Coastguard Worker if (build_with_chromium) { 66*d9f75844SAndroid Build Coastguard Worker deps += [ "//third_party/abseil-cpp:absl" ] 67*d9f75844SAndroid Build Coastguard Worker } else { 68*d9f75844SAndroid Build Coastguard Worker deps += absl_deps 69*d9f75844SAndroid Build Coastguard Worker } 70*d9f75844SAndroid Build Coastguard Worker } 71*d9f75844SAndroid Build Coastguard Worker 72*d9f75844SAndroid Build Coastguard Worker if (!build_with_chromium && is_clang) { 73*d9f75844SAndroid Build Coastguard Worker suppressed_configs = [ "//build/config/clang:find_bad_constructs" ] 74*d9f75844SAndroid Build Coastguard Worker } 75*d9f75844SAndroid Build Coastguard Worker } 76*d9f75844SAndroid Build Coastguard Worker} 77*d9f75844SAndroid Build Coastguard Worker 78*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("h264_depacketizer_fuzzer") { 79*d9f75844SAndroid Build Coastguard Worker sources = [ "h264_depacketizer_fuzzer.cc" ] 80*d9f75844SAndroid Build Coastguard Worker deps = [ "../../modules/rtp_rtcp" ] 81*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/h264-depacketizer-fuzzer-corpus" 82*d9f75844SAndroid Build Coastguard Worker} 83*d9f75844SAndroid Build Coastguard Worker 84*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("vp8_depacketizer_fuzzer") { 85*d9f75844SAndroid Build Coastguard Worker sources = [ "vp8_depacketizer_fuzzer.cc" ] 86*d9f75844SAndroid Build Coastguard Worker deps = [ 87*d9f75844SAndroid Build Coastguard Worker "../../api:array_view", 88*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp", 89*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_video_header", 90*d9f75844SAndroid Build Coastguard Worker ] 91*d9f75844SAndroid Build Coastguard Worker} 92*d9f75844SAndroid Build Coastguard Worker 93*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("vp9_depacketizer_fuzzer") { 94*d9f75844SAndroid Build Coastguard Worker sources = [ "vp9_depacketizer_fuzzer.cc" ] 95*d9f75844SAndroid Build Coastguard Worker deps = [ 96*d9f75844SAndroid Build Coastguard Worker "../../api:array_view", 97*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp", 98*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_video_header", 99*d9f75844SAndroid Build Coastguard Worker ] 100*d9f75844SAndroid Build Coastguard Worker} 101*d9f75844SAndroid Build Coastguard Worker 102*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("vp8_qp_parser_fuzzer") { 103*d9f75844SAndroid Build Coastguard Worker sources = [ "vp8_qp_parser_fuzzer.cc" ] 104*d9f75844SAndroid Build Coastguard Worker deps = [ 105*d9f75844SAndroid Build Coastguard Worker "../../modules/video_coding:video_coding_utility", 106*d9f75844SAndroid Build Coastguard Worker "../../modules/video_coding/", 107*d9f75844SAndroid Build Coastguard Worker ] 108*d9f75844SAndroid Build Coastguard Worker} 109*d9f75844SAndroid Build Coastguard Worker 110*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("vp9_qp_parser_fuzzer") { 111*d9f75844SAndroid Build Coastguard Worker sources = [ "vp9_qp_parser_fuzzer.cc" ] 112*d9f75844SAndroid Build Coastguard Worker deps = [ 113*d9f75844SAndroid Build Coastguard Worker "../../modules/video_coding:video_coding_utility", 114*d9f75844SAndroid Build Coastguard Worker "../../modules/video_coding/", 115*d9f75844SAndroid Build Coastguard Worker ] 116*d9f75844SAndroid Build Coastguard Worker} 117*d9f75844SAndroid Build Coastguard Worker 118*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("h264_bitstream_parser_fuzzer") { 119*d9f75844SAndroid Build Coastguard Worker sources = [ "h264_bitstream_parser_fuzzer.cc" ] 120*d9f75844SAndroid Build Coastguard Worker deps = [ 121*d9f75844SAndroid Build Coastguard Worker "../../common_video", 122*d9f75844SAndroid Build Coastguard Worker "../../modules/video_coding/", 123*d9f75844SAndroid Build Coastguard Worker ] 124*d9f75844SAndroid Build Coastguard Worker} 125*d9f75844SAndroid Build Coastguard Worker 126*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("forward_error_correction_fuzzer") { 127*d9f75844SAndroid Build Coastguard Worker sources = [ "forward_error_correction_fuzzer.cc" ] 128*d9f75844SAndroid Build Coastguard Worker deps = [ 129*d9f75844SAndroid Build Coastguard Worker "../../api:scoped_refptr", 130*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp", 131*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_rtcp_format", 132*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:byte_buffer", 133*d9f75844SAndroid Build Coastguard Worker ] 134*d9f75844SAndroid Build Coastguard Worker} 135*d9f75844SAndroid Build Coastguard Worker 136*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("flexfec_header_reader_fuzzer") { 137*d9f75844SAndroid Build Coastguard Worker sources = [ "flexfec_header_reader_fuzzer.cc" ] 138*d9f75844SAndroid Build Coastguard Worker deps = [ 139*d9f75844SAndroid Build Coastguard Worker "../../api:scoped_refptr", 140*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp", 141*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_rtcp_format", 142*d9f75844SAndroid Build Coastguard Worker ] 143*d9f75844SAndroid Build Coastguard Worker} 144*d9f75844SAndroid Build Coastguard Worker 145*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("flexfec_sender_fuzzer") { 146*d9f75844SAndroid Build Coastguard Worker sources = [ "flexfec_sender_fuzzer.cc" ] 147*d9f75844SAndroid Build Coastguard Worker deps = [ 148*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp", 149*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_rtcp_format", 150*d9f75844SAndroid Build Coastguard Worker "../../system_wrappers", 151*d9f75844SAndroid Build Coastguard Worker ] 152*d9f75844SAndroid Build Coastguard Worker} 153*d9f75844SAndroid Build Coastguard Worker 154*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("ulpfec_header_reader_fuzzer") { 155*d9f75844SAndroid Build Coastguard Worker sources = [ "ulpfec_header_reader_fuzzer.cc" ] 156*d9f75844SAndroid Build Coastguard Worker deps = [ 157*d9f75844SAndroid Build Coastguard Worker "../../api:scoped_refptr", 158*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp", 159*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:fec_test_helper", 160*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_rtcp_format", 161*d9f75844SAndroid Build Coastguard Worker ] 162*d9f75844SAndroid Build Coastguard Worker} 163*d9f75844SAndroid Build Coastguard Worker 164*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("ulpfec_generator_fuzzer") { 165*d9f75844SAndroid Build Coastguard Worker sources = [ "ulpfec_generator_fuzzer.cc" ] 166*d9f75844SAndroid Build Coastguard Worker deps = [ 167*d9f75844SAndroid Build Coastguard Worker "../../modules:module_api_public", 168*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp", 169*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:fec_test_helper", 170*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_rtcp_format", 171*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:checks", 172*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:copy_on_write_buffer", 173*d9f75844SAndroid Build Coastguard Worker "../../system_wrappers", 174*d9f75844SAndroid Build Coastguard Worker ] 175*d9f75844SAndroid Build Coastguard Worker} 176*d9f75844SAndroid Build Coastguard Worker 177*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("ulpfec_receiver_fuzzer") { 178*d9f75844SAndroid Build Coastguard Worker sources = [ "ulpfec_receiver_fuzzer.cc" ] 179*d9f75844SAndroid Build Coastguard Worker deps = [ 180*d9f75844SAndroid Build Coastguard Worker ":fuzz_data_helper", 181*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp", 182*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_rtcp_format", 183*d9f75844SAndroid Build Coastguard Worker ] 184*d9f75844SAndroid Build Coastguard Worker} 185*d9f75844SAndroid Build Coastguard Worker 186*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("flexfec_receiver_fuzzer") { 187*d9f75844SAndroid Build Coastguard Worker sources = [ "flexfec_receiver_fuzzer.cc" ] 188*d9f75844SAndroid Build Coastguard Worker deps = [ 189*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp", 190*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_rtcp_format", 191*d9f75844SAndroid Build Coastguard Worker ] 192*d9f75844SAndroid Build Coastguard Worker} 193*d9f75844SAndroid Build Coastguard Worker 194*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("packet_buffer_fuzzer") { 195*d9f75844SAndroid Build Coastguard Worker sources = [ "packet_buffer_fuzzer.cc" ] 196*d9f75844SAndroid Build Coastguard Worker deps = [ 197*d9f75844SAndroid Build Coastguard Worker "../../modules/video_coding:packet_buffer", 198*d9f75844SAndroid Build Coastguard Worker "../../modules/video_coding/", 199*d9f75844SAndroid Build Coastguard Worker "../../system_wrappers", 200*d9f75844SAndroid Build Coastguard Worker ] 201*d9f75844SAndroid Build Coastguard Worker} 202*d9f75844SAndroid Build Coastguard Worker 203*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("rtcp_receiver_fuzzer") { 204*d9f75844SAndroid Build Coastguard Worker sources = [ "rtcp_receiver_fuzzer.cc" ] 205*d9f75844SAndroid Build Coastguard Worker deps = [ 206*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp", 207*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_rtcp_format", 208*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:checks", 209*d9f75844SAndroid Build Coastguard Worker "../../system_wrappers", 210*d9f75844SAndroid Build Coastguard Worker ] 211*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/rtcp-corpus" 212*d9f75844SAndroid Build Coastguard Worker} 213*d9f75844SAndroid Build Coastguard Worker 214*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("rtp_packet_fuzzer") { 215*d9f75844SAndroid Build Coastguard Worker sources = [ "rtp_packet_fuzzer.cc" ] 216*d9f75844SAndroid Build Coastguard Worker deps = [ "../../modules/rtp_rtcp:rtp_rtcp_format" ] 217*d9f75844SAndroid Build Coastguard Worker absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] 218*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/rtp-corpus" 219*d9f75844SAndroid Build Coastguard Worker} 220*d9f75844SAndroid Build Coastguard Worker 221*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("rtp_packetizer_av1_fuzzer") { 222*d9f75844SAndroid Build Coastguard Worker sources = [ "rtp_packetizer_av1_fuzzer.cc" ] 223*d9f75844SAndroid Build Coastguard Worker deps = [ 224*d9f75844SAndroid Build Coastguard Worker "../../api/video:video_frame_type", 225*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_rtcp", 226*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_rtcp_format", 227*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:checks", 228*d9f75844SAndroid Build Coastguard Worker ] 229*d9f75844SAndroid Build Coastguard Worker} 230*d9f75844SAndroid Build Coastguard Worker 231*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("congestion_controller_feedback_fuzzer") { 232*d9f75844SAndroid Build Coastguard Worker sources = [ "congestion_controller_feedback_fuzzer.cc" ] 233*d9f75844SAndroid Build Coastguard Worker deps = [ 234*d9f75844SAndroid Build Coastguard Worker "../../modules/congestion_controller", 235*d9f75844SAndroid Build Coastguard Worker "../../modules/pacing", 236*d9f75844SAndroid Build Coastguard Worker "../../modules/remote_bitrate_estimator", 237*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_rtcp_format", 238*d9f75844SAndroid Build Coastguard Worker ] 239*d9f75844SAndroid Build Coastguard Worker absl_deps = [ "//third_party/abseil-cpp/absl/functional:bind_front" ] 240*d9f75844SAndroid Build Coastguard Worker} 241*d9f75844SAndroid Build Coastguard Worker 242*d9f75844SAndroid Build Coastguard Workerrtc_library("audio_decoder_fuzzer") { 243*d9f75844SAndroid Build Coastguard Worker testonly = true 244*d9f75844SAndroid Build Coastguard Worker sources = [ 245*d9f75844SAndroid Build Coastguard Worker "audio_decoder_fuzzer.cc", 246*d9f75844SAndroid Build Coastguard Worker "audio_decoder_fuzzer.h", 247*d9f75844SAndroid Build Coastguard Worker ] 248*d9f75844SAndroid Build Coastguard Worker deps = [ 249*d9f75844SAndroid Build Coastguard Worker "../../api/audio_codecs:audio_codecs_api", 250*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_rtcp_format", 251*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:checks", 252*d9f75844SAndroid Build Coastguard Worker ] 253*d9f75844SAndroid Build Coastguard Worker absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] 254*d9f75844SAndroid Build Coastguard Worker} 255*d9f75844SAndroid Build Coastguard Worker 256*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("audio_decoder_g722_fuzzer") { 257*d9f75844SAndroid Build Coastguard Worker sources = [ "audio_decoder_g722_fuzzer.cc" ] 258*d9f75844SAndroid Build Coastguard Worker deps = [ 259*d9f75844SAndroid Build Coastguard Worker ":audio_decoder_fuzzer", 260*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_coding:g722", 261*d9f75844SAndroid Build Coastguard Worker ] 262*d9f75844SAndroid Build Coastguard Worker} 263*d9f75844SAndroid Build Coastguard Worker 264*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("audio_decoder_ilbc_fuzzer") { 265*d9f75844SAndroid Build Coastguard Worker sources = [ "audio_decoder_ilbc_fuzzer.cc" ] 266*d9f75844SAndroid Build Coastguard Worker deps = [ 267*d9f75844SAndroid Build Coastguard Worker ":audio_decoder_fuzzer", 268*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_coding:ilbc", 269*d9f75844SAndroid Build Coastguard Worker ] 270*d9f75844SAndroid Build Coastguard Worker} 271*d9f75844SAndroid Build Coastguard Worker 272*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("audio_decoder_opus_fuzzer") { 273*d9f75844SAndroid Build Coastguard Worker sources = [ "audio_decoder_opus_fuzzer.cc" ] 274*d9f75844SAndroid Build Coastguard Worker deps = [ 275*d9f75844SAndroid Build Coastguard Worker ":audio_decoder_fuzzer", 276*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_coding:webrtc_opus", 277*d9f75844SAndroid Build Coastguard Worker ] 278*d9f75844SAndroid Build Coastguard Worker} 279*d9f75844SAndroid Build Coastguard Worker 280*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("audio_decoder_opus_redundant_fuzzer") { 281*d9f75844SAndroid Build Coastguard Worker sources = [ "audio_decoder_opus_redundant_fuzzer.cc" ] 282*d9f75844SAndroid Build Coastguard Worker deps = [ 283*d9f75844SAndroid Build Coastguard Worker ":audio_decoder_fuzzer", 284*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_coding:webrtc_opus", 285*d9f75844SAndroid Build Coastguard Worker ] 286*d9f75844SAndroid Build Coastguard Worker} 287*d9f75844SAndroid Build Coastguard Worker 288*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("audio_decoder_multiopus_fuzzer") { 289*d9f75844SAndroid Build Coastguard Worker sources = [ "audio_decoder_multistream_opus_fuzzer.cc" ] 290*d9f75844SAndroid Build Coastguard Worker deps = [ 291*d9f75844SAndroid Build Coastguard Worker ":audio_decoder_fuzzer", 292*d9f75844SAndroid Build Coastguard Worker "../../api/audio_codecs/opus:audio_decoder_multiopus", 293*d9f75844SAndroid Build Coastguard Worker "../../api/audio_codecs/opus:audio_decoder_opus_config", 294*d9f75844SAndroid Build Coastguard Worker ] 295*d9f75844SAndroid Build Coastguard Worker} 296*d9f75844SAndroid Build Coastguard Worker 297*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("audio_decoder_pcm_fuzzer") { 298*d9f75844SAndroid Build Coastguard Worker sources = [ "audio_decoder_pcm_fuzzer.cc" ] 299*d9f75844SAndroid Build Coastguard Worker deps = [ 300*d9f75844SAndroid Build Coastguard Worker ":audio_decoder_fuzzer", 301*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_coding:g711", 302*d9f75844SAndroid Build Coastguard Worker ] 303*d9f75844SAndroid Build Coastguard Worker} 304*d9f75844SAndroid Build Coastguard Worker 305*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("audio_decoder_pcm16b_fuzzer") { 306*d9f75844SAndroid Build Coastguard Worker sources = [ "audio_decoder_pcm16b_fuzzer.cc" ] 307*d9f75844SAndroid Build Coastguard Worker deps = [ 308*d9f75844SAndroid Build Coastguard Worker ":audio_decoder_fuzzer", 309*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_coding:pcm16b", 310*d9f75844SAndroid Build Coastguard Worker ] 311*d9f75844SAndroid Build Coastguard Worker} 312*d9f75844SAndroid Build Coastguard Worker 313*d9f75844SAndroid Build Coastguard Workerrtc_library("audio_encoder_fuzzer") { 314*d9f75844SAndroid Build Coastguard Worker testonly = true 315*d9f75844SAndroid Build Coastguard Worker sources = [ 316*d9f75844SAndroid Build Coastguard Worker "audio_encoder_fuzzer.cc", 317*d9f75844SAndroid Build Coastguard Worker "audio_encoder_fuzzer.h", 318*d9f75844SAndroid Build Coastguard Worker ] 319*d9f75844SAndroid Build Coastguard Worker deps = [ 320*d9f75844SAndroid Build Coastguard Worker ":fuzz_data_helper", 321*d9f75844SAndroid Build Coastguard Worker "../../api:array_view", 322*d9f75844SAndroid Build Coastguard Worker "../../api/audio_codecs:audio_codecs_api", 323*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:buffer", 324*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:checks", 325*d9f75844SAndroid Build Coastguard Worker ] 326*d9f75844SAndroid Build Coastguard Worker} 327*d9f75844SAndroid Build Coastguard Worker 328*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("audio_encoder_opus_fuzzer") { 329*d9f75844SAndroid Build Coastguard Worker sources = [ "audio_encoder_opus_fuzzer.cc" ] 330*d9f75844SAndroid Build Coastguard Worker deps = [ 331*d9f75844SAndroid Build Coastguard Worker ":audio_encoder_fuzzer", 332*d9f75844SAndroid Build Coastguard Worker "../../api/audio_codecs/opus:audio_encoder_opus", 333*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:checks", 334*d9f75844SAndroid Build Coastguard Worker ] 335*d9f75844SAndroid Build Coastguard Worker} 336*d9f75844SAndroid Build Coastguard Worker 337*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("turn_unwrap_fuzzer") { 338*d9f75844SAndroid Build Coastguard Worker sources = [ "turn_unwrap_fuzzer.cc" ] 339*d9f75844SAndroid Build Coastguard Worker deps = [ 340*d9f75844SAndroid Build Coastguard Worker "../../media", 341*d9f75844SAndroid Build Coastguard Worker "../../media:rtc_media_base", 342*d9f75844SAndroid Build Coastguard Worker ] 343*d9f75844SAndroid Build Coastguard Worker} 344*d9f75844SAndroid Build Coastguard Worker 345*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("neteq_rtp_fuzzer") { 346*d9f75844SAndroid Build Coastguard Worker sources = [ "neteq_rtp_fuzzer.cc" ] 347*d9f75844SAndroid Build Coastguard Worker deps = [ 348*d9f75844SAndroid Build Coastguard Worker "../../api:array_view", 349*d9f75844SAndroid Build Coastguard Worker "../../api/audio_codecs:builtin_audio_decoder_factory", 350*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_coding:neteq", 351*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_coding:neteq_test_tools", 352*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_coding:neteq_tools_minimal", 353*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_coding:pcm16b", 354*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_rtcp_format", 355*d9f75844SAndroid Build Coastguard Worker ] 356*d9f75844SAndroid Build Coastguard Worker} 357*d9f75844SAndroid Build Coastguard Worker 358*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("neteq_signal_fuzzer") { 359*d9f75844SAndroid Build Coastguard Worker sources = [ "neteq_signal_fuzzer.cc" ] 360*d9f75844SAndroid Build Coastguard Worker deps = [ 361*d9f75844SAndroid Build Coastguard Worker "../../api:array_view", 362*d9f75844SAndroid Build Coastguard Worker "../../api/audio_codecs:builtin_audio_decoder_factory", 363*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_coding:neteq", 364*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_coding:neteq_test_tools", 365*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_coding:neteq_tools_minimal", 366*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_coding:pcm16b", 367*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:random", 368*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:safe_conversions", 369*d9f75844SAndroid Build Coastguard Worker ] 370*d9f75844SAndroid Build Coastguard Worker} 371*d9f75844SAndroid Build Coastguard Worker 372*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("residual_echo_detector_fuzzer") { 373*d9f75844SAndroid Build Coastguard Worker sources = [ "residual_echo_detector_fuzzer.cc" ] 374*d9f75844SAndroid Build Coastguard Worker deps = [ 375*d9f75844SAndroid Build Coastguard Worker "../../api/audio:echo_detector_creator", 376*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:checks", 377*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:refcount", 378*d9f75844SAndroid Build Coastguard Worker ] 379*d9f75844SAndroid Build Coastguard Worker} 380*d9f75844SAndroid Build Coastguard Worker 381*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("sdp_parser_fuzzer") { 382*d9f75844SAndroid Build Coastguard Worker sources = [ "sdp_parser_fuzzer.cc" ] 383*d9f75844SAndroid Build Coastguard Worker deps = [ 384*d9f75844SAndroid Build Coastguard Worker "../../api:libjingle_peerconnection_api", 385*d9f75844SAndroid Build Coastguard Worker "../../pc:libjingle_peerconnection", 386*d9f75844SAndroid Build Coastguard Worker ] 387*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/sdp-corpus" 388*d9f75844SAndroid Build Coastguard Worker} 389*d9f75844SAndroid Build Coastguard Worker 390*d9f75844SAndroid Build Coastguard Workerif (!build_with_chromium) { 391*d9f75844SAndroid Build Coastguard Worker # This target depends on test infrastructure that can't be built 392*d9f75844SAndroid Build Coastguard Worker # with Chromium at the moment. 393*d9f75844SAndroid Build Coastguard Worker # TODO(bugs.chromium.org/12534): Make this fuzzer build in Chromium. 394*d9f75844SAndroid Build Coastguard Worker 395*d9f75844SAndroid Build Coastguard Worker webrtc_fuzzer_test("sdp_integration_fuzzer") { 396*d9f75844SAndroid Build Coastguard Worker sources = [ "sdp_integration_fuzzer.cc" ] 397*d9f75844SAndroid Build Coastguard Worker deps = [ 398*d9f75844SAndroid Build Coastguard Worker "../../api:libjingle_peerconnection_api", 399*d9f75844SAndroid Build Coastguard Worker "../../pc:integration_test_helpers", 400*d9f75844SAndroid Build Coastguard Worker "../../pc:libjingle_peerconnection", 401*d9f75844SAndroid Build Coastguard Worker "../../test:test_support", 402*d9f75844SAndroid Build Coastguard Worker ] 403*d9f75844SAndroid Build Coastguard Worker absl_deps = [ "//third_party/abseil-cpp/absl/strings" ] 404*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/sdp-corpus" 405*d9f75844SAndroid Build Coastguard Worker } 406*d9f75844SAndroid Build Coastguard Worker} 407*d9f75844SAndroid Build Coastguard Worker 408*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("stun_parser_fuzzer") { 409*d9f75844SAndroid Build Coastguard Worker sources = [ "stun_parser_fuzzer.cc" ] 410*d9f75844SAndroid Build Coastguard Worker deps = [ 411*d9f75844SAndroid Build Coastguard Worker "../../api/transport:stun_types", 412*d9f75844SAndroid Build Coastguard Worker "../../p2p:rtc_p2p", 413*d9f75844SAndroid Build Coastguard Worker ] 414*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/stun-corpus" 415*d9f75844SAndroid Build Coastguard Worker dict = "corpora/stun.tokens" 416*d9f75844SAndroid Build Coastguard Worker} 417*d9f75844SAndroid Build Coastguard Worker 418*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("stun_validator_fuzzer") { 419*d9f75844SAndroid Build Coastguard Worker sources = [ "stun_validator_fuzzer.cc" ] 420*d9f75844SAndroid Build Coastguard Worker deps = [ 421*d9f75844SAndroid Build Coastguard Worker "../../api/transport:stun_types", 422*d9f75844SAndroid Build Coastguard Worker "../../p2p:rtc_p2p", 423*d9f75844SAndroid Build Coastguard Worker ] 424*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/stun-corpus" 425*d9f75844SAndroid Build Coastguard Worker dict = "corpora/stun.tokens" 426*d9f75844SAndroid Build Coastguard Worker} 427*d9f75844SAndroid Build Coastguard Worker 428*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("pseudotcp_parser_fuzzer") { 429*d9f75844SAndroid Build Coastguard Worker sources = [ "pseudotcp_parser_fuzzer.cc" ] 430*d9f75844SAndroid Build Coastguard Worker deps = [ 431*d9f75844SAndroid Build Coastguard Worker "../../p2p:rtc_p2p", 432*d9f75844SAndroid Build Coastguard Worker "../../rtc_base", 433*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:threading", 434*d9f75844SAndroid Build Coastguard Worker ] 435*d9f75844SAndroid Build Coastguard Worker} 436*d9f75844SAndroid Build Coastguard Worker 437*d9f75844SAndroid Build Coastguard Workerrtc_library("audio_processing_fuzzer_helper") { 438*d9f75844SAndroid Build Coastguard Worker testonly = true 439*d9f75844SAndroid Build Coastguard Worker sources = [ 440*d9f75844SAndroid Build Coastguard Worker "audio_processing_fuzzer_helper.cc", 441*d9f75844SAndroid Build Coastguard Worker "audio_processing_fuzzer_helper.h", 442*d9f75844SAndroid Build Coastguard Worker ] 443*d9f75844SAndroid Build Coastguard Worker deps = [ 444*d9f75844SAndroid Build Coastguard Worker ":fuzz_data_helper", 445*d9f75844SAndroid Build Coastguard Worker "../../api/audio:audio_frame_api", 446*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing", 447*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing:api", 448*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing:audio_frame_proxies", 449*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:checks", 450*d9f75844SAndroid Build Coastguard Worker ] 451*d9f75844SAndroid Build Coastguard Worker absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] 452*d9f75844SAndroid Build Coastguard Worker} 453*d9f75844SAndroid Build Coastguard Worker 454*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("audio_processing_fuzzer") { 455*d9f75844SAndroid Build Coastguard Worker sources = [ "audio_processing_configs_fuzzer.cc" ] 456*d9f75844SAndroid Build Coastguard Worker deps = [ 457*d9f75844SAndroid Build Coastguard Worker ":audio_processing_fuzzer_helper", 458*d9f75844SAndroid Build Coastguard Worker "../../api:scoped_refptr", 459*d9f75844SAndroid Build Coastguard Worker "../../api/audio:aec3_factory", 460*d9f75844SAndroid Build Coastguard Worker "../../api/audio:echo_detector_creator", 461*d9f75844SAndroid Build Coastguard Worker "../../api/task_queue:default_task_queue_factory", 462*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing", 463*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing:api", 464*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing:audio_buffer", 465*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing:audioproc_test_utils", 466*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing/aec3", 467*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing/aec_dump", 468*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing/aec_dump:aec_dump_impl", 469*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:macromagic", 470*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:rtc_task_queue", 471*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:safe_minmax", 472*d9f75844SAndroid Build Coastguard Worker "../../system_wrappers:field_trial", 473*d9f75844SAndroid Build Coastguard Worker ] 474*d9f75844SAndroid Build Coastguard Worker absl_deps = [ "//third_party/abseil-cpp/absl/memory" ] 475*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/audio_processing-corpus" 476*d9f75844SAndroid Build Coastguard Worker} 477*d9f75844SAndroid Build Coastguard Worker 478*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("audio_processing_sample_rate_fuzzer") { 479*d9f75844SAndroid Build Coastguard Worker sources = [ "audio_processing_sample_rate_fuzzer.cc" ] 480*d9f75844SAndroid Build Coastguard Worker deps = [ 481*d9f75844SAndroid Build Coastguard Worker "../../api:scoped_refptr", 482*d9f75844SAndroid Build Coastguard Worker "../../api/audio:audio_frame_api", 483*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing", 484*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing:api", 485*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing:audio_frame_proxies", 486*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing:audioproc_test_utils", 487*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:checks", 488*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:macromagic", 489*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:safe_minmax", 490*d9f75844SAndroid Build Coastguard Worker ] 491*d9f75844SAndroid Build Coastguard Worker} 492*d9f75844SAndroid Build Coastguard Worker 493*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("agc_fuzzer") { 494*d9f75844SAndroid Build Coastguard Worker sources = [ "agc_fuzzer.cc" ] 495*d9f75844SAndroid Build Coastguard Worker deps = [ 496*d9f75844SAndroid Build Coastguard Worker ":fuzz_data_helper", 497*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing", 498*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing:api", 499*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing:audio_buffer", 500*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:macromagic", 501*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:safe_minmax", 502*d9f75844SAndroid Build Coastguard Worker ] 503*d9f75844SAndroid Build Coastguard Worker 504*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/agc-corpus" 505*d9f75844SAndroid Build Coastguard Worker} 506*d9f75844SAndroid Build Coastguard Worker 507*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("aec3_config_json_fuzzer") { 508*d9f75844SAndroid Build Coastguard Worker sources = [ "aec3_config_json_fuzzer.cc" ] 509*d9f75844SAndroid Build Coastguard Worker deps = [ 510*d9f75844SAndroid Build Coastguard Worker ":fuzz_data_helper", 511*d9f75844SAndroid Build Coastguard Worker "../../api/audio:aec3_config", 512*d9f75844SAndroid Build Coastguard Worker "../../api/audio:aec3_config_json", 513*d9f75844SAndroid Build Coastguard Worker ] 514*d9f75844SAndroid Build Coastguard Worker dict = "//testing/libfuzzer/fuzzers/dicts/json.dict" 515*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/aec3-config-json-corpus" 516*d9f75844SAndroid Build Coastguard Worker} 517*d9f75844SAndroid Build Coastguard Worker 518*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("aec3_fuzzer") { 519*d9f75844SAndroid Build Coastguard Worker defines = [] 520*d9f75844SAndroid Build Coastguard Worker if (apm_debug_dump) { 521*d9f75844SAndroid Build Coastguard Worker defines += [ "WEBRTC_APM_DEBUG_DUMP=1" ] 522*d9f75844SAndroid Build Coastguard Worker } else { 523*d9f75844SAndroid Build Coastguard Worker defines += [ "WEBRTC_APM_DEBUG_DUMP=0" ] 524*d9f75844SAndroid Build Coastguard Worker } 525*d9f75844SAndroid Build Coastguard Worker sources = [ "aec3_fuzzer.cc" ] 526*d9f75844SAndroid Build Coastguard Worker deps = [ 527*d9f75844SAndroid Build Coastguard Worker ":fuzz_data_helper", 528*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing:api", 529*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing:audio_buffer", 530*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_processing/aec3", 531*d9f75844SAndroid Build Coastguard Worker ] 532*d9f75844SAndroid Build Coastguard Worker absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] 533*d9f75844SAndroid Build Coastguard Worker} 534*d9f75844SAndroid Build Coastguard Worker 535*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("comfort_noise_decoder_fuzzer") { 536*d9f75844SAndroid Build Coastguard Worker sources = [ "comfort_noise_decoder_fuzzer.cc" ] 537*d9f75844SAndroid Build Coastguard Worker deps = [ 538*d9f75844SAndroid Build Coastguard Worker "../../api:array_view", 539*d9f75844SAndroid Build Coastguard Worker "../../modules/audio_coding:webrtc_cng", 540*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:buffer", 541*d9f75844SAndroid Build Coastguard Worker ] 542*d9f75844SAndroid Build Coastguard Worker} 543*d9f75844SAndroid Build Coastguard Worker 544*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("rtp_depacketizer_av1_assemble_frame_fuzzer") { 545*d9f75844SAndroid Build Coastguard Worker sources = [ "rtp_depacketizer_av1_assemble_frame_fuzzer.cc" ] 546*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/rtp-depacketizer-av1-assemble-frame-corpus" 547*d9f75844SAndroid Build Coastguard Worker deps = [ 548*d9f75844SAndroid Build Coastguard Worker ":fuzz_data_helper", 549*d9f75844SAndroid Build Coastguard Worker "../../api:array_view", 550*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp", 551*d9f75844SAndroid Build Coastguard Worker ] 552*d9f75844SAndroid Build Coastguard Worker} 553*d9f75844SAndroid Build Coastguard Worker 554*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("rtp_dependency_descriptor_fuzzer") { 555*d9f75844SAndroid Build Coastguard Worker sources = [ "rtp_dependency_descriptor_fuzzer.cc" ] 556*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/dependency_descriptor-corpus" 557*d9f75844SAndroid Build Coastguard Worker deps = [ 558*d9f75844SAndroid Build Coastguard Worker "../../api:array_view", 559*d9f75844SAndroid Build Coastguard Worker "../../common_video/generic_frame_descriptor", 560*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_rtcp_format", 561*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:checks", 562*d9f75844SAndroid Build Coastguard Worker ] 563*d9f75844SAndroid Build Coastguard Worker} 564*d9f75844SAndroid Build Coastguard Worker 565*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("rtp_video_layers_allocation_fuzzer") { 566*d9f75844SAndroid Build Coastguard Worker sources = [ "rtp_video_layers_allocation_fuzzer.cc" ] 567*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/video_layers_allocation-corpus" 568*d9f75844SAndroid Build Coastguard Worker deps = [ 569*d9f75844SAndroid Build Coastguard Worker "../../api:array_view", 570*d9f75844SAndroid Build Coastguard Worker "../../api/video:video_layers_allocation", 571*d9f75844SAndroid Build Coastguard Worker "../../modules/rtp_rtcp:rtp_rtcp_format", 572*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:checks", 573*d9f75844SAndroid Build Coastguard Worker ] 574*d9f75844SAndroid Build Coastguard Worker 575*d9f75844SAndroid Build Coastguard Worker # video_layers_allocation is an rtp header extension and thus can't be longer 576*d9f75844SAndroid Build Coastguard Worker # than 255 bytes on the wire. 577*d9f75844SAndroid Build Coastguard Worker libfuzzer_options = [ "max_len=255" ] 578*d9f75844SAndroid Build Coastguard Worker} 579*d9f75844SAndroid Build Coastguard Worker 580*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("rtp_frame_reference_finder_fuzzer") { 581*d9f75844SAndroid Build Coastguard Worker sources = [ "rtp_frame_reference_finder_fuzzer.cc" ] 582*d9f75844SAndroid Build Coastguard Worker deps = [ 583*d9f75844SAndroid Build Coastguard Worker "../../api:rtp_packet_info", 584*d9f75844SAndroid Build Coastguard Worker "../../api:scoped_refptr", 585*d9f75844SAndroid Build Coastguard Worker "../../modules/video_coding/", 586*d9f75844SAndroid Build Coastguard Worker "../../system_wrappers", 587*d9f75844SAndroid Build Coastguard Worker ] 588*d9f75844SAndroid Build Coastguard Worker} 589*d9f75844SAndroid Build Coastguard Worker 590*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("frame_buffer2_fuzzer") { 591*d9f75844SAndroid Build Coastguard Worker sources = [ "frame_buffer2_fuzzer.cc" ] 592*d9f75844SAndroid Build Coastguard Worker deps = [ 593*d9f75844SAndroid Build Coastguard Worker "../../api/task_queue", 594*d9f75844SAndroid Build Coastguard Worker "../../modules/video_coding:frame_buffer2", 595*d9f75844SAndroid Build Coastguard Worker "../../modules/video_coding/timing:timing_module", 596*d9f75844SAndroid Build Coastguard Worker "../../test:scoped_key_value_config", 597*d9f75844SAndroid Build Coastguard Worker "../time_controller:time_controller", 598*d9f75844SAndroid Build Coastguard Worker ] 599*d9f75844SAndroid Build Coastguard Worker} 600*d9f75844SAndroid Build Coastguard Worker 601*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("frame_buffer_fuzzer") { 602*d9f75844SAndroid Build Coastguard Worker sources = [ "frame_buffer_fuzzer.cc" ] 603*d9f75844SAndroid Build Coastguard Worker deps = [ 604*d9f75844SAndroid Build Coastguard Worker ":fuzz_data_helper", 605*d9f75844SAndroid Build Coastguard Worker "../../api:array_view", 606*d9f75844SAndroid Build Coastguard Worker "../../api/video:encoded_frame", 607*d9f75844SAndroid Build Coastguard Worker "../../api/video:frame_buffer", 608*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:rtc_numerics", 609*d9f75844SAndroid Build Coastguard Worker "../../test:scoped_key_value_config", 610*d9f75844SAndroid Build Coastguard Worker ] 611*d9f75844SAndroid Build Coastguard Worker} 612*d9f75844SAndroid Build Coastguard Worker 613*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("field_trial_fuzzer") { 614*d9f75844SAndroid Build Coastguard Worker sources = [ "field_trial_fuzzer.cc" ] 615*d9f75844SAndroid Build Coastguard Worker deps = [ "../../system_wrappers:field_trial" ] 616*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/field_trial-corpus" 617*d9f75844SAndroid Build Coastguard Worker} 618*d9f75844SAndroid Build Coastguard Worker 619*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("string_to_number_fuzzer") { 620*d9f75844SAndroid Build Coastguard Worker sources = [ "string_to_number_fuzzer.cc" ] 621*d9f75844SAndroid Build Coastguard Worker deps = [ "../../rtc_base:stringutils" ] 622*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/string_to_number-corpus" 623*d9f75844SAndroid Build Coastguard Worker} 624*d9f75844SAndroid Build Coastguard Worker 625*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("sctp_utils_fuzzer") { 626*d9f75844SAndroid Build Coastguard Worker sources = [ "sctp_utils_fuzzer.cc" ] 627*d9f75844SAndroid Build Coastguard Worker deps = [ 628*d9f75844SAndroid Build Coastguard Worker "../../api:libjingle_peerconnection_api", 629*d9f75844SAndroid Build Coastguard Worker "../../pc:libjingle_peerconnection", 630*d9f75844SAndroid Build Coastguard Worker "../../pc:sctp_utils", 631*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:copy_on_write_buffer", 632*d9f75844SAndroid Build Coastguard Worker ] 633*d9f75844SAndroid Build Coastguard Worker} 634*d9f75844SAndroid Build Coastguard Worker 635*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("dcsctp_socket_fuzzer") { 636*d9f75844SAndroid Build Coastguard Worker sources = [ "dcsctp_socket_fuzzer.cc" ] 637*d9f75844SAndroid Build Coastguard Worker deps = [ 638*d9f75844SAndroid Build Coastguard Worker "../../net/dcsctp/fuzzers:dcsctp_fuzzers", 639*d9f75844SAndroid Build Coastguard Worker "../../net/dcsctp/public:socket", 640*d9f75844SAndroid Build Coastguard Worker "../../net/dcsctp/public:types", 641*d9f75844SAndroid Build Coastguard Worker "../../net/dcsctp/socket:dcsctp_socket", 642*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:logging", 643*d9f75844SAndroid Build Coastguard Worker ] 644*d9f75844SAndroid Build Coastguard Worker} 645*d9f75844SAndroid Build Coastguard Worker 646*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("ssl_certificate_fuzzer") { 647*d9f75844SAndroid Build Coastguard Worker sources = [ "ssl_certificate_fuzzer.cc" ] 648*d9f75844SAndroid Build Coastguard Worker deps = [ 649*d9f75844SAndroid Build Coastguard Worker "../:rtp_test_utils", 650*d9f75844SAndroid Build Coastguard Worker "../../rtc_base", 651*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:stringutils", 652*d9f75844SAndroid Build Coastguard Worker ] 653*d9f75844SAndroid Build Coastguard Worker} 654*d9f75844SAndroid Build Coastguard Worker 655*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("vp8_replay_fuzzer") { 656*d9f75844SAndroid Build Coastguard Worker sources = [ "vp8_replay_fuzzer.cc" ] 657*d9f75844SAndroid Build Coastguard Worker deps = [ "utils:rtp_replayer" ] 658*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/rtpdump-corpus/vp8" 659*d9f75844SAndroid Build Coastguard Worker} 660*d9f75844SAndroid Build Coastguard Worker 661*d9f75844SAndroid Build Coastguard Workerif (rtc_build_libvpx) { 662*d9f75844SAndroid Build Coastguard Worker webrtc_fuzzer_test("vp9_encoder_references_fuzzer") { 663*d9f75844SAndroid Build Coastguard Worker sources = [ "vp9_encoder_references_fuzzer.cc" ] 664*d9f75844SAndroid Build Coastguard Worker deps = [ 665*d9f75844SAndroid Build Coastguard Worker "..:test_support", 666*d9f75844SAndroid Build Coastguard Worker "../../api:array_view", 667*d9f75844SAndroid Build Coastguard Worker "../../api:field_trials_view", 668*d9f75844SAndroid Build Coastguard Worker "../../api/video:video_frame", 669*d9f75844SAndroid Build Coastguard Worker "../../api/video_codecs:video_codecs_api", 670*d9f75844SAndroid Build Coastguard Worker "../../modules/video_coding:frame_dependencies_calculator", 671*d9f75844SAndroid Build Coastguard Worker "../../modules/video_coding:webrtc_libvpx_interface", 672*d9f75844SAndroid Build Coastguard Worker "../../modules/video_coding:webrtc_vp9", 673*d9f75844SAndroid Build Coastguard Worker "../../rtc_base:safe_compare", 674*d9f75844SAndroid Build Coastguard Worker rtc_libvpx_dir, 675*d9f75844SAndroid Build Coastguard Worker ] 676*d9f75844SAndroid Build Coastguard Worker absl_deps = [ 677*d9f75844SAndroid Build Coastguard Worker "//third_party/abseil-cpp/absl/algorithm:container", 678*d9f75844SAndroid Build Coastguard Worker "//third_party/abseil-cpp/absl/base:core_headers", 679*d9f75844SAndroid Build Coastguard Worker "//third_party/abseil-cpp/absl/container:inlined_vector", 680*d9f75844SAndroid Build Coastguard Worker ] 681*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/vp9-encoder-references-corpus" 682*d9f75844SAndroid Build Coastguard Worker defines = [ "RTC_ENABLE_VP9" ] 683*d9f75844SAndroid Build Coastguard Worker } 684*d9f75844SAndroid Build Coastguard Worker} 685*d9f75844SAndroid Build Coastguard Worker 686*d9f75844SAndroid Build Coastguard Workerwebrtc_fuzzer_test("vp9_replay_fuzzer") { 687*d9f75844SAndroid Build Coastguard Worker sources = [ "vp9_replay_fuzzer.cc" ] 688*d9f75844SAndroid Build Coastguard Worker deps = [ "utils:rtp_replayer" ] 689*d9f75844SAndroid Build Coastguard Worker seed_corpus = "corpora/rtpdump-corpus/vp9" 690*d9f75844SAndroid Build Coastguard Worker} 691