Files
android/libwvdrmengine/cdm/Android.bp
Alex Dale 9d169a00bb Move system ID extraction outside of CryptoSession.
[ Merge of http://go/wvgerrit/151391 ]

This CL moves the logic for extracting the system ID from keybox or
OEM certificate (from OEMCrypto or device files) to a dedicated
SystemIdExtractor.

Before Provisioning 4.0, the system ID could only be found from data
returned by OEMCrypto.  However, with provisioning 4.0, the system ID
can now be found in the OEM certificate that is stored on the device
files.

Bug: 232020319
Test: system_id_extractor_unittest
Test: Forest L37800000954493485
Change-Id: Ie1b7987906e2e4fef015cd659a947b6dbb7594b1
2022-05-12 19:22:03 -07:00

82 lines
3.0 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 + "/okp_fallback_policy.cpp",
CORE_SRC_DIR + "/okp_info.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 + "/system_id_extractor.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,
}