Merge from Widevine repo of http://go/wvgerrit/41834 Key rotation is not yet supported. The key statuses are updated from a license. The mechanism expects content keys tro come in a license. For entitlement licenses, the content keys come in the init_data. This code does not yet support the key rotation event. (A new pssh with wrapped keys is a passed to the cdm) The policy engine/key status mechanism needs to be updated to handle updated from the init_data. For now, the cdm builds a license with a key container with the content keys and used that to call PolicyEngine::SetLicense to setup the policy engine and key statuses. Bug: 64003606 Bug: 70334840 Test: In child CL Change-Id: Ibf46a18f5321cab4ff6f1778ba30527942c8021f
62 lines
1.9 KiB
Makefile
62 lines
1.9 KiB
Makefile
# ----------------------------------------------------------------
|
|
# Builds libcdm.a
|
|
#
|
|
LOCAL_PATH := $(call my-dir)
|
|
include $(CLEAR_VARS)
|
|
|
|
LOCAL_CFLAGS := -DDYNAMIC_ADAPTER
|
|
|
|
LOCAL_C_INCLUDES := \
|
|
vendor/widevine/libwvdrmengine/cdm/core/include \
|
|
vendor/widevine/libwvdrmengine/cdm/metrics/include \
|
|
vendor/widevine/libwvdrmengine/cdm/include \
|
|
vendor/widevine/libwvdrmengine/oemcrypto/include \
|
|
|
|
LOCAL_C_INCLUDES += \
|
|
external/jsmn \
|
|
external/protobuf/src \
|
|
|
|
LOCAL_HEADER_LIBRARIES := \
|
|
libutils_headers
|
|
|
|
LOCAL_STATIC_LIBRARIES := libcdm_protos libcrypto
|
|
|
|
SRC_DIR := src
|
|
CORE_SRC_DIR := core/src
|
|
METRICS_SRC_DIR := metrics/src
|
|
|
|
LOCAL_SRC_FILES := \
|
|
$(CORE_SRC_DIR)/buffer_reader.cpp \
|
|
$(CORE_SRC_DIR)/cdm_engine.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)/privacy_crypto_boringssl.cpp \
|
|
$(CORE_SRC_DIR)/service_certificate.cpp \
|
|
$(CORE_SRC_DIR)/sublicense_key_session.cpp \
|
|
$(CORE_SRC_DIR)/usage_table_header.cpp \
|
|
$(SRC_DIR)/wv_content_decryption_module.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
|
|
|
|
|
|
LOCAL_MODULE := libcdm
|
|
LOCAL_MODULE_TAGS := optional
|
|
LOCAL_PROPRIETARY_MODULE := true
|
|
|
|
include $(BUILD_STATIC_LIBRARY)
|