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 "framework-permission-aidl-cpp", 37 "libbinder", 38 "libbinder_ndk", 39 "libcutils", 40 "libmedia", 41 "libstagefright", 42 "libutils", 43 "libstagefright_foundation", 44 ], 45 fuzz_config: { 46 cc: [ 47 "android-media-playback+bugs@google.com", 48 ], 49 componentid: 155276, 50 hotlists: [ 51 "4593311", 52 ], 53 description: "The fuzzer targets the APIs of libmediaplayerservice", 54 vector: "remote", 55 service_privilege: "privileged", 56 users: "multi_user", 57 fuzzed_code_usage: "shipped", 58 }, 59} 60 61cc_fuzz { 62 name: "mediarecorder_fuzzer", 63 srcs: [ 64 "mediarecorder_fuzzer.cpp", 65 ], 66 defaults: [ 67 "libmediaplayerserviceFuzzer_defaults", 68 ], 69 static_libs: [ 70 "libstagefright_rtsp", 71 "libbase", 72 "libstagefright_nuplayer", 73 "libplayerservice_datasource", 74 "libstagefright_timedtext", 75 "libaudioprocessing_base", 76 ], 77 shared_libs: [ 78 "android.hardware.media.omx@1.0", 79 "av-types-aidl-cpp", 80 "media_permission-aidl-cpp", 81 "libaudioclient_aidl_conversion", 82 "libactivitymanager_aidl", 83 "libandroid_net", 84 "libaudioclient", 85 "libcamera_client", 86 "libcodec2_client", 87 "libcrypto", 88 "libdatasource", 89 "libdrmframework", 90 "libgui", 91 "libhidlbase", 92 "liblog", 93 "libmedia_codeclist", 94 "libmedia_omx", 95 "libmediadrm", 96 "libmediametrics", 97 "libmediautils", 98 "libmemunreachable", 99 "libnetd_client", 100 "libpowermanager", 101 "libstagefright_httplive", 102 "packagemanager_aidl-cpp", 103 "libfakeservicemanager", 104 "libvibrator", 105 "libnbaio", 106 "libnblog", 107 "libpowermanager", 108 "libaudioprocessing", 109 "libaudioflinger", 110 "libresourcemanagerservice", 111 "libmediametricsservice", 112 "mediametricsservice-aidl-cpp", 113 "libcameraservice", 114 "android.hardware.camera.common@1.0", 115 "android.hardware.camera.provider@2.4", 116 "android.hardware.camera.provider@2.5", 117 "android.hardware.camera.provider@2.6", 118 "android.hardware.camera.provider@2.7", 119 "android.hardware.camera.provider-V3-ndk", 120 "android.hardware.camera.device@1.0", 121 "android.hardware.camera.device@3.2", 122 "android.hardware.camera.device@3.4", 123 "libaudiohal@7.0", 124 ], 125 header_libs: [ 126 "libaudiohal_headers", 127 "libaudioflinger_headers", 128 ], 129} 130 131cc_fuzz { 132 name: "metadataretriever_fuzzer", 133 srcs: [ 134 "metadataretriever_fuzzer.cpp", 135 ], 136 defaults: [ 137 "libmediaplayerserviceFuzzer_defaults", 138 "libmediaplayerservice_defaults", 139 ], 140 static_libs: [ 141 "libplayerservice_datasource", 142 ], 143 shared_libs: [ 144 "libdatasource", 145 "libdrmframework", 146 "libstagefright_httplive", 147 "libmediaextractorservice", 148 ], 149 include_dirs: ["frameworks/av/services/mediaextractor"], 150} 151 152cc_fuzz { 153 name: "mediaplayer_fuzzer", 154 srcs: [ 155 "mediaplayer_fuzzer.cpp", 156 ], 157 defaults: [ 158 "libmediaplayerserviceFuzzer_defaults", 159 ], 160 static_libs: [ 161 "libgmock", 162 "libgtest_ndk_c++", 163 "libplayerservice_datasource", 164 "libstagefright_nuplayer", 165 "libstagefright_rtsp", 166 "libstagefright_timedtext", 167 "libbinder_random_parcel", 168 ], 169 shared_libs: [ 170 "android.hardware.media.c2@1.0", 171 "android.hardware.media.omx@1.0", 172 "av-types-aidl-cpp", 173 "libaudioclient_aidl_conversion", 174 "libbase", 175 "libactivitymanager_aidl", 176 "libandroid_net", 177 "libaudioclient", 178 "libcamera_client", 179 "libcodec2_client", 180 "libcrypto", 181 "libdatasource", 182 "libdrmframework", 183 "libgui", 184 "libhidlbase", 185 "liblog", 186 "libmedia_codeclist", 187 "libmedia_omx", 188 "libmediadrm", 189 "libmediametrics", 190 "libmediautils", 191 "libmemunreachable", 192 "libnetd_client", 193 "libpowermanager", 194 "libstagefright_httplive", 195 "libaudiohal@7.0", 196 "libmediaextractorservice", 197 ], 198 corpus: ["corpus/*"], 199 include_dirs: ["frameworks/av/services/mediaextractor"], 200} 201 202cc_fuzz { 203 name: "media_player_service_fuzzer", 204 defaults: [ 205 "service_fuzzer_defaults", 206 "libmediaplayerservice_defaults", 207 "fuzzer_disable_leaks", 208 ], 209 srcs: [ 210 "media_player_service_fuzzer.cpp", 211 ], 212 fuzz_config: { 213 cc: [ 214 "kyslov@google.com", 215 "ibaker@google.com", 216 ], 217 triage_assignee: "waghpawan@google.com", 218 }, 219 cflags: [ 220 "-DFUZZ_MODE_MEDIA_PLAYER_SERVICE", 221 ], 222 include_dirs: ["frameworks/av/media/libmediaplayerservice/"], 223} 224