Fuzz Widevine AIDL drmFactory binder interface.

[Merged from http://go/wvgerrit/152150 ]

Test: build and run test

Bug: 226948319
Change-Id: I717d119cbf455fe76e4bb1f818d00141f4e7fa7c
This commit is contained in:
Edwin Wong
2022-05-19 17:51:19 +00:00
parent 1c96d290bd
commit a285b363d9
6 changed files with 272 additions and 3 deletions

View File

@@ -557,3 +557,120 @@ phony {
"android.hardware.drm-service-lazy.widevine",
],
}
cc_library_shared {
name: "libwvaidl_fuzz",
srcs: [
"src/WVCDMSingleton.cpp",
"src/WVUUID.cpp",
"aidl_src/wv_metrics.cpp",
"aidl_src/WVCreatePluginFactories.cpp",
"aidl_src/WVDrmFactory.cpp",
],
include_dirs: [
"frameworks/av/include",
"frameworks/native/include",
"vendor/widevine/libwvdrmengine/cdm/core/include",
"vendor/widevine/libwvdrmengine/cdm/metrics/include",
"vendor/widevine/libwvdrmengine/cdm/util/include",
"vendor/widevine/libwvdrmengine/cdm/include",
"vendor/widevine/libwvdrmengine/aidl_include",
"vendor/widevine/libwvdrmengine/include",
"vendor/widevine/libwvdrmengine/mediacrypto/aidl_include",
"vendor/widevine/libwvdrmengine/mediadrm/aidl_include",
"vendor/widevine/libwvdrmengine/oemcrypto/include",
],
static_libs: [
"android.hardware.common-V2-ndk",
"libaidlcommonsupport",
"libcdm",
"libcdm_protos",
"libcdm_utils",
"libjsmn",
"libwvdrmcryptoplugin_aidl_fuzz",
"libwvdrmdrmplugin_aidl_fuzz",
"libwvlevel3",
"libwv_odk",
],
shared_libs: [
"android.hardware.drm-V1-ndk",
"libbase",
"libbinder_ndk",
"libcrypto",
"libcutils",
"libdl",
"liblog",
"libprotobuf-cpp-lite",
"libutils",
],
header_libs: ["libstagefright_foundation_headers"],
owner: "widevine",
proprietary: true,
}
cc_defaults {
name: "common_widevine_service-multilib-defaults-aidl_fuzz",
owner: "widevine",
proprietary: true,
relative_install_path: "hw",
include_dirs: [
"vendor/widevine/libwvdrmengine/aidl_include",
"vendor/widevine/libwvdrmengine/mediadrm/aidl_include",
"vendor/widevine/libwvdrmengine/oemcrypto/include",
],
header_libs: ["libstagefright_foundation_headers"],
shared_libs: [
"android.hardware.drm-V1-ndk",
"libbase",
"libbinder_ndk",
"liblog",
"libutils",
"libwvaidl_fuzz",
],
}
cc_fuzz {
name: "android.hardware.drm-service.widevine.aidl_fuzzer",
defaults: [
"common_widevine_service-multilib-first",
"common_widevine_service-multilib-defaults-aidl_fuzz",
],
static_libs: [
"libbase",
"libbinder_random_parcel",
"libcutils",
"libutils",
],
target: {
android: {
shared_libs: [
"libbinder_ndk",
"libbinder",
],
},
host: {
static_libs: [
"libbinder_ndk",
"libbinder",
],
},
darwin: {
enabled: false,
},
},
srcs: ["aidl_src/fuzzer/fuzzer.cpp"],
fuzz_config: {
cc: [
"edwinwong@google.com",
"widevine-android@google.com",
],
},
}