Index: media/base/decrypt_config.cc |
diff --git a/media/base/decrypt_config.cc b/media/base/decrypt_config.cc |
index 9ae5f195e5d4cfab2be9a45108b23d329d2732e4..9e9a46cd3b5bcdb090649e256cb18acb2ebde52d 100644 |
--- a/media/base/decrypt_config.cc |
+++ b/media/base/decrypt_config.cc |
@@ -8,11 +8,55 @@ |
namespace media { |
+// TODO(strobe): Remove along with CBC mode. |
+static const char kDefaultIV[] = "0000000000000000"; |
fgalligan1
2012/06/27 00:28:36
s/kDefaultIV/kDefaultIv/
strobe_
2012/06/27 02:01:21
Done.
|
+static const int kDefaultIVSize = 16; |
fgalligan1
2012/06/27 00:28:36
s/kDefaultIVSize/kDefaultIvSize/
strobe_
2012/06/27 02:01:21
Done.
|
+ |
DecryptConfig::DecryptConfig(const uint8* key_id, int key_id_size) |
- : key_id_size_(key_id_size) { |
+ : key_id_size_(key_id_size), |
+ iv_size_(kDefaultIVSize), |
+ subsample_count_(0), |
+ use_cbc_(true) { |
+ CHECK_GT(key_id_size, 0); |
+ key_id_.reset(new uint8[key_id_size]); |
+ memcpy(key_id_.get(), key_id, key_id_size); |
+ iv_.reset(new uint8[iv_size_]); |
+ memcpy(iv_.get(), kDefaultIV, iv_size_); |
+} |
+ |
+DecryptConfig::DecryptConfig(const uint8* key_id, int key_id_size, |
+ const uint8* iv, int iv_size) |
+ : key_id_size_(key_id_size), |
+ iv_size_(iv_size), |
+ subsample_count_(0), |
+ use_cbc_(false) { |
+ CHECK_GT(key_id_size, 0); |
+ CHECK_GT(iv_size, 0); |
+ key_id_.reset(new uint8[key_id_size]); |
+ memcpy(key_id_.get(), key_id, key_id_size); |
+ iv_.reset(new uint8[iv_size]); |
+ memcpy(iv_.get(), iv, iv_size); |
+} |
+ |
+DecryptConfig::DecryptConfig(const uint8* key_id, int key_id_size, |
+ const uint8* iv, int iv_size, |
+ const SubsampleEntry* subsamples, |
+ int subsample_count) |
+ : key_id_size_(key_id_size), |
+ iv_size_(iv_size), |
+ subsample_count_(subsample_count), |
+ use_cbc_(false) { |
CHECK_GT(key_id_size, 0); |
+ CHECK_GT(iv_size, 0); |
key_id_.reset(new uint8[key_id_size]); |
memcpy(key_id_.get(), key_id, key_id_size); |
+ iv_.reset(new uint8[iv_size]); |
+ memcpy(iv_.get(), iv, iv_size); |
+ if (subsample_count > 0) { |
+ subsamples_.reset(new SubsampleEntry[subsample_count]); |
+ memcpy(subsamples_.get(), subsamples, |
+ subsample_count * sizeof(SubsampleEntry)); |
+ } |
} |
DecryptConfig::~DecryptConfig() {} |