Use aidl interface for Widevine service.
The interface is defined in hardware/interfaces/drm/aidl(http://go/ag/15329852). Test: build m android.hardware.drm-service.widevine -j128 Test: build_and_run_all_unit_tests.sh for hidl tests Test: atest VtsAidlHalDrmTargetTest Test: atest vts_treble_vintf_vendor_test:vts_treble_vintf_vendor_test.DeviceManifest/SingleManifestTest#ManifestAidlHalsServed/0 -- --abi x86_64 Bug: 200055138 Bug: 170964303 Change-Id: I5654d90d8a4b0bae4b4a78e79b27c1cafec36be7
This commit is contained in:
@@ -299,7 +299,8 @@ CryptoSession::~CryptoSession() {
|
||||
}
|
||||
|
||||
CdmResponseType CryptoSession::GetProvisioningMethod(
|
||||
SecurityLevel requested_security_level, CdmClientTokenType* token_type) {
|
||||
RequestedSecurityLevel requested_security_level,
|
||||
CdmClientTokenType* token_type) {
|
||||
OEMCrypto_ProvisioningMethod method;
|
||||
WithOecReadLock("GetProvisioningMethod", [&] {
|
||||
method = OEMCrypto_GetProvisioningMethod(requested_security_level);
|
||||
@@ -467,7 +468,7 @@ void CryptoSession::DisableDelayedTermination() {
|
||||
}
|
||||
|
||||
bool CryptoSession::SetUpUsageTableHeader(
|
||||
SecurityLevel requested_security_level) {
|
||||
RequestedSecurityLevel requested_security_level) {
|
||||
if (usage_table_header_ != nullptr) {
|
||||
LOGE("Usage table is already set up for the current crypto session");
|
||||
return false;
|
||||
@@ -616,9 +617,9 @@ CdmSecurityLevel CryptoSession::GetSecurityLevel() {
|
||||
}
|
||||
|
||||
CdmSecurityLevel CryptoSession::GetSecurityLevel(
|
||||
SecurityLevel requested_security_level) {
|
||||
RequestedSecurityLevel requested_security_level) {
|
||||
LOGV("Getting security level: requested_security_level = %s",
|
||||
SecurityLevelToString(requested_security_level));
|
||||
RequestedSecurityLevelToString(requested_security_level));
|
||||
RETURN_IF_UNINITIALIZED(kSecurityLevelUninitialized);
|
||||
const OEMCrypto_Security_Level level = WithOecReadLock(
|
||||
"GetSecurityLevel",
|
||||
@@ -641,7 +642,7 @@ CdmSecurityLevel CryptoSession::GetSecurityLevel(
|
||||
"Ill-formed security level: "
|
||||
"level = \"L%u\", requested_security_level = %s",
|
||||
static_cast<unsigned int>(level),
|
||||
SecurityLevelToString(requested_security_level));
|
||||
RequestedSecurityLevelToString(requested_security_level));
|
||||
return kSecurityLevelUnknown;
|
||||
}
|
||||
|
||||
@@ -731,10 +732,10 @@ bool CryptoSession::GetApiVersion(uint32_t* version) {
|
||||
return GetApiVersion(requested_security_level_, version);
|
||||
}
|
||||
|
||||
bool CryptoSession::GetApiVersion(SecurityLevel security_level,
|
||||
bool CryptoSession::GetApiVersion(RequestedSecurityLevel security_level,
|
||||
uint32_t* version) {
|
||||
LOGV("Getting API version: security_level = %s",
|
||||
SecurityLevelToString(security_level));
|
||||
RequestedSecurityLevelToString(security_level));
|
||||
if (!version) {
|
||||
LOGE("Output parameter |version| not provided");
|
||||
return false;
|
||||
@@ -749,10 +750,10 @@ bool CryptoSession::GetApiVersion(SecurityLevel security_level,
|
||||
return true;
|
||||
}
|
||||
|
||||
bool CryptoSession::GetApiMinorVersion(SecurityLevel security_level,
|
||||
bool CryptoSession::GetApiMinorVersion(RequestedSecurityLevel security_level,
|
||||
uint32_t* minor_version) {
|
||||
LOGV("Getting API minor version: security_level = %s",
|
||||
SecurityLevelToString(security_level));
|
||||
RequestedSecurityLevelToString(security_level));
|
||||
if (!minor_version) {
|
||||
LOGE("Output parameter |minor_version| not provided");
|
||||
return false;
|
||||
@@ -890,9 +891,10 @@ uint8_t CryptoSession::GetSecurityPatchLevel() {
|
||||
return patch;
|
||||
}
|
||||
|
||||
CdmResponseType CryptoSession::Open(SecurityLevel requested_security_level) {
|
||||
CdmResponseType CryptoSession::Open(
|
||||
RequestedSecurityLevel requested_security_level) {
|
||||
LOGD("Opening crypto session: requested_security_level = %s",
|
||||
SecurityLevelToString(requested_security_level));
|
||||
RequestedSecurityLevelToString(requested_security_level));
|
||||
RETURN_IF_UNINITIALIZED(CRYPTO_SESSION_NOT_INITIALIZED);
|
||||
if (open_) return NO_ERROR;
|
||||
|
||||
@@ -1872,8 +1874,8 @@ bool CryptoSession::HasUsageInfoSupport(bool* has_support) {
|
||||
});
|
||||
}
|
||||
|
||||
bool CryptoSession::HasUsageInfoSupport(SecurityLevel requested_security_level,
|
||||
bool* has_support) {
|
||||
bool CryptoSession::HasUsageInfoSupport(
|
||||
RequestedSecurityLevel requested_security_level, bool* has_support) {
|
||||
RETURN_IF_UNINITIALIZED(false);
|
||||
RETURN_IF_NULL(has_support, false);
|
||||
return WithOecReadLock("HasUsageInfoSupport", [&] {
|
||||
@@ -1882,9 +1884,9 @@ bool CryptoSession::HasUsageInfoSupport(SecurityLevel requested_security_level,
|
||||
}
|
||||
|
||||
bool CryptoSession::HasUsageInfoSupportInternal(
|
||||
SecurityLevel requested_security_level, bool* has_support) {
|
||||
RequestedSecurityLevel requested_security_level, bool* has_support) {
|
||||
LOGV("requested_security_level = %s",
|
||||
SecurityLevelToString(requested_security_level));
|
||||
RequestedSecurityLevelToString(requested_security_level));
|
||||
*has_support = WithOecReadLock("HasUsageInfoSupport", [&] {
|
||||
return OEMCrypto_SupportsUsageTable(requested_security_level);
|
||||
});
|
||||
@@ -2109,11 +2111,11 @@ CdmResponseType CryptoSession::GetHdcpCapabilities(HdcpCapability* current,
|
||||
return GetHdcpCapabilities(requested_security_level_, current, max);
|
||||
}
|
||||
|
||||
CdmResponseType CryptoSession::GetHdcpCapabilities(SecurityLevel security_level,
|
||||
HdcpCapability* current,
|
||||
HdcpCapability* max) {
|
||||
CdmResponseType CryptoSession::GetHdcpCapabilities(
|
||||
RequestedSecurityLevel security_level, HdcpCapability* current,
|
||||
HdcpCapability* max) {
|
||||
LOGV("Getting HDCP capabilities: id = %u, security_level = %s",
|
||||
oec_session_id_, SecurityLevelToString(security_level));
|
||||
oec_session_id_, RequestedSecurityLevelToString(security_level));
|
||||
RETURN_IF_UNINITIALIZED(CRYPTO_SESSION_NOT_INITIALIZED);
|
||||
RETURN_IF_NULL(current, PARAMETER_NULL);
|
||||
RETURN_IF_NULL(max, PARAMETER_NULL);
|
||||
@@ -2166,9 +2168,9 @@ CdmResponseType CryptoSession::GetRandom(size_t data_length,
|
||||
}
|
||||
|
||||
CdmResponseType CryptoSession::GetNumberOfOpenSessions(
|
||||
SecurityLevel security_level, size_t* count) {
|
||||
RequestedSecurityLevel security_level, size_t* count) {
|
||||
LOGV("Getting number of open sessions: id = %u, security_level = %s",
|
||||
oec_session_id_, SecurityLevelToString(security_level));
|
||||
oec_session_id_, RequestedSecurityLevelToString(security_level));
|
||||
RETURN_IF_UNINITIALIZED(CRYPTO_SESSION_NOT_INITIALIZED);
|
||||
RETURN_IF_NULL(count, PARAMETER_NULL);
|
||||
|
||||
@@ -2190,9 +2192,9 @@ CdmResponseType CryptoSession::GetNumberOfOpenSessions(
|
||||
}
|
||||
|
||||
CdmResponseType CryptoSession::GetMaxNumberOfSessions(
|
||||
SecurityLevel security_level, size_t* max) {
|
||||
RequestedSecurityLevel security_level, size_t* max) {
|
||||
LOGV("Getting max number of sessions: id = %u, security_level = %s",
|
||||
oec_session_id_, SecurityLevelToString(security_level));
|
||||
oec_session_id_, RequestedSecurityLevelToString(security_level));
|
||||
RETURN_IF_UNINITIALIZED(CRYPTO_SESSION_NOT_INITIALIZED);
|
||||
RETURN_IF_NULL(max, PARAMETER_NULL);
|
||||
|
||||
@@ -2248,10 +2250,10 @@ bool CryptoSession::GetResourceRatingTier(uint32_t* tier) {
|
||||
return GetResourceRatingTier(requested_security_level_, tier);
|
||||
}
|
||||
|
||||
bool CryptoSession::GetResourceRatingTier(SecurityLevel security_level,
|
||||
bool CryptoSession::GetResourceRatingTier(RequestedSecurityLevel security_level,
|
||||
uint32_t* tier) {
|
||||
LOGV("Getting resource rating tier: security_level = %s",
|
||||
SecurityLevelToString(security_level));
|
||||
RequestedSecurityLevelToString(security_level));
|
||||
RETURN_IF_UNINITIALIZED(false);
|
||||
RETURN_IF_NULL(tier, false);
|
||||
|
||||
@@ -2276,10 +2278,10 @@ bool CryptoSession::GetBuildInformation(std::string* info) {
|
||||
return GetBuildInformation(requested_security_level_, info);
|
||||
}
|
||||
|
||||
bool CryptoSession::GetBuildInformation(SecurityLevel security_level,
|
||||
bool CryptoSession::GetBuildInformation(RequestedSecurityLevel security_level,
|
||||
std::string* info) {
|
||||
LOGV("Getting build information: security_level = %s",
|
||||
SecurityLevelToString(security_level));
|
||||
RequestedSecurityLevelToString(security_level));
|
||||
RETURN_IF_UNINITIALIZED(false);
|
||||
RETURN_IF_NULL(info, false);
|
||||
|
||||
@@ -2308,10 +2310,10 @@ bool CryptoSession::GetBuildInformation(SecurityLevel security_level,
|
||||
return true;
|
||||
}
|
||||
|
||||
bool CryptoSession::GetMaximumUsageTableEntries(SecurityLevel security_level,
|
||||
size_t* number_of_entries) {
|
||||
bool CryptoSession::GetMaximumUsageTableEntries(
|
||||
RequestedSecurityLevel security_level, size_t* number_of_entries) {
|
||||
LOGV("Getting maximum usage table entries: security_level = %s",
|
||||
SecurityLevelToString(security_level));
|
||||
RequestedSecurityLevelToString(security_level));
|
||||
RETURN_IF_UNINITIALIZED(false);
|
||||
if (number_of_entries == nullptr) {
|
||||
LOGE("Output parameter |number_of_entries| not provided");
|
||||
@@ -2332,7 +2334,7 @@ bool CryptoSession::GetMaximumUsageTableEntries(SecurityLevel security_level,
|
||||
return *number_of_entries >= kMinimumUsageTableEntriesSupported;
|
||||
}
|
||||
|
||||
bool CryptoSession::GetDecryptHashSupport(SecurityLevel security_level,
|
||||
bool CryptoSession::GetDecryptHashSupport(RequestedSecurityLevel security_level,
|
||||
uint32_t* decrypt_hash_support) {
|
||||
LOGV("Checking if decrypt hash is supported");
|
||||
RETURN_IF_UNINITIALIZED(false);
|
||||
@@ -2649,10 +2651,10 @@ CdmResponseType CryptoSession::GenericVerify(const std::string& message,
|
||||
}
|
||||
|
||||
CdmResponseType CryptoSession::CreateUsageTableHeader(
|
||||
SecurityLevel requested_security_level,
|
||||
RequestedSecurityLevel requested_security_level,
|
||||
CdmUsageTableHeader* usage_table_header) {
|
||||
LOGV("Creating usage table header: requested_security_level = %s",
|
||||
SecurityLevelToString(requested_security_level));
|
||||
RequestedSecurityLevelToString(requested_security_level));
|
||||
RETURN_IF_NULL(usage_table_header, PARAMETER_NULL);
|
||||
|
||||
usage_table_header->resize(kEstimatedInitialUsageTableHeader);
|
||||
@@ -2690,10 +2692,10 @@ CdmResponseType CryptoSession::CreateUsageTableHeader(
|
||||
}
|
||||
|
||||
CdmResponseType CryptoSession::LoadUsageTableHeader(
|
||||
SecurityLevel requested_security_level,
|
||||
RequestedSecurityLevel requested_security_level,
|
||||
const CdmUsageTableHeader& usage_table_header) {
|
||||
LOGV("Loading usage table header: requested_security_level = %s",
|
||||
SecurityLevelToString(requested_security_level));
|
||||
RequestedSecurityLevelToString(requested_security_level));
|
||||
|
||||
const OEMCryptoResult result = WithOecWriteLock("LoadUsageTableHeader", [&] {
|
||||
return OEMCrypto_LoadUsageTableHeader(
|
||||
@@ -2731,10 +2733,10 @@ CdmResponseType CryptoSession::LoadUsageTableHeader(
|
||||
}
|
||||
|
||||
CdmResponseType CryptoSession::ShrinkUsageTableHeader(
|
||||
SecurityLevel requested_security_level, uint32_t new_entry_count,
|
||||
RequestedSecurityLevel requested_security_level, uint32_t new_entry_count,
|
||||
CdmUsageTableHeader* usage_table_header) {
|
||||
LOGV("Shrinking usage table header: requested_security_level = %s",
|
||||
SecurityLevelToString(requested_security_level));
|
||||
RequestedSecurityLevelToString(requested_security_level));
|
||||
RETURN_IF_NULL(usage_table_header, PARAMETER_NULL);
|
||||
|
||||
size_t usage_table_header_len = 0;
|
||||
|
||||
Reference in New Issue
Block a user