OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 CONTENT_CHILD_WEBCRYPTO_STATUS_H_ | 5 #ifndef CONTENT_CHILD_WEBCRYPTO_STATUS_H_ |
6 #define CONTENT_CHILD_WEBCRYPTO_STATUS_H_ | 6 #define CONTENT_CHILD_WEBCRYPTO_STATUS_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 #include "content/common/content_export.h" | 9 #include "content/common/content_export.h" |
10 #include "third_party/WebKit/public/platform/WebCrypto.h" | 10 #include "third_party/WebKit/public/platform/WebCrypto.h" |
(...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
255 | 255 |
256 // The requested bit length for ECDH key derivation was too large. | 256 // The requested bit length for ECDH key derivation was too large. |
257 static Status ErrorEcdhLengthTooBig(unsigned int max_length_bits); | 257 static Status ErrorEcdhLengthTooBig(unsigned int max_length_bits); |
258 | 258 |
259 // The requested length for HKDF was too large. | 259 // The requested length for HKDF was too large. |
260 static Status ErrorHkdfLengthTooLong(); | 260 static Status ErrorHkdfLengthTooLong(); |
261 | 261 |
262 // No length parameter was provided for HKDF's Derive Bits operation. | 262 // No length parameter was provided for HKDF's Derive Bits operation. |
263 static Status ErrorHkdfDeriveBitsLengthNotSpecified(); | 263 static Status ErrorHkdfDeriveBitsLengthNotSpecified(); |
264 | 264 |
| 265 // The requested bit length for PBKDF2 key derivation was invalid. |
| 266 static Status ErrorPbkdf2InvalidLength(); |
| 267 |
| 268 // No length parameter was provided for PBKDF2's Derive Bits operation. |
| 269 static Status ErrorPbkdf2DeriveBitsLengthNotSpecified(); |
| 270 |
| 271 // An empty password was provided for PBKDF2 |
| 272 static Status ErrorPbkdf2EmptyPassword(); |
| 273 |
265 private: | 274 private: |
266 enum Type { TYPE_ERROR, TYPE_SUCCESS }; | 275 enum Type { TYPE_ERROR, TYPE_SUCCESS }; |
267 | 276 |
268 // Constructs an error with the specified error type and message. | 277 // Constructs an error with the specified error type and message. |
269 Status(blink::WebCryptoErrorType error_type, | 278 Status(blink::WebCryptoErrorType error_type, |
270 const std::string& error_details_utf8); | 279 const std::string& error_details_utf8); |
271 | 280 |
272 // Constructs a success or error without any details. | 281 // Constructs a success or error without any details. |
273 explicit Status(Type type); | 282 explicit Status(Type type); |
274 | 283 |
275 Type type_; | 284 Type type_; |
276 blink::WebCryptoErrorType error_type_; | 285 blink::WebCryptoErrorType error_type_; |
277 std::string error_details_; | 286 std::string error_details_; |
278 }; | 287 }; |
279 | 288 |
280 } // namespace webcrypto | 289 } // namespace webcrypto |
281 | 290 |
282 } // namespace content | 291 } // namespace content |
283 | 292 |
284 #endif // CONTENT_CHILD_WEBCRYPTO_STATUS_H_ | 293 #endif // CONTENT_CHILD_WEBCRYPTO_STATUS_H_ |
OLD | NEW |