PR-5360
[platform/core/csapi/tizenfx.git] / pkg / Tizen.NET.API11 / build / tizen11.0 / ref / System.Net.Security.xml
index 837aa88..ba53cda 100755 (executable)
       <param name="innerStream">A <see cref="T:System.IO.Stream" /> object used by the <see cref="T:System.Net.Security.AuthenticatedStream" /> for sending and receiving data.</param>
       <param name="leaveInnerStreamOpen">A <see cref="T:System.Boolean" /> that indicates whether closing this <see cref="T:System.Net.Security.AuthenticatedStream" /> object also closes <paramref name="innerStream" />.</param>
       <exception cref="T:System.ArgumentNullException">
-        <paramref name="innerStream" /> is <see langword="null" />.
--or-
-<paramref name="innerStream" /> is equal to <see cref="F:System.IO.Stream.Null" />.</exception>
+        <paramref name="innerStream" /> is <see langword="null" />.  
+  
+ -or-  
+  
+ <paramref name="innerStream" /> is equal to <see cref="F:System.IO.Stream.Null" />.</exception>
     </member>
     <member name="M:System.Net.Security.AuthenticatedStream.Dispose(System.Boolean)">
       <summary>Releases the unmanaged resources used by the <see cref="T:System.Net.Security.AuthenticatedStream" /> and optionally releases the managed resources.</summary>
       <param name="leaveInnerStreamOpen">
         <see langword="true" /> to indicate that closing this <see cref="T:System.Net.Security.NegotiateStream" /> has no effect on <paramref name="innerStream" />; <see langword="false" /> to indicate that closing this <see cref="T:System.Net.Security.NegotiateStream" /> also closes <paramref name="innerStream" />.</param>
       <exception cref="T:System.ArgumentNullException">
-        <paramref name="innerStream" /> is <see langword="null" />.
+        <paramref name="innerStream" /> is <see langword="null" />.  
+  
 -or-
-<paramref name="innerStream" /> is equal to <see cref="F:System.IO.Stream.Null" />.</exception>
+  
+ <paramref name="innerStream" /> is equal to <see cref="F:System.IO.Stream.Null" />.</exception>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsClient">
       <summary>Called by clients to authenticate the client, and optionally the server, in a client-server connection.</summary>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+  
+ This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsClient(System.Net.NetworkCredential,System.Security.Authentication.ExtendedProtection.ChannelBinding,System.String)">
       <summary>Called by clients to authenticate the client, and optionally the server, in a client-server connection. The authentication process uses the specified client credential and the channel binding.</summary>
@@ -124,14 +130,18 @@ This stream was used previously to attempt authentication as the server. You can
       <param name="binding">The <see cref="T:System.Security.Authentication.ExtendedProtection.ChannelBinding" /> that is used for extended protection.</param>
       <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
       <exception cref="T:System.ArgumentNullException">
-        <paramref name="targetName" /> is <see langword="null" />.
+        <paramref name="targetName" /> is <see langword="null" />.  
+  
 -or-
-<paramref name="credential" /> is <see langword="null" />.</exception>
+  
+ <paramref name="credential" /> is <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+  
+ This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsClient(System.Net.NetworkCredential,System.Security.Authentication.ExtendedProtection.ChannelBinding,System.String,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel)">
@@ -142,16 +152,20 @@ This stream was used previously to attempt authentication as the server. You can
       <param name="requiredProtectionLevel">One of the <see cref="T:System.Net.Security.ProtectionLevel" /> values, indicating the security services for the stream.</param>
       <param name="allowedImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel" /> values, indicating how the server can use the client's credentials to access resources.</param>
       <exception cref="T:System.ArgumentNullException">
-        <paramref name="targetName" /> is <see langword="null" />.
+        <paramref name="targetName" /> is <see langword="null" />.  
+  
 -or-
-<paramref name="credential" /> is <see langword="null" />.</exception>
+  
+ <paramref name="credential" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentOutOfRangeException">
         <paramref name="allowedImpersonationLevel" /> is not a valid value.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+  
+ This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsClient(System.Net.NetworkCredential,System.String)">
@@ -161,9 +175,11 @@ This stream was used previously to attempt authentication as the server. You can
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+  
+ This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="targetName" /> is <see langword="null" />.</exception>
     </member>
@@ -180,36 +196,44 @@ This stream was used previously to attempt authentication as the server. You can
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+  
+ This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsClientAsync">
       <summary>Called by clients to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation.</summary>
-      <returns>The task object representing the asynchronous operation.</returns>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+  
+ This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+      <returns>The task object representing the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsClientAsync(System.Net.NetworkCredential,System.Security.Authentication.ExtendedProtection.ChannelBinding,System.String)">
       <summary>Called by clients to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation. The authentication process uses the specified client credential and the channel binding.</summary>
       <param name="credential">The <see cref="T:System.Net.NetworkCredential" /> that is used to establish the identity of the client.</param>
       <param name="binding">The <see cref="T:System.Security.Authentication.ExtendedProtection.ChannelBinding" /> that is used for extended protection.</param>
       <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
-      <returns>The task object representing the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
-        <paramref name="targetName" /> is <see langword="null" />.
+        <paramref name="targetName" /> is <see langword="null" />.  
+  
 -or-
-<paramref name="credential" /> is <see langword="null" />.</exception>
+  
+ <paramref name="credential" /> is <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+  
+ This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <returns>The task object representing the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsClientAsync(System.Net.NetworkCredential,System.Security.Authentication.ExtendedProtection.ChannelBinding,System.String,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel)">
       <summary>Called by clients to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation. The authentication process uses the specified credential, authentication options, and channel binding.</summary>
@@ -218,33 +242,39 @@ This stream was used previously to attempt authentication as the server. You can
       <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
       <param name="requiredProtectionLevel">One of the <see cref="T:System.Net.Security.ProtectionLevel" /> values, indicating the security services for the stream.</param>
       <param name="allowedImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel" /> values, indicating how the server can use the client's credentials to access resources.</param>
-      <returns>The task object representing the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
-        <paramref name="targetName" /> is <see langword="null" />.
+        <paramref name="targetName" /> is <see langword="null" />.  
+  
 -or-
-<paramref name="credential" /> is <see langword="null" />.</exception>
+  
+ <paramref name="credential" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentOutOfRangeException">
         <paramref name="allowedImpersonationLevel" /> is not a valid value.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+  
+ This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <returns>The task object representing the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsClientAsync(System.Net.NetworkCredential,System.String)">
       <summary>Called by clients to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation. The authentication process uses the specified client credential.</summary>
       <param name="credential">The <see cref="T:System.Net.NetworkCredential" /> that is used to establish the identity of the client.</param>
       <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
-      <returns>The task object representing the asynchronous operation.</returns>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+  
+ This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="targetName" /> is <see langword="null" />.</exception>
+      <returns>The task object representing the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsClientAsync(System.Net.NetworkCredential,System.String,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel)">
       <summary>Called by clients to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation. The authentication process uses the specified credentials and authentication options.</summary>
@@ -252,7 +282,6 @@ This stream was used previously to attempt authentication as the server. You can
       <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
       <param name="requiredProtectionLevel">One of the <see cref="T:System.Net.Security.ProtectionLevel" /> values, indicating the security services for the stream.</param>
       <param name="allowedImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel" /> values, indicating how the server can use the client's credentials to access resources.</param>
-      <returns>The task object representing the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentOutOfRangeException">
         <paramref name="allowedImpersonationLevel" /> is not a valid value.</exception>
       <exception cref="T:System.ArgumentNullException">
@@ -260,9 +289,12 @@ This stream was used previously to attempt authentication as the server. You can
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+  
+ This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+      <returns>The task object representing the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsServer">
       <summary>Called by servers to authenticate the client, and optionally the server, in a client-server connection.</summary>
@@ -283,9 +315,11 @@ This stream was used previously to attempt authentication as the server. You can
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to try to r-authenticate.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
+  
+ This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
       <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsServer(System.Net.NetworkCredential,System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel)">
@@ -301,12 +335,14 @@ This stream was used previously to attempt authentication as the client. You can
         <paramref name="requiredImpersonationLevel" /> must be <see cref="F:System.Security.Principal.TokenImpersonationLevel.Identification" />, <see cref="F:System.Security.Principal.TokenImpersonationLevel.Impersonation" />, or <see cref="F:System.Security.Principal.TokenImpersonationLevel.Delegation" />,</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to try to r-authenticate.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
     <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
+  
This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.PlatformNotSupportedException">The <paramref name="policy" /> parameter was set to <see cref="F:System.Security.Authentication.ExtendedProtection.PolicyEnforcement.Always" /> on a platform that does not support extended protection.</exception>
+      <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsServer(System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy)">
       <summary>Called by servers to authenticate the client, and optionally the server, in a client-server connection. The authentication process uses the specified extended protection policy.</summary>
@@ -314,24 +350,23 @@ This stream was used previously to attempt authentication as the client. You can
       <exception cref="T:System.ArgumentException">The <see cref="P:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomChannelBinding" /> and <see cref="P:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomServiceNames" /> on the extended protection policy passed in the <paramref name="policy" /> parameter are both <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
-      <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.PlatformNotSupportedException">The <paramref name="policy" /> parameter was set to <see cref="F:System.Security.Authentication.ExtendedProtection.PolicyEnforcement.Always" /> on a platform that does not support extended protection.</exception>
+      <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsServerAsync">
       <summary>Called by servers to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation.</summary>
-      <returns>The task object representing the asynchronous operation.</returns>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
+      <returns>The task object representing the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsServerAsync(System.Net.NetworkCredential,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel)">
       <summary>Called by servers to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation. The authentication process uses the specified server credentials and authentication options.</summary>
       <param name="credential">The <see cref="T:System.Net.NetworkCredential" /> that is used to establish the identity of the server.</param>
       <param name="requiredProtectionLevel">One of the <see cref="T:System.Net.Security.ProtectionLevel" /> values, indicating the security services for the stream.</param>
       <param name="requiredImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel" /> values, indicating how the server can use the client's credentials to access resources.</param>
-      <returns>The task object representing the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="credential" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentOutOfRangeException">
@@ -339,10 +374,13 @@ This stream was used previously to attempt authentication as the client. You can
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to try to r-authenticate.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
+  
+ This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
       <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
+      <returns>The task object representing the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsServerAsync(System.Net.NetworkCredential,System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel)">
       <summary>Called by servers to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation. The authentication process uses the specified server credentials, authentication options, and extended protection policy.</summary>
@@ -350,7 +388,6 @@ This stream was used previously to attempt authentication as the client. You can
       <param name="policy">The <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy" /> that is used for extended protection.</param>
       <param name="requiredProtectionLevel">One of the <see cref="T:System.Net.Security.ProtectionLevel" /> values, indicating the security services for the stream.</param>
       <param name="requiredImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel" /> values, indicating how the server can use the client's credentials to access resources.</param>
-      <returns>The task object representing the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentException">The <see cref="P:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomChannelBinding" /> and <see cref="P:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomServiceNames" /> on the extended protection policy passed in the <paramref name="policy" /> parameter are both <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="credential" /> is <see langword="null" />.</exception>
@@ -358,35 +395,40 @@ This stream was used previously to attempt authentication as the client. You can
         <paramref name="requiredImpersonationLevel" /> must be <see cref="F:System.Security.Principal.TokenImpersonationLevel.Identification" />, <see cref="F:System.Security.Principal.TokenImpersonationLevel.Impersonation" />, or <see cref="F:System.Security.Principal.TokenImpersonationLevel.Delegation" />,</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to try to r-authenticate.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
     <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
+  
This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.PlatformNotSupportedException">The <paramref name="policy" /> parameter was set to <see cref="F:System.Security.Authentication.ExtendedProtection.PolicyEnforcement.Always" /> on a platform that does not support extended protection.</exception>
+      <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
+      <returns>The task object representing the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsServerAsync(System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy)">
       <summary>Called by servers to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation. The authentication process uses the specified extended protection policy.</summary>
       <param name="policy">The <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy" /> that is used for extended protection.</param>
-      <returns>The task object representing the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentException">The <see cref="P:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomChannelBinding" /> and <see cref="P:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomServiceNames" /> on the extended protection policy passed in the <paramref name="policy" /> parameter are both <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
-      <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.PlatformNotSupportedException">The <paramref name="policy" /> parameter was set to <see cref="F:System.Security.Authentication.ExtendedProtection.PolicyEnforcement.Always" /> on a platform that does not support extended protection.</exception>
+      <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
+      <returns>The task object representing the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.BeginAuthenticateAsClient(System.AsyncCallback,System.Object)">
       <summary>Called by clients to begin an asynchronous operation to authenticate the client, and optionally the server, in a client-server connection. This method does not block.</summary>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the authentication is complete.</param>
       <param name="asyncState">A user-defined object containing information about the operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+  
+ This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.BeginAuthenticateAsClient(System.Net.NetworkCredential,System.Security.Authentication.ExtendedProtection.ChannelBinding,System.String,System.AsyncCallback,System.Object)">
       <summary>Called by clients to begin an asynchronous operation to authenticate the client, and optionally the server, in a client-server connection. The authentication process uses the specified credentials and channel binding. This method does not block.</summary>
@@ -395,17 +437,21 @@ This stream was used previously to attempt authentication as the server. You can
       <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the authentication is complete.</param>
       <param name="asyncState">A user-defined object containing information about the write operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
-        <paramref name="credential" /> is <see langword="null" />.
+        <paramref name="credential" /> is <see langword="null" />.  
+  
 -or-
-<paramref name="targetName" /> is <see langword="null" />.</exception>
+  
+ <paramref name="targetName" /> is <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+  
+ This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.BeginAuthenticateAsClient(System.Net.NetworkCredential,System.Security.Authentication.ExtendedProtection.ChannelBinding,System.String,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel,System.AsyncCallback,System.Object)">
       <summary>Called by clients to begin an asynchronous operation to authenticate the client, and optionally the server, in a client-server connection. The authentication process uses the specified credentials, authentication options, and channel binding. This method does not block.</summary>
@@ -416,17 +462,21 @@ This stream was used previously to attempt authentication as the server. You can
       <param name="allowedImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel" /> values, indicating how the server can use the client's credentials to access resources.</param>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the authentication is complete.</param>
       <param name="asyncState">A user-defined object containing information about the write operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
-        <paramref name="credential" /> is <see langword="null" />.
+        <paramref name="credential" /> is <see langword="null" />.  
+  
 -or-
-<paramref name="targetName" /> is <see langword="null" />.</exception>
+  
+ <paramref name="targetName" /> is <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+  
+ This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.BeginAuthenticateAsClient(System.Net.NetworkCredential,System.String,System.AsyncCallback,System.Object)">
       <summary>Called by clients to begin an asynchronous operation to authenticate the client, and optionally the server, in a client-server connection. The authentication process uses the specified credentials. This method does not block.</summary>
@@ -434,17 +484,21 @@ This stream was used previously to attempt authentication as the server. You can
       <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the authentication is complete.</param>
       <param name="asyncState">A user-defined object containing information about the write operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
-        <paramref name="credential" /> is <see langword="null" />.
+        <paramref name="credential" /> is <see langword="null" />.  
+  
 -or-
-<paramref name="targetName" /> is <see langword="null" />.</exception>
+  
+ <paramref name="targetName" /> is <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+  
+ This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.BeginAuthenticateAsClient(System.Net.NetworkCredential,System.String,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel,System.AsyncCallback,System.Object)">
       <summary>Called by clients to begin an asynchronous operation to authenticate the client, and optionally the server, in a client-server connection. The authentication process uses the specified credentials and authentication options. This method does not block.</summary>
