xref: /aosp_15_r20/frameworks/av/media/ndk/fuzzer/Android.bp (revision ec779b8e0859a360c3d303172224686826e6e0e1)
1*ec779b8eSAndroid Build Coastguard Worker/*
2*ec779b8eSAndroid Build Coastguard Worker * Copyright (C) 2022 The Android Open Source Project
3*ec779b8eSAndroid Build Coastguard Worker *
4*ec779b8eSAndroid Build Coastguard Worker * Licensed under the Apache License, Version 2.0 (the "License");
5*ec779b8eSAndroid Build Coastguard Worker * you may not use this file except in compliance with the License.
6*ec779b8eSAndroid Build Coastguard Worker * You may obtain a copy of the License at
7*ec779b8eSAndroid Build Coastguard Worker *
8*ec779b8eSAndroid Build Coastguard Worker *      http://www.apache.org/licenses/LICENSE-2.0
9*ec779b8eSAndroid Build Coastguard Worker *
10*ec779b8eSAndroid Build Coastguard Worker * Unless required by applicable law or agreed to in writing, software
11*ec779b8eSAndroid Build Coastguard Worker * distributed under the License is distributed on an "AS IS" BASIS,
12*ec779b8eSAndroid Build Coastguard Worker * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*ec779b8eSAndroid Build Coastguard Worker * See the License for the specific language governing permissions and
14*ec779b8eSAndroid Build Coastguard Worker * limitations under the License.
15*ec779b8eSAndroid Build Coastguard Worker */
16*ec779b8eSAndroid Build Coastguard Worker
17*ec779b8eSAndroid Build Coastguard Workerpackage {
18*ec779b8eSAndroid Build Coastguard Worker    // See: http://go/android-license-faq
19*ec779b8eSAndroid Build Coastguard Worker    // A large-scale-change added 'default_applicable_licenses' to import
20*ec779b8eSAndroid Build Coastguard Worker    // all of the 'license_kinds' from "frameworks_av_media_ndk_license"
21*ec779b8eSAndroid Build Coastguard Worker    // to get the below license kinds:
22*ec779b8eSAndroid Build Coastguard Worker    //   SPDX-license-identifier-Apache-2.0
23*ec779b8eSAndroid Build Coastguard Worker    default_applicable_licenses: ["frameworks_av_media_ndk_license"],
24*ec779b8eSAndroid Build Coastguard Worker}
25*ec779b8eSAndroid Build Coastguard Worker
26*ec779b8eSAndroid Build Coastguard Workercc_defaults {
27*ec779b8eSAndroid Build Coastguard Worker     name: "libmediandk_fuzzer_defaults",
28*ec779b8eSAndroid Build Coastguard Worker     shared_libs: [
29*ec779b8eSAndroid Build Coastguard Worker        "libandroid_runtime_lazy",
30*ec779b8eSAndroid Build Coastguard Worker        "libbase",
31*ec779b8eSAndroid Build Coastguard Worker        "libdatasource",
32*ec779b8eSAndroid Build Coastguard Worker        "libmedia",
33*ec779b8eSAndroid Build Coastguard Worker        "libmediadrm",
34*ec779b8eSAndroid Build Coastguard Worker        "libmedia_omx",
35*ec779b8eSAndroid Build Coastguard Worker        "libmedia_jni_utils",
36*ec779b8eSAndroid Build Coastguard Worker        "libstagefright",
37*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_foundation",
38*ec779b8eSAndroid Build Coastguard Worker        "liblog",
39*ec779b8eSAndroid Build Coastguard Worker        "libutils",
40*ec779b8eSAndroid Build Coastguard Worker        "libcutils",
41*ec779b8eSAndroid Build Coastguard Worker        "libnativewindow",
42*ec779b8eSAndroid Build Coastguard Worker        "libhidlbase",
43*ec779b8eSAndroid Build Coastguard Worker        "libgui",
44*ec779b8eSAndroid Build Coastguard Worker        "libui",
45*ec779b8eSAndroid Build Coastguard Worker        "libmediandk",
46*ec779b8eSAndroid Build Coastguard Worker     ],
47*ec779b8eSAndroid Build Coastguard Worker     static_libs: [
48*ec779b8eSAndroid Build Coastguard Worker        "libmediandk_utils",
49*ec779b8eSAndroid Build Coastguard Worker        "libnativehelper_lazy",
50*ec779b8eSAndroid Build Coastguard Worker     ],
51*ec779b8eSAndroid Build Coastguard Worker     header_libs: [
52*ec779b8eSAndroid Build Coastguard Worker         "media_ndk_headers",
53*ec779b8eSAndroid Build Coastguard Worker     ],
54*ec779b8eSAndroid Build Coastguard Worker     fuzz_config: {
55*ec779b8eSAndroid Build Coastguard Worker        cc: [
56*ec779b8eSAndroid Build Coastguard Worker            "[email protected]",
57*ec779b8eSAndroid Build Coastguard Worker        ],
58*ec779b8eSAndroid Build Coastguard Worker        componentid: 155276,
59*ec779b8eSAndroid Build Coastguard Worker        hotlists: [
60*ec779b8eSAndroid Build Coastguard Worker            "4593311",
61*ec779b8eSAndroid Build Coastguard Worker        ],
62*ec779b8eSAndroid Build Coastguard Worker        description: "The fuzzer targets the APIs of libmediandk library",
63*ec779b8eSAndroid Build Coastguard Worker        vector: "local_no_privileges_required",
64*ec779b8eSAndroid Build Coastguard Worker        service_privilege: "privileged",
65*ec779b8eSAndroid Build Coastguard Worker        users: "multi_user",
66*ec779b8eSAndroid Build Coastguard Worker        fuzzed_code_usage: "shipped",
67*ec779b8eSAndroid Build Coastguard Worker    },
68*ec779b8eSAndroid Build Coastguard Worker}
69*ec779b8eSAndroid Build Coastguard Worker
70*ec779b8eSAndroid Build Coastguard Workercc_fuzz {
71*ec779b8eSAndroid Build Coastguard Worker    name: "ndk_crypto_fuzzer",
72*ec779b8eSAndroid Build Coastguard Worker    srcs: ["ndk_crypto_fuzzer.cpp"],
73*ec779b8eSAndroid Build Coastguard Worker    defaults: ["libmediandk_fuzzer_defaults"],
74*ec779b8eSAndroid Build Coastguard Worker    fuzz_config: {
75*ec779b8eSAndroid Build Coastguard Worker        libfuzzer_options: [
76*ec779b8eSAndroid Build Coastguard Worker            "max_len=10000",
77*ec779b8eSAndroid Build Coastguard Worker        ],
78*ec779b8eSAndroid Build Coastguard Worker    },
79*ec779b8eSAndroid Build Coastguard Worker}
80*ec779b8eSAndroid Build Coastguard Worker
81*ec779b8eSAndroid Build Coastguard Workercc_fuzz {
82*ec779b8eSAndroid Build Coastguard Worker     name: "ndk_image_reader_fuzzer",
83*ec779b8eSAndroid Build Coastguard Worker     srcs: [
84*ec779b8eSAndroid Build Coastguard Worker        "ndk_image_reader_fuzzer.cpp",
85*ec779b8eSAndroid Build Coastguard Worker     ],
86*ec779b8eSAndroid Build Coastguard Worker     shared_libs: [
87*ec779b8eSAndroid Build Coastguard Worker        "[email protected]",
88*ec779b8eSAndroid Build Coastguard Worker        "[email protected]",
89*ec779b8eSAndroid Build Coastguard Worker     ],
90*ec779b8eSAndroid Build Coastguard Worker     cflags: [
91*ec779b8eSAndroid Build Coastguard Worker        "-D__ANDROID_VNDK__",
92*ec779b8eSAndroid Build Coastguard Worker     ],
93*ec779b8eSAndroid Build Coastguard Worker     defaults: ["libmediandk_fuzzer_defaults"],
94*ec779b8eSAndroid Build Coastguard Worker}
95*ec779b8eSAndroid Build Coastguard Worker
96*ec779b8eSAndroid Build Coastguard Workercc_fuzz {
97*ec779b8eSAndroid Build Coastguard Worker    name: "ndk_extractor_fuzzer",
98*ec779b8eSAndroid Build Coastguard Worker    srcs: ["ndk_extractor_fuzzer.cpp"],
99*ec779b8eSAndroid Build Coastguard Worker    defaults: ["libmediandk_fuzzer_defaults"],
100*ec779b8eSAndroid Build Coastguard Worker    shared_libs: ["libbinder_ndk",],
101*ec779b8eSAndroid Build Coastguard Worker    corpus: ["corpus/*"],
102*ec779b8eSAndroid Build Coastguard Worker}
103*ec779b8eSAndroid Build Coastguard Worker
104*ec779b8eSAndroid Build Coastguard Workercc_fuzz {
105*ec779b8eSAndroid Build Coastguard Worker    name: "ndk_mediaformat_fuzzer",
106*ec779b8eSAndroid Build Coastguard Worker    srcs: ["ndk_mediaformat_fuzzer.cpp"],
107*ec779b8eSAndroid Build Coastguard Worker    defaults: ["libmediandk_fuzzer_defaults",],
108*ec779b8eSAndroid Build Coastguard Worker}
109*ec779b8eSAndroid Build Coastguard Worker
110*ec779b8eSAndroid Build Coastguard Workercc_fuzz {
111*ec779b8eSAndroid Build Coastguard Worker    name: "ndk_drm_fuzzer",
112*ec779b8eSAndroid Build Coastguard Worker    srcs: ["ndk_drm_fuzzer.cpp"],
113*ec779b8eSAndroid Build Coastguard Worker    defaults: ["libmediandk_fuzzer_defaults",],
114*ec779b8eSAndroid Build Coastguard Worker}
115*ec779b8eSAndroid Build Coastguard Worker
116*ec779b8eSAndroid Build Coastguard Workercc_fuzz {
117*ec779b8eSAndroid Build Coastguard Worker    name: "ndk_mediamuxer_fuzzer",
118*ec779b8eSAndroid Build Coastguard Worker    srcs: ["ndk_mediamuxer_fuzzer.cpp"],
119*ec779b8eSAndroid Build Coastguard Worker    defaults: ["libmediandk_fuzzer_defaults"],
120*ec779b8eSAndroid Build Coastguard Worker    shared_libs: ["libbinder_ndk",],
121*ec779b8eSAndroid Build Coastguard Worker}
122*ec779b8eSAndroid Build Coastguard Worker
123*ec779b8eSAndroid Build Coastguard Workercc_fuzz {
124*ec779b8eSAndroid Build Coastguard Worker    name: "ndk_sync_codec_fuzzer",
125*ec779b8eSAndroid Build Coastguard Worker    srcs: [
126*ec779b8eSAndroid Build Coastguard Worker            "ndk_sync_codec_fuzzer.cpp",
127*ec779b8eSAndroid Build Coastguard Worker             "NdkMediaCodecFuzzerBase.cpp",
128*ec779b8eSAndroid Build Coastguard Worker          ],
129*ec779b8eSAndroid Build Coastguard Worker    header_libs: ["libnativewindow_headers",],
130*ec779b8eSAndroid Build Coastguard Worker    defaults: ["libmediandk_fuzzer_defaults",],
131*ec779b8eSAndroid Build Coastguard Worker}
132*ec779b8eSAndroid Build Coastguard Worker
133*ec779b8eSAndroid Build Coastguard Workercc_fuzz {
134*ec779b8eSAndroid Build Coastguard Worker    name: "ndk_async_codec_fuzzer",
135*ec779b8eSAndroid Build Coastguard Worker    srcs: [
136*ec779b8eSAndroid Build Coastguard Worker           "ndk_async_codec_fuzzer.cpp",
137*ec779b8eSAndroid Build Coastguard Worker           "NdkMediaCodecFuzzerBase.cpp",
138*ec779b8eSAndroid Build Coastguard Worker          ],
139*ec779b8eSAndroid Build Coastguard Worker    header_libs: [
140*ec779b8eSAndroid Build Coastguard Worker           "libnativewindow_headers",
141*ec779b8eSAndroid Build Coastguard Worker           "libutils_headers",
142*ec779b8eSAndroid Build Coastguard Worker          ],
143*ec779b8eSAndroid Build Coastguard Worker    defaults: ["libmediandk_fuzzer_defaults",],
144*ec779b8eSAndroid Build Coastguard Worker}
145