| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 "net/quic/crypto/aes_128_gcm_12_decrypter.h" | 5 #include "net/quic/crypto/aes_128_gcm_12_decrypter.h" |
| 6 | 6 |
| 7 #include <pk11pub.h> | 7 #include <pk11pub.h> |
| 8 #include <secerr.h> | 8 #include <secerr.h> |
| 9 | 9 |
| 10 #include "base/lazy_instance.h" | 10 #include "base/lazy_instance.h" |
| (...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 212 kNoncePrefixSize) { | 212 kNoncePrefixSize) { |
| 213 static_assert(kKeySize <= kMaxKeySize, "key size too big"); | 213 static_assert(kKeySize <= kMaxKeySize, "key size too big"); |
| 214 static_assert(kNoncePrefixSize <= kMaxNoncePrefixSize, | 214 static_assert(kNoncePrefixSize <= kMaxNoncePrefixSize, |
| 215 "nonce prefix size too big"); | 215 "nonce prefix size too big"); |
| 216 ignore_result(g_gcm_support_checker.Get()); | 216 ignore_result(g_gcm_support_checker.Get()); |
| 217 } | 217 } |
| 218 | 218 |
| 219 Aes128Gcm12Decrypter::~Aes128Gcm12Decrypter() {} | 219 Aes128Gcm12Decrypter::~Aes128Gcm12Decrypter() {} |
| 220 | 220 |
| 221 void Aes128Gcm12Decrypter::FillAeadParams(StringPiece nonce, | 221 void Aes128Gcm12Decrypter::FillAeadParams(StringPiece nonce, |
| 222 StringPiece associated_data, | 222 const StringPiece& associated_data, |
| 223 size_t auth_tag_size, | 223 size_t auth_tag_size, |
| 224 AeadParams* aead_params) const { | 224 AeadParams* aead_params) const { |
| 225 aead_params->len = sizeof(aead_params->data.gcm_params); | 225 aead_params->len = sizeof(aead_params->data.gcm_params); |
| 226 CK_GCM_PARAMS* gcm_params = &aead_params->data.gcm_params; | 226 CK_GCM_PARAMS* gcm_params = &aead_params->data.gcm_params; |
| 227 gcm_params->pIv = | 227 gcm_params->pIv = |
| 228 reinterpret_cast<CK_BYTE*>(const_cast<char*>(nonce.data())); | 228 reinterpret_cast<CK_BYTE*>(const_cast<char*>(nonce.data())); |
| 229 gcm_params->ulIvLen = nonce.size(); | 229 gcm_params->ulIvLen = nonce.size(); |
| 230 gcm_params->pAAD = | 230 gcm_params->pAAD = |
| 231 reinterpret_cast<CK_BYTE*>(const_cast<char*>(associated_data.data())); | 231 reinterpret_cast<CK_BYTE*>(const_cast<char*>(associated_data.data())); |
| 232 gcm_params->ulAADLen = associated_data.size(); | 232 gcm_params->ulAADLen = associated_data.size(); |
| 233 gcm_params->ulTagBits = auth_tag_size * 8; | 233 gcm_params->ulTagBits = auth_tag_size * 8; |
| 234 } | 234 } |
| 235 | 235 |
| 236 } // namespace net | 236 } // namespace net |
| OLD | NEW |