@@ -454,27 +508,31 @@ This stream was used previously to attempt authentication as the server. You can
       <param name="allowedImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel" /> values, indicating how the server can use the client's credentials to access resources.</param>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the authentication is complete.</param>
       <param name="asyncState">A user-defined object containing information about the write operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
-        <paramref name="credential" /> is <see langword="null" />.
+        <paramref name="credential" /> is <see langword="null" />.  
+  
 -or-
-<paramref name="targetName" /> is <see langword="null" />.</exception>
+  
+ <paramref name="targetName" /> is <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+  
+ This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
+      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.BeginAuthenticateAsServer(System.AsyncCallback,System.Object)">
       <summary>Called by servers to begin an asynchronous operation to authenticate the client, and optionally the server, in a client-server connection. This method does not block.</summary>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the authentication is complete.</param>
       <param name="asyncState">A user-defined object containing information about the operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
+      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.BeginAuthenticateAsServer(System.Net.NetworkCredential,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel,System.AsyncCallback,System.Object)">
       <summary>Called by servers to begin an asynchronous operation to authenticate the client, and optionally the server, in a client-server connection. The authentication process uses the specified server credentials and authentication options. This method does not block.</summary>
@@ -483,7 +541,6 @@ This stream was used previously to attempt authentication as the server. You can
       <param name="requiredImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel" /> values, indicating how the server can use the client's credentials to access resources.</param>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the authentication is complete.</param>
       <param name="asyncState">A user-defined object containing information about the operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="credential" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentOutOfRangeException">
@@ -491,10 +548,13 @@ This stream was used previously to attempt authentication as the server. You can
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
+  
+ This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
       <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
+      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.BeginAuthenticateAsServer(System.Net.NetworkCredential,System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel,System.AsyncCallback,System.Object)">
       <summary>Called by servers to begin an asynchronous operation to authenticate the client, and optionally the server, in a client-server connection. The authentication process uses the specified server credentials, authentication options, and extended protection policy. This method does not block.</summary>
@@ -504,7 +564,6 @@ This stream was used previously to attempt authentication as the client. You can
       <param name="requiredImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel" /> values, indicating how the server can use the client's credentials to access resources.</param>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the authentication is complete.</param>
       <param name="asyncState">A user-defined object containing information about the write operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentException">The <see cref="P:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomChannelBinding" /> and <see cref="P:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomServiceNames" /> on the extended protection policy passed in the <paramref name="policy" /> parameter are both <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="credential" /> is <see langword="null" />.</exception>
@@ -512,25 +571,28 @@ This stream was used previously to attempt authentication as the client. You can
         <paramref name="requiredImpersonationLevel" /> must be <see cref="F:System.Security.Principal.TokenImpersonationLevel.Identification" />, <see cref="F:System.Security.Principal.TokenImpersonationLevel.Impersonation" />, or <see cref="F:System.Security.Principal.TokenImpersonationLevel.Delegation" />,</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
 -or-
-This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
     <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
+  
This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.PlatformNotSupportedException">The <paramref name="policy" /> parameter was set to <see cref="F:System.Security.Authentication.ExtendedProtection.PolicyEnforcement.Always" /> on a platform that does not support extended protection.</exception>
+      <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
+      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.BeginAuthenticateAsServer(System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy,System.AsyncCallback,System.Object)">
       <summary>Called by servers to begin an asynchronous operation to authenticate the client, and optionally the server, in a client-server connection. The authentication process uses the specified extended protection policy. This method does not block.</summary>
       <param name="policy">The <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy" /> that is used for extended protection.</param>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the authentication is complete.</param>
       <param name="asyncState">A user-defined object containing information about the write operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentException">The <see cref="P:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomChannelBinding" /> and <see cref="P:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomServiceNames" /> on the extended protection policy passed in the <paramref name="policy" /> parameter are both <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
       <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
-      <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.PlatformNotSupportedException">The <paramref name="policy" /> parameter was set to <see cref="F:System.Security.Authentication.ExtendedProtection.PolicyEnforcement.Always" /> on a platform that does not support extended protection.</exception>
+      <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
+      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)">
       <summary>Begins an asynchronous read operation that reads data from the stream and stores it in the specified array.</summary>
@@ -539,21 +601,27 @@ This stream was used previously to attempt authentication as the client. You can
       <param name="count">The maximum number of bytes to read from the stream.</param>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the read operation is complete.</param>
       <param name="asyncState">A user-defined object containing information about the read operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="buffer" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentException">
-        <paramref name="offset" /> is less than 0.
+        <paramref name="offset" /> is less than 0.  
+  
 -or-
-<paramref name="offset" /> is greater than the length of <paramref name="buffer" />.
+  
+ <paramref name="offset" /> is greater than the length of <paramref name="buffer" />.  
+  
 -or-
-<paramref name="offset" /> plus <paramref name="count" /> is greater than the length of <paramref name="buffer" />.</exception>
-      <exception cref="T:System.IO.IOException">The read operation failed.
+  
+ <paramref name="offset" /> plus <paramref name="count" /> is greater than the length of <paramref name="buffer" />.</exception>
+      <exception cref="T:System.IO.IOException">The read operation failed.  
+  
 -or-
-Encryption is in use, but the data could not be decrypted.</exception>
+  
+ Encryption is in use, but the data could not be decrypted.</exception>
       <exception cref="T:System.NotSupportedException">There is already a read operation in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
+      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)">
       <summary>Begins an asynchronous write operation that writes <see cref="T:System.Byte" />s from the specified buffer to the stream.</summary>
@@ -562,40 +630,27 @@ Encryption is in use, but the data could not be decrypted.</exception>
       <param name="count">An <see cref="T:System.Int32" /> value that specifies the number of bytes to read from <paramref name="buffer" />.</param>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the write operation is complete.</param>
       <param name="asyncState">A user-defined object containing information about the write operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="buffer" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentException">
-        <paramref name="offset is less than 0" />.
+        <paramref name="offset is less than 0" />.  
+  
 -or-
-<paramref name="offset" /> is greater than the length of <paramref name="buffer" />.
+  
+ <paramref name="offset" /> is greater than the length of <paramref name="buffer" />.  
+  
 -or-
-<paramref name="offset" /> plus count is greater than the length of <paramref name="buffer" />.</exception>
-      <exception cref="T:System.IO.IOException">The write operation failed.
+  
+ <paramref name="offset" /> plus count is greater than the length of <paramref name="buffer" />.</exception>
+      <exception cref="T:System.IO.IOException">The write operation failed.  
+  
 -or-
-Encryption is in use, but the data could not be encrypted.</exception>
+  
+ Encryption is in use, but the data could not be encrypted.</exception>
       <exception cref="T:System.NotSupportedException">There is already a write operation in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
-    </member>
-    <member name="P:System.Net.Security.NegotiateStream.CanRead">
-      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the underlying stream is readable.</summary>
-      <returns>
-        <see langword="true" /> if authentication has occurred and the underlying stream is readable; otherwise, <see langword="false" />.</returns>
-    </member>
-    <member name="P:System.Net.Security.NegotiateStream.CanSeek">
-      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the underlying stream is seekable.</summary>
-      <returns>This property always returns <see langword="false" />.</returns>
-    </member>
-    <member name="P:System.Net.Security.NegotiateStream.CanTimeout">
-      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the underlying stream supports time-outs.</summary>
-      <returns>
-        <see langword="true" /> if the underlying stream supports time-outs; otherwise, <see langword="false" />.</returns>
-    </member>
-    <member name="P:System.Net.Security.NegotiateStream.CanWrite">
-      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the underlying stream is writable.</summary>
-      <returns>
-        <see langword="true" /> if authentication has occurred and the underlying stream is writable; otherwise, <see langword="false" />.</returns>
+      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.Dispose(System.Boolean)">
       <summary>Releases the unmanaged resources used by the <see cref="T:System.Net.Security.NegotiateStream" /> and optionally releases the managed resources.</summary>
@@ -630,24 +685,28 @@ Encryption is in use, but the data could not be encrypted.</exception>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.EndRead(System.IAsyncResult)">
       <summary>Ends an asynchronous read operation that was started with a call to <see cref="M:System.Net.Security.NegotiateStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" />.</summary>
-      <param name="asyncResult">An <see cref="T:System.IAsyncResult" /> instance returned by a call to <see cref="M:System.Net.Security.NegotiateStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" /></param>
-      <returns>A <see cref="T:System.Int32" /> value that specifies the number of bytes read from the underlying stream.</returns>
+      <param name="asyncResult">An <see cref="T:System.IAsyncResult" /> instance returned by a call to <see cref="M:System.Net.Security.NegotiateStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" />.</param>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="asyncResult" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentException">The asyncResult was not created by a call to <see cref="M:System.Net.Security.NegotiateStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" />.</exception>
       <exception cref="T:System.InvalidOperationException">There is no pending read operation to complete.
+
 -or-
+
 Authentication has not occurred.</exception>
       <exception cref="T:System.IO.IOException">The read operation failed.</exception>
+      <returns>A <see cref="T:System.Int32" /> value that specifies the number of bytes read from the underlying stream.</returns>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.EndWrite(System.IAsyncResult)">
       <summary>Ends an asynchronous write operation that was started with a call to <see cref="M:System.Net.Security.NegotiateStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" />.</summary>
-      <param name="asyncResult">An <see cref="T:System.IAsyncResult" /> instance returned by a call to <see cref="M:System.Net.Security.NegotiateStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" /></param>
+      <param name="asyncResult">An <see cref="T:System.IAsyncResult" /> instance returned by a call to <see cref="M:System.Net.Security.NegotiateStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" />.</param>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="asyncResult" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentException">The asyncResult was not created by a call to <see cref="M:System.Net.Security.NegotiateStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" />.</exception>
       <exception cref="T:System.InvalidOperationException">There is no pending write operation to complete.
+
 -or-
+
 Authentication has not occurred.</exception>
       <exception cref="T:System.IO.IOException">The write operation failed.</exception>
     </member>
@@ -655,12 +714,115 @@ Authentication has not occurred.</exception>
       <summary>Causes any buffered data to be written to the underlying device.</summary>
     </member>
     <member name="M:System.Net.Security.NegotiateStream.FlushAsync(System.Threading.CancellationToken)">
+      <summary>Asynchronously writes any buffered data to the underlying device.</summary>
+      <param name="cancellationToken">The token to monitor for cancellation requests.</param>
+      <returns>A task that represents the asynchronous flush operation.</returns>
+    </member>
+    <member name="M:System.Net.Security.NegotiateStream.Read(System.Byte[],System.Int32,System.Int32)">
+      <summary>Reads data from this stream and stores it in the specified array.</summary>
+      <param name="buffer">A <see cref="T:System.Byte" /> array that receives the bytes read from the stream.</param>
+      <param name="offset">A <see cref="T:System.Int32" /> containing the zero-based location in <paramref name="buffer" /> at which to begin storing the data read from this stream.</param>
+      <param name="count">A <see cref="T:System.Int32" /> containing the maximum number of bytes to read from the stream.</param>
+      <exception cref="T:System.IO.IOException">The read operation failed.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
+      <exception cref="T:System.NotSupportedException">A <see cref="M:System.Net.Security.NegotiateStream.Read(System.Byte[],System.Int32,System.Int32)" /> operation is already in progress.</exception>
+      <returns>An <see cref="T:System.Int32" /> value that specifies the number of bytes read from the underlying stream. When there is no more data to be read, returns 0.</returns>
+    </member>
+    <member name="M:System.Net.Security.NegotiateStream.ReadAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)">
+      <summary>Reads data asynchronously from this stream and stores it in the specified array.</summary>
+      <param name="buffer">A <see cref="T:System.Byte" /> array that receives the bytes read from the stream.</param>
+      <param name="offset">A <see cref="T:System.Int32" /> containing the zero-based location in <paramref name="buffer" /> at which to begin storing the data read from this stream.</param>
+      <param name="count">A <see cref="T:System.Int32" /> containing the maximum number of bytes to read from the stream.</param>
+      <param name="cancellationToken">The token to monitor for cancellation requests.</param>
+      <exception cref="T:System.IO.IOException">The read operation failed.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
+      <exception cref="T:System.NotSupportedException">A <see cref="M:System.Net.Security.NegotiateStream.Read(System.Byte[],System.Int32,System.Int32)" /> operation is already in progress.</exception>
+      <returns>An <see cref="T:System.Int32" /> value that specifies the number of bytes read from the underlying stream. When there is no more data to be read, returns 0.</returns>
+    </member>
+    <member name="M:System.Net.Security.NegotiateStream.ReadAsync(System.Memory{System.Byte},System.Threading.CancellationToken)">
+      <summary>Reads data asynchronously from the <see cref="T:System.Net.Security.NegotiateStream" /> and stores it in a byte memory range as an asynchronous operation.</summary>
+      <param name="buffer">The buffer to write the data to.</param>
+      <param name="cancellationToken">The token to monitor for cancellation requests.</param>
+      <exception cref="T:System.IO.IOException">The read operation failed.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
+      <returns>A <see cref="T:System.Threading.Tasks.ValueTask`1" /> that represents the asynchronous read operation. The value of its <see cref="P:System.Threading.Tasks.ValueTask`1.Result" /> property contains the total number of bytes read into <paramref name="buffer" />.</returns>
+    </member>
+    <member name="M:System.Net.Security.NegotiateStream.Seek(System.Int64,System.IO.SeekOrigin)">
+      <summary>Throws <see cref="T:System.NotSupportedException" />.</summary>
+      <param name="offset">This value is ignored.</param>
+      <param name="origin">This value is ignored.</param>
+      <exception cref="T:System.NotSupportedException">Seeking is not supported on <see cref="T:System.Net.Security.NegotiateStream" />.</exception>
+      <returns>Always throws a <see cref="T:System.NotSupportedException" />.</returns>
+    </member>
+    <member name="M:System.Net.Security.NegotiateStream.SetLength(System.Int64)">
+      <summary>Sets the length of the underlying stream.</summary>
+      <param name="value">An <see cref="T:System.Int64" /> value that specifies the length of the stream.</param>
+    </member>
+    <member name="M:System.Net.Security.NegotiateStream.Write(System.Byte[],System.Int32,System.Int32)">
+      <summary>Write the specified number of <see cref="T:System.Byte" />s to the underlying stream using the specified buffer and offset.</summary>
+      <param name="buffer">A <see cref="T:System.Byte" /> array that supplies the bytes written to the stream.</param>
+      <param name="offset">An <see cref="T:System.Int32" /> containing the zero-based location in <paramref name="buffer" /> at which to begin reading bytes to be written to the stream.</param>
+      <param name="count">A <see cref="T:System.Int32" /> containing the number of bytes to read from <paramref name="buffer" />.</param>
+      <exception cref="T:System.ArgumentNullException">
+        <paramref name="buffer" /> is <see langword="null" />.</exception>
+      <exception cref="T:System.ArgumentException">
+        <paramref name="offset is less than 0" />.  
+  
+-or-
+  
+ <paramref name="offset" /> is greater than the length of <paramref name="buffer" />.  
+  
+-or-
+  
+ <paramref name="offset" /> plus count is greater than the length of <paramref name="buffer" />.</exception>
+      <exception cref="T:System.IO.IOException">The write operation failed.  
+  
+-or-
+  
+ Encryption is in use, but the data could not be encrypted.</exception>
+      <exception cref="T:System.NotSupportedException">There is already a write operation in progress.</exception>
+      <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
+    </member>
+    <member name="M:System.Net.Security.NegotiateStream.WriteAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)">
+      <summary>Write asynchronously the specified number of <see cref="T:System.Byte" />s to the underlying stream.</summary>
+      <param name="buffer">A <see cref="T:System.Byte" /> array that supplies the bytes written to the stream.</param>
+      <param name="offset">An <see cref="T:System.Int32" /> containing the zero-based location in <paramref name="buffer" /> at which to begin reading bytes to be written to the stream.</param>
+      <param name="count">A <see cref="T:System.Int32" /> containing the number of bytes to read from <paramref name="buffer" />.</param>
       <param name="cancellationToken" />
