diff --git a/libwvdrmengine/cdm/core/src/crypto_session.cpp b/libwvdrmengine/cdm/core/src/crypto_session.cpp index 3bcee3ce..11d5d9f3 100644 --- a/libwvdrmengine/cdm/core/src/crypto_session.cpp +++ b/libwvdrmengine/cdm/core/src/crypto_session.cpp @@ -301,6 +301,11 @@ CdmResponseType CryptoSession::GetProvisioningMethod( break; case OEMCrypto_ProvisioningError: default: + if (static_cast(method) == 0 && needs_keybox_provisioning_) { + LOGW("Overriding provisioning method, assuming keybox"); + type = kClientTokenKeybox; + break; + } LOGE("OEMCrypto_GetProvisioningMethod failed: method = %d", static_cast(method)); metrics_->oemcrypto_provisioning_method_.SetError(method); diff --git a/libwvdrmengine/cdm/core/src/ota_keybox_provisioner.cpp b/libwvdrmengine/cdm/core/src/ota_keybox_provisioner.cpp index 180ab424..af5e367e 100644 --- a/libwvdrmengine/cdm/core/src/ota_keybox_provisioner.cpp +++ b/libwvdrmengine/cdm/core/src/ota_keybox_provisioner.cpp @@ -162,6 +162,8 @@ CdmResponseType OtaKeyboxProvisioner::GetProvisioningRequest( static_cast(result)); client_id->Clear(); } + LOGI("OTA request generated"); + LOGV("ota_request_data = %s", b2a_hex(ota_request_data).c_str()); OtaRequest* ota_request = prov_request.mutable_android_ota_keybox_request(); ota_request->set_ota_request(ota_request_data); @@ -255,8 +257,8 @@ CdmResponseType OtaKeyboxProvisioner::HandleProvisioningResponse( const CdmResponseType result = crypto_session_->LoadOtaProvisioning( kProductionKeybox, ota_response_data); if (result == NO_ERROR) { - LOGV("OTA response successfully processed: ota_response_data = %s", - b2a_hex(ota_response_data).c_str()); + LOGI("OTA response successfully processed"); + LOGV("ota_response_data = %s", b2a_hex(ota_response_data).c_str()); fallback_policy_->MarkProvisioned(); response_received_ = true; } else {