OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "media/base/decrypt_config.h" | 5 #include "media/base/decrypt_config.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 | 8 |
9 namespace media { | 9 namespace media { |
10 | 10 |
11 DecryptConfig::DecryptConfig(const uint8* key_id, int key_id_size) | 11 DecryptConfig::DecryptConfig(const uint8* key_id, int key_id_size, |
12 : key_id_size_(key_id_size) { | 12 const uint8* iv, int iv_size, |
| 13 const uint8* checksum, int checksum_size, |
| 14 int encrypted_frame_offset) |
| 15 : key_id_(new uint8[key_id_size]), |
| 16 key_id_size_(key_id_size), |
| 17 iv_(new uint8[iv_size]), |
| 18 iv_size_(iv_size), |
| 19 checksum_(checksum_size > 0 ? new uint8[checksum_size] : NULL), |
| 20 checksum_size_(checksum_size), |
| 21 encrypted_frame_offset_(encrypted_frame_offset) { |
13 CHECK_GT(key_id_size, 0); | 22 CHECK_GT(key_id_size, 0); |
14 key_id_.reset(new uint8[key_id_size]); | 23 CHECK_EQ(iv_size, DecryptConfig::kDecryptionKeySize); |
| 24 CHECK_GE(checksum_size, 0); |
| 25 CHECK_GE(encrypted_frame_offset, 0); |
15 memcpy(key_id_.get(), key_id, key_id_size); | 26 memcpy(key_id_.get(), key_id, key_id_size); |
| 27 memcpy(iv_.get(), iv, iv_size); |
| 28 if (checksum_size > 0) |
| 29 memcpy(checksum_.get(), checksum, checksum_size); |
16 } | 30 } |
17 | 31 |
18 DecryptConfig::~DecryptConfig() {} | 32 DecryptConfig::~DecryptConfig() {} |
19 | 33 |
20 } // namespace media | 34 } // namespace media |
OLD | NEW |