[ Merge of http://go/wvgerrit/93743 ] Reworks policy engine in preparation for changes to support timer and clock value handling by OEMCrypto core messages in OEMCrypto v16. No major functional changes have yet been introduced. Time and duration evaluation has been devolved to a new policy timer class. Policy specific to licenses that do not support OEMCrypto core messages is handled by a Policy Timer V15 class. This ensures backward compatibility. Backward compatibility may be needed if * OEMCrypto has not been upgraded to v16 * Licenses were persisted before the device was upgraded to v16 * License service does not yet support core messages Some minor changes to when the current time was retrieved required minor modification to test expectations. Bug: 139372190 Test: Android unit/integration tests Change-Id: I420fb181f656ed9a6bfe54f09e8b398c130d23da
65 lines
2.2 KiB
Plaintext
65 lines
2.2 KiB
Plaintext
// ----------------------------------------------------------------
|
|
// Builds libcdm.a
|
|
//
|
|
|
|
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",
|
|
"vendor/widevine/libwvdrmengine/oemcrypto/odk/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 + "/policy_engine.cpp",
|
|
CORE_SRC_DIR + "/policy_timers.cpp",
|
|
CORE_SRC_DIR + "/policy_timers_v15.cpp",
|
|
CORE_SRC_DIR + "/privacy_crypto_boringssl.cpp",
|
|
CORE_SRC_DIR + "/service_certificate.cpp",
|
|
CORE_SRC_DIR + "/usage_table_header.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,
|
|
|
|
}
|