|
|
|
@ -90,20 +90,25 @@ namespace WebSocketSharp.Net
|
|
|
|
{
|
|
|
|
{
|
|
|
|
_socket = socket;
|
|
|
|
_socket = socket;
|
|
|
|
_listener = listener;
|
|
|
|
_listener = listener;
|
|
|
|
_secure = listener.IsSecure;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var netStream = new NetworkStream (socket, false);
|
|
|
|
var netStream = new NetworkStream (socket, false);
|
|
|
|
if (_secure) {
|
|
|
|
if (listener.IsSecure) {
|
|
|
|
var conf = listener.SslConfiguration;
|
|
|
|
var sslConf = listener.SslConfiguration;
|
|
|
|
var sslStream = new SslStream (netStream, false, conf.ClientCertificateValidationCallback);
|
|
|
|
var sslStream = new SslStream (
|
|
|
|
|
|
|
|
netStream,
|
|
|
|
|
|
|
|
false,
|
|
|
|
|
|
|
|
sslConf.ClientCertificateValidationCallback
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
sslStream.AuthenticateAsServer (
|
|
|
|
sslStream.AuthenticateAsServer (
|
|
|
|
conf.ServerCertificate,
|
|
|
|
sslConf.ServerCertificate,
|
|
|
|
conf.ClientCertificateRequired,
|
|
|
|
sslConf.ClientCertificateRequired,
|
|
|
|
conf.EnabledSslProtocols,
|
|
|
|
sslConf.EnabledSslProtocols,
|
|
|
|
conf.CheckCertificateRevocation
|
|
|
|
sslConf.CheckCertificateRevocation
|
|
|
|
);
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
_stream = sslStream;
|
|
|
|
_stream = sslStream;
|
|
|
|
|
|
|
|
_secure = true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
else {
|
|
|
|
_stream = netStream;
|
|
|
|
_stream = netStream;
|
|
|
|
|