1/* 2 * Copyright (C) 2021 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at: 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17package { 18 // See: http://go/android-license-faq 19 // A large-scale-change added 'default_applicable_licenses' to import 20 // all of the 'license_kinds' from "system_bt_license" 21 // to get the below license kinds: 22 // SPDX-license-identifier-Apache-2.0 23 default_applicable_licenses: ["system_bt_license"], 24} 25 26cc_defaults { 27 name: "libbt_audio_hal_interface_fuzz_defaults", 28 header_libs: [ 29 "avrcp_headers", 30 "libbluetooth_headers", 31 ], 32 defaults: [ 33 "latest_android_hardware_audio_common_ndk_static", 34 "latest_android_hardware_bluetooth_audio_ndk_static", 35 "latest_android_media_audio_common_types_ndk_static", 36 ], 37 shared_libs: [ 38 "libPlatformProperties", 39 "libaaudio", 40 "libaconfig_storage_read_api_cc", 41 "libbinder_ndk", 42 "libcrypto", 43 "libfmq", 44 "libstatslog", 45 "libstatssocket", 46 "libz", 47 "server_configurable_flags", 48 ], 49 static_libs: [ 50 "[email protected]", 51 "[email protected]", 52 "[email protected]", 53 "[email protected]", 54 "[email protected]", 55 "android.hardware.common-V2-ndk", 56 "android.hardware.common.fmq-V1-ndk", 57 "android.system.suspend-V1-ndk", 58 "android.system.suspend.control-V1-ndk", 59 "bluetooth_flags_c_lib", 60 "libFraunhoferAAC", 61 "libbase", 62 "libbluetooth-protos", 63 "libbluetooth-types", 64 "libbluetooth_core_rs", 65 "libbluetooth_crypto_toolbox", 66 "libbluetooth_gd", 67 "libbluetooth_log", 68 "libbt-audio-hal-interface", 69 "libbt-bta", 70 "libbt-bta-core", 71 "libbt-btu-main-thread", 72 "libbt-common", 73 "libbt-hci", 74 "libbt-jni-thread", 75 "libbt-sbc-decoder", 76 "libbt-sbc-encoder", 77 "libbt-stack", 78 "libbt-stack-core", 79 "libbtcore", 80 "libbtdevice", 81 "libbte", 82 "libbtif", 83 "libbtif-core", 84 "libchrome", 85 "libcom.android.sysprop.bluetooth.wrapped", 86 "libcutils", 87 "libevent", 88 "libexpresslog", 89 "libflags_rust_cpp_bridge", 90 "libg722codec", 91 "libhidlbase", 92 "libjsoncpp", 93 "liblc3", 94 "liblog", 95 "libopus", 96 "libosi", 97 "libprotobuf-cpp-lite", 98 "libstatslog_bt", 99 "libstatslog_express", 100 "libtextclassifier_hash_static", 101 "libudrv-uipc", 102 "libutils", 103 "libvndksupport", 104 ], 105 include_dirs: [ 106 "packages/modules/Bluetooth/system", 107 "packages/modules/Bluetooth/system/bta/include", 108 "packages/modules/Bluetooth/system/btif", 109 "packages/modules/Bluetooth/system/gd", 110 "packages/modules/Bluetooth/system/stack/include", 111 ], 112 fuzz_config: { 113 cc: ["[email protected]"], 114 componentid: 27441, 115 hotlists: [ 116 "4593311", 117 ], 118 description: "The fuzzer targets the APIs of libbt-audio-hal-interface", 119 vector: "local_no_privileges_required", 120 service_privilege: "privileged", 121 users: "multi_user", 122 fuzzed_code_usage: "shipped", 123 }, 124} 125 126cc_fuzz { 127 name: "libbt_audio_hal_a2dp_encoding_fuzzer", 128 defaults: [ 129 "libbt_audio_hal_interface_fuzz_defaults", 130 ], 131 srcs: [ 132 "libbt_audio_hal_a2dp_encoding_fuzzer.cpp", 133 ], 134} 135 136cc_fuzz { 137 name: "libbt_audio_hal_le_audio_software_fuzzer", 138 defaults: [ 139 "libbt_audio_hal_interface_fuzz_defaults", 140 ], 141 srcs: [ 142 "libbt_audio_hal_le_audio_software_fuzzer.cpp", 143 ], 144} 145 146cc_fuzz { 147 name: "libbt_audio_hal_hearing_aid_software_encoding_fuzzer", 148 defaults: [ 149 "libbt_audio_hal_interface_fuzz_defaults", 150 ], 151 srcs: [ 152 "libbt_audio_hal_hearing_aid_software_encoding_fuzzer.cpp", 153 ], 154 static_libs: [ 155 "libbinder_random_parcel", 156 ], 157 shared_libs: [ 158 "libbinder", 159 ], 160} 161 162cc_fuzz { 163 name: "libbt_audio_hal_client_interface_fuzzer", 164 defaults: [ 165 "libbt_audio_hal_interface_fuzz_defaults", 166 ], 167 srcs: [ 168 "libbt_audio_hal_client_interface_fuzzer.cpp", 169 ], 170} 171