/******************************************************************************
 *
 * Copyright (C) 2021 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at:
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 *****************************************************************************
 * Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore
 */

package {
    // See: http://go/android-license-faq
    // A large-scale-change added 'default_applicable_licenses' to import
    // all of the 'license_kinds' from "frameworks_av_license"
    // to get the below license kinds:
    //   SPDX-license-identifier-Apache-2.0
    default_applicable_licenses: ["frameworks_av_license"],
}

cc_defaults {
    name: "mediaresourcemanager_fuzzer_defaults",
    defaults: [
        "service_fuzzer_defaults",
    ],
    static_libs: [
        "liblog",
        "libresourcemanagerservice",
    ],
    shared_libs: [
        "libmedia",
        "libmediautils",
        "libstats_media_metrics",
        "libstatspull",
        "libstatssocket",
        "libactivitymanager_aidl",
        "aconfig_mediacodec_flags_c_lib",
    ],
    fuzz_config: {
        cc: [
            "android-media-fuzzing-reports@google.com",
        ],
        componentid: 155276,
        hotlists: [
            "4593311",
        ],
        description: "The fuzzer targets the APIs of libresourcemanagerservice",
        vector: "remote",
        service_privilege: "constrained",
        users: "multi_user",
        fuzzed_code_usage: "shipped",
    },
}

cc_fuzz {
    name: "mediaresourcemanager_fuzzer",
    defaults: [
        "mediaresourcemanager_fuzzer_defaults",
    ],
    srcs: [
        "mediaresourcemanager_fuzzer.cpp",
    ],
}

cc_fuzz {
    name: "resourcemanager_service_fuzzer",
    defaults: [
        "mediaresourcemanager_fuzzer_defaults",
    ],
    srcs: [
        "resourcemanager_service_fuzzer.cpp",
    ],
}

cc_fuzz {
    name: "resourceobserver_service_fuzzer",
    defaults: [
        "mediaresourcemanager_fuzzer_defaults",
    ],
    static_libs: [
        "resourceobserver_aidl_interface-V1-ndk",
    ],
    srcs: [
        "resourceobserver_service_fuzzer.cpp",
    ],
    fuzz_config: {
        triage_assignee: "waghpawan@google.com",
    },
}
