Add X509 BCC type to protobuf and update oemcrypto adapter
BCC supports two types of format: CBOR and X509. The latter will be used by Chrome OS. In case of Prov4, BCC type will be queried by OEMCrypto_GetBCCType() and the returned value is populated in the provisioning request. This CL adds X509 type to protobuf, a call from CDM to query BCC type and OEMCrypto adapter changes for this call. Test: run_fake_l1_tests, opk_ta_p40 Bug: 307969500 Change-Id: I88acc36da6cb413d537a9ea9dfd2a150d4557595
This commit is contained in:
@@ -91,6 +91,13 @@ class CryptoSession {
|
||||
virtual CdmResponseType GetProvisioningToken(std::string* token,
|
||||
std::string* additional_token);
|
||||
|
||||
virtual CdmResponseType GetProvisioning40TokenType(
|
||||
RequestedSecurityLevel requested_security_level,
|
||||
OEMCrypto_BCCType* bcc_type);
|
||||
// Must be called after session is open.
|
||||
virtual CdmResponseType GetProvisioning40TokenType(
|
||||
OEMCrypto_BCCType* bcc_type);
|
||||
|
||||
virtual CdmClientTokenType GetPreProvisionTokenType() {
|
||||
return pre_provision_token_type_;
|
||||
}
|
||||
@@ -477,12 +484,12 @@ class CryptoSession {
|
||||
// otherwise, such as making two calls into OEMCrypto immediately after each
|
||||
// other.
|
||||
template <class Func>
|
||||
static auto WithStaticFieldWriteLock(const char* tag, Func body)
|
||||
-> decltype(body());
|
||||
static auto WithStaticFieldWriteLock(const char* tag,
|
||||
Func body) -> decltype(body());
|
||||
|
||||
template <class Func>
|
||||
static auto WithStaticFieldReadLock(const char* tag, Func body)
|
||||
-> decltype(body());
|
||||
static auto WithStaticFieldReadLock(const char* tag,
|
||||
Func body) -> decltype(body());
|
||||
|
||||
template <class Func>
|
||||
static auto WithOecWriteLock(const char* tag, Func body) -> decltype(body());
|
||||
|
||||
@@ -94,7 +94,8 @@ OEMCryptoResult OEMCrypto_Generic_Verify(
|
||||
size_t key_handle_length, const OEMCrypto_SharedMemory* buffer,
|
||||
size_t buffer_length, OEMCrypto_Algorithm algorithm,
|
||||
const OEMCrypto_SharedMemory* signature, size_t signature_length);
|
||||
|
||||
OEMCryptoResult OEMCrypto_GetBCCType(RequestedSecurityLevel level,
|
||||
OEMCrypto_BCCType* bcc_type);
|
||||
} // namespace wvcdm
|
||||
|
||||
#endif // WVCDM_CORE_OEMCRYPTO_ADAPTER_H_
|
||||
|
||||
Reference in New Issue
Block a user