[ Merge of http://go/wvgerrit/133729 ] [ Cherry pick of http://ag/15836224 ] The OtaKeyboxProvisioner is a system-wide provisioner for sharing the provisioning workflow between CDM engines. Bug: 189232882 Test: GtsMediaTestCases Change-Id: I873af3087cc05e1831bdd1d2c14fb002b73e6902 Added keybox provisioning proto fields. [ Merge of http://go/wvgerrit/133730 and http://go/ag/15113032 ] This CL copies over the required license_protocol.proto changes that are required for OTA keybox provisioning. These fields are defined in the server-side certificate_provisioning.proto, defined in http://cl/377533774. Note, changes are slightly different from server proto due to the RVC version of license_protocol.proto being out of date with SC and newer changes. Bug: 189232882 Test: run_x86_64_tests Change-Id: I55fcf6a7ac2ba4b6026b9acc63e822ff33c431d9 Added OTA keybox provisioning device files. [ Merge of http://go/wvgerrit/133743 and http://go/ag/15421141 ] This change adds a new set of proto messages/fields the CDM's device files for recording device and engine information around OTA keybox provisioning (OKP). To make cleanup and thread protection possible, there is a single file which will contain all the information for the device as a whole and each CDM engine tied to an app/origin. Bug: 189232882 Test: Linux unit tests Change-Id: Iaf80cd6342f32657e04416750d9b278d935821a5 Client ID for OKP requests. [ Merge of http://go/wvgerrit/133744 and http://go/ag/15645331 ] Extended the CDM ClientIdentification class to support a subset of client info used for OKP requests. Bug: 189232882 Test: Android unit tests Change-Id: I6aafb4f2164efe69bc733ece0a912f0e91893b91
79 lines
2.8 KiB
Plaintext
79 lines
2.8 KiB
Plaintext
// ----------------------------------------------------------------
|
|
// Builds libcdm.a
|
|
//
|
|
|
|
// *** THIS PACKAGE HAS SPECIAL LICENSING CONDITIONS. PLEASE
|
|
// CONSULT THE OWNERS AND opensource-licensing@google.com BEFORE
|
|
// DEPENDING ON IT IN YOUR PROJECT. ***
|
|
package {
|
|
// See: http://go/android-license-faq
|
|
// A large-scale-change added 'default_applicable_licenses' to import
|
|
// all of the 'license_kinds' from "vendor_widevine_license"
|
|
// to get the below license kinds:
|
|
// legacy_by_exception_only (by exception only)
|
|
default_applicable_licenses: ["vendor_widevine_license"],
|
|
}
|
|
|
|
SRC_DIR = "src"
|
|
CORE_SRC_DIR = "core/src"
|
|
METRICS_SRC_DIR = "metrics/src"
|
|
cc_library_static {
|
|
name: "libcdm",
|
|
|
|
cflags: ["-DDYNAMIC_ADAPTER",
|
|
"-DTEST_OEMCRYPTO_V15"],
|
|
|
|
include_dirs: [
|
|
"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/oemcrypto/include",
|
|
"external/jsmn",
|
|
"external/protobuf/src",
|
|
],
|
|
|
|
header_libs: ["libutils_headers"],
|
|
|
|
static_libs: ["libcdm_protos"],
|
|
shared_libs: ["libcrypto"],
|
|
|
|
srcs: [
|
|
CORE_SRC_DIR + "/buffer_reader.cpp",
|
|
CORE_SRC_DIR + "/cdm_engine.cpp",
|
|
CORE_SRC_DIR + "/cdm_engine_factory.cpp",
|
|
CORE_SRC_DIR + "/cdm_session.cpp",
|
|
CORE_SRC_DIR + "/cdm_session_map.cpp",
|
|
CORE_SRC_DIR + "/certificate_provisioning.cpp",
|
|
CORE_SRC_DIR + "/client_identification.cpp",
|
|
CORE_SRC_DIR + "/content_key_session.cpp",
|
|
CORE_SRC_DIR + "/crypto_session.cpp",
|
|
CORE_SRC_DIR + "/device_files.cpp",
|
|
CORE_SRC_DIR + "/entitlement_key_session.cpp",
|
|
CORE_SRC_DIR + "/initialization_data.cpp",
|
|
CORE_SRC_DIR + "/license.cpp",
|
|
CORE_SRC_DIR + "/license_key_status.cpp",
|
|
CORE_SRC_DIR + "/oemcrypto_adapter_dynamic.cpp",
|
|
CORE_SRC_DIR + "/ota_keybox_provisioner.cpp",
|
|
CORE_SRC_DIR + "/policy_engine.cpp",
|
|
CORE_SRC_DIR + "/policy_timers.cpp",
|
|
CORE_SRC_DIR + "/policy_timers_v15.cpp",
|
|
CORE_SRC_DIR + "/policy_timers_v16.cpp",
|
|
CORE_SRC_DIR + "/privacy_crypto_boringssl.cpp",
|
|
CORE_SRC_DIR + "/service_certificate.cpp",
|
|
CORE_SRC_DIR + "/usage_table_header.cpp",
|
|
CORE_SRC_DIR + "/wv_cdm_types.cpp",
|
|
SRC_DIR + "/wv_content_decryption_module.cpp",
|
|
METRICS_SRC_DIR + "/attribute_handler.cpp",
|
|
METRICS_SRC_DIR + "/counter_metric.cpp",
|
|
METRICS_SRC_DIR + "/distribution.cpp",
|
|
METRICS_SRC_DIR + "/event_metric.cpp",
|
|
METRICS_SRC_DIR + "/metrics_collections.cpp",
|
|
METRICS_SRC_DIR + "/timer_metric.cpp",
|
|
METRICS_SRC_DIR + "/value_metric.cpp",
|
|
],
|
|
|
|
proprietary: true,
|
|
|
|
}
|