Fix ODK warning errors for WV DRM
PiperOrigin-RevId: 525266553 Merged from https://widevine-internal-review.googlesource.com/169640 Change-Id: Id92dac068a2b2f767287641170f7b522f54588e4
This commit is contained in:
@@ -25,14 +25,13 @@ namespace {
|
||||
* computing the API version of the response.
|
||||
*
|
||||
* Template arguments:
|
||||
* T: struct to be deserialized by odk
|
||||
* S: kdo input struct
|
||||
*/
|
||||
template <typename T, typename S>
|
||||
template <typename S>
|
||||
bool CreateResponseHeader(const CoreMessageFeatures& features,
|
||||
ODK_MessageType message_type,
|
||||
ODK_CoreMessage* response_header,
|
||||
const S& core_request, T& response) {
|
||||
const S& core_request) {
|
||||
// Bad major version.
|
||||
if ((features.maximum_major_version > ODK_MAJOR_VERSION) ||
|
||||
(features.maximum_major_version == ODK_MAJOR_VERSION &&
|
||||
@@ -68,11 +67,10 @@ bool CreateResponseHeader(const CoreMessageFeatures& features,
|
||||
*
|
||||
* Template arguments:
|
||||
* T: struct to be deserialized by odk
|
||||
* S: kdo input struct
|
||||
* P: auto-generated serializing function for |T|
|
||||
*/
|
||||
template <typename T, typename S, typename P>
|
||||
bool CreateResponse(ODK_MessageType message_type, const S& core_request,
|
||||
template <typename T, typename P>
|
||||
bool CreateResponse(ODK_MessageType message_type,
|
||||
std::string* oemcrypto_core_message,
|
||||
ODK_CoreMessage* response_header, T& response,
|
||||
const P& packer) {
|
||||
@@ -125,8 +123,7 @@ bool CreateCoreLicenseResponse(const CoreMessageFeatures& features,
|
||||
ODK_LicenseResponse license_response{
|
||||
{}, const_cast<ODK_ParsedLicense*>(&parsed_lic)};
|
||||
if (!CreateResponseHeader(features, ODK_License_Response_Type,
|
||||
&license_response.core_message, core_request,
|
||||
license_response)) {
|
||||
&license_response.core_message, core_request)) {
|
||||
return false;
|
||||
}
|
||||
if (ODK_MAX_NUM_KEYS < license_response.parsed_license->key_array_length) {
|
||||
@@ -162,8 +159,7 @@ bool CreateCoreLicenseResponse(const CoreMessageFeatures& features,
|
||||
return false;
|
||||
memcpy(license_response_v16.request_hash, core_request_sha256.data(),
|
||||
sizeof(license_response_v16.request_hash));
|
||||
return CreateResponse(ODK_License_Response_Type, core_request,
|
||||
oemcrypto_core_message,
|
||||
return CreateResponse(ODK_License_Response_Type, oemcrypto_core_message,
|
||||
&license_response_v16.request.core_message,
|
||||
license_response_v16, Pack_ODK_LicenseResponseV16);
|
||||
} else if (license_response.core_message.nonce_values.api_major_version ==
|
||||
@@ -222,14 +218,13 @@ bool CreateCoreLicenseResponse(const CoreMessageFeatures& features,
|
||||
return false;
|
||||
memcpy(license_response_v17.request_hash, core_request_sha256.data(),
|
||||
sizeof(license_response_v17.request_hash));
|
||||
return CreateResponse(ODK_License_Response_Type, core_request,
|
||||
oemcrypto_core_message,
|
||||
return CreateResponse(ODK_License_Response_Type, oemcrypto_core_message,
|
||||
&license_response_v17.request.core_message,
|
||||
license_response_v17, Pack_ODK_LicenseResponseV17);
|
||||
}
|
||||
return CreateResponse(ODK_License_Response_Type, core_request,
|
||||
oemcrypto_core_message, &license_response.core_message,
|
||||
license_response, Pack_ODK_LicenseResponse);
|
||||
return CreateResponse(ODK_License_Response_Type, oemcrypto_core_message,
|
||||
&license_response.core_message, license_response,
|
||||
Pack_ODK_LicenseResponse);
|
||||
}
|
||||
|
||||
bool CreateCoreRenewalResponse(const CoreMessageFeatures& features,
|
||||
@@ -241,11 +236,10 @@ bool CreateCoreRenewalResponse(const CoreMessageFeatures& features,
|
||||
renewal_response.renewal_duration_seconds = renewal_duration_seconds;
|
||||
if (!CreateResponseHeader(features, ODK_Renewal_Response_Type,
|
||||
&renewal_response.request.core_message,
|
||||
core_request, renewal_response)) {
|
||||
core_request)) {
|
||||
return false;
|
||||
}
|
||||
return CreateResponse(ODK_Renewal_Response_Type, core_request,
|
||||
oemcrypto_core_message,
|
||||
return CreateResponse(ODK_Renewal_Response_Type, oemcrypto_core_message,
|
||||
&renewal_response.request.core_message,
|
||||
renewal_response, Pack_ODK_RenewalResponse);
|
||||
}
|
||||
@@ -257,8 +251,7 @@ bool CreateCoreProvisioningResponse(const CoreMessageFeatures& features,
|
||||
ODK_ProvisioningResponse prov_response{
|
||||
{}, const_cast<ODK_ParsedProvisioning*>(&parsed_prov)};
|
||||
if (!CreateResponseHeader(features, ODK_Provisioning_Response_Type,
|
||||
&prov_response.core_message, core_request,
|
||||
prov_response)) {
|
||||
&prov_response.core_message, core_request)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -269,15 +262,15 @@ bool CreateCoreProvisioningResponse(const CoreMessageFeatures& features,
|
||||
}
|
||||
prov_response_v16.request.core_message = prov_response.core_message;
|
||||
prov_response_v16.parsed_provisioning = prov_response.parsed_provisioning;
|
||||
return CreateResponse(ODK_Provisioning_Response_Type, core_request,
|
||||
return CreateResponse(ODK_Provisioning_Response_Type,
|
||||
oemcrypto_core_message,
|
||||
&prov_response_v16.request.core_message,
|
||||
prov_response_v16, Pack_ODK_ProvisioningResponseV16);
|
||||
}
|
||||
|
||||
return CreateResponse(ODK_Provisioning_Response_Type, core_request,
|
||||
oemcrypto_core_message, &prov_response.core_message,
|
||||
prov_response, Pack_ODK_ProvisioningResponse);
|
||||
return CreateResponse(ODK_Provisioning_Response_Type, oemcrypto_core_message,
|
||||
&prov_response.core_message, prov_response,
|
||||
Pack_ODK_ProvisioningResponse);
|
||||
}
|
||||
|
||||
bool CreateCoreProvisioning40Response(
|
||||
@@ -286,13 +279,12 @@ bool CreateCoreProvisioning40Response(
|
||||
std::string* oemcrypto_core_message) {
|
||||
ODK_Provisioning40Response prov_response = {};
|
||||
if (!CreateResponseHeader(features, ODK_Provisioning_Response_Type,
|
||||
&prov_response.core_message, core_request,
|
||||
prov_response)) {
|
||||
&prov_response.core_message, core_request)) {
|
||||
return false;
|
||||
}
|
||||
return CreateResponse(ODK_Provisioning_Response_Type, core_request,
|
||||
oemcrypto_core_message, &prov_response.core_message,
|
||||
prov_response, Pack_ODK_Provisioning40Response);
|
||||
return CreateResponse(ODK_Provisioning_Response_Type, oemcrypto_core_message,
|
||||
&prov_response.core_message, prov_response,
|
||||
Pack_ODK_Provisioning40Response);
|
||||
}
|
||||
|
||||
} // namespace serialize
|
||||
|
||||
Reference in New Issue
Block a user