summaryrefslogtreecommitdiffstats
path: root/base/crypto/secure_hash_openssl.cc
diff options
context:
space:
mode:
Diffstat (limited to 'base/crypto/secure_hash_openssl.cc')
-rw-r--r--base/crypto/secure_hash_openssl.cc53
1 files changed, 0 insertions, 53 deletions
diff --git a/base/crypto/secure_hash_openssl.cc b/base/crypto/secure_hash_openssl.cc
deleted file mode 100644
index 8087279..0000000
--- a/base/crypto/secure_hash_openssl.cc
+++ /dev/null
@@ -1,53 +0,0 @@
-// Copyright (c) 2011 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.
-
-#include "base/crypto/secure_hash.h"
-
-#include <openssl/ssl.h>
-
-#include "base/basictypes.h"
-#include "base/logging.h"
-#include "base/openssl_util.h"
-
-namespace base {
-
-namespace {
-
-class SecureHashSHA256OpenSSL : public SecureHash {
- public:
- SecureHashSHA256OpenSSL() {
- SHA256_Init(&ctx_);
- }
-
- virtual ~SecureHashSHA256OpenSSL() {
- OPENSSL_cleanse(&ctx_, sizeof(ctx_));
- }
-
- virtual void Update(const void* input, size_t len) {
- SHA256_Update(&ctx_, static_cast<const unsigned char*>(input), len);
- }
-
- virtual void Finish(void* output, size_t len) {
- ScopedOpenSSLSafeSizeBuffer<SHA256_DIGEST_LENGTH> result(
- static_cast<unsigned char*>(output), len);
- SHA256_Final(result.safe_buffer(), &ctx_);
- }
-
- private:
- SHA256_CTX ctx_;
-};
-
-} // namespace
-
-SecureHash* SecureHash::Create(Algorithm algorithm) {
- switch (algorithm) {
- case SHA256:
- return new SecureHashSHA256OpenSSL();
- default:
- NOTIMPLEMENTED();
- return NULL;
- }
-}
-
-} // namespace base