+      <returns>A <see cref="T:System.Threading.Tasks.Task" /> that represents the asynchronous read operation.</returns>
+    </member>
+    <member name="M:System.Net.Security.NegotiateStream.WriteAsync(System.ReadOnlyMemory{System.Byte},System.Threading.CancellationToken)">
+      <summary>Write asynchronously the specified number of <see cref="T:System.Byte" />s to the underlying stream.</summary>
+      <param name="buffer">A region of memory that contains the data to write to the <see cref="T:System.Net.Security.NegotiateStream" />.</param>
+      <param name="cancellationToken">The token to monitor for cancellation requests.</param>
+      <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
+      <returns>A <see cref="T:System.Threading.Tasks.ValueTask" /> that represents the asynchronous read operation.</returns>
+    </member>
+    <member name="P:System.Net.Security.NegotiateStream.CanRead">
+      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the underlying stream is readable.</summary>
+      <returns>
+        <see langword="true" /> if authentication has occurred and the underlying stream is readable; otherwise, <see langword="false" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.NegotiateStream.CanSeek">
+      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the underlying stream is seekable.</summary>
+      <returns>This property always returns <see langword="false" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.NegotiateStream.CanTimeout">
+      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the underlying stream supports time-outs.</summary>
+      <returns>
+        <see langword="true" /> if the underlying stream supports time-outs; otherwise, <see langword="false" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.NegotiateStream.CanWrite">
+      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the underlying stream is writable.</summary>
+      <returns>
+        <see langword="true" /> if authentication has occurred and the underlying stream is writable; otherwise, <see langword="false" />.</returns>
     </member>
     <member name="P:System.Net.Security.NegotiateStream.ImpersonationLevel">
       <summary>Gets a value that indicates how the server can use the client's credentials.</summary>
-      <returns>One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel" /> values.</returns>
       <exception cref="T:System.InvalidOperationException">Authentication failed or has not occurred.</exception>
+      <returns>One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel" /> values.</returns>
     </member>
     <member name="P:System.Net.Security.NegotiateStream.IsAuthenticated">
       <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether authentication was successful.</summary>
@@ -689,25 +851,17 @@ Authentication has not occurred.</exception>
     </member>
     <member name="P:System.Net.Security.NegotiateStream.Length">
       <summary>Gets the length of the underlying stream.</summary>
-      <returns>A <see cref="T:System.Int64" /> that specifies the length of the underlying stream.</returns>
       <exception cref="T:System.NotSupportedException">Getting the value of this property is not supported when the underlying stream is a <see cref="T:System.Net.Sockets.NetworkStream" />.</exception>
+      <returns>A <see cref="T:System.Int64" /> that specifies the length of the underlying stream.</returns>
     </member>
     <member name="P:System.Net.Security.NegotiateStream.Position">
       <summary>Gets or sets the current position in the underlying stream.</summary>
-      <returns>A <see cref="T:System.Int64" /> that specifies the current position in the underlying stream.</returns>
-      <exception cref="T:System.NotSupportedException">Setting this property is not supported.
+      <exception cref="T:System.NotSupportedException">Setting this property is not supported.  
+  
 -or-
-Getting the value of this property is not supported when the underlying stream is a <see cref="T:System.Net.Sockets.NetworkStream" />.</exception>
-    </member>
-    <member name="M:System.Net.Security.NegotiateStream.Read(System.Byte[],System.Int32,System.Int32)">
-      <summary>Reads data from this stream and stores it in the specified array.</summary>
-      <param name="buffer">A <see cref="T:System.Byte" /> array that receives the bytes read from the stream.</param>
-      <param name="offset">A <see cref="T:System.Int32" /> containing the zero-based location in <paramref name="buffer" /> at which to begin storing the data read from this stream.</param>
-      <param name="count">A <see cref="T:System.Int32" /> containing the maximum number of bytes to read from the stream.</param>
-      <returns>A <see cref="T:System.Int32" /> value that specifies the number of bytes read from the underlying stream. When there is no more data to be read, returns 0.</returns>
-      <exception cref="T:System.IO.IOException">The read operation failed.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
-      <exception cref="T:System.NotSupportedException">A <see cref="M:System.Net.Security.NegotiateStream.Read(System.Byte[],System.Int32,System.Int32)" /> operation is already in progress.</exception>
+  
+ Getting the value of this property is not supported when the underlying stream is a <see cref="T:System.Net.Sockets.NetworkStream" />.</exception>
+      <returns>A <see cref="T:System.Int64" /> that specifies the current position in the underlying stream.</returns>
     </member>
     <member name="P:System.Net.Security.NegotiateStream.ReadTimeout">
       <summary>Gets or sets the amount of time a read operation blocks waiting for data.</summary>
@@ -715,39 +869,8 @@ Getting the value of this property is not supported when the underlying stream i
     </member>
     <member name="P:System.Net.Security.NegotiateStream.RemoteIdentity">
       <summary>Gets information about the identity of the remote party sharing this authenticated stream.</summary>
-      <returns>An <see cref="T:System.Security.Principal.IIdentity" /> object that describes the identity of the remote endpoint.</returns>
       <exception cref="T:System.InvalidOperationException">Authentication failed or has not occurred.</exception>
-    </member>
-    <member name="M:System.Net.Security.NegotiateStream.Seek(System.Int64,System.IO.SeekOrigin)">
-      <summary>Throws <see cref="T:System.NotSupportedException" />.</summary>
-      <param name="offset">This value is ignored.</param>
-      <param name="origin">This value is ignored.</param>
-      <returns>Always throws a <see cref="T:System.NotSupportedException" />.</returns>
-      <exception cref="T:System.NotSupportedException">Seeking is not supported on <see cref="T:System.Net.Security.NegotiateStream" />.</exception>
-    </member>
-    <member name="M:System.Net.Security.NegotiateStream.SetLength(System.Int64)">
-      <summary>Sets the length of the underlying stream.</summary>
-      <param name="value">An <see cref="T:System.Int64" /> value that specifies the length of the stream.</param>
-    </member>
-    <member name="M:System.Net.Security.NegotiateStream.Write(System.Byte[],System.Int32,System.Int32)">
-      <summary>Write the specified number of <see cref="T:System.Byte" />s to the underlying stream using the specified buffer and offset.</summary>
-      <param name="buffer">A <see cref="T:System.Byte" /> array that supplies the bytes written to the stream.</param>
-      <param name="offset">An <see cref="T:System.Int32" /> containing the zero-based location in <paramref name="buffer" /> at which to begin reading bytes to be written to the stream.</param>
-      <param name="count">A <see cref="T:System.Int32" /> containing the number of bytes to read from <paramref name="buffer" />.</param>
-      <exception cref="T:System.ArgumentNullException">
-        <paramref name="buffer" /> is <see langword="null" />.</exception>
-      <exception cref="T:System.ArgumentException">
-        <paramref name="offset is less than 0" />.
--or-
-<paramref name="offset" /> is greater than the length of <paramref name="buffer" />.
--or-
-<paramref name="offset" /> plus count is greater than the length of <paramref name="buffer" />.</exception>
-      <exception cref="T:System.IO.IOException">The write operation failed.
--or-
-Encryption is in use, but the data could not be encrypted.</exception>
-      <exception cref="T:System.NotSupportedException">There is already a write operation in progress.</exception>
-      <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
+      <returns>An <see cref="T:System.Security.Principal.IIdentity" /> object that describes the identity of the remote endpoint.</returns>
     </member>
     <member name="P:System.Net.Security.NegotiateStream.WriteTimeout">
       <summary>Gets or sets the amount of time a write operation blocks waiting for data.</summary>
@@ -774,63 +897,197 @@ Encryption is in use, but the data could not be encrypted.</exception>
       <returns>A <see cref="T:System.Boolean" /> value that determines whether the specified certificate is accepted for authentication.</returns>
     </member>
     <member name="T:System.Net.Security.ServerCertificateSelectionCallback">
-      <param name="sender" />
-      <param name="hostName" />
+      <summary>Selects the server Secure Sockets Layer (SSL) certificate.</summary>
+      <param name="sender">A <see cref="T:System.Net.Security.SslStream" /> object.</param>
+      <param name="hostName">The host name requested by the client. If the client doesn't use the host_name TLS extension, the <paramref name="hostName" /> is an empty string.</param>
+      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> used for establishing an SSL connection.</returns>
+    </member>
+    <member name="T:System.Net.Security.ServerOptionsSelectionCallback">
+      <summary>Represents the asynchronous callback method that will select session properties based on the name requested by the client.</summary>
+      <param name="stream">The TLS stream on which the authentication happens.</param>
+      <param name="clientHelloInfo">Information from the Client Hello message.</param>
+      <param name="state">The information that was passed when registering the callback.</param>
+      <param name="cancellationToken">The token to monitor for cancellation requests.</param>
+      <returns>A server authentication property bag.</returns>
+    </member>
+    <member name="T:System.Net.Security.SslApplicationProtocol">
+      <summary>Represents a value of TLS Application protocol.</summary>
+    </member>
+    <member name="F:System.Net.Security.SslApplicationProtocol.Http11">
+      <summary>Gets a <see cref="T:System.Net.Security.SslApplicationProtocol" /> representing HTTP/1.1 TLS application protocol.</summary>
+    </member>
+    <member name="F:System.Net.Security.SslApplicationProtocol.Http2">
+      <summary>Gets a <see cref="T:System.Net.Security.SslApplicationProtocol" /> representing HTTP/2 TLS application protocol.</summary>
+    </member>
+    <member name="F:System.Net.Security.SslApplicationProtocol.Http3">
+      <summary>Defines a <see cref="T:System.Net.Security.SslApplicationProtocol" /> instance for HTTP 3.0.</summary>
     </member>
-    <member name="T:System.Net.Security.SslApplicationProtocol" />
     <member name="M:System.Net.Security.SslApplicationProtocol.#ctor(System.Byte[])">
-      <param name="protocol" />
+      <summary>Initializes a new instance of the <see cref="T:System.Net.Security.SslApplicationProtocol" />.</summary>
+      <param name="protocol">TLS Application protocol.</param>
     </member>
     <member name="M:System.Net.Security.SslApplicationProtocol.#ctor(System.String)">
-      <param name="protocol" />
+      <summary>Initializes a new instance of the <see cref="T:System.Net.Security.SslApplicationProtocol" />.</summary>
+      <param name="protocol">TLS Application protocol.</param>
     </member>
     <member name="M:System.Net.Security.SslApplicationProtocol.Equals(System.Net.Security.SslApplicationProtocol)">
-      <param name="other" />
+      <summary>Compares a <see cref="T:System.Net.Security.SslApplicationProtocol" /> to the specified <see cref="T:System.Net.Security.SslApplicationProtocol" /> instance.</summary>
+      <param name="other">The <see cref="T:System.Net.Security.SslApplicationProtocol" /> instance to test for equality.</param>
+      <returns>
+        <see langword="true" /> if the <see cref="T:System.Net.Security.SslApplicationProtocol" /> instance provided has matching data; otherwise, <see langword="false" />.</returns>
     </member>
     <member name="M:System.Net.Security.SslApplicationProtocol.Equals(System.Object)">
-      <param name="obj" />
+      <summary>Compares the <see cref="T:System.Net.Security.SslApplicationProtocol" /> to the specified object.</summary>
+      <param name="obj">The object to test for equality.</param>
+      <returns>
+        <see langword="true" /> if <paramref name="obj" /> is a <see cref="T:System.Net.Security.SslApplicationProtocol" /> instance, and the <see cref="T:System.Net.Security.SslApplicationProtocol" /> instances have matching data; otherwise, <see langword="false" />.</returns>
+    </member>
+    <member name="M:System.Net.Security.SslApplicationProtocol.GetHashCode">
+      <summary>Returns the hash code for the <see cref="T:System.Net.Security.SslApplicationProtocol" /> instance.</summary>
+      <returns>A 32-bit signed integer hash code used to compare instances of this type.</returns>
     </member>
-    <member name="M:System.Net.Security.SslApplicationProtocol.GetHashCode" />
-    <member name="F:System.Net.Security.SslApplicationProtocol.Http11" />
-    <member name="F:System.Net.Security.SslApplicationProtocol.Http2" />
     <member name="M:System.Net.Security.SslApplicationProtocol.op_Equality(System.Net.Security.SslApplicationProtocol,System.Net.Security.SslApplicationProtocol)">
-      <param name="left" />
-      <param name="right" />
+      <summary>The equality operator for comparing two <see cref="T:System.Net.Security.SslApplicationProtocol" /> objects.</summary>
+      <param name="left">The left <see cref="T:System.Net.Security.SslApplicationProtocol" /> to an equality operator.</param>
+      <param name="right">The right <see cref="T:System.Net.Security.SslApplicationProtocol" /> to an equality operator.</param>
+      <returns>
+        <see langword="true" /> if the specified <paramref name="left" /> and <paramref name="right" /> parameters are equal; otherwise, <see langword="false" />.</returns>
     </member>
     <member name="M:System.Net.Security.SslApplicationProtocol.op_Inequality(System.Net.Security.SslApplicationProtocol,System.Net.Security.SslApplicationProtocol)">
