Index: net/quic/crypto/aead_base_decrypter.h |
diff --git a/net/quic/crypto/aead_base_decrypter.h b/net/quic/crypto/aead_base_decrypter.h |
deleted file mode 100644 |
index 4e7475621a3d63f9fdbbf482336b91bf3c332823..0000000000000000000000000000000000000000 |
--- a/net/quic/crypto/aead_base_decrypter.h |
+++ /dev/null |
@@ -1,112 +0,0 @@ |
-// Copyright (c) 2013 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#ifndef NET_QUIC_CRYPTO_AEAD_BASE_DECRYPTER_H_ |
-#define NET_QUIC_CRYPTO_AEAD_BASE_DECRYPTER_H_ |
- |
-#include "base/compiler_specific.h" |
-#include "net/quic/crypto/quic_decrypter.h" |
- |
-#if defined(USE_OPENSSL) |
-#include "net/quic/crypto/scoped_evp_aead_ctx.h" |
-#else |
-#include <pkcs11t.h> |
-#include <seccomon.h> |
-typedef struct PK11SymKeyStr PK11SymKey; |
-typedef SECStatus (*PK11_DecryptFunction)( |
- PK11SymKey* symKey, CK_MECHANISM_TYPE mechanism, SECItem* param, |
- unsigned char* out, unsigned int* outLen, unsigned int maxLen, |
- const unsigned char* enc, unsigned encLen); |
-#endif |
- |
-namespace net { |
- |
-// AeadBaseDecrypter is the base class of AEAD QuicDecrypter subclasses. |
-class NET_EXPORT_PRIVATE AeadBaseDecrypter : public QuicDecrypter { |
- public: |
-#if defined(USE_OPENSSL) |
- AeadBaseDecrypter(const EVP_AEAD* aead_alg, |
- size_t key_size, |
- size_t auth_tag_size, |
- size_t nonce_prefix_size); |
-#else |
- AeadBaseDecrypter(CK_MECHANISM_TYPE aead_mechanism, |
- PK11_DecryptFunction pk11_decrypt, |
- size_t key_size, |
- size_t auth_tag_size, |
- size_t nonce_prefix_size); |
-#endif |
- ~AeadBaseDecrypter() override; |
- |
- // QuicDecrypter implementation |
- bool SetKey(base::StringPiece key) override; |
- bool SetNoncePrefix(base::StringPiece nonce_prefix) override; |
- bool DecryptPacket(QuicPacketSequenceNumber sequence_number, |
- const base::StringPiece& associated_data, |
- const base::StringPiece& ciphertext, |
- char* output, |
- size_t* output_length, |
- size_t max_output_length) override; |
- base::StringPiece GetKey() const override; |
- base::StringPiece GetNoncePrefix() const override; |
- |
- protected: |
- // Make these constants available to the subclasses so that the subclasses |
- // can assert at compile time their key_size_ and nonce_prefix_size_ do not |
- // exceed the maximum. |
- static const size_t kMaxKeySize = 32; |
- static const size_t kMaxNoncePrefixSize = 4; |
- |
-#if !defined(USE_OPENSSL) |
- struct AeadParams { |
- unsigned int len; |
- union { |
- CK_GCM_PARAMS gcm_params; |
-#if !defined(USE_NSS) |
- // USE_NSS means we are using system NSS rather than our copy of NSS. |
- // The system NSS <pkcs11n.h> header doesn't define this type yet. |
- CK_NSS_AEAD_PARAMS nss_aead_params; |
-#endif |
- } data; |
- }; |
- |
- virtual void FillAeadParams(base::StringPiece nonce, |
- const base::StringPiece& associated_data, |
- size_t auth_tag_size, |
- AeadParams* aead_params) const = 0; |
-#endif // !defined(USE_OPENSSL) |
- |
- private: |
- bool Decrypt(base::StringPiece nonce, |
- const base::StringPiece& associated_data, |
- const base::StringPiece& ciphertext, |
- uint8* output, |
- size_t* output_length, |
- size_t max_output_length); |
- |
-#if defined(USE_OPENSSL) |
- const EVP_AEAD* const aead_alg_; |
-#else |
- const CK_MECHANISM_TYPE aead_mechanism_; |
- const PK11_DecryptFunction pk11_decrypt_; |
-#endif |
- const size_t key_size_; |
- const size_t auth_tag_size_; |
- const size_t nonce_prefix_size_; |
- |
- // The key. |
- unsigned char key_[kMaxKeySize]; |
- // The nonce prefix. |
- unsigned char nonce_prefix_[kMaxNoncePrefixSize]; |
- |
-#if defined(USE_OPENSSL) |
- ScopedEVPAEADCtx ctx_; |
-#endif |
- |
- DISALLOW_COPY_AND_ASSIGN(AeadBaseDecrypter); |
-}; |
- |
-} // namespace net |
- |
-#endif // NET_QUIC_CRYPTO_AEAD_BASE_DECRYPTER_H_ |