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 */ 17 18package { 19 // See: http://go/android-license-faq 20 // A large-scale-change added 'default_applicable_licenses' to import 21 // all of the 'license_kinds' from "frameworks_av_media_libmediaplayerservice_license" 22 // to get the below license kinds: 23 // SPDX-license-identifier-Apache-2.0 24 default_applicable_licenses: [ 25 "frameworks_av_media_libmediaplayerservice_license", 26 ], 27} 28 29cc_defaults { 30 name: "libmediaplayerserviceFuzzer_defaults", 31 static_libs: [ 32 "libmediaplayerservice", 33 "liblog", 34 ], 35 shared_libs: [ 36 "camera_platform_flags_c_lib", 37 "framework-permission-aidl-cpp", 38 "libbinder", 39 "libbinder_ndk", 40 "libcutils", 41 "libmedia", 42 "libstagefright", 43 "libutils", 44 "libstagefright_foundation", 45 ], 46 fuzz_config: { 47 cc: [ 48 "[email protected]", 49 ], 50 componentid: 155276, 51 hotlists: [ 52 "4593311", 53 ], 54 description: "The fuzzer targets the APIs of libmediaplayerservice", 55 vector: "remote", 56 service_privilege: "privileged", 57 users: "multi_user", 58 fuzzed_code_usage: "shipped", 59 }, 60} 61 62cc_fuzz { 63 name: "mediarecorder_fuzzer", 64 srcs: [ 65 "mediarecorder_fuzzer.cpp", 66 ], 67 defaults: [ 68 "libaudioflinger_dependencies", 69 "libmediaplayerserviceFuzzer_defaults", 70 ], 71 static_libs: [ 72 "libstagefright_rtsp", 73 "libbase", 74 "libstagefright_nuplayer", 75 "libplayerservice_datasource", 76 "libstagefright_timedtext", 77 "libaudioprocessing_base", 78 ], 79 shared_libs: [ 80 "[email protected]", 81 "media_permission-aidl-cpp", 82 "libactivitymanager_aidl", 83 "libandroid_net", 84 "libaudioflinger", 85 "libaudiofoundation", 86 "libcamera_client", 87 "libcodec2_client", 88 "libcrypto", 89 "libdatasource", 90 "libdrmframework", 91 "libgui", 92 "libhidlbase", 93 "libmedia_codeclist", 94 "libmedia_omx", 95 "libmediadrm", 96 "libnetd_client", 97 "libstagefright_httplive", 98 "packagemanager_aidl-cpp", 99 "libfakeservicemanager", 100 "libresourcemanagerservice", 101 "libmediametricsservice", 102 "mediametricsservice-aidl-cpp", 103 "libcameraservice", 104 "[email protected]", 105 "[email protected]", 106 "[email protected]", 107 "[email protected]", 108 "[email protected]", 109 "android.hardware.camera.provider-V3-ndk", 110 "[email protected]", 111 "[email protected]", 112 "[email protected]", 113 "[email protected]", 114 ], 115} 116 117cc_fuzz { 118 name: "metadataretriever_fuzzer", 119 srcs: [ 120 "metadataretriever_fuzzer.cpp", 121 ], 122 defaults: [ 123 "libmediaplayerserviceFuzzer_defaults", 124 "libmediaplayerservice_defaults", 125 ], 126 static_libs: [ 127 "libplayerservice_datasource", 128 ], 129 shared_libs: [ 130 "libdatasource", 131 "libdrmframework", 132 "libstagefright_httplive", 133 "libmediaextractorservice", 134 ], 135 include_dirs: ["frameworks/av/services/mediaextractor"], 136} 137 138cc_fuzz { 139 name: "mediaplayer_fuzzer", 140 srcs: [ 141 "mediaplayer_fuzzer.cpp", 142 ], 143 defaults: [ 144 "libmediaplayerserviceFuzzer_defaults", 145 ], 146 static_libs: [ 147 "libgmock", 148 "libgtest_ndk_c++", 149 "libplayerservice_datasource", 150 "libstagefright_nuplayer", 151 "libstagefright_rtsp", 152 "libstagefright_timedtext", 153 "libbinder_random_parcel", 154 ], 155 shared_libs: [ 156 "[email protected]", 157 "[email protected]", 158 "av-types-aidl-cpp", 159 "libaudioclient_aidl_conversion", 160 "libbase", 161 "libactivitymanager_aidl", 162 "libandroid_net", 163 "libaudioclient", 164 "libaudiofoundation", 165 "libcamera_client", 166 "libcodec2_client", 167 "libcrypto", 168 "libdatasource", 169 "libdrmframework", 170 "libgui", 171 "libhidlbase", 172 "liblog", 173 "libmedia_codeclist", 174 "libmedia_omx", 175 "libmediadrm", 176 "libmediametrics", 177 "libmediautils", 178 "libmemunreachable", 179 "libnetd_client", 180 "libpowermanager", 181 "libstagefright_httplive", 182 "[email protected]", 183 "libmediaextractorservice", 184 ], 185 corpus: ["corpus/*"], 186 include_dirs: ["frameworks/av/services/mediaextractor"], 187} 188 189cc_fuzz { 190 name: "media_player_service_fuzzer", 191 defaults: [ 192 "service_fuzzer_defaults", 193 "libmediaplayerservice_defaults", 194 "fuzzer_disable_leaks", 195 ], 196 srcs: [ 197 "media_player_service_fuzzer.cpp", 198 ], 199 fuzz_config: { 200 cc: [ 201 "[email protected]", 202 "[email protected]", 203 ], 204 triage_assignee: "[email protected]", 205 }, 206 cflags: [ 207 "-DFUZZ_MODE_MEDIA_PLAYER_SERVICE", 208 ], 209 include_dirs: ["frameworks/av/media/libmediaplayerservice/"], 210} 211