Fallback to L3 if provisioning lost am: df0cfa2daa am: f3b26aaf2c

Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/16523000

Change-Id: Ibd8c4d27c23086d1fe8ee7d286a00787e8704464
This commit is contained in:
Fred Gylys-Colwell
2022-01-07 06:08:39 +00:00
committed by Automerger Merge Worker
2 changed files with 12 additions and 0 deletions

View File

@@ -3135,6 +3135,12 @@ CdmResponseType CryptoSession::LoadOtaProvisioning(
WithOecWriteLock("LoadOtaProvisioning",
[&] { needs_keybox_provisioning_ = false; });
}
CdmResponseType result = GetSystemIdInternal(&system_id_);
if (result == NO_ERROR) {
LOGD("New system id is %d", system_id_);
} else {
LOGE("Failed to fetch system ID");
}
return MapOEMCryptoResult(status, UNKNOWN_ERROR, "LoadOtaProvisioning");
}

View File

@@ -97,6 +97,12 @@ OtaKeyboxProvisioner::OtaKeyboxProvisioner(
}
OtaKeyboxProvisioner::~OtaKeyboxProvisioner() {
// If we sent a request, and did not get a response, and we still need to
// provision, then there was an error and we should trigger fallback.
if (request_generated_ && (!response_received_) && (!IsProvisioned())) {
LOGE("OTA Provisioning not processed. Falling back to L3");
fallback_policy_->TriggerFallback();
}
crypto_session_.reset();
fallback_policy_ = nullptr;
}