| # Copyright 2017 The Fuchsia Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//build/fuzzing/fuzzer.gni") |
| |
| # Basic target with protocol definitions and no logic, suitable for test |
| # emulation. |
| source_set("definitions") { |
| sources = [ |
| "l2cap.h", |
| ] |
| |
| public_deps = [ |
| "//src/connectivity/bluetooth/core/bt-host/hci:definitions", |
| "//src/connectivity/bluetooth/core/bt-host/sm:definitions", |
| ] |
| } |
| |
| static_library("l2cap") { |
| sources = [ |
| "basic_mode_rx_engine.cc", |
| "basic_mode_rx_engine.h", |
| "basic_mode_tx_engine.cc", |
| "basic_mode_tx_engine.h", |
| "bredr_command_handler.cc", |
| "bredr_command_handler.h", |
| "bredr_dynamic_channel.cc", |
| "bredr_dynamic_channel.h", |
| "bredr_signaling_channel.cc", |
| "bredr_signaling_channel.h", |
| "channel.cc", |
| "channel.h", |
| "channel_manager.cc", |
| "channel_manager.h", |
| "dynamic_channel.cc", |
| "dynamic_channel.h", |
| "dynamic_channel_registry.cc", |
| "dynamic_channel_registry.h", |
| "enhanced_retransmission_mode_rx_engine.cc", |
| "enhanced_retransmission_mode_rx_engine.h", |
| "enhanced_retransmission_mode_tx_engine.cc", |
| "enhanced_retransmission_mode_tx_engine.h", |
| "fragmenter.cc", |
| "fragmenter.h", |
| "frame_headers.h", |
| "le_signaling_channel.cc", |
| "le_signaling_channel.h", |
| "logical_link.cc", |
| "logical_link.h", |
| "pdu.cc", |
| "pdu.h", |
| "recombiner.cc", |
| "recombiner.h", |
| "rx_engine.h", |
| "scoped_channel.cc", |
| "scoped_channel.h", |
| "signaling_channel.cc", |
| "signaling_channel.h", |
| "tx_engine.h", |
| ] |
| |
| public_deps = [ |
| ":definitions", |
| "//src/connectivity/bluetooth/core/bt-host/hci", |
| "//src/lib/fxl", |
| "//zircon/public/lib/fit", |
| ] |
| } |
| |
| source_set("testing") { |
| testonly = true |
| |
| sources = [ |
| "fake_channel.cc", |
| "fake_channel.h", |
| "fake_channel_test.cc", |
| "fake_channel_test.h", |
| "fake_signaling_channel.cc", |
| "fake_signaling_channel.h", |
| "pdu_generator.cc", |
| "pdu_generator.h", |
| ] |
| |
| public_deps = [ |
| ":l2cap", |
| "//garnet/public/lib/gtest", |
| "//src/connectivity/bluetooth/core/bt-host/common", |
| "//src/connectivity/bluetooth/core/bt-host/hci", |
| "//src/lib/fxl", |
| "//third_party/googletest:gtest", |
| ] |
| } |
| |
| source_set("tests") { |
| testonly = true |
| |
| sources = [ |
| "basic_mode_rx_engine_unittest.cc", |
| "basic_mode_tx_engine_unittest.cc", |
| "bredr_command_handler_unittest.cc", |
| "bredr_dynamic_channel_unittest.cc", |
| "bredr_signaling_channel_unittest.cc", |
| "channel_manager_unittest.cc", |
| "channel_unittest.cc", |
| "dynamic_channel_registry_unittest.cc", |
| "enhanced_retransmission_mode_rx_engine_unittest.cc", |
| "enhanced_retransmission_mode_tx_engine_unittest.cc", |
| "fragmenter_unittest.cc", |
| "frame_headers_unittest.cc", |
| "le_signaling_channel_unittest.cc", |
| "pdu_generator_unittest.cc", |
| "pdu_unittest.cc", |
| "recombiner_unittest.cc", |
| "scoped_channel_unittest.cc", |
| "signaling_channel_unittest.cc", |
| ] |
| |
| deps = [ |
| ":l2cap", |
| ":testing", |
| "//garnet/public/lib/gtest", |
| "//src/connectivity/bluetooth/core/bt-host/hci", |
| "//src/connectivity/bluetooth/core/bt-host/testing", |
| "//third_party/googletest:gtest", |
| ] |
| } |
| |
| fuzzer("basic_mode_rx_engine_fuzzer") { |
| sources = [ |
| "basic_mode_rx_engine_fuzztest.cc", |
| ] |
| deps = [ |
| ":l2cap", |
| ":testing", |
| ] |
| } |
| |
| fuzzer("enhanced_retransmission_mode_rx_engine_fuzzer") { |
| sources = [ |
| "enhanced_retransmission_mode_rx_engine_fuzztest.cc", |
| ] |
| deps = [ |
| ":l2cap", |
| ":testing", |
| ] |
| } |