1ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen// Copyright (c) 2011 The Chromium Authors. All rights reserved. 2dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen// Use of this source code is governed by a BSD-style license that can be 3dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen// found in the LICENSE file. 4dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 5dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "base/logging.h" 6dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "net/socket/ssl_server_socket.h" 7dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 8dc0f95d653279beabeb9817299e2902918ba123eKristian Monsennamespace net { 9dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 10dc0f95d653279beabeb9817299e2902918ba123eKristian Monsennamespace { 11dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 12dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenclass SSLServerSocketOpenSSL : public SSLServerSocket { 13dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen public: 14dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen virtual ~SSLServerSocketOpenSSL() {} 15dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 16dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen // SSLServerSocket 17dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen virtual int Accept(CompletionCallback* callback) { 18dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen // TODO(bulach): implement. 19dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen NOTIMPLEMENTED(); 20dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen return 0; 21dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen } 22dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 23dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen // Socket 24dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen virtual int Read(IOBuffer* buf, int buf_len, 25dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen CompletionCallback* callback) { 26dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen // TODO(bulach): implement. 27dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen NOTIMPLEMENTED(); 28dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen return 0; 29dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen } 30dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen virtual int Write(IOBuffer* buf, int buf_len, 31dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen CompletionCallback* callback) { 32dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen // TODO(bulach): implement. 33dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen NOTIMPLEMENTED(); 34dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen return 0; 35dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen } 36dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 37dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen virtual bool SetReceiveBufferSize(int32 size) { 38dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen // TODO(bulach): implement. 39dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen NOTIMPLEMENTED(); 40dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen return false; 41dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen } 42dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 43dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen virtual bool SetSendBufferSize(int32 size) { 44dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen // TODO(bulach): implement. 45dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen NOTIMPLEMENTED(); 46dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen return false; 47dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen } 48dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen}; 49dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 50dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} // namespace 51dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 52dc0f95d653279beabeb9817299e2902918ba123eKristian MonsenSSLServerSocket* CreateSSLServerSocket(Socket* socket, 53dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen X509Certificate* certificate, 54ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen crypto::RSAPrivateKey* key, 55dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen const SSLConfig& ssl_config) { 56dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen return new SSLServerSocketOpenSSL(); 57dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} 58dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 59dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} // namespace net 60