Merge "Misc Windows fixes."

This commit is contained in:
John Bruce
2019-01-28 17:49:28 +00:00
committed by Android (Google) Code Review
6 changed files with 90 additions and 64 deletions

View File

@@ -38,57 +38,63 @@ const CdmUsageEntry kYetAnotherUsageEntry = "yet another usage entry";
const CdmUsageEntry kAndAnotherUsageEntry = "and another usage entry";
const CdmUsageEntry kOneMoreUsageEntry = "one more usage entry";
const CdmUsageEntryInfo kUsageEntryInfoOfflineLicense1 = {
.storage_type = kStorageLicense,
.key_set_id = "offline_key_set_1",
.usage_info_file_name = ""};
/* storage_type = */ kStorageLicense,
/* key_set_id = */ "offline_key_set_1",
/* usage_info_file_name = */ "",
};
const CdmUsageEntryInfo kUsageEntryInfoOfflineLicense2 = {
.storage_type = kStorageLicense,
.key_set_id = "offline_key_set_2",
.usage_info_file_name = ""};
/* storage_type = */ kStorageLicense,
/* key_set_id = */ "offline_key_set_2",
/* usage_info_file_name = */ "",
};
const CdmUsageEntryInfo kUsageEntryInfoOfflineLicense3 = {
.storage_type = kStorageLicense,
.key_set_id = "offline_key_set_3",
.usage_info_file_name = ""};
/* storage_type = */ kStorageLicense,
/* key_set_id = */ "offline_key_set_3",
/* usage_info_file_name = */ ""};
const CdmUsageEntryInfo kUsageEntryInfoOfflineLicense4 = {
.storage_type = kStorageLicense,
.key_set_id = "offline_key_set_4",
.usage_info_file_name = ""};
/* storage_type = */ kStorageLicense,
/* key_set_id = */ "offline_key_set_4",
/* usage_info_file_name = */ ""};
const CdmUsageEntryInfo kUsageEntryInfoOfflineLicense5 = {
.storage_type = kStorageLicense,
.key_set_id = "offline_key_set_5",
.usage_info_file_name = ""};
/* storage_type = */ kStorageLicense,
/* key_set_id = */ "offline_key_set_5",
/* usage_info_file_name = */ ""};
const CdmUsageEntryInfo kUsageEntryInfoOfflineLicense6 = {
.storage_type = kStorageLicense,
.key_set_id = "offline_key_set_6",
.usage_info_file_name = ""};
/* storage_type = */ kStorageLicense,
/* key_set_id = */ "offline_key_set_6",
/* usage_info_file_name = */ ""};
const CdmUsageEntryInfo kUsageEntryInfoSecureStop1 = {
.storage_type = kStorageUsageInfo,
.key_set_id = "secure_stop_key_set_1",
.usage_info_file_name = "usage_info_file_1"};
/* storage_type = */ kStorageUsageInfo,
/* key_set_id = */ "secure_stop_key_set_1",
/* usage_info_file_name = */ "usage_info_file_1",
};
const CdmUsageEntryInfo kUsageEntryInfoSecureStop2 = {
.storage_type = kStorageUsageInfo,
.key_set_id = "secure_stop_key_set_2",
.usage_info_file_name = "usage_info_file_2"};
/* storage_type = */ kStorageUsageInfo,
/* key_set_id = */ "secure_stop_key_set_2",
/* usage_info_file_name = */ "usage_info_file_2",
};
const CdmUsageEntryInfo kUsageEntryInfoSecureStop3 = {
.storage_type = kStorageUsageInfo,
.key_set_id = "secure_stop_key_set_3",
.usage_info_file_name = "usage_info_file_3"};
/* storage_type = */ kStorageUsageInfo,
/* key_set_id = */ "secure_stop_key_set_3",
/* usage_info_file_name = */ "usage_info_file_3"};
const CdmUsageEntryInfo kUsageEntryInfoSecureStop4 = {
.storage_type = kStorageUsageInfo,
.key_set_id = "secure_stop_key_set_4",
.usage_info_file_name = "usage_info_file_4"};
/* storage_type = */ kStorageUsageInfo,
/* key_set_id = */ "secure_stop_key_set_4",
/* usage_info_file_name = */ "usage_info_file_4"};
const CdmUsageEntryInfo kUsageEntryInfoSecureStop5 = {
.storage_type = kStorageUsageInfo,
.key_set_id = "secure_stop_key_set_5",
.usage_info_file_name = "usage_info_file_5"};
/* storage_type = */ kStorageUsageInfo,
/* key_set_id = */ "secure_stop_key_set_5",
/* usage_info_file_name = */ "usage_info_file_5"};
const CdmUsageEntryInfo kUsageEntryInfoStorageTypeUnknown = {
.storage_type = kStorageTypeUnknown,
.key_set_id = "",
.usage_info_file_name = ""};
/* storage_type = */ kStorageTypeUnknown,
/* key_set_id = */ "",
/* usage_info_file_name = */ "",
};
const CdmUsageEntryInfo kDummyUsageEntryInfo = {
.storage_type = kStorageLicense,
.key_set_id = "DummyKsid",
.usage_info_file_name = ""};
/* storage_type = */ kStorageLicense,
/* key_set_id = */ "DummyKsid",
/* usage_info_file_name = */ "",
};
const std::vector<std::string> kEmptyLicenseList;
@@ -113,28 +119,28 @@ const size_t kUsageInfoFileArraySize = sizeof(kUsageInfoFileArray)/
std::vector<std::string> kUsageInfoFileList;
const DeviceFiles::CdmUsageData kCdmUsageData1 = {
.provider_session_token = "provider_session_token_1",
.license_request = "license_request_1",
.license = "license_1",
.key_set_id = "key_set_id_1",
.usage_entry = "usage_entry_1",
.usage_entry_number = 0,
/* provider_session_token = */ "provider_session_token_1",
/* license_request = */ "license_request_1",
/* license = */ "license_1",
/* key_set_id = */ "key_set_id_1",
/* usage_entry = */ "usage_entry_1",
/* usage_entry_number = */ 0,
};
const DeviceFiles::CdmUsageData kCdmUsageData2 = {
.provider_session_token = "provider_session_token_2",
.license_request = "license_request_2",
.license = "license_2",
.key_set_id = "key_set_id_2",
.usage_entry = "usage_entry_2",
.usage_entry_number = 0,
/* provider_session_token = */ "provider_session_token_2",
/* license_request = */ "license_request_2",
/* license = */ "license_2",
/* key_set_id = */ "key_set_id_2",
/* usage_entry = */ "usage_entry_2",
/* usage_entry_number = */ 0,
};
const DeviceFiles::CdmUsageData kCdmUsageData3 = {
.provider_session_token = "provider_session_token_3",
.license_request = "license_request_3",
.license = "license_3",
.key_set_id = "key_set_id_3",
.usage_entry = "usage_entry_3",
.usage_entry_number = 0,
/* provider_session_token = */ "provider_session_token_3",
/* license_request = */ "license_request_3",
/* license = */ "license_3",
/* key_set_id = */ "key_set_id_3",
/* usage_entry = */ "usage_entry_3",
/* usage_entry_number = */ 0,
};
const std::vector<DeviceFiles::CdmUsageData> kEmptyUsageInfoUsageDataList;