-      <param name="left" />
-      <param name="right" />
-    </member>
-    <member name="P:System.Net.Security.SslApplicationProtocol.Protocol" />
-    <member name="M:System.Net.Security.SslApplicationProtocol.ToString" />
-    <member name="T:System.Net.Security.SslClientAuthenticationOptions" />
-    <member name="M:System.Net.Security.SslClientAuthenticationOptions.#ctor" />
-    <member name="P:System.Net.Security.SslClientAuthenticationOptions.AllowRenegotiation" />
-    <member name="P:System.Net.Security.SslClientAuthenticationOptions.ApplicationProtocols" />
-    <member name="P:System.Net.Security.SslClientAuthenticationOptions.CertificateRevocationCheckMode" />
+      <summary>The inequality operator for comparing two <see cref="T:System.Net.Security.SslApplicationProtocol" /> objects.</summary>
+      <param name="left">The left <see cref="T:System.Net.Security.SslApplicationProtocol" /> to an inequality operator.</param>
+      <param name="right">The right  <see cref="T:System.Net.Security.SslApplicationProtocol" /> to an inequality operator.</param>
+      <returns>
+        <see langword="true" /> if the specified <paramref name="left" /> and <paramref name="right" /> parameters are inequal; otherwise, <see langword="false" />.</returns>
+    </member>
+    <member name="M:System.Net.Security.SslApplicationProtocol.ToString">
+      <summary>Overrides the <see cref="M:System.Object.ToString" /> method.</summary>
+      <returns>Returns a string representation of this <see cref="T:System.Net.Security.SslApplicationProtocol" /> object.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslApplicationProtocol.Protocol">
+      <summary>Gets a current TLS application protocol represented by this <see cref="T:System.Net.Security.SslApplicationProtocol" />.</summary>
+      <returns>
+          The read-only byte memory representing a TLS application protocol.</returns>
+    </member>
+    <member name="T:System.Net.Security.SslCertificateTrust">
+      <summary>Represents a trust policy for use with SSL/TLS connections.</summary>
+    </member>
+    <member name="M:System.Net.Security.SslCertificateTrust.CreateForX509Collection(System.Security.Cryptography.X509Certificates.X509Certificate2Collection,System.Boolean)">
+      <summary>Creates a new <see cref="T:System.Net.Security.SslCertificateTrust" />.</summary>
+      <param name="trustList">The collection containing the trusted certificates.</param>
+      <param name="sendTrustInHandshake">
+        <see langword="true" /> for the server to send a list of trusted certificate authorities during the TLS handshake; <see langword="false" /> not to send the list.</param>
+      <returns>Represents a trust policy.</returns>
+    </member>
+    <member name="M:System.Net.Security.SslCertificateTrust.CreateForX509Store(System.Security.Cryptography.X509Certificates.X509Store,System.Boolean)">
+      <summary>Creates a new <see cref="T:System.Net.Security.SslCertificateTrust" />.</summary>
+      <param name="store">The store containing the trusted certificates.</param>
+      <param name="sendTrustInHandshake">
+        <see langword="true" /> for the server to send a list of trusted certificate authorities during the TLS handshake; <see langword="false" /> not to send the list.</param>
+      <returns>Represents a trust policy.</returns>
+    </member>
+    <member name="T:System.Net.Security.SslClientAuthenticationOptions">
+      <summary>Represents a client authentication property bag for the <see cref="T:System.Net.Security.SslStream" />.</summary>
+    </member>
+    <member name="M:System.Net.Security.SslClientAuthenticationOptions.#ctor">
+      <summary>Initializes a new instance of the <see cref="T:System.Net.Security.SslClientAuthenticationOptions" /> class.</summary>
+    </member>
+    <member name="P:System.Net.Security.SslClientAuthenticationOptions.AllowRenegotiation">
+      <summary>Gets or sets a value that indicates whether the <see cref="T:System.Net.Security.SslStream" /> should allow SSL renegotiation.</summary>
+      <returns>
+        <see langword="true" /> to indicate that the <see cref="T:System.Net.Security.SslStream" /> allows SSL renegotiation; otherwise, <see langword="false" />. The default value is <see langword="true" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslClientAuthenticationOptions.ApplicationProtocols">
+      <summary>Gets or sets a list of ALPN protocols.</summary>
+    </member>
+    <member name="P:System.Net.Security.SslClientAuthenticationOptions.CertificateRevocationCheckMode">
+      <summary>Gets or sets the certificate revocation mode for certificate validation.</summary>
+      <exception cref="T:System.ArgumentNullException">
+          The value contains an invalid enumeration value.</exception>
+      <returns>One of the values in <see cref="T:System.Security.Cryptography.X509Certificates.X509RevocationMode" />. The default is <see langword="NoCheck" />.</returns>
+    </member>
     <member name="P:System.Net.Security.SslClientAuthenticationOptions.CipherSuitesPolicy">
       <summary>Specifies the cipher suites allowed for TLS. When set to <see langword="null" />, the operating system default is used. Use extreme caution when changing this setting.</summary>
     </member>
-    <member name="P:System.Net.Security.SslClientAuthenticationOptions.ClientCertificates" />
-    <member name="P:System.Net.Security.SslClientAuthenticationOptions.EnabledSslProtocols" />
-    <member name="P:System.Net.Security.SslClientAuthenticationOptions.EncryptionPolicy" />
-    <member name="P:System.Net.Security.SslClientAuthenticationOptions.LocalCertificateSelectionCallback" />
-    <member name="P:System.Net.Security.SslClientAuthenticationOptions.RemoteCertificateValidationCallback" />
-    <member name="P:System.Net.Security.SslClientAuthenticationOptions.TargetHost" />
-    <member name="T:System.Net.Security.SslServerAuthenticationOptions" />
-    <member name="M:System.Net.Security.SslServerAuthenticationOptions.#ctor" />
-    <member name="P:System.Net.Security.SslServerAuthenticationOptions.AllowRenegotiation" />
-    <member name="P:System.Net.Security.SslServerAuthenticationOptions.ApplicationProtocols" />
-    <member name="P:System.Net.Security.SslServerAuthenticationOptions.CertificateRevocationCheckMode" />
+    <member name="P:System.Net.Security.SslClientAuthenticationOptions.ClientCertificates">
+      <summary>A collection of certificates to be considered for the client's authentication to the server.</summary>
+    </member>
+    <member name="P:System.Net.Security.SslClientAuthenticationOptions.EnabledSslProtocols">
+      <summary>Gets or sets the value that represents the protocol versions offered by the client to the server during authentication.</summary>
+      <returns>The default value is <see cref="F:System.Security.Authentication.SslProtocols.None" />, which is the recommended value. For more information, see <see cref="T:System.Security.Authentication.SslProtocols" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslClientAuthenticationOptions.EncryptionPolicy">
+      <summary>Gets or sets the encryption policy.</summary>
+      <returns>The default value is <see cref="F:System.Net.Security.EncryptionPolicy.RequireEncryption" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslClientAuthenticationOptions.LocalCertificateSelectionCallback">
+      <summary>Gets or sets a <see cref="T:System.Net.Security.LocalCertificateSelectionCallback" /> delegate that's responsible for selecting the client authentication certificate used for authentication.</summary>
+    </member>
+    <member name="P:System.Net.Security.SslClientAuthenticationOptions.RemoteCertificateValidationCallback">
+      <summary>Gets or sets a <see cref="T:System.Net.Security.RemoteCertificateValidationCallback" /> delegate that's responsible for validating the certificate supplied by the remote party.</summary>
+    </member>
+    <member name="P:System.Net.Security.SslClientAuthenticationOptions.TargetHost">
+      <summary>Gets or sets the name of the server the client is trying to connect to. That name is used for server certificate validation. It can be a DNS name or an IP address.</summary>
+    </member>
+    <member name="T:System.Net.Security.SslClientHelloInfo">
+      <summary>This struct contains information from received TLS Client Hello frame.</summary>
+    </member>
+    <member name="P:System.Net.Security.SslClientHelloInfo.ServerName">
+      <summary>Gets the host server specified by the client.</summary>
+    </member>
+    <member name="P:System.Net.Security.SslClientHelloInfo.SslProtocols">
+      <summary>Gets the TLS/SSL protocols offered by client.</summary>
+      <returns>A bitwise combination of the enumeration values that specify the TLS or SSL protocols.</returns>
+    </member>
+    <member name="T:System.Net.Security.SslServerAuthenticationOptions">
+      <summary>This struct represents a server authentication property bag for the <see cref="T:System.Net.Security.SslStream" />.</summary>
+    </member>
+    <member name="M:System.Net.Security.SslServerAuthenticationOptions.#ctor">
+      <summary>Initializes a new instance of the <see cref="T:System.Net.Security.SslServerAuthenticationOptions" /> class.</summary>
+    </member>
+    <member name="P:System.Net.Security.SslServerAuthenticationOptions.AllowRenegotiation">
+      <summary>Gets or sets a value that indicates whether the <see cref="T:System.Net.Security.SslStream" /> should allow SSL renegotiation.</summary>
+      <returns>
+        <see langword="true" /> to indicate that the <see cref="T:System.Net.Security.SslStream" /> allow SSL renegotiation; otherwise, <see langword="false" />. The default value is <see langword="true" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslServerAuthenticationOptions.ApplicationProtocols">
+      <summary>Gets or sets a list of ALPN protocols.</summary>
+    </member>
+    <member name="P:System.Net.Security.SslServerAuthenticationOptions.CertificateRevocationCheckMode">
+      <summary>Gets or sets the certificate revocation mode for certificate validation.</summary>
+      <exception cref="T:System.ArgumentException">
+          The value contains an invalid enumeration value.</exception>
+      <returns>One of the values in <see cref="T:System.Security.Cryptography.X509Certificates.X509RevocationMode" />: <see langword="NoCheck" />, <see langword="Online" />, or <see langword="Offline" />. The default is <see langword="NoCheck" />.</returns>
+    </member>
     <member name="P:System.Net.Security.SslServerAuthenticationOptions.CipherSuitesPolicy">
       <summary>Specifies the cipher suites allowed for TLS. When set to <see langword="null" />, the operating system default is used. Use extreme caution when changing this setting.</summary>
     </member>
-    <member name="P:System.Net.Security.SslServerAuthenticationOptions.ClientCertificateRequired" />
-    <member name="P:System.Net.Security.SslServerAuthenticationOptions.EnabledSslProtocols" />
-    <member name="P:System.Net.Security.SslServerAuthenticationOptions.EncryptionPolicy" />
-    <member name="P:System.Net.Security.SslServerAuthenticationOptions.RemoteCertificateValidationCallback" />
-    <member name="P:System.Net.Security.SslServerAuthenticationOptions.ServerCertificate" />
-    <member name="P:System.Net.Security.SslServerAuthenticationOptions.ServerCertificateSelectionCallback" />
+    <member name="P:System.Net.Security.SslServerAuthenticationOptions.ClientCertificateRequired">
+      <summary>Gets or sets a value that specifies whether the client is asked for a certificate for authentication. Note that this is only a request -- if no certificate is provided, the server still accepts the connection request.</summary>
+    </member>
+    <member name="P:System.Net.Security.SslServerAuthenticationOptions.EnabledSslProtocols">
+      <summary>Gets or sets a value that represents protocol versions used by the server to match the client protocol version during authentication.</summary>
+      <returns>The default value is <see cref="F:System.Security.Authentication.SslProtocols.None" />, which is the recommended value. See <see cref="T:System.Security.Authentication.SslProtocols" /> for more details.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslServerAuthenticationOptions.EncryptionPolicy">
+      <summary>Gets or sets the <see cref="T:System.Net.Security.EncryptionPolicy" />.</summary>
+      <exception cref="T:System.ArgumentException">
+          The value contains an invalid enumeration value.</exception>
+      <returns>The default value is <see cref="F:System.Net.Security.EncryptionPolicy.RequireEncryption" /></returns>
+    </member>
+    <member name="P:System.Net.Security.SslServerAuthenticationOptions.RemoteCertificateValidationCallback">
+      <summary>Gets or sets a <see cref="T:System.Net.Security.RemoteCertificateValidationCallback" /> delegate responsible for custom validating the certificate supplied by the remote party.</summary>
+    </member>
+    <member name="P:System.Net.Security.SslServerAuthenticationOptions.ServerCertificate">
+      <summary>Gets or sets the server certificate.</summary>
+    </member>
+    <member name="P:System.Net.Security.SslServerAuthenticationOptions.ServerCertificateContext">
+      <summary>Gets or sets the server certificate context.</summary>
+      <returns>The server certificate context.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslServerAuthenticationOptions.ServerCertificateSelectionCallback">
+      <summary>Gets or sets the <see cref="T:System.Net.Security.ServerCertificateSelectionCallback" /> delegate responsible for the server certificate selection.</summary>
+    </member>
     <member name="T:System.Net.Security.SslStream">
       <summary>Provides a stream used for client-server communication that uses the Secure Socket Layer (SSL) security protocol to authenticate the server and optionally the client.</summary>
     </member>
@@ -838,26 +1095,34 @@ Encryption is in use, but the data could not be encrypted.</exception>
       <summary>Initializes a new instance of the <see cref="T:System.Net.Security.SslStream" /> class using the specified <see cref="T:System.IO.Stream" />.</summary>
       <param name="innerStream">A <see cref="T:System.IO.Stream" /> object used by the <see cref="T:System.Net.Security.SslStream" /> for sending and receiving data.</param>
       <exception cref="T:System.ArgumentException">
-        <paramref name="innerStream" /> is not readable.
--or-
-<paramref name="innerStream" /> is not writable.</exception>
+        <paramref name="innerStream" /> is not readable.  
+  
+ -or-  
+  
+ <paramref name="innerStream" /> is not writable.</exception>
       <exception cref="T:System.ArgumentNullException">
-        <paramref name="innerStream" /> is <see langword="null" />.
--or-
-<paramref name="innerStream" /> is equal to <see cref="F:System.IO.Stream.Null" />.</exception>
+        <paramref name="innerStream" /> is <see langword="null" />.  
+  
+ -or-  
+  
+ <paramref name="innerStream" /> is equal to <see cref="F:System.IO.Stream.Null" />.</exception>
     </member>
     <member name="M:System.Net.Security.SslStream.#ctor(System.IO.Stream,System.Boolean)">
       <summary>Initializes a new instance of the <see cref="T:System.Net.Security.SslStream" /> class using the specified <see cref="T:System.IO.Stream" /> and stream closure behavior.</summary>
       <param name="innerStream">A <see cref="T:System.IO.Stream" /> object used by the <see cref="T:System.Net.Security.SslStream" /> for sending and receiving data.</param>
       <param name="leaveInnerStreamOpen">A Boolean value that indicates the closure behavior of the <see cref="T:System.IO.Stream" /> object used by the <see cref="T:System.Net.Security.SslStream" /> for sending and receiving data. This parameter indicates if the inner stream is left open.</param>
       <exception cref="T:System.ArgumentException">
-        <paramref name="innerStream" /> is not readable.
--or-
-<paramref name="innerStream" /> is not writable.</exception>
+        <paramref name="innerStream" /> is not readable.  
+  
+ -or-  
+  
+ <paramref name="innerStream" /> is not writable.</exception>
       <exception cref="T:System.ArgumentNullException">
-        <paramref name="innerStream" /> is <see langword="null" />.
--or-
-<paramref name="innerStream" /> is equal to <see cref="F:System.IO.Stream.Null" />.</exception>
+        <paramref name="innerStream" /> is <see langword="null" />.  
+  
+ -or-  
+  
+ <paramref name="innerStream" /> is equal to <see cref="F:System.IO.Stream.Null" />.</exception>
     </member>
     <member name="M:System.Net.Security.SslStream.#ctor(System.IO.Stream,System.Boolean,System.Net.Security.RemoteCertificateValidationCallback)">
       <summary>Initializes a new instance of the <see cref="T:System.Net.Security.SslStream" /> class using the specified <see cref="T:System.IO.Stream" />, stream closure behavior and certificate validation delegate.</summary>
@@ -865,13 +1130,17 @@ Encryption is in use, but the data could not be encrypted.</exception>
       <param name="leaveInnerStreamOpen">A Boolean value that indicates the closure behavior of the <see cref="T:System.IO.Stream" /> object used by the <see cref="T:System.Net.Security.SslStream" /> for sending and receiving data. This parameter indicates if the inner stream is left open.</param>
       <param name="userCertificateValidationCallback">A <see cref="T:System.Net.Security.RemoteCertificateValidationCallback" /> delegate responsible for validating the certificate supplied by the remote party.</param>
       <exception cref="T:System.ArgumentException">
-        <paramref name="innerStream" /> is not readable.
--or-
-<paramref name="innerStream" /> is not writable.</exception>
+        <paramref name="innerStream" /> is not readable.  
+  
+ -or-  
+  
+ <paramref name="innerStream" /> is not writable.</exception>
       <exception cref="T:System.ArgumentNullException">
