| Index: net/socket/ssl_server_socket_nss.h
|
| diff --git a/net/socket/ssl_server_socket_nss.h b/net/socket/ssl_server_socket_nss.h
|
| index 788e4524315126b052baf4908c31ebd12220bc83..497d461767a496b7df0b604e80c9ab506e4f24e6 100644
|
| --- a/net/socket/ssl_server_socket_nss.h
|
| +++ b/net/socket/ssl_server_socket_nss.h
|
| @@ -22,122 +22,17 @@
|
|
|
| namespace net {
|
|
|
| -class SSLServerSocketNSS : public SSLServerSocket {
|
| +class SSLServerContextNSS : public SSLServerContext {
|
| public:
|
| - // See comments on CreateSSLServerSocket for details of how these
|
| - // parameters are used.
|
| - SSLServerSocketNSS(scoped_ptr<StreamSocket> socket,
|
| - scoped_refptr<X509Certificate> certificate,
|
| - const crypto::RSAPrivateKey& key,
|
| - const SSLServerConfig& ssl_server_config);
|
| - ~SSLServerSocketNSS() override;
|
| + SSLServerContextNSS(X509Certificate* certificate,
|
| + const crypto::RSAPrivateKey& key,
|
| + const SSLServerConfig& ssl_server_config);
|
| + ~SSLServerContextNSS() override;
|
|
|
| - // SSLServerSocket interface.
|
| - int Handshake(const CompletionCallback& callback) override;
|
| -
|
| - // SSLSocket interface.
|
| - int ExportKeyingMaterial(const base::StringPiece& label,
|
| - bool has_context,
|
| - const base::StringPiece& context,
|
| - unsigned char* out,
|
| - unsigned int outlen) override;
|
| - int GetTLSUniqueChannelBinding(std::string* out) override;
|
| -
|
| - // Socket interface (via StreamSocket).
|
| - int Read(IOBuffer* buf,
|
| - int buf_len,
|
| - const CompletionCallback& callback) override;
|
| - int Write(IOBuffer* buf,
|
| - int buf_len,
|
| - const CompletionCallback& callback) override;
|
| - int SetReceiveBufferSize(int32_t size) override;
|
| - int SetSendBufferSize(int32_t size) override;
|
| -
|
| - // StreamSocket implementation.
|
| - int Connect(const CompletionCallback& callback) override;
|
| - void Disconnect() override;
|
| - bool IsConnected() const override;
|
| - bool IsConnectedAndIdle() const override;
|
| - int GetPeerAddress(IPEndPoint* address) const override;
|
| - int GetLocalAddress(IPEndPoint* address) const override;
|
| - const BoundNetLog& NetLog() const override;
|
| - void SetSubresourceSpeculation() override;
|
| - void SetOmniboxSpeculation() override;
|
| - bool WasEverUsed() const override;
|
| - bool UsingTCPFastOpen() const override;
|
| - bool WasNpnNegotiated() const override;
|
| - NextProto GetNegotiatedProtocol() const override;
|
| - bool GetSSLInfo(SSLInfo* ssl_info) override;
|
| - void GetConnectionAttempts(ConnectionAttempts* out) const override;
|
| - void ClearConnectionAttempts() override {}
|
| - void AddConnectionAttempts(const ConnectionAttempts& attempts) override {}
|
| - int64_t GetTotalReceivedBytes() const override;
|
| + scoped_ptr<SSLServerSocket> CreateSSLServerSocket(
|
| + scoped_ptr<StreamSocket> socket) override;
|
|
|
| private:
|
| - enum State {
|
| - STATE_NONE,
|
| - STATE_HANDSHAKE,
|
| - };
|
| -
|
| - int InitializeSSLOptions();
|
| -
|
| - void OnSendComplete(int result);
|
| - void OnRecvComplete(int result);
|
| - void OnHandshakeIOComplete(int result);
|
| -
|
| - int BufferSend();
|
| - void BufferSendComplete(int result);
|
| - int BufferRecv();
|
| - void BufferRecvComplete(int result);
|
| - bool DoTransportIO();
|
| - int DoPayloadRead();
|
| - int DoPayloadWrite();
|
| -
|
| - int DoHandshakeLoop(int last_io_result);
|
| - int DoReadLoop(int result);
|
| - int DoWriteLoop(int result);
|
| - int DoHandshake();
|
| - void DoHandshakeCallback(int result);
|
| - void DoReadCallback(int result);
|
| - void DoWriteCallback(int result);
|
| -
|
| - static SECStatus OwnAuthCertHandler(void* arg,
|
| - PRFileDesc* socket,
|
| - PRBool checksig,
|
| - PRBool is_server);
|
| - static void HandshakeCallback(PRFileDesc* socket, void* arg);
|
| -
|
| - int Init();
|
| -
|
| - // Members used to send and receive buffer.
|
| - bool transport_send_busy_;
|
| - bool transport_recv_busy_;
|
| -
|
| - scoped_refptr<IOBuffer> recv_buffer_;
|
| -
|
| - BoundNetLog net_log_;
|
| -
|
| - CompletionCallback user_handshake_callback_;
|
| - CompletionCallback user_read_callback_;
|
| - CompletionCallback user_write_callback_;
|
| -
|
| - // Used by Read function.
|
| - scoped_refptr<IOBuffer> user_read_buf_;
|
| - int user_read_buf_len_;
|
| -
|
| - // Used by Write function.
|
| - scoped_refptr<IOBuffer> user_write_buf_;
|
| - int user_write_buf_len_;
|
| -
|
| - // The NSS SSL state machine
|
| - PRFileDesc* nss_fd_;
|
| -
|
| - // Buffers for the network end of the SSL state machine
|
| - memio_Private* nss_bufs_;
|
| -
|
| - // StreamSocket for sending and receiving data.
|
| - scoped_ptr<StreamSocket> transport_socket_;
|
| -
|
| // Options for the SSL socket.
|
| SSLServerConfig ssl_server_config_;
|
|
|
| @@ -146,11 +41,6 @@ class SSLServerSocketNSS : public SSLServerSocket {
|
|
|
| // Private key used by the server.
|
| scoped_ptr<crypto::RSAPrivateKey> key_;
|
| -
|
| - State next_handshake_state_;
|
| - bool completed_handshake_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(SSLServerSocketNSS);
|
| };
|
|
|
| } // namespace net
|
|
|