| Index: net/socket/ssl_server_socket.h
|
| diff --git a/net/socket/ssl_server_socket.h b/net/socket/ssl_server_socket.h
|
| index bfbe7de91107bda3b35a7e1315ae3bb7c41650ae..479bbc7a4f9c14445b643154fa1b54bb7c159acf 100644
|
| --- a/net/socket/ssl_server_socket.h
|
| +++ b/net/socket/ssl_server_socket.h
|
| @@ -31,6 +31,20 @@ class SSLServerSocket : public SSLSocket {
|
| virtual int Handshake(const CompletionCallback& callback) = 0;
|
| };
|
|
|
| +class SSLServerContext {
|
| + public:
|
| + virtual ~SSLServerContext(){};
|
| +
|
| + // Creates an SSL server socket over an already-connected transport socket.
|
| + // The caller must ensure the returned socket does not outlive the server
|
| + // context.
|
| + //
|
| + // The caller starts the SSL server handshake by calling Handshake on the
|
| + // returned socket.
|
| + virtual scoped_ptr<SSLServerSocket> CreateSSLServerSocket(
|
| + scoped_ptr<StreamSocket> socket) = 0;
|
| +};
|
| +
|
| // Configures the underlying SSL library for the use of SSL server sockets.
|
| //
|
| // Due to the requirements of the underlying libraries, this should be called
|
| @@ -41,18 +55,14 @@ class SSLServerSocket : public SSLSocket {
|
| // omitted.
|
| NET_EXPORT void EnableSSLServerSockets();
|
|
|
| -// Creates an SSL server socket over an already-connected transport socket.
|
| -// The caller must provide the server certificate and private key to use.
|
| +// Creates an SSL server socket context where all sockets spawned using this
|
| +// context will share the same session cache.
|
| //
|
| -// The returned SSLServerSocket takes ownership of |socket|. Stubbed versions
|
| -// of CreateSSLServerSocket will delete |socket| and return NULL.
|
| +// The caller must provide the server certificate and private key to use.
|
| // It takes a reference to |certificate|.
|
| // The |key| and |ssl_config| parameters are copied.
|
| //
|
| -// The caller starts the SSL server handshake by calling Handshake on the
|
| -// returned socket.
|
| -NET_EXPORT scoped_ptr<SSLServerSocket> CreateSSLServerSocket(
|
| - scoped_ptr<StreamSocket> socket,
|
| +NET_EXPORT scoped_ptr<SSLServerContext> CreateSSLServerContext(
|
| X509Certificate* certificate,
|
| const crypto::RSAPrivateKey& key,
|
| const SSLServerConfig& ssl_config);
|
|
|