-        <paramref name="innerStream" /> is <see langword="null" />.
--or-
-<paramref name="innerStream" /> is equal to <see cref="F:System.IO.Stream.Null" />.</exception>
+        <paramref name="innerStream" /> is <see langword="null" />.  
+  
+ -or-  
+  
+ <paramref name="innerStream" /> is equal to <see cref="F:System.IO.Stream.Null" />.</exception>
     </member>
     <member name="M:System.Net.Security.SslStream.#ctor(System.IO.Stream,System.Boolean,System.Net.Security.RemoteCertificateValidationCallback,System.Net.Security.LocalCertificateSelectionCallback)">
       <summary>Initializes a new instance of the <see cref="T:System.Net.Security.SslStream" /> class using the specified <see cref="T:System.IO.Stream" />, stream closure behavior, certificate validation delegate and certificate selection delegate.</summary>
@@ -880,31 +1149,58 @@ Encryption is in use, but the data could not be encrypted.</exception>
       <param name="userCertificateValidationCallback">A <see cref="T:System.Net.Security.RemoteCertificateValidationCallback" /> delegate responsible for validating the certificate supplied by the remote party.</param>
       <param name="userCertificateSelectionCallback">A <see cref="T:System.Net.Security.LocalCertificateSelectionCallback" /> delegate responsible for selecting the certificate used for authentication.</param>
       <exception cref="T:System.ArgumentException">
-        <paramref name="innerStream" /> is not readable.
--or-
-<paramref name="innerStream" /> is not writable.</exception>
+        <paramref name="innerStream" /> is not readable.  
+  
+ -or-  
+  
+ <paramref name="innerStream" /> is not writable.</exception>
       <exception cref="T:System.ArgumentNullException">
-        <paramref name="innerStream" /> is <see langword="null" />.
--or-
-<paramref name="innerStream" /> is equal to <see cref="F:System.IO.Stream.Null" />.</exception>
+        <paramref name="innerStream" /> is <see langword="null" />.  
+  
+ -or-  
+  
+ <paramref name="innerStream" /> is equal to <see cref="F:System.IO.Stream.Null" />.</exception>
     </member>
     <member name="M:System.Net.Security.SslStream.#ctor(System.IO.Stream,System.Boolean,System.Net.Security.RemoteCertificateValidationCallback,System.Net.Security.LocalCertificateSelectionCallback,System.Net.Security.EncryptionPolicy)">
-      <summary>Initializes a new instance of the <see cref="T:System.Net.Security.SslStream" /> class using the specified <see cref="T:System.IO.Stream" /></summary>
+      <summary>Initializes a new instance of the <see cref="T:System.Net.Security.SslStream" /> class using the specified <see cref="T:System.IO.Stream" />.</summary>
       <param name="innerStream">A <see cref="T:System.IO.Stream" /> object used by the <see cref="T:System.Net.Security.SslStream" /> for sending and receiving data.</param>
       <param name="leaveInnerStreamOpen">A Boolean value that indicates the closure behavior of the <see cref="T:System.IO.Stream" /> object used by the <see cref="T:System.Net.Security.SslStream" /> for sending and receiving data. This parameter indicates if the inner stream is left open.</param>
       <param name="userCertificateValidationCallback">A <see cref="T:System.Net.Security.RemoteCertificateValidationCallback" /> delegate responsible for validating the certificate supplied by the remote party.</param>
       <param name="userCertificateSelectionCallback">A <see cref="T:System.Net.Security.LocalCertificateSelectionCallback" /> delegate responsible for selecting the certificate used for authentication.</param>
       <param name="encryptionPolicy">The <see cref="T:System.Net.Security.EncryptionPolicy" /> to use.</param>
       <exception cref="T:System.ArgumentException">
-        <paramref name="innerStream" /> is not readable.
--or-
-<paramref name="innerStream" /> is not writable.
--or-
-<paramref name="encryptionPolicy" /> is not valid.</exception>
+        <paramref name="innerStream" /> is not readable.  
+  
+ -or-  
+  
+ <paramref name="innerStream" /> is not writable.  
+  
+ -or-  
+  
+ <paramref name="encryptionPolicy" /> is not valid.</exception>
       <exception cref="T:System.ArgumentNullException">
-        <paramref name="innerStream" /> is <see langword="null" />.
--or-
-<paramref name="innerStream" /> is equal to <see cref="F:System.IO.Stream.Null" />.</exception>
+        <paramref name="innerStream" /> is <see langword="null" />.  
+  
+ -or-  
+  
+ <paramref name="innerStream" /> is equal to <see cref="F:System.IO.Stream.Null" />.</exception>
+    </member>
+    <member name="M:System.Net.Security.SslStream.AuthenticateAsClient(System.Net.Security.SslClientAuthenticationOptions)">
+      <summary>Called by clients to authenticate the server and optionally the client in a client-server connection.</summary>
+      <param name="sslClientAuthenticationOptions">The property bag for the SSL connection.</param>
+      <exception cref="T:System.ArgumentNullException">
+        <paramref name="targetHost" /> is <see langword="null" />.</exception>
+      <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
+
+ -or-
+
+ Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.
+
+ -or-
+
+ Authentication is already in progress.</exception>
+      <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
     </member>
     <member name="M:System.Net.Security.SslStream.AuthenticateAsClient(System.String)">
       <summary>Called by clients to authenticate the server and optionally the client in a client-server connection.</summary>
@@ -912,11 +1208,15 @@ Encryption is in use, but the data could not be encrypted.</exception>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="targetHost" /> is <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
--or-
-Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.
--or-
-Authentication is already in progress.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
     </member>
     <member name="M:System.Net.Security.SslStream.AuthenticateAsClient(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Boolean)">
@@ -929,53 +1229,116 @@ Authentication is already in progress.</exception>
       <summary>Called by clients to authenticate the server and optionally the client in a client-server connection. The authentication process uses the specified certificate collection and SSL protocol.</summary>
       <param name="targetHost">The name of the server that will share this <see cref="T:System.Net.Security.SslStream" />.</param>
       <param name="clientCertificates">The <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> that contains client certificates.</param>
-      <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols" /> value that represents the protocol used for authentication.</param>
+      <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols" /> value that represents protocols used for authentication.</param>
       <param name="checkCertificateRevocation">A <see cref="T:System.Boolean" /> value that specifies whether the certificate revocation list is checked during authentication.</param>
     </member>
     <member name="M:System.Net.Security.SslStream.AuthenticateAsClientAsync(System.Net.Security.SslClientAuthenticationOptions,System.Threading.CancellationToken)">
-      <param name="sslClientAuthenticationOptions" />
-      <param name="cancellationToken" />
+      <summary>Called by clients to authenticate the server and optionally the client in a client-server connection as an asynchronous operation. The authentication process uses information specified in the <paramref name="sslClientAuthenticationOptions" /> property bag.</summary>
+      <param name="sslClientAuthenticationOptions">The property bag for the SSL connection.</param>
+      <param name="cancellationToken">The token to monitor for cancellation requests.</param>
+      <exception cref="T:System.ArgumentNullException">
+        <paramref name="sslClientAuthenticationOptions" /> is <see langword="null" />.</exception>
+      <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
+      <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <returns>The task object representing the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.AuthenticateAsClientAsync(System.String)">
       <summary>Called by clients to authenticate the server and optionally the client in a client-server connection as an asynchronous operation.</summary>
       <param name="targetHost">The name of the server that shares this <see cref="T:System.Net.Security.SslStream" />.</param>
-      <returns>The task object representing the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="targetHost" /> is <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
--or-
-Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.
--or-
-Authentication is already in progress.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <returns>The task object representing the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.AuthenticateAsClientAsync(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Boolean)">
       <summary>Called by clients to authenticate the server and optionally the client in a client-server connection as an asynchronous operation. The authentication process uses the specified certificate collection and the system default SSL protocol.</summary>
       <param name="targetHost">The name of the server that will share this <see cref="T:System.Net.Security.SslStream" />.</param>
       <param name="clientCertificates">The <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> that contains client certificates.</param>
       <param name="checkCertificateRevocation">A <see cref="T:System.Boolean" /> value that specifies whether the certificate revocation list is checked during authentication.</param>
+      <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
+      <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <returns>The task object representing the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.AuthenticateAsClientAsync(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Security.Authentication.SslProtocols,System.Boolean)">
       <summary>Called by clients to authenticate the server and optionally the client in a client-server connection as an asynchronous operation. The authentication process uses the specified certificate collection and SSL protocol.</summary>
       <param name="targetHost">The name of the server that will share this <see cref="T:System.Net.Security.SslStream" />.</param>
       <param name="clientCertificates">The <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> that contains client certificates.</param>
-      <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols" /> value that represents the protocol used for authentication.</param>
+      <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols" /> value that represents protocols used for authentication.</param>
       <param name="checkCertificateRevocation">A <see cref="T:System.Boolean" /> value that specifies whether the certificate revocation list is checked during authentication.</param>
+      <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
+      <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <returns>The task object representing the asynchronous operation.</returns>
     </member>
+    <member name="M:System.Net.Security.SslStream.AuthenticateAsServer(System.Net.Security.SslServerAuthenticationOptions)">
+      <summary>Called by servers to authenticate the server and optionally the client in a client-server connection using the specified certificate.</summary>
+      <param name="sslServerAuthenticationOptions">The property bag for the SSL connection.</param>
+      <exception cref="T:System.ArgumentNullException">
+        <paramref name="serverCertificate" /> is <see langword="null" />.</exception>
+      <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Client authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
+      <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <exception cref="T:System.PlatformNotSupportedException">The <see cref="Overload:System.Net.Security.SslStream.AuthenticateAsServer" /> method is not supported on Windows 95, Windows 98, or Windows Millennium.</exception>
+    </member>
     <member name="M:System.Net.Security.SslStream.AuthenticateAsServer(System.Security.Cryptography.X509Certificates.X509Certificate)">
       <summary>Called by servers to authenticate the server and optionally the client in a client-server connection using the specified certificate.</summary>
       <param name="serverCertificate">The certificate used to authenticate the server.</param>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="serverCertificate" /> is <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
--or-
-Client authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.
--or-
-Authentication is already in progress.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Client authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.PlatformNotSupportedException">The <see cref="Overload:System.Net.Security.SslStream.AuthenticateAsServer" /> method is not supported on Windows 95, Windows 98, or Windows Millennium.</exception>
     </member>
@@ -987,11 +1350,15 @@ Authentication is already in progress.</exception>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="serverCertificate" /> is <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
--or-
-Client authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.
--or-
-Authentication is already in progress.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Client authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.PlatformNotSupportedException">The <see cref="Overload:System.Net.Security.SslStream.AuthenticateAsServer" /> method is not supported on Windows 95, Windows 98, or Windows Millennium.</exception>
     </member>
@@ -999,53 +1366,124 @@ Authentication is already in progress.</exception>
       <summary>Called by servers to authenticate the server and optionally the client in a client-server connection using the specified certificates, requirements and security protocol.</summary>
       <param name="serverCertificate">The X509Certificate used to authenticate the server.</param>
       <param name="clientCertificateRequired">A <see cref="T:System.Boolean" /> value that specifies whether the client is asked for a certificate for authentication. Note that this is only a request -- if no certificate is provided, the server still accepts the connection request.</param>
-      <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols" /> value that represents the protocol used for authentication.</param>
+      <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols" /> value that represents protocols used for authentication.</param>
       <param name="checkCertificateRevocation">A <see cref="T:System.Boolean" /> value that specifies whether the certificate revocation list is checked during authentication.</param>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="serverCertificate" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentException">
         <paramref name="enabledSslProtocols" /> is not a valid <see cref="T:System.Security.Authentication.SslProtocols" /> value.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
--or-
-Client authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.
--or-
-Authentication is already in progress.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Client authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.PlatformNotSupportedException">The <see cref="Overload:System.Net.Security.SslStream.AuthenticateAsServer" /> method is not supported on Windows 95, Windows 98, or Windows Millennium.</exception>
     </member>
+    <member name="M:System.Net.Security.SslStream.AuthenticateAsServerAsync(System.Net.Security.ServerOptionsSelectionCallback,System.Object,System.Threading.CancellationToken)">
+      <summary>Called by servers to authenticate the server and optionally the client in a client-server connection as an asynchronous operation. The authentication process uses information returned by <paramref name="optionsCallback" />.</summary>
+      <param name="optionsCallback">The callback delegate.</param>
+      <param name="state">The state object to pass to <paramref name="optionsCallback" /> when the callback is invoked.</param>
+      <param name="cancellationToken">The token to monitor for cancellation requests.</param>
+      <exception cref="T:System.ArgumentNullException">
+          Either <see cref="P:System.Net.Security.SslServerAuthenticationOptions.ServerCertificateSelectionCallback" /> or <see cref="P:System.Net.Security.SslServerAuthenticationOptions.ServerCertificate" /> or <see cref="P:System.Net.Security.SslServerAuthenticationOptions.ServerCertificateContext" /> is <see langword="null" /> and <see cref="T:System.Net.Security.LocalCertificateSelectionCallback" /> is not set in the <see langword="SslStream" /> constructor.</exception>
+      <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Client authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
+      <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <returns>The task object representing the asynchronous operation.</returns>
+    </member>
     <member name="M:System.Net.Security.SslStream.AuthenticateAsServerAsync(System.Net.Security.SslServerAuthenticationOptions,System.Threading.CancellationToken)">
-      <param name="sslServerAuthenticationOptions" />
-      <param name="cancellationToken" />
+      <summary>Called by servers to authenticate the server and optionally the client in a client-server connection as an asynchronous operation. The authentication process uses information specified in the <paramref name="sslClientAuthenticationOptions" /> property bag.</summary>
+      <param name="sslServerAuthenticationOptions">The property bag for the SSL connection.</param>
+      <param name="cancellationToken">The token to monitor for cancellation requests.</param>
+      <exception cref="T:System.ArgumentNullException">
+          Either <see cref="P:System.Net.Security.SslServerAuthenticationOptions.ServerCertificateSelectionCallback" /> or <see cref="P:System.Net.Security.SslServerAuthenticationOptions.ServerCertificate" /> or <see cref="P:System.Net.Security.SslServerAuthenticationOptions.ServerCertificateContext" /> is <see langword="null" /> and <see cref="T:System.Net.Security.LocalCertificateSelectionCallback" /> is not set in the <see langword="SslStream" /> constructor.</exception>
+      <exception cref="T:System.ArgumentNullException">
+        <paramref name="sslServerAuthenticationOptions" /> is <see langword="null" />.</exception>
+      <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Client authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
+      <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <returns>The task object representing the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.AuthenticateAsServerAsync(System.Security.Cryptography.X509Certificates.X509Certificate)">
       <summary>Called by servers to authenticate the server and optionally the client in a client-server connection using the specified certificate as an asynchronous operation.</summary>
       <param name="serverCertificate">The certificate used to authenticate the server.</param>
-      <returns>The task object representing the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="serverCertificate" /> is <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
--or-
-Client authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.
--or-
-Authentication is already in progress.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Client authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.PlatformNotSupportedException">The <see cref="Overload:System.Net.Security.SslStream.AuthenticateAsServerAsync" /> method is not supported on Windows 95, Windows 98, or Windows Millennium.</exception>
+      <returns>The task object representing the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.AuthenticateAsServerAsync(System.Security.Cryptography.X509Certificates.X509Certificate,System.Boolean,System.Boolean)">
       <summary>Called by servers to authenticate the server and optionally the client in a client-server connection using the specified certificates, requirements and security protocol as an asynchronous operation.</summary>
       <param name="serverCertificate">The X509Certificate used to authenticate the server.</param>
       <param name="clientCertificateRequired">A <see cref="T:System.Boolean" /> value that specifies whether the client is asked for a certificate for authentication. Note that this is only a request -- if no certificate is provided, the server still accepts the connection request.</param>
       <param name="checkCertificateRevocation">A <see cref="T:System.Boolean" /> value that specifies whether the certificate revocation list is checked during authentication.</param>
