Be clear it is DVB_CSA2 we are supporting right now. There shouldn't be anyone using DVB_CSA anymore, DVB_CSA3 is in the future.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=219867168
This commit is contained in:
Fang Yu
2018-11-02 15:00:03 -07:00
parent 0441c0b8d4
commit 581ae9080d
6 changed files with 12 additions and 12 deletions

View File

@@ -30,7 +30,7 @@ int main(int argc, char **argv) {
widevine::cas::WvCasEcm wv_cas_ecm; widevine::cas::WvCasEcm wv_cas_ecm;
widevine::cas::WvCasStatus status = widevine::cas::WvCasStatus status =
wv_cas_ecm.Initialize(/* content_iv_size= */ 8, kKeyRotationEnabled, wv_cas_ecm.Initialize(/* content_iv_size= */ 8, kKeyRotationEnabled,
widevine::cas::CryptoMode::kDvbCsa); widevine::cas::CryptoMode::kDvbCsa2);
if (status != widevine::cas::OK) { if (status != widevine::cas::OK) {
std::cerr << "Failed to initialize WV CAS ECM, error: " std::cerr << "Failed to initialize WV CAS ECM, error: "
<< widevine::cas::GetWvCasStatusMessage(status) << widevine::cas::GetWvCasStatusMessage(status)

View File

@@ -78,7 +78,7 @@ WvCasStatus WvCasEcm::GenerateEcm(const std::string& even_key,
const std::string& entitlement_key, const std::string& entitlement_key,
std::string* ecm) const { std::string* ecm) const {
DCHECK(ecm); DCHECK(ecm);
if (crypto_mode_ == CryptoMode::kDvbCsa && if (crypto_mode_ == CryptoMode::kDvbCsa2 &&
even_key.length() == kCsaContentKeySizeBytes && even_key.length() == kCsaContentKeySizeBytes &&
odd_key.length() == kCsaContentKeySizeBytes) { odd_key.length() == kCsaContentKeySizeBytes) {
return GenerateEcm(absl::StrCat(even_key, even_key), even_content_iv, return GenerateEcm(absl::StrCat(even_key, even_key), even_content_iv,
@@ -169,7 +169,7 @@ WvCasStatus WvCasEcm::GenerateSingleKeyEcm(const std::string& even_key,
const std::string& entitlement_key, const std::string& entitlement_key,
std::string* ecm) const { std::string* ecm) const {
DCHECK(ecm); DCHECK(ecm);
if (crypto_mode_ == CryptoMode::kDvbCsa && if (crypto_mode_ == CryptoMode::kDvbCsa2 &&
even_key.length() == kCsaContentKeySizeBytes) { even_key.length() == kCsaContentKeySizeBytes) {
return GenerateSingleKeyEcm(absl::StrCat(even_key, even_key), return GenerateSingleKeyEcm(absl::StrCat(even_key, even_key),
even_content_iv, entitlement_key_id, even_content_iv, entitlement_key_id,

View File

@@ -259,7 +259,7 @@ TEST_F(WvCasEcmTest, GenerateSingleKeyEcm16BytesContentIvCbcSuccess) {
TEST_F(WvCasEcmTest, GenerateEcm8BytesContentIvCsaSuccess) { TEST_F(WvCasEcmTest, GenerateEcm8BytesContentIvCsaSuccess) {
EXPECT_EQ(OK, wv_cas_ecm_.Initialize(/* content_iv_size= */ 8, EXPECT_EQ(OK, wv_cas_ecm_.Initialize(/* content_iv_size= */ 8,
/* key_rotation_enabled= */ true, /* key_rotation_enabled= */ true,
CryptoMode::kDvbCsa)); CryptoMode::kDvbCsa2));
std::string actual_ecm; std::string actual_ecm;
EXPECT_EQ(OK, wv_cas_ecm_.GenerateEcm( EXPECT_EQ(OK, wv_cas_ecm_.GenerateEcm(
@@ -284,7 +284,7 @@ TEST_F(WvCasEcmTest, GenerateEcm8BytesContentIvCsaSuccess) {
TEST_F(WvCasEcmTest, GenerateSingleKeyEcm8BytesContentIvCsaSuccess) { TEST_F(WvCasEcmTest, GenerateSingleKeyEcm8BytesContentIvCsaSuccess) {
EXPECT_EQ(OK, wv_cas_ecm_.Initialize(/* content_iv_size= */ 8, EXPECT_EQ(OK, wv_cas_ecm_.Initialize(/* content_iv_size= */ 8,
/* key_rotation_enabled= */ false, /* key_rotation_enabled= */ false,
CryptoMode::kDvbCsa)); CryptoMode::kDvbCsa2));
std::string actual_ecm; std::string actual_ecm;
EXPECT_EQ(OK, wv_cas_ecm_.GenerateSingleKeyEcm( EXPECT_EQ(OK, wv_cas_ecm_.GenerateSingleKeyEcm(

View File

@@ -45,8 +45,8 @@ std::string CryptoModeToString(CryptoMode mode) {
case CryptoMode::kAesCbc: { case CryptoMode::kAesCbc: {
return "kAesCbc"; return "kAesCbc";
} }
case CryptoMode::kDvbCsa: { case CryptoMode::kDvbCsa2: {
return "kDvbCsa"; return "kDvbCsa2";
} }
default: { default: {
return "kCryptoModeUnspecified"; return "kCryptoModeUnspecified";
@@ -61,8 +61,8 @@ CryptoMode StringToCryptoMode(std::string str) {
if (str == "kAesCbc") { if (str == "kAesCbc") {
return CryptoMode::kAesCbc; return CryptoMode::kAesCbc;
} }
if (str == "kDvbCsa") { if (str == "kDvbCsa2") {
return CryptoMode::kDvbCsa; return CryptoMode::kDvbCsa2;
} }
return CryptoMode::kCryptoModeUnspecified; return CryptoMode::kCryptoModeUnspecified;
} }

View File

@@ -55,7 +55,7 @@ enum class CryptoMode : int {
kCryptoModeUnspecified = 0, kCryptoModeUnspecified = 0,
kAesCtr = 1, kAesCtr = 1,
kAesCbc = 2, kAesCbc = 2,
kDvbCsa = 3 kDvbCsa2 = 3
}; };
std::string CryptoModeToString(CryptoMode mode); std::string CryptoModeToString(CryptoMode mode);

View File

@@ -27,7 +27,7 @@ TEST(WvCasTypesTest, GetWvCasStatusMessage) {
TEST(WvCasTypesTest, CryptoModeToString) { TEST(WvCasTypesTest, CryptoModeToString) {
EXPECT_EQ("kAesCtr", CryptoModeToString(CryptoMode::kAesCtr)); EXPECT_EQ("kAesCtr", CryptoModeToString(CryptoMode::kAesCtr));
EXPECT_EQ("kAesCbc", CryptoModeToString(CryptoMode::kAesCbc)); EXPECT_EQ("kAesCbc", CryptoModeToString(CryptoMode::kAesCbc));
EXPECT_EQ("kDvbCsa", CryptoModeToString(CryptoMode::kDvbCsa)); EXPECT_EQ("kDvbCsa2", CryptoModeToString(CryptoMode::kDvbCsa2));
EXPECT_EQ("kCryptoModeUnspecified", EXPECT_EQ("kCryptoModeUnspecified",
CryptoModeToString(CryptoMode::kCryptoModeUnspecified)); CryptoModeToString(CryptoMode::kCryptoModeUnspecified));
} }
@@ -35,7 +35,7 @@ TEST(WvCasTypesTest, CryptoModeToString) {
TEST(WvCasTypesTest, StringToCryptoMode) { TEST(WvCasTypesTest, StringToCryptoMode) {
EXPECT_EQ(CryptoMode::kAesCtr, StringToCryptoMode("kAesCtr")); EXPECT_EQ(CryptoMode::kAesCtr, StringToCryptoMode("kAesCtr"));
EXPECT_EQ(CryptoMode::kAesCbc, StringToCryptoMode("kAesCbc")); EXPECT_EQ(CryptoMode::kAesCbc, StringToCryptoMode("kAesCbc"));
EXPECT_EQ(CryptoMode::kDvbCsa, StringToCryptoMode("kDvbCsa")); EXPECT_EQ(CryptoMode::kDvbCsa2, StringToCryptoMode("kDvbCsa2"));
EXPECT_EQ(CryptoMode::kCryptoModeUnspecified, EXPECT_EQ(CryptoMode::kCryptoModeUnspecified,
StringToCryptoMode("wrong crypto mode")); StringToCryptoMode("wrong crypto mode"));
} }