diff options
author | bulach@chromium.org <bulach@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-01-27 11:21:07 +0000 |
---|---|---|
committer | bulach@chromium.org <bulach@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-01-27 11:21:07 +0000 |
commit | c322aa9bac52f4ec49fbc6abb4f394ff29ae9922 (patch) | |
tree | 9ed1e95d052397f325c938b67a90b41b4c51932f /net | |
parent | 6954715002b52e52061bc03c1307e4e450cd910c (diff) | |
download | chromium_src-c322aa9bac52f4ec49fbc6abb4f394ff29ae9922.zip chromium_src-c322aa9bac52f4ec49fbc6abb4f394ff29ae9922.tar.gz chromium_src-c322aa9bac52f4ec49fbc6abb4f394ff29ae9922.tar.bz2 |
Abstracts SHA256 context for NSS / OpenSSL.
Stubs out SslServerSocket for OpenSSL.
BUG=none
TEST=Sha256Test.TestContext (and compiles with openssl flag).
Review URL: http://codereview.chromium.org/6276002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72782 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net')
-rw-r--r-- | net/base/openssl_memory_private_key_store.cc | 3 | ||||
-rw-r--r-- | net/net.gyp | 2 | ||||
-rw-r--r-- | net/socket/ssl_server_socket_openssl.cc | 59 |
3 files changed, 63 insertions, 1 deletions
diff --git a/net/base/openssl_memory_private_key_store.cc b/net/base/openssl_memory_private_key_store.cc index bc64b57..5572b67 100644 --- a/net/base/openssl_memory_private_key_store.cc +++ b/net/base/openssl_memory_private_key_store.cc @@ -11,6 +11,7 @@ #include "base/logging.h" #include "base/openssl_util.h" #include "base/singleton.h" +#include "base/synchronization/lock.h" #include "net/base/x509_certificate.h" namespace net { @@ -52,7 +53,7 @@ class OpenSSLMemoryKeyStore : public OpenSSLPrivateKeyStore { private: std::vector<EVP_PKEY*> keys_; - Lock lock_; + base::Lock lock_; DISALLOW_COPY_AND_ASSIGN(OpenSSLMemoryKeyStore); }; diff --git a/net/net.gyp b/net/net.gyp index 240b270b..a181564 100644 --- a/net/net.gyp +++ b/net/net.gyp @@ -628,6 +628,7 @@ 'socket/ssl_server_socket.h', 'socket/ssl_server_socket_nss.cc', 'socket/ssl_server_socket_nss.h', + 'socket/ssl_server_socket_openssl.cc', 'socket/ssl_host_info.cc', 'socket/ssl_host_info.h', 'socket/tcp_client_socket.cc', @@ -769,6 +770,7 @@ 'sources!': [ 'socket/ssl_client_socket_openssl.cc', 'socket/ssl_client_socket_openssl.h', + 'socket/ssl_server_socket_openssl.cc', ], }, ], diff --git a/net/socket/ssl_server_socket_openssl.cc b/net/socket/ssl_server_socket_openssl.cc new file mode 100644 index 0000000..0928bbb --- /dev/null +++ b/net/socket/ssl_server_socket_openssl.cc @@ -0,0 +1,59 @@ +// Copyright (c) 2010 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/logging.h" +#include "net/socket/ssl_server_socket.h" + +namespace net { + +namespace { + +class SSLServerSocketOpenSSL : public SSLServerSocket { + public: + virtual ~SSLServerSocketOpenSSL() {} + + // SSLServerSocket + virtual int Accept(CompletionCallback* callback) { + // TODO(bulach): implement. + NOTIMPLEMENTED(); + return 0; + } + + // Socket + virtual int Read(IOBuffer* buf, int buf_len, + CompletionCallback* callback) { + // TODO(bulach): implement. + NOTIMPLEMENTED(); + return 0; + } + virtual int Write(IOBuffer* buf, int buf_len, + CompletionCallback* callback) { + // TODO(bulach): implement. + NOTIMPLEMENTED(); + return 0; + } + + virtual bool SetReceiveBufferSize(int32 size) { + // TODO(bulach): implement. + NOTIMPLEMENTED(); + return false; + } + + virtual bool SetSendBufferSize(int32 size) { + // TODO(bulach): implement. + NOTIMPLEMENTED(); + return false; + } +}; + +} // namespace + +SSLServerSocket* CreateSSLServerSocket(Socket* socket, + X509Certificate* certificate, + base::RSAPrivateKey* key, + const SSLConfig& ssl_config) { + return new SSLServerSocketOpenSSL(); +} + +} // namespace net |