+      <exception cref="T:System.ArgumentNullException">
+        <paramref name="serverCertificate" /> is <see langword="null" />.</exception>
+      <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Client authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
+      <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <returns>The task object representing the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.AuthenticateAsServerAsync(System.Security.Cryptography.X509Certificates.X509Certificate,System.Boolean,System.Security.Authentication.SslProtocols,System.Boolean)">
       <summary>Called by servers to authenticate the server and optionally the client in a client-server connection using the specified certificates, requirements and security protocol as an asynchronous operation.</summary>
       <param name="serverCertificate">The X509Certificate used to authenticate the server.</param>
       <param name="clientCertificateRequired">A <see cref="T:System.Boolean" /> value that specifies whether the client is asked for a certificate for authentication. Note that this is only a request -- if no certificate is provided, the server still accepts the connection request.</param>
-      <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols" /> value that represents the protocol used for authentication.</param>
+      <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols" /> value that represents protocols used for authentication.</param>
       <param name="checkCertificateRevocation">A <see cref="T:System.Boolean" /> value that specifies whether the certificate revocation list is checked during authentication.</param>
+      <exception cref="T:System.ArgumentNullException">
+        <paramref name="serverCertificate" /> is <see langword="null" />.</exception>
+      <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Client authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
+      <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <returns>The task object representing the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.BeginAuthenticateAsClient(System.String,System.AsyncCallback,System.Object)">
@@ -1053,16 +1491,20 @@ Authentication is already in progress.</exception>
       <param name="targetHost">The name of the server that shares this <see cref="T:System.Net.Security.SslStream" />.</param>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the authentication is complete.</param>
       <param name="asyncState">A user-defined object that contains information about the operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object that indicates the status of the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="targetHost" /> is <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
--or-
-Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.
--or-
-Authentication is already in progress.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <returns>An <see cref="T:System.IAsyncResult" /> object that indicates the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.BeginAuthenticateAsClient(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Boolean,System.AsyncCallback,System.Object)">
       <summary>Called by clients to begin an asynchronous operation to authenticate the server and optionally the client using the specified certificates and the system default security protocol.</summary>
@@ -1071,54 +1513,66 @@ Authentication is already in progress.</exception>
       <param name="checkCertificateRevocation">A <see cref="T:System.Boolean" /> value that specifies whether the certificate revocation list is checked during authentication.</param>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the authentication is complete.</param>
       <param name="asyncState">A user-defined object that contains information about the operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object that indicates the status of the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="targetHost" /> is <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
--or-
-Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.
--or-
-Authentication is already in progress.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <returns>An <see cref="T:System.IAsyncResult" /> object that indicates the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.BeginAuthenticateAsClient(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Security.Authentication.SslProtocols,System.Boolean,System.AsyncCallback,System.Object)">
       <summary>Called by clients to begin an asynchronous operation to authenticate the server and optionally the client using the specified certificates and security protocol.</summary>
       <param name="targetHost">The name of the server that shares this <see cref="T:System.Net.Security.SslStream" />.</param>
       <param name="clientCertificates">The <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> containing client certificates.</param>
-      <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols" /> value that represents the protocol used for authentication.</param>
+      <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols" /> value that represents protocols used for authentication.</param>
       <param name="checkCertificateRevocation">A <see cref="T:System.Boolean" /> value that specifies whether the certificate revocation list is checked during authentication.</param>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the authentication is complete.</param>
       <param name="asyncState">A user-defined object that contains information about the operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object that indicates the status of the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="targetHost" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentException">
         <paramref name="enabledSslProtocols" /> is not a valid <see cref="T:System.Security.Authentication.SslProtocols" /> value.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
--or-
-Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.
--or-
-Authentication is already in progress.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <returns>An <see cref="T:System.IAsyncResult" /> object that indicates the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.BeginAuthenticateAsServer(System.Security.Cryptography.X509Certificates.X509Certificate,System.AsyncCallback,System.Object)">
       <summary>Called by servers to begin an asynchronous operation to authenticate the client and optionally the server in a client-server connection.</summary>
       <param name="serverCertificate">The X509Certificate used to authenticate the server.</param>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the authentication is complete.</param>
       <param name="asyncState">A user-defined object that contains information about the operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="serverCertificate" /> is <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
--or-
-Client authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.
--or-
-Authentication is already in progress.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Client authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.PlatformNotSupportedException">The <see cref="Overload:System.Net.Security.SslStream.BeginAuthenticateAsServer" /> method is not supported on Windows 95, Windows 98, or Windows Millennium.</exception>
+      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.BeginAuthenticateAsServer(System.Security.Cryptography.X509Certificates.X509Certificate,System.Boolean,System.Boolean,System.AsyncCallback,System.Object)">
       <summary>Called by servers to begin an asynchronous operation to authenticate the server and optionally the client using the specified certificates and requirements, and the system default security protocol.</summary>
@@ -1127,39 +1581,47 @@ Authentication is already in progress.</exception>
       <param name="checkCertificateRevocation">A <see cref="T:System.Boolean" /> value that specifies whether the certificate revocation list is checked during authentication.</param>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the authentication is complete.</param>
       <param name="asyncState">A user-defined object that contains information about the operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object that indicates the status of the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="serverCertificate" /> is <see langword="null" />.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
--or-
-Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.
--or-
-Authentication is already in progress.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.PlatformNotSupportedException">The <see cref="Overload:System.Net.Security.SslStream.BeginAuthenticateAsServer" /> method is not supported on Windows 95, Windows 98, or Windows Millennium.</exception>
+      <returns>An <see cref="T:System.IAsyncResult" /> object that indicates the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.BeginAuthenticateAsServer(System.Security.Cryptography.X509Certificates.X509Certificate,System.Boolean,System.Security.Authentication.SslProtocols,System.Boolean,System.AsyncCallback,System.Object)">
       <summary>Called by servers to begin an asynchronous operation to authenticate the server and optionally the client using the specified certificates, requirements and security protocol.</summary>
       <param name="serverCertificate">The X509Certificate used to authenticate the server.</param>
       <param name="clientCertificateRequired">A <see cref="T:System.Boolean" /> value that specifies whether the client is asked for a certificate for authentication. Note that this is only a request -- if no certificate is provided, the server still accepts the connection request.</param>
-      <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols" /> value that represents the protocol used for authentication.</param>
+      <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols" /> value that represents protocols used for authentication.</param>
       <param name="checkCertificateRevocation">A <see cref="T:System.Boolean" /> value that specifies whether the certificate revocation list is checked during authentication.</param>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the authentication is complete.</param>
       <param name="asyncState">A user-defined object that contains information about the operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object that indicates the status of the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="serverCertificate" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentException">
         <paramref name="enabledSslProtocols" /> is not a valid <see cref="T:System.Security.Authentication.SslProtocols" /> value.</exception>
       <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
--or-
-Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.
--or-
-Authentication is already in progress.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has already occurred.  
+  
+ -or-  
+  
+ Server authentication using this <see cref="T:System.Net.Security.SslStream" /> was tried previously.  
+  
+ -or-  
+  
+ Authentication is already in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.PlatformNotSupportedException">The <see cref="Overload:System.Net.Security.SslStream.BeginAuthenticateAsServer" /> method is not supported on Windows 95, Windows 98, or Windows Millennium.</exception>
+      <returns>An <see cref="T:System.IAsyncResult" /> object that indicates the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)">
       <summary>Begins an asynchronous read operation that reads data from the stream and stores it in the specified array.</summary>
@@ -1168,77 +1630,52 @@ Authentication is already in progress.</exception>
       <param name="count">The maximum number of bytes to read from the stream.</param>
       <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the read operation is complete.</param>
       <param name="asyncState">A user-defined object that contains information about the read operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object that indicates the status of the asynchronous operation.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="buffer" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentException">
-        <paramref name="offset" />
-        <paramref name="&lt;" />
-        <paramref name="0" />.
-<paramref name="-or-" /><paramref name="offset" /> &gt; the length of <paramref name="buffer" />.
--or-
-<paramref name="offset" /> + count &gt; the length of <paramref name="buffer" />.</exception>
-      <exception cref="T:System.IO.IOException">The read operation failed.
--or-
-Encryption is in use, but the data could not be decrypted.</exception>
+        <paramref name="offset" /> is less than zero.
+
+-or-
+
+<paramref name="offset" /> is greater than the length of <paramref name="buffer" />.  
+
+-or-  
+  
+ <paramref name="offset" /> + count is greater than the length of <paramref name="buffer" />.</exception>
+      <exception cref="T:System.IO.IOException">The read operation failed.  
+  
+ -or-  
+  
+ Encryption is in use, but the data could not be decrypted.</exception>
       <exception cref="T:System.NotSupportedException">There is already a read operation in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
-    </member>
-    <member name="M:System.Net.Security.SslStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)">
-      <summary>Begins an asynchronous write operation that writes <see cref="T:System.Byte" />s from the specified buffer to the stream.</summary>
-      <param name="buffer">A <see cref="T:System.Byte" /> array that supplies the bytes to be written to the stream.</param>
-      <param name="offset">The zero-based location in <paramref name="buffer" /> at which to begin reading bytes to be written to the stream.</param>
-      <param name="count">An <see cref="T:System.Int32" /> value that specifies the number of bytes to read from <paramref name="buffer" />.</param>
-      <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the write operation is complete.</param>
-      <param name="asyncState">A user-defined object that contains information about the write operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
-      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
-      <exception cref="T:System.ArgumentNullException">
-        <paramref name="buffer" /> is <see langword="null" />.</exception>
-      <exception cref="T:System.ArgumentException">
-        <paramref name="offset" />
-        <paramref name="&lt;" />
-        <paramref name="0" />.
-<paramref name="-or-" /><paramref name="offset" /> &gt; the length of <paramref name="buffer" />.
--or-
-<paramref name="offset" /> + count &gt; the length of <paramref name="buffer" />.</exception>
-      <exception cref="T:System.IO.IOException">The write operation failed.</exception>
-      <exception cref="T:System.NotSupportedException">There is already a write operation in progress.</exception>
-      <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
-      <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
-    </member>
-    <member name="P:System.Net.Security.SslStream.CanRead">
-      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the underlying stream is readable.</summary>
-      <returns>
-        <see langword="true" /> if authentication has occurred and the underlying stream is readable; otherwise <see langword="false" />.</returns>
-    </member>
-    <member name="P:System.Net.Security.SslStream.CanSeek">
-      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the underlying stream is seekable.</summary>
-      <returns>This property always returns <see langword="false" />.</returns>
-    </member>
-    <member name="P:System.Net.Security.SslStream.CanTimeout">
-      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the underlying stream supports time-outs.</summary>
-      <returns>
-        <see langword="true" /> if the underlying stream supports time-outs; otherwise, <see langword="false" />.</returns>
-    </member>
-    <member name="P:System.Net.Security.SslStream.CanWrite">
-      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the underlying stream is writable.</summary>
-      <returns>
-        <see langword="true" /> if authentication has occurred and the underlying stream is writable; otherwise <see langword="false" />.</returns>
-    </member>
-    <member name="P:System.Net.Security.SslStream.CheckCertRevocationStatus">
-      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the certificate revocation list is checked during the certificate validation process.</summary>
-      <returns>
-        <see langword="true" /> if the certificate revocation list is checked; otherwise, <see langword="false" />.</returns>
-    </member>
-    <member name="P:System.Net.Security.SslStream.CipherAlgorithm">
-      <summary>Gets a value that identifies the bulk encryption algorithm used by this <see cref="T:System.Net.Security.SslStream" />.</summary>
-      <returns>A value that identifies the bulk encryption algorithm used by this <see cref="T:System.Net.Security.SslStream" />.</returns>
-      <exception cref="T:System.InvalidOperationException">The <see cref="P:System.Net.Security.SslStream.CipherAlgorithm" /> property was accessed before the completion of the authentication process or the authentication process failed.</exception>
-    </member>
-    <member name="P:System.Net.Security.SslStream.CipherStrength">
-      <summary>Gets a value that identifies the strength of the cipher algorithm used by this <see cref="T:System.Net.Security.SslStream" />.</summary>
-      <returns>An <see cref="T:System.Int32" /> value that specifies the strength of the algorithm, in bits.</returns>
+      <returns>An <see cref="T:System.IAsyncResult" /> object that indicates the status of the asynchronous operation.</returns>
+    </member>
+    <member name="M:System.Net.Security.SslStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)">
+      <summary>Begins an asynchronous write operation that writes <see cref="T:System.Byte" />s from the specified buffer to the stream.</summary>
+      <param name="buffer">A <see cref="T:System.Byte" /> array that supplies the bytes to be written to the stream.</param>
+      <param name="offset">The zero-based location in <paramref name="buffer" /> at which to begin reading bytes to be written to the stream.</param>
+      <param name="count">An <see cref="T:System.Int32" /> value that specifies the number of bytes to read from <paramref name="buffer" />.</param>
+      <param name="asyncCallback">An <see cref="T:System.AsyncCallback" /> delegate that references the method to invoke when the write operation is complete.</param>
+      <param name="asyncState">A user-defined object that contains information about the write operation. This object is passed to the <paramref name="asyncCallback" /> delegate when the operation completes.</param>
+      <exception cref="T:System.ArgumentNullException">
+        <paramref name="buffer" /> is <see langword="null" />.</exception>
+      <exception cref="T:System.ArgumentException">
+        <paramref name="offset" /> is less than zero.
+  
+-or-
+          
+<paramref name="offset" /> is greater than the length of <paramref name="buffer" />.  
+  
+-or-
+  
+ <paramref name="offset" /> + count is greater than the length of <paramref name="buffer" />.</exception>
+      <exception cref="T:System.IO.IOException">The write operation failed.</exception>
+      <exception cref="T:System.NotSupportedException">There is already a write operation in progress.</exception>
+      <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
+      <returns>An <see cref="T:System.IAsyncResult" /> object indicating the status of the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.Dispose(System.Boolean)">
       <summary>Releases the unmanaged resources used by the <see cref="T:System.Net.Security.SslStream" /> and optionally releases the managed resources.</summary>
@@ -1271,119 +1708,71 @@ Encryption is in use, but the data could not be decrypted.</exception>
     </member>
     <member name="M:System.Net.Security.SslStream.EndRead(System.IAsyncResult)">
       <summary>Ends an asynchronous read operation started with a previous call to <see cref="M:System.Net.Security.SslStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" />.</summary>
-      <param name="asyncResult">An <see cref="T:System.IAsyncResult" /> instance returned by a call to <see cref="M:System.Net.Security.SslStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" /></param>
-      <returns>A <see cref="T:System.Int32" /> value that specifies the number of bytes read from the underlying stream.</returns>
+      <param name="asyncResult">An <see cref="T:System.IAsyncResult" /> instance returned by a call to <see cref="M:System.Net.Security.SslStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" />.</param>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="asyncResult" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentException">
         <paramref name="asyncResult" /> was not created by a call to <see cref="M:System.Net.Security.SslStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" />.</exception>
       <exception cref="T:System.InvalidOperationException">There is no pending read operation to complete.
+
 -or-
+
 Authentication has not occurred.</exception>
       <exception cref="T:System.IO.IOException">The read operation failed.</exception>
