| Index: base/crypto/secure_hash_default.cc
|
| ===================================================================
|
| --- base/crypto/secure_hash_default.cc (revision 81350)
|
| +++ base/crypto/secure_hash_default.cc (working copy)
|
| @@ -1,49 +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 "base/logging.h"
|
| -#include "base/third_party/nss/blapi.h"
|
| -#include "base/third_party/nss/sha256.h"
|
| -
|
| -namespace base {
|
| -
|
| -namespace {
|
| -
|
| -class SecureHashSHA256NSS : public SecureHash {
|
| - public:
|
| - SecureHashSHA256NSS() {
|
| - SHA256_Begin(&ctx_);
|
| - }
|
| -
|
| - virtual ~SecureHashSHA256NSS() {
|
| - }
|
| -
|
| - 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) {
|
| - SHA256_End(&ctx_, static_cast<unsigned char*>(output), NULL,
|
| - static_cast<unsigned int>(len));
|
| - }
|
| -
|
| - private:
|
| - SHA256Context ctx_;
|
| -};
|
| -
|
| -} // namespace
|
| -
|
| -SecureHash* SecureHash::Create(Algorithm algorithm) {
|
| - switch (algorithm) {
|
| - case SHA256:
|
| - return new SecureHashSHA256NSS();
|
| - default:
|
| - NOTIMPLEMENTED();
|
| - return NULL;
|
| - }
|
| -}
|
| -
|
| -} // namespace base
|
|
|