本文整理汇总了C#中System.Net.Security.SslStream.BridgeStreamTo方法的典型用法代码示例。如果您正苦于以下问题:C# SslStream.BridgeStreamTo方法的具体用法?C# SslStream.BridgeStreamTo怎么用?C# SslStream.BridgeStreamTo使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Net.Security.SslStream
的用法示例。
在下文中一共展示了SslStream.BridgeStreamTo方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: BridgeConnectionToPort
//.........这里部分代码省略.........
catch (Exception ex)
{
// Secure Connection Failed
Console.WriteLine(
"#" + ClientCounter.ToString("x2") + " AuthenticateAsServer failed. firefox is that you? " +
new { ex.Message, InnerException = ex.InnerException == null ? null : ex.InnerException.Message });
// ?
clientSocket.Close();
return;
}
//Console.WriteLine("read " + sslStream.GetHashCode());
SSLEmptyConnections++;
var exitBeforeFirstDataByte = new TaskCompletionSource<object>();
var firstDataByte = new TaskCompletionSource<byte>();
// Z:\jsc.svn\examples\javascript\Test\TestSSLConnectionLimit\Application.cs
// are those greedy tcp connections from chrome?
var y = new TcpClient();
y.Connect(new System.Net.IPEndPoint(IPAddress.Loopback, port));
//Console.WriteLine(new { y.Client.LocalEndPoint, xSslStream.RemoteCertificate.Subject });
//Console.WriteLine(new { y.Client.LocalEndPoint });
xSslStream.BridgeStreamTo(
y.GetStream(),
ClientCounter,
prefix: "#" + ClientCounter.ToString("x2") + " " + rx,
firstByte: firstDataByte,
exitBeforeFirstByte: exitBeforeFirstDataByte
);
exitBeforeFirstDataByte.Task.ContinueWith(
delegate
{
// probe connection from chrome just got canceled?
SSLEmptyConnections--;
}
);
firstDataByte.Task.ContinueWith(
continuationAction: delegate
{
SSLEmptyConnections--;
SSLDataConnections++;
if (xSslStream.RemoteCertificate != null)
{
Console.WriteLine("about to pass RemoteCertificate to cassini"
+ new { Environment.CurrentDirectory, typeof(ScriptCoreLib.Ultra.WebService.InternalCassiniClientCertificateLoader).Assembly.Location }
);
//about to pass RemoteCertificate to cassini{ CurrentDirectory = V:\staging.net.debug, Location = V:\staging.net.debug\TestDualSSLWebApplicationLauncher.exe }