+      <returns>A <see cref="T:System.Int32" /> value that specifies the number of bytes read from the underlying stream.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.EndWrite(System.IAsyncResult)">
       <summary>Ends an asynchronous write operation started with a previous call to <see cref="M:System.Net.Security.SslStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" />.</summary>
-      <param name="asyncResult">An <see cref="T:System.IAsyncResult" /> instance returned by a call to <see cref="M:System.Net.Security.SslStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" /></param>
+      <param name="asyncResult">An <see cref="T:System.IAsyncResult" /> instance returned by a call to <see cref="M:System.Net.Security.SslStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" />.</param>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="asyncResult" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentException">
         <paramref name="asyncResult" /> was not created by a call to <see cref="M:System.Net.Security.SslStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" />.</exception>
       <exception cref="T:System.InvalidOperationException">There is no pending write operation to complete.
+
 -or-
+
 Authentication has not occurred.</exception>
       <exception cref="T:System.IO.IOException">The write operation failed.</exception>
     </member>
+    <member name="M:System.Net.Security.SslStream.Finalize">
+      <summary>Releases all resources used by the <see cref="T:System.Net.Security.SslStream" />.</summary>
+    </member>
     <member name="M:System.Net.Security.SslStream.Flush">
       <summary>Causes any buffered data to be written to the underlying device.</summary>
     </member>
     <member name="M:System.Net.Security.SslStream.FlushAsync(System.Threading.CancellationToken)">
-      <param name="cancellationToken" />
-    </member>
-    <member name="P:System.Net.Security.SslStream.HashAlgorithm">
-      <summary>Gets the algorithm used for generating message authentication codes (MACs).</summary>
-      <returns>The algorithm used for generating message authentication codes (MACs).</returns>
-      <exception cref="T:System.InvalidOperationException">The <see cref="P:System.Net.Security.SslStream.HashAlgorithm" /> property was accessed before the completion of the authentication process or the authentication process failed.</exception>
-    </member>
-    <member name="P:System.Net.Security.SslStream.HashStrength">
-      <summary>Gets a value that identifies the strength of the hash algorithm used by this instance.</summary>
-      <returns>An <see cref="T:System.Int32" /> value that specifies the strength of the <see cref="T:System.Security.Authentication.HashAlgorithmType" /> algorithm, in bits. Valid values are 128 or 160.</returns>
-    </member>
-    <member name="P:System.Net.Security.SslStream.IsAuthenticated">
-      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether authentication was successful.</summary>
-      <returns>
-        <see langword="true" /> if successful authentication occurred; otherwise, <see langword="false" />.</returns>
-    </member>
-    <member name="P:System.Net.Security.SslStream.IsEncrypted">
-      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether this <see cref="T:System.Net.Security.SslStream" /> uses data encryption.</summary>
-      <returns>
-        <see langword="true" /> if data is encrypted before being transmitted over the network and decrypted when it reaches the remote endpoint; otherwise <see langword="false" />.</returns>
-    </member>
-    <member name="P:System.Net.Security.SslStream.IsMutuallyAuthenticated">
-      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether both server and client have been authenticated.</summary>
-      <returns>
-        <see langword="true" /> if the server has been authenticated; otherwise <see langword="false" />.</returns>
-    </member>
-    <member name="P:System.Net.Security.SslStream.IsServer">
-      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the local side of the connection used by this <see cref="T:System.Net.Security.SslStream" /> was authenticated as the server.</summary>
-      <returns>
-        <see langword="true" /> if the local endpoint was successfully authenticated as the server side of the authenticated connection; otherwise <see langword="false" />.</returns>
-    </member>
-    <member name="P:System.Net.Security.SslStream.IsSigned">
-      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the data sent using this stream is signed.</summary>
-      <returns>
-        <see langword="true" /> if the data is signed before being transmitted; otherwise <see langword="false" />.</returns>
-    </member>
-    <member name="P:System.Net.Security.SslStream.KeyExchangeAlgorithm">
-      <summary>Gets the key exchange algorithm used by this <see cref="T:System.Net.Security.SslStream" />.</summary>
-      <returns>An <see cref="T:System.Security.Authentication.ExchangeAlgorithmType" /> value.</returns>
-    </member>
-    <member name="P:System.Net.Security.SslStream.KeyExchangeStrength">
-      <summary>Gets a value that identifies the strength of the key exchange algorithm used by this instance.</summary>
-      <returns>An <see cref="T:System.Int32" /> value that specifies the strength of the <see cref="T:System.Security.Authentication.ExchangeAlgorithmType" /> algorithm, in bits.</returns>
-    </member>
-    <member name="P:System.Net.Security.SslStream.Length">
-      <summary>Gets the length of the underlying stream.</summary>
-      <returns>The length of the underlying stream.</returns>
-      <exception cref="T:System.NotSupportedException">Getting the value of this property is not supported when the underlying stream is a <see cref="T:System.Net.Sockets.NetworkStream" />.</exception>
-    </member>
-    <member name="P:System.Net.Security.SslStream.LocalCertificate">
-      <summary>Gets the certificate used to authenticate the local endpoint.</summary>
-      <returns>An X509Certificate object that represents the certificate supplied for authentication or <see langword="null" /> if no certificate was supplied.</returns>
-      <exception cref="T:System.InvalidOperationException">Authentication failed or has not occurred.</exception>
-    </member>
-    <member name="P:System.Net.Security.SslStream.NegotiatedApplicationProtocol" />
-    <member name="P:System.Net.Security.SslStream.NegotiatedCipherSuite">
-      <summary>Gets the cipher suite which was negotiated for this connection.</summary>
-      <returns>One of the enumeration values that identifies the cipher suite which was negotiated for this connection.</returns>
-      <exception cref="T:System.InvalidOperationException">The property was accessed before the completion of the authentication process or the authentication process failed.</exception>
+      <summary>Asynchronously writes any buffered data to the underlying device.</summary>
+      <param name="cancellationToken">The token to monitor for cancellation requests.</param>
+      <returns>A task that represents the asynchronous flush operation.</returns>
     </member>
-    <member name="P:System.Net.Security.SslStream.Position">
-      <summary>Gets or sets the current position in the underlying stream.</summary>
-      <returns>The current position in the underlying stream.</returns>
-      <exception cref="T:System.NotSupportedException">Setting this property is not supported.
--or-
-Getting the value of this property is not supported when the underlying stream is a <see cref="T:System.Net.Sockets.NetworkStream" />.</exception>
+    <member name="M:System.Net.Security.SslStream.NegotiateClientCertificateAsync(System.Threading.CancellationToken)">
+      <summary>Negotiates the client certificate on the authenticated connection.</summary>
+      <param name="cancellationToken">The token to monitor for cancellation requests.</param>
+      <returns>The task object representing the asynchronous operation.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.Read(System.Byte[],System.Int32,System.Int32)">
       <summary>Reads data from this stream and stores it in the specified array.</summary>
       <param name="buffer">A <see cref="T:System.Byte" /> array that receives the bytes read from this stream.</param>
       <param name="offset">A <see cref="T:System.Int32" /> that contains the zero-based location in <paramref name="buffer" /> at which to begin storing the data read from this stream.</param>
       <param name="count">A <see cref="T:System.Int32" /> that contains the maximum number of bytes to read from this stream.</param>
-      <returns>A <see cref="T:System.Int32" /> value that specifies the number of bytes read. When there is no more data to be read, returns 0.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="buffer" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentException">
-        <paramref name="offset" />
-        <paramref name="&lt;" />
-        <paramref name="0" />.
-<paramref name="-or-" /><paramref name="offset" /> &gt; the length of <paramref name="buffer" />.
--or-
-<paramref name="offset" /> + count &gt; the length of <paramref name="buffer" />.</exception>
+        <paramref name="offset" /> is less than zero.
+  
+-or-
+
+<paramref name="offset" /> is greater than the length of <paramref name="buffer" />.  
+
+-or-  
+
+ <paramref name="offset" /> + count is greater than the length of <paramref name="buffer" />.</exception>
       <exception cref="T:System.IO.IOException">The read operation failed. Check the inner exception, if present to determine the cause of the failure.</exception>
       <exception cref="T:System.NotSupportedException">There is already a read operation in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
       <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
+      <returns>A <see cref="T:System.Int32" /> value that specifies the number of bytes read. When there is no more data to be read, returns 0.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.ReadAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)">
       <summary>Asynchronously reads data from this stream and stores it in the specified range of a byte array.</summary>
@@ -1391,53 +1780,48 @@ Getting the value of this property is not supported when the underlying stream i
       <param name="offset">The zero-based location in <paramref name="buffer" /> at which to begin storing the data read from this stream.</param>
       <param name="count">The maximum number of bytes to read from this stream.</param>
       <param name="cancellationToken">The token to monitor for cancellation requests.</param>
-      <returns>A task that represents the asynchronous read operation. The value of its <see cref="P:System.Threading.Tasks.Task`1.Result" /> property contains the total number of bytes read into <paramref name="buffer" />. When there is no more data to be read, returns 0.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="buffer" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentOutOfRangeException">
-        <paramref name="offset" /> is less than 0.
--or-
-<paramref name="count" /> is less than 0.
--or-
-<paramref name="count" /> is greater than the length of <paramref name="buffer" /> minus <paramref name="offset" />.</exception>
+        <paramref name="offset" /> is less than 0.  
+  
+ -or-  
+  
+ <paramref name="count" /> is less than 0.
+  
+ -or-  
+  
+ <paramref name="count" /> is greater than the length of <paramref name="buffer" /> minus <paramref name="offset" />.</exception>
       <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
       <exception cref="T:System.IO.IOException">The read operation failed. Check the inner exception, if it is present, to determine the cause of the failure.</exception>
       <exception cref="T:System.NotSupportedException">There is already a read operation in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <returns>A task that represents the asynchronous read operation. The value of its <see cref="P:System.Threading.Tasks.Task`1.Result" /> property contains the total number of bytes read into <paramref name="buffer" />. When there is no more data to be read, returns 0.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.ReadAsync(System.Memory{System.Byte},System.Threading.CancellationToken)">
       <summary>Asynchronously reads data from this stream and stores it in the specified memory range.</summary>
       <param name="buffer">The buffer that receives the bytes read from this stream.</param>
       <param name="cancellationToken">The token to monitor for cancellation requests.</param>
-      <returns>A task that represents the asynchronous read operation. The value of its <see cref="P:System.Threading.Tasks.ValueTask`1.Result" /> property contains the total number of bytes read into <paramref name="buffer" />. When there is no more data to be read, returns 0.</returns>
       <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
       <exception cref="T:System.IO.IOException">The read operation failed. Check the inner exception, if it is present, to determine the cause of the failure.</exception>
       <exception cref="T:System.NotSupportedException">There is already a read operation in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <returns>A task that represents the asynchronous read operation. The value of its <see cref="P:System.Threading.Tasks.ValueTask`1.Result" /> property contains the total number of bytes read into <paramref name="buffer" />. When there is no more data to be read, returns 0.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.ReadByte">
       <summary>Reads a byte from the <see cref="T:System.Net.Security.SslStream" /> and advances the position within the stream by one byte, or returns -1 if at the end of the stream.</summary>
-      <returns>The unsigned byte cast to an <see langword="Int32" />, or -1 if at the end of the stream.</returns>
       <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
       <exception cref="T:System.IO.IOException">The read operation failed. Check the inner exception, if present to determine the cause of the failure.</exception>
       <exception cref="T:System.NotSupportedException">There is already a read operation in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
-    </member>
-    <member name="P:System.Net.Security.SslStream.ReadTimeout">
-      <summary>Gets or sets the amount of time, expressed in milliseconds, a read operation blocks waiting for data.</summary>
-      <returns>The amount of time, in milliseconds, that elapses before a synchronous read operation fails.</returns>
-    </member>
-    <member name="P:System.Net.Security.SslStream.RemoteCertificate">
-      <summary>Gets the certificate used to authenticate the remote endpoint.</summary>
-      <returns>An X509Certificate object that represents the certificate supplied for authentication or <see langword="null" /> if no certificate was supplied.</returns>
-      <exception cref="T:System.InvalidOperationException">Authentication failed or has not occurred.</exception>
+      <returns>The unsigned byte cast to an <see cref="T:System.Int32" />, or -1 if at the end of the stream.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.Seek(System.Int64,System.IO.SeekOrigin)">
       <summary>Throws a <see cref="T:System.NotSupportedException" />.</summary>
       <param name="offset">This value is ignored.</param>
       <param name="origin">This value is ignored.</param>
-      <returns>Always throws a <see cref="T:System.NotSupportedException" />.</returns>
       <exception cref="T:System.NotSupportedException">Seeking is not supported by <see cref="T:System.Net.Security.SslStream" /> objects.</exception>
+      <returns>Always throws a <see cref="T:System.NotSupportedException" />.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.SetLength(System.Int64)">
       <summary>Sets the length of the underlying stream.</summary>
@@ -1447,14 +1831,6 @@ Getting the value of this property is not supported when the underlying stream i
       <summary>Shuts down this SslStream.</summary>
       <returns>The task object representing the asynchronous operation.</returns>
     </member>
-    <member name="P:System.Net.Security.SslStream.SslProtocol">
-      <summary>Gets a value that indicates the security protocol used to authenticate this connection.</summary>
-      <returns>The <see cref="T:System.Security.Authentication.SslProtocols" /> value that represents the protocol used for authentication.</returns>
-    </member>
-    <member name="P:System.Net.Security.SslStream.TransportContext">
-      <summary>Gets the <see cref="T:System.Net.TransportContext" /> used for authentication using extended protection.</summary>
-      <returns>The <see cref="T:System.Net.TransportContext" /> object that contains the channel binding token (CBT) used for extended protection.</returns>
-    </member>
     <member name="M:System.Net.Security.SslStream.Write(System.Byte[])">
       <summary>Writes the specified data to this stream.</summary>
       <param name="buffer">A <see cref="T:System.Byte" /> array that supplies the bytes written to the stream.</param>
@@ -1473,12 +1849,15 @@ Getting the value of this property is not supported when the underlying stream i
       <exception cref="T:System.ArgumentNullException">
         <paramref name="buffer" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentException">
-        <paramref name="offset" />
-        <paramref name="&lt;" />
-        <paramref name="0" />.
-<paramref name="-or-" /><paramref name="offset" /> &gt; the length of <paramref name="buffer" />.
--or-
-<paramref name="offset" /> + count &gt; the length of <paramref name="buffer" />.</exception>
+        <paramref name="offset" /> is less than zero.
+
+-or-
+
+<paramref name="offset" /> is greater than the length of <paramref name="buffer" />.  
+  
+ -or-  
+  
+ <paramref name="offset" /> + count is greater than the length of <paramref name="buffer" />.</exception>
       <exception cref="T:System.IO.IOException">The write operation failed.</exception>
       <exception cref="T:System.NotSupportedException">There is already a write operation in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
@@ -1490,34 +1869,185 @@ Getting the value of this property is not supported when the underlying stream i
       <param name="offset">The location in <paramref name="buffer" /> from which to start writing data.</param>
       <param name="count">The number of bytes to write to the underlying stream.</param>
       <param name="cancellationToken">The token to monitor for cancellation requests.</param>