View File

@@ -53,6 +53,12 @@ void SetValue<unsigned long>(drm_metrics::ValueMetric *value_proto,
value_proto->set_int_value((int64_t)value);
}
template <>
void SetValue<unsigned long long>(drm_metrics::ValueMetric *value_proto,
const unsigned long long &value) {
value_proto->set_int_value((int64_t)value);
}
template <>
void SetValue<bool>(drm_metrics::ValueMetric *value_proto,
const bool &value) {

View File

@@ -0,0 +1,12 @@
// Copyright 2018 Google LLC. All Rights Reserved. This file and proprietary
// source code may only be used and distributed under the Widevine Master
// License Agreement.
//
// dllmain - A dummy DllMain method for Windows DLLs.
//
#include <windows.h>
BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason,
LPVOID lpReserved) {
return TRUE;
}

View File

@@ -15,8 +15,8 @@ namespace wvoec_ref {
class CertOnlyCryptoEngine : public CryptoEngine {
public:
explicit CertOnlyCryptoEngine(std::unique_ptr<wvcdm::FileSystem> file_system)
: CryptoEngine(file_system) {}
explicit CertOnlyCryptoEngine(std::unique_ptr<wvcdm::FileSystem>&& file_system)
: CryptoEngine(std::move(file_system)) {}
bool config_local_display_only() { return true; }
@@ -30,8 +30,8 @@ class CertOnlyCryptoEngine : public CryptoEngine {
};
CryptoEngine* CryptoEngine::MakeCryptoEngine(
std::unique_ptr<wvcdm::FileSystem> file_system) {
return new CertOnlyCryptoEngine(file_system);
std::unique_ptr<wvcdm::FileSystem>&& file_system) {
return new CertOnlyCryptoEngine(std::move(file_system));
}
} // namespace wvoec_ref

View File

@@ -8,6 +8,7 @@
// OEMCrypto unit tests
//
#include <openssl/rsa.h>
#include <time.h>
#include <string>
#include <vector>

View File

@@ -1688,12 +1688,13 @@ TEST_P(SessionTestRefreshKeyTest, RefreshWithNoSelectKey) {
num_keys_, wvoec::kControlNonceEnabled, s.get_nonce()));
s.ServerSignBuffer(reinterpret_cast<const uint8_t*>(&s.encrypted_license()),
s.message_size(), &s.signature());
OEMCrypto_KeyRefreshObject key_array[num_keys_];
s.FillRefreshArray(key_array, num_keys_);
std::vector<OEMCrypto_KeyRefreshObject> key_array(num_keys_);
s.FillRefreshArray(key_array.data(), num_keys_);
ASSERT_EQ(OEMCrypto_SUCCESS,
OEMCrypto_RefreshKeys(s.session_id(), s.message_ptr(),
s.message_size(), s.signature().data(),
s.signature().size(), num_keys_, key_array));
s.signature().size(), num_keys_,
key_array.data()));
ASSERT_NO_FATAL_FAILURE(s.TestDecryptCTR(false));
// This should still be valid key, even if the refresh failed, because this
// is before the original license duration.