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 #ifndef CRYPTO_SYMMETRIC_KEY_H_ | 5 #ifndef CRYPTO_SYMMETRIC_KEY_H_ |
6 #define CRYPTO_SYMMETRIC_KEY_H_ | 6 #define CRYPTO_SYMMETRIC_KEY_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
11 #include "crypto/crypto_export.h" | 11 #include "crypto/crypto_export.h" |
12 | 12 |
13 #if defined(NACL_WIN64) | 13 #if defined(NACL_WIN64) |
14 // See comments for crypto_nacl_win64 in crypto.gyp. | 14 // See comments for crypto_nacl_win64 in crypto.gyp. |
15 // Must test for NACL_WIN64 before OS_WIN since former is a subset of latter. | 15 // Must test for NACL_WIN64 before OS_WIN since former is a subset of latter. |
16 #include "crypto/scoped_capi_types.h" | 16 #include "crypto/scoped_capi_types.h" |
17 #elif defined(USE_NSS) || defined(OS_WIN) || defined(OS_MACOSX) | 17 #elif defined(USE_NSS) || \ |
| 18 (!defined(USE_OPENSSL) && (defined(OS_WIN) || defined(OS_MACOSX))) |
18 #include "crypto/scoped_nss_types.h" | 19 #include "crypto/scoped_nss_types.h" |
19 #endif | 20 #endif |
20 | 21 |
21 namespace crypto { | 22 namespace crypto { |
22 | 23 |
23 // Wraps a platform-specific symmetric key and allows it to be held in a | 24 // Wraps a platform-specific symmetric key and allows it to be held in a |
24 // scoped_ptr. | 25 // scoped_ptr. |
25 class CRYPTO_EXPORT SymmetricKey { | 26 class CRYPTO_EXPORT SymmetricKey { |
26 public: | 27 public: |
27 // Defines the algorithm that a key will be used with. See also | 28 // Defines the algorithm that a key will be used with. See also |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
91 explicit SymmetricKey(PK11SymKey* key); | 92 explicit SymmetricKey(PK11SymKey* key); |
92 ScopedPK11SymKey key_; | 93 ScopedPK11SymKey key_; |
93 #endif | 94 #endif |
94 | 95 |
95 DISALLOW_COPY_AND_ASSIGN(SymmetricKey); | 96 DISALLOW_COPY_AND_ASSIGN(SymmetricKey); |
96 }; | 97 }; |
97 | 98 |
98 } // namespace crypto | 99 } // namespace crypto |
99 | 100 |
100 #endif // CRYPTO_SYMMETRIC_KEY_H_ | 101 #endif // CRYPTO_SYMMETRIC_KEY_H_ |
OLD | NEW |