-      <returns>A task that represents the asynchronous write operation.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="buffer" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentOutOfRangeException">
-        <paramref name="offset" /> is less than 0.
--or-
-<paramref name="count" /> is less than 0.
--or-
-<paramref name="count" /> is greater than the length of <paramref name="buffer" /> minus <paramref name="offset" />.</exception>
+        <paramref name="offset" /> is less than 0.  
+  
+ -or-  
+  
+ <paramref name="count" /> is less than 0.
+  
+ -or-  
+  
+ <paramref name="count" /> is greater than the length of <paramref name="buffer" /> minus <paramref name="offset" />.</exception>
       <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
       <exception cref="T:System.IO.IOException">The write operation failed.</exception>
       <exception cref="T:System.NotSupportedException">There is already a write operation in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <returns>A task that represents the asynchronous write operation.</returns>
     </member>
     <member name="M:System.Net.Security.SslStream.WriteAsync(System.ReadOnlyMemory{System.Byte},System.Threading.CancellationToken)">
       <summary>Asynchronously writes data to the underlying stream from a read-only byte memory range.</summary>
       <param name="buffer">The data to write to the underlying stream.</param>
       <param name="cancellationToken">The token to monitor for cancellation requests.</param>
-      <returns>A task that represents the asynchronous write operation.</returns>
       <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
       <exception cref="T:System.IO.IOException">The write operation failed.</exception>
       <exception cref="T:System.NotSupportedException">There is already a write operation in progress.</exception>
       <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
+      <returns>A task that represents the asynchronous write operation.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.CanRead">
+      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the underlying stream is readable.</summary>
+      <returns>
+        <see langword="true" /> if authentication has occurred and the underlying stream is readable; otherwise <see langword="false" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.CanSeek">
+      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the underlying stream is seekable.</summary>
+      <returns>This property always returns <see langword="false" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.CanTimeout">
+      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the underlying stream supports time-outs.</summary>
+      <returns>
+        <see langword="true" /> if the underlying stream supports time-outs; otherwise, <see langword="false" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.CanWrite">
+      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the underlying stream is writable.</summary>
+      <returns>
+        <see langword="true" /> if authentication has occurred and the underlying stream is writable; otherwise <see langword="false" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.CheckCertRevocationStatus">
+      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the certificate revocation list is checked during the certificate validation process.</summary>
+      <returns>
+        <see langword="true" /> if the certificate revocation list is checked; otherwise, <see langword="false" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.CipherAlgorithm">
+      <summary>Gets a value that identifies the bulk encryption algorithm used by this <see cref="T:System.Net.Security.SslStream" />.</summary>
+      <exception cref="T:System.InvalidOperationException">The <see cref="P:System.Net.Security.SslStream.CipherAlgorithm" /> property was accessed before the completion of the authentication process or the authentication process failed.</exception>
+      <returns>A value that identifies the bulk encryption algorithm used by this <see cref="T:System.Net.Security.SslStream" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.CipherStrength">
+      <summary>Gets a value that identifies the strength of the cipher algorithm used by this <see cref="T:System.Net.Security.SslStream" />.</summary>
+      <returns>An <see cref="T:System.Int32" /> value that specifies the strength of the algorithm, in bits.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.HashAlgorithm">
+      <summary>Gets the algorithm used for generating message authentication codes (MACs).</summary>
+      <exception cref="T:System.InvalidOperationException">The <see cref="P:System.Net.Security.SslStream.HashAlgorithm" /> property was accessed before the completion of the authentication process or the authentication process failed.</exception>
+      <returns>The algorithm used for generating message authentication codes (MACs).</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.HashStrength">
+      <summary>Gets a value that identifies the strength of the hash algorithm used by this instance.</summary>
+      <returns>An <see cref="T:System.Int32" /> value that specifies the strength of the <see cref="T:System.Security.Authentication.HashAlgorithmType" /> algorithm, in bits. Valid values are 128 or 160.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.IsAuthenticated">
+      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether authentication was successful.</summary>
+      <returns>
+        <see langword="true" /> if successful authentication occurred; otherwise, <see langword="false" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.IsEncrypted">
+      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether this <see cref="T:System.Net.Security.SslStream" /> uses data encryption.</summary>
+      <returns>
+        <see langword="true" /> if data is encrypted before being transmitted over the network and decrypted when it reaches the remote endpoint; otherwise <see langword="false" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.IsMutuallyAuthenticated">
+      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether both server and client have been authenticated.</summary>
+      <returns>
+        <see langword="true" /> if the server has been authenticated; otherwise <see langword="false" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.IsServer">
+      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the local side of the connection used by this <see cref="T:System.Net.Security.SslStream" /> was authenticated as the server.</summary>
+      <returns>
+        <see langword="true" /> if the local endpoint was successfully authenticated as the server side of the authenticated connection; otherwise <see langword="false" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.IsSigned">
+      <summary>Gets a <see cref="T:System.Boolean" /> value that indicates whether the data sent using this stream is signed.</summary>
+      <returns>
+        <see langword="true" /> if the data is signed before being transmitted; otherwise <see langword="false" />.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.KeyExchangeAlgorithm">
+      <summary>Gets the key exchange algorithm used by this <see cref="T:System.Net.Security.SslStream" />.</summary>
+      <returns>An <see cref="T:System.Security.Authentication.ExchangeAlgorithmType" /> value.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.KeyExchangeStrength">
+      <summary>Gets a value that identifies the strength of the key exchange algorithm used by this instance.</summary>
+      <returns>An <see cref="T:System.Int32" /> value that specifies the strength of the <see cref="T:System.Security.Authentication.ExchangeAlgorithmType" /> algorithm, in bits.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.Length">
+      <summary>Gets the length of the underlying stream.</summary>
+      <exception cref="T:System.NotSupportedException">Getting the value of this property is not supported when the underlying stream is a <see cref="T:System.Net.Sockets.NetworkStream" />.</exception>
+      <returns>The length of the underlying stream.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.LocalCertificate">
+      <summary>Gets the certificate used to authenticate the local endpoint.</summary>
+      <exception cref="T:System.InvalidOperationException">Authentication failed or has not occurred.</exception>
+      <returns>An X509Certificate object that represents the certificate supplied for authentication or <see langword="null" /> if no certificate was supplied.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.NegotiatedApplicationProtocol">
+      <summary>The negotiated application protocol in TLS handshake.</summary>
+    </member>
+    <member name="P:System.Net.Security.SslStream.NegotiatedCipherSuite">
+      <summary>Gets the cipher suite which was negotiated for this connection.</summary>
+      <exception cref="T:System.InvalidOperationException">The property was accessed before the completion of the authentication process or the authentication process failed.</exception>
+      <returns>One of the enumeration values that identifies the cipher suite which was negotiated for this connection.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.Position">
+      <summary>Gets or sets the current position in the underlying stream.</summary>
+      <exception cref="T:System.NotSupportedException">Setting this property is not supported.  
+  
+ -or-  
+  
+ Getting the value of this property is not supported when the underlying stream is a <see cref="T:System.Net.Sockets.NetworkStream" />.</exception>
+      <returns>The current position in the underlying stream.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.ReadTimeout">
+      <summary>Gets or sets the amount of time, expressed in milliseconds, a read operation blocks waiting for data.</summary>
+      <returns>The amount of time, in milliseconds, that elapses before a synchronous read operation fails.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.RemoteCertificate">
+      <summary>Gets the certificate used to authenticate the remote endpoint.</summary>
+      <exception cref="T:System.InvalidOperationException">Authentication failed or has not occurred.</exception>
+      <returns>An X509Certificate object that represents the certificate supplied for authentication or <see langword="null" /> if no certificate was supplied.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.SslProtocol">
+      <summary>Gets a value that indicates the security protocol used to authenticate this connection.</summary>
+      <returns>The <see cref="T:System.Security.Authentication.SslProtocols" /> value that represents protocols used for authentication.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.TargetHostName">
+      <summary>Gets the name of the server the client is trying to connect to. That name is used for server certificate validation. It can be a DNS name or an IP address.</summary>
+      <returns>The name of the server the client is trying to connect to.</returns>
+    </member>
+    <member name="P:System.Net.Security.SslStream.TransportContext">
+      <summary>Gets the <see cref="T:System.Net.TransportContext" /> used for authentication using extended protection.</summary>
+      <returns>The <see cref="T:System.Net.TransportContext" /> object that contains the channel binding token (CBT) used for extended protection.</returns>
     </member>
     <member name="P:System.Net.Security.SslStream.WriteTimeout">
       <summary>Gets or sets the amount of time a write operation blocks waiting for data.</summary>
       <returns>The amount of time that elapses before a synchronous write operation fails.</returns>
     </member>
+    <member name="T:System.Net.Security.SslStreamCertificateContext">
+      <summary>Represents a set of certificates used for building a certificate chain.</summary>
+    </member>
+    <member name="M:System.Net.Security.SslStreamCertificateContext.Create(System.Security.Cryptography.X509Certificates.X509Certificate2,System.Security.Cryptography.X509Certificates.X509Certificate2Collection,System.Boolean)">
+      <summary>Attempts to build the certificate chain from the provided certificates.</summary>
+      <param name="target">The server certificate.</param>
+      <param name="additionalCertificates">Supplementary certificates used to build the certificate chain.</param>
+      <param name="offline">
+        <see langword="false" /> to indicate that the missing certificates can be downloaded from the network; <see langword="true" /> to indicate that only available X509Certificate stores should be searched for missing certificates.</param>
+      <exception cref="T:System.NotSupportedException">
+        <paramref name="target" /> doesn't have an associated private key.</exception>
+      <returns>The certificate context with the newly created certificate chain.</returns>
+    </member>
+    <member name="M:System.Net.Security.SslStreamCertificateContext.Create(System.Security.Cryptography.X509Certificates.X509Certificate2,System.Security.Cryptography.X509Certificates.X509Certificate2Collection,System.Boolean,System.Net.Security.SslCertificateTrust)">
+      <summary>Attempts to build the certificate chain from the provided certificates.</summary>
+      <param name="target">The server certificate.</param>
+      <param name="additionalCertificates">Supplementary certificates used to build the certificate chain.</param>
+      <param name="offline">
+        <see langword="false" /> to indicate that the missing certificates can be downloaded from the network; <see langword="true" /> to indicate that only available X509Certificate stores should be searched for missing certificates.</param>
+      <param name="trust">An optional trust policy, to replace the default system trust.</param>
+      <exception cref="T:System.NotSupportedException">
+        <paramref name="target" /> doesn't have an associated private key.</exception>
+      <returns>The certificate context with the newly created certificate chain.</returns>
+    </member>
     <member name="T:System.Net.Security.TlsCipherSuite">
       <summary>Represents cipher suite values for the TLS (formerly SSL) protocol.</summary>
     </member>
@@ -2593,6 +3123,15 @@ Getting the value of this property is not supported when the underlying stream i
       <exception cref="T:System.ArgumentNullException">
         <paramref name="customServiceNames" /> is <see langword="null" /> or an empty list.</exception>
     </member>
+    <member name="M:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.System#Runtime#Serialization#ISerializable#GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+      <summary>Populates a <see cref="T:System.Runtime.Serialization.SerializationInfo" /> object with the required data to serialize an <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy" /> object.</summary>
+      <param name="info">A <see cref="T:System.Runtime.Serialization.SerializationInfo" /> object that holds the serialized data for an <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy" /> object.</param>
+      <param name="context">A <see cref="T:System.Runtime.Serialization.StreamingContext" /> that contains the destination of the serialized stream that is associated with the new <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy" />.</param>
+    </member>
+    <member name="M:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.ToString">
+      <summary>Gets a string representation for the extended protection policy instance.</summary>
+      <returns>A <see cref="T:System.String" /> instance that contains the representation of the <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy" /> instance.</returns>
+    </member>
     <member name="P:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomChannelBinding">
       <summary>Gets a custom channel binding token (CBT) to use for validation.</summary>
       <returns>A <see cref="T:System.Security.Authentication.ExtendedProtection.ChannelBinding" /> that contains a custom channel binding to use for validation.</returns>
@@ -2614,15 +3153,6 @@ Getting the value of this property is not supported when the underlying stream i
       <summary>Gets the kind of protection enforced by the extended protection policy.</summary>
       <returns>A <see cref="T:System.Security.Authentication.ExtendedProtection.ProtectionScenario" /> value that indicates the kind of protection enforced by the policy.</returns>
     </member>
-    <member name="M:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.System#Runtime#Serialization#ISerializable#GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
-      <summary>Populates a <see cref="T:System.Runtime.Serialization.SerializationInfo" /> object with the required data to serialize an <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy" /> object.</summary>
-      <param name="info">A <see cref="T:System.Runtime.Serialization.SerializationInfo" /> object that holds the serialized data for an <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy" /> object.</param>
-      <param name="context">A <see cref="T:System.Runtime.Serialization.StreamingContext" /> that contains the destination of the serialized stream that is associated with the new <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy" />.</param>
-    </member>
-    <member name="M:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.ToString">
-      <summary>Gets a string representation for the extended protection policy instance.</summary>
-      <returns>A <see cref="T:System.String" /> instance that contains the representation of the <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy" /> instance.</returns>
-    </member>
     <member name="T:System.Security.Authentication.ExtendedProtection.PolicyEnforcement">
       <summary>The <see cref="T:System.Security.Authentication.ExtendedProtection.PolicyEnforcement" /> enumeration specifies when the <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy" /> should be enforced.</summary>
     </member>
@@ -2658,26 +3188,27 @@ Getting the value of this property is not supported when the underlying stream i
     <member name="M:System.Security.Authentication.ExtendedProtection.ServiceNameCollection.Contains(System.String)">
       <summary>Returns a value indicating whether the specified string occurs within this <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection" /> instance.</summary>
       <param name="searchServiceName">The string to seek.</param>
-      <returns>Returns <see cref="T:System.Boolean" />.
-<see langword="true" /> if the <paramref name="searchServiceName" /> parameter occurs within this <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection" /> instance; otherwise, <see langword="false" />.</returns>
+      <returns>Returns <see cref="T:System.Boolean" />.  
+  
+ <see langword="true" /> if the <paramref name="searchServiceName" /> parameter occurs within this <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection" /> instance; otherwise, <see langword="false" />.</returns>
     </member>
     <member name="M:System.Security.Authentication.ExtendedProtection.ServiceNameCollection.Merge(System.Collections.IEnumerable)">
       <summary>Merges the current <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection" /> with the specified values to create a new <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection" /> containing the union.</summary>
       <param name="serviceNames">An instance of the <see cref="T:System.Collections.IEnumerable" /> class that contains the specified values of service names to be merged.</param>
-      <returns>A new <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection" /> instance that contains the union of the existing <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection" /> instance merged with the specified values.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="serviceNames" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentException">
         <paramref name="serviceNames" /> is empty.</exception>
+      <returns>A new <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection" /> instance that contains the union of the existing <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection" /> instance merged with the specified values.</returns>
     </member>
     <member name="M:System.Security.Authentication.ExtendedProtection.ServiceNameCollection.Merge(System.String)">
       <summary>Merges the current <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection" /> with the specified values to create a new <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection" /> containing the union.</summary>
       <param name="serviceName">A string that contains the specified values of service names to be used to initialize the class.</param>
-      <returns>A new <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection" /> instance that contains the union of the existing <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection" /> instance merged with the specified values.</returns>
       <exception cref="T:System.ArgumentNullException">
         <paramref name="serviceNames" /> is <see langword="null" />.</exception>
       <exception cref="T:System.ArgumentException">
         <paramref name="serviceNames" /> is empty.</exception>
+      <returns>A new <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection" /> instance that contains the union of the existing <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection" /> instance merged with the specified values.</returns>
     </member>
     <member name="T:System.Security.Authentication.InvalidCredentialException">
       <summary>The exception that is thrown when authentication fails for an authentication stream and cannot be retried.</summary>