Remove duplicate information from client identification

[ Merge of http://go/wvgerrit/48720 ]

The device ID does not need to be sent in the client identification
information as it is either present in other fields or ignored
by the license service.

This also allows for build information to be reported during
provisioning for devices with OEM certificates.

Bug: 78578351
Test: WV unit/integration tests. GtsMediaTestCases.
Change-Id: I708c63d34f0e2df7e465154d12096a394a1b23d7
This commit is contained in:
Rahul Frias
2018-04-25 13:36:43 -07:00
parent 04ad84a533
commit d7e0a3562c
2 changed files with 11 additions and 9 deletions

View File

@@ -15,6 +15,8 @@
namespace {
const std::string kKeyBuildInfo = "build_info";
// URL for Google Provisioning Server.
// The provisioning server supplies the certificate that is needed
// to communicate with the License Server.
@@ -235,6 +237,15 @@ CdmResponseType CertificateProvisioning::GetProvisioningRequest(
return CLIENT_IDENTIFICATION_TOKEN_ERROR_2;
}
client_id->set_token(token);
std::string value;
if (Properties::GetBuildInfo(&value)) {
ClientIdentification_NameValue* client_info;
client_info = client_id->add_client_info();
client_info->set_name(kKeyBuildInfo);
client_info->set_value(value);
}
}
uint32_t nonce;

View File

@@ -133,15 +133,6 @@ CdmResponseType ClientIdentification::Prepare(
client_info->set_name(kKeyBuildInfo);
client_info->set_value(value);
}
if (!device_id_.empty()) {
client_info = client_id->add_client_info();
client_info->set_name(kKeyDeviceId);
client_info->set_value(b2a_hex(device_id_));
} else if (crypto_session_->GetInternalDeviceUniqueId(&value)) {
client_info = client_id->add_client_info();
client_info->set_name(kKeyDeviceId);
client_info->set_value(value);
}
if (Properties::GetWVCdmVersion(&value)) {
client_info = client_id->add_client_info();
client_info->set_name(kKeyWvCdmVersion);