| Index: media/base/decrypt_config.cc
|
| diff --git a/media/base/decrypt_config.cc b/media/base/decrypt_config.cc
|
| index 9ae5f195e5d4cfab2be9a45108b23d329d2732e4..13ab1144d190cfb77b2f4ea817d5f48892dee8ad 100644
|
| --- a/media/base/decrypt_config.cc
|
| +++ b/media/base/decrypt_config.cc
|
| @@ -8,11 +8,38 @@
|
|
|
| namespace media {
|
|
|
| +// TODO(strobe): Remove along with CBC mode.
|
| +static const char kDefaultIv[] = "0000000000000000";
|
| +static const int kDefaultIvSize = 16;
|
| +
|
| 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),
|
| + 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,
|
| + const SubsampleEntry* subsamples,
|
| + int subsample_count)
|
| + : key_id_size_(key_id_size),
|
| + iv_size_(iv_size),
|
| + 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_.insert(subsamples_.begin(),
|
| + subsamples, subsamples + subsample_count);
|
| + }
|
| }
|
|
|
| DecryptConfig::~DecryptConfig() {}
|
|
|