1 <?xml version="1.0" encoding="utf-8"?><doc>
3 <name>System.Net.Security</name>
6 <member name="T:System.Security.Authentication.AuthenticationException">
7 <summary>The exception that is thrown when authentication fails for an authentication stream.</summary>
9 <member name="M:System.Security.Authentication.AuthenticationException.#ctor">
10 <summary>Initializes a new instance of the <see cref="T:System.Security.Authentication.AuthenticationException"></see> class with no message.</summary>
12 <member name="M:System.Security.Authentication.AuthenticationException.#ctor(System.String)">
13 <summary>Initializes a new instance of the <see cref="T:System.Security.Authentication.AuthenticationException"></see> class with the specified message.</summary>
14 <param name="message">A <see cref="T:System.String"></see> that describes the authentication failure.</param>
16 <member name="M:System.Security.Authentication.AuthenticationException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
17 <summary>Initializes a new instance of the <see cref="T:System.Security.Authentication.AuthenticationException"></see> class from the specified instances of the <see cref="T:System.Runtime.Serialization.SerializationInfo"></see> and <see cref="T:System.Runtime.Serialization.StreamingContext"></see> classes.</summary>
18 <param name="serializationInfo">A <see cref="T:System.Runtime.Serialization.SerializationInfo"></see> instance that contains the information required to deserialize the new <see cref="T:System.Security.Authentication.AuthenticationException"></see> instance.</param>
19 <param name="streamingContext">A <see cref="T:System.Runtime.Serialization.StreamingContext"></see> instance.</param>
21 <member name="M:System.Security.Authentication.AuthenticationException.#ctor(System.String,System.Exception)">
22 <summary>Initializes a new instance of the <see cref="T:System.Security.Authentication.AuthenticationException"></see> class with the specified message and inner exception.</summary>
23 <param name="message">A <see cref="T:System.String"></see> that describes the authentication failure.</param>
24 <param name="innerException">The <see cref="T:System.Exception"></see> that is the cause of the current exception.</param>
26 <member name="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy">
27 <summary>The <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> class represents the extended protection policy used by the server to validate incoming client connections.</summary>
29 <member name="M:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.#ctor(System.Security.Authentication.ExtendedProtection.PolicyEnforcement)">
30 <summary>Initializes a new instance of the <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> class that specifies when the extended protection policy should be enforced.</summary>
31 <param name="policyEnforcement">A <see cref="T:System.Security.Authentication.ExtendedProtection.PolicyEnforcement"></see> value that indicates when the extended protection policy should be enforced.</param>
33 <member name="M:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
34 <summary>Initializes a new instance of the <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> class from a <see cref="T:System.Runtime.Serialization.SerializationInfo"></see> object that contains the required data to populate the <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see>.</summary>
35 <param name="info">A <see cref="T:System.Runtime.Serialization.SerializationInfo"></see> instance that contains the information that is required to serialize the new <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> instance.</param>
36 <param name="context">A <see cref="T:System.Runtime.Serialization.StreamingContext"></see> that contains the source of the serialized stream that is associated with the new <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> instance.</param>
38 <member name="M:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.#ctor(System.Security.Authentication.ExtendedProtection.PolicyEnforcement,System.Security.Authentication.ExtendedProtection.ChannelBinding)">
39 <summary>Initializes a new instance of the <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> class that specifies when the extended protection policy should be enforced and the channel binding token (CBT) to be used.</summary>
40 <param name="policyEnforcement">A <see cref="T:System.Security.Authentication.ExtendedProtection.PolicyEnforcement"></see> value that indicates when the extended protection policy should be enforced.</param>
41 <param name="customChannelBinding">A <see cref="T:System.Security.Authentication.ExtendedProtection.ChannelBinding"></see> that contains a custom channel binding to use for validation.</param>
42 <exception cref="T:System.ArgumentException"><paramref name="policyEnforcement">policyEnforcement</paramref> is specified as <see cref="System.Security.Authentication.ExtendedProtection.PolicyEnforcement.Never"></see>.</exception>
43 <exception cref="T:System.ArgumentNullException"><paramref name="customChannelBinding">customChannelBinding</paramref> is null.</exception>
45 <member name="M:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.#ctor(System.Security.Authentication.ExtendedProtection.PolicyEnforcement,System.Security.Authentication.ExtendedProtection.ProtectionScenario,System.Collections.ICollection)">
46 <summary>Initializes a new instance of the <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> class that specifies when the extended protection policy should be enforced, the kind of protection enforced by the policy, and a custom Service Provider Name (SPN) list that is used to match against a client&#39;s SPN.</summary>
47 <param name="policyEnforcement">A <see cref="T:System.Security.Authentication.ExtendedProtection.PolicyEnforcement"></see> value that indicates when the extended protection policy should be enforced.</param>
48 <param name="protectionScenario">A <see cref="T:System.Security.Authentication.ExtendedProtection.ProtectionScenario"></see> value that indicates the kind of protection enforced by the policy.</param>
49 <param name="customServiceNames">A <see cref="T:System.Collections.ICollection"></see> that contains the custom SPN list that is used to match against a client&#39;s SPN.</param>
50 <exception cref="T:System.ArgumentException"><paramref name="policyEnforcement">policyEnforcement</paramref> is specified as <see cref="System.Security.Authentication.ExtendedProtection.PolicyEnforcement.Never"></see>.</exception>
51 <exception cref="T:System.ArgumentNullException"><paramref name="customServiceNames">customServiceNames</paramref> is null or an empty list.</exception>
53 <member name="M:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.#ctor(System.Security.Authentication.ExtendedProtection.PolicyEnforcement,System.Security.Authentication.ExtendedProtection.ProtectionScenario,System.Security.Authentication.ExtendedProtection.ServiceNameCollection)">
54 <summary>Initializes a new instance of the <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> class that specifies when the extended protection policy should be enforced, the kind of protection enforced by the policy, and a custom Service Provider Name (SPN) list that is used to match against a client&#39;s SPN.</summary>
55 <param name="policyEnforcement">A <see cref="T:System.Security.Authentication.ExtendedProtection.PolicyEnforcement"></see> value that indicates when the extended protection policy should be enforced.</param>
56 <param name="protectionScenario">A <see cref="T:System.Security.Authentication.ExtendedProtection.ProtectionScenario"></see> value that indicates the kind of protection enforced by the policy.</param>
57 <param name="customServiceNames">A <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection"></see> that contains the custom SPN list that is used to match against a client&#39;s SPN.</param>
58 <exception cref="T:System.ArgumentException"><paramref name="policyEnforcement">policyEnforcement</paramref> is specified as <see cref="System.Security.Authentication.ExtendedProtection.PolicyEnforcement.Never"></see>.</exception>
59 <exception cref="T:System.ArgumentNullException"><paramref name="customServiceNames">customServiceNames</paramref> is null or an empty list.</exception>
61 <member name="P:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomChannelBinding">
62 <summary>Gets a custom channel binding token (CBT) to use for validation.</summary>
63 <returns>A <see cref="System.Security.Authentication.ExtendedProtection.ChannelBinding"></see> that contains a custom channel binding to use for validation.</returns>
65 <member name="P:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomServiceNames">
66 <summary>Gets the custom Service Provider Name (SPN) list used to match against a client&#39;s SPN.</summary>
67 <returns>A <see cref="System.Security.Authentication.ExtendedProtection.ServiceNameCollection"></see> that contains the custom SPN list that is used to match against a client&#39;s SPN.</returns>
69 <member name="P:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.OSSupportsExtendedProtection">
70 <summary>Indicates whether the operating system supports integrated windows authentication with extended protection.</summary>
71 <returns>true if the operating system supports integrated windows authentication with extended protection, otherwise false.</returns>
73 <member name="P:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.PolicyEnforcement">
74 <summary>Gets when the extended protection policy should be enforced.</summary>
75 <returns>A <see cref="System.Security.Authentication.ExtendedProtection.PolicyEnforcement"></see> value that indicates when the extended protection policy should be enforced.</returns>
77 <member name="P:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.ProtectionScenario">
78 <summary>Gets the kind of protection enforced by the extended protection policy.</summary>
79 <returns>A <see cref="System.Security.Authentication.ExtendedProtection.ProtectionScenario"></see> value that indicates the kind of protection enforced by the policy.</returns>
81 <member name="M:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.ToString">
82 <summary>Gets a string representation for the extended protection policy instance.</summary>
83 <returns>A <see cref="System.String"></see> instance that contains the representation of the <see cref="System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> instance.</returns>
85 <member name="M:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.System#Runtime#Serialization#ISerializable#GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
86 <summary>Populates a <see cref="T:System.Runtime.Serialization.SerializationInfo"></see> object with the required data to serialize an <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> object.</summary>
87 <param name="info">A <see cref="T:System.Runtime.Serialization.SerializationInfo"></see> object that holds the serialized data for an <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> object.</param>
88 <param name="context">A <see cref="T:System.Runtime.Serialization.StreamingContext"></see> that contains the destination of the serialized stream that is associated with the new <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see>.</param>
90 <member name="T:System.Security.Authentication.ExtendedProtection.PolicyEnforcement">
91 <summary>The <see cref="T:System.Security.Authentication.ExtendedProtection.PolicyEnforcement"></see> enumeration specifies when the <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> should be enforced.</summary>
93 <member name="F:System.Security.Authentication.ExtendedProtection.PolicyEnforcement.Always">
94 <summary>The <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> is always enforced. Clients that don’t support extended protection will fail to authenticate.</summary>
97 <member name="F:System.Security.Authentication.ExtendedProtection.PolicyEnforcement.Never">
98 <summary>The <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> is never enforced and extended protection is disabled.</summary>
101 <member name="F:System.Security.Authentication.ExtendedProtection.PolicyEnforcement.WhenSupported">
102 <summary>The <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> is enforced only if the client and server supports extended protection.</summary>
105 <member name="T:System.Security.Authentication.ExtendedProtection.ProtectionScenario">
106 <summary>The <see cref="T:System.Security.Authentication.ExtendedProtection.ProtectionScenario"></see> enumeration specifies the protection scenario enforced by the policy.</summary>
108 <member name="F:System.Security.Authentication.ExtendedProtection.ProtectionScenario.TransportSelected">
109 <summary>The transport will select between a secure and standard protection scenario depending on the type of channel used. For secure protection, integrated Windows authentication is wrapped in a secure channel and has an exactly matching channel binding token with no Service Provider Name (SPN) validation. For standard protection, integrated Windows authentication is optionally wrapped in a secure channel with an optional channel binding token and SPN validation is required. So if the request comes through a secure channel, the channel binding token (CBT) is checked, otherwise the SPN is checked.</summary>
112 <member name="F:System.Security.Authentication.ExtendedProtection.ProtectionScenario.TrustedProxy">
113 <summary>Integrated Windows authentication is wrapped in a secure channel terminated by a trusted proxy and has a channel binding token with SPN validation required. This requires the presence of a CBT, but the CBT is not checked while the SPN is checked.</summary>
116 <member name="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection">
117 <summary>The <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection"></see> class is a read-only collection of service principal names.</summary>
119 <member name="M:System.Security.Authentication.ExtendedProtection.ServiceNameCollection.#ctor(System.Collections.ICollection)">
120 <summary>Initializes a new read-only instance of the <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection"></see> class based on an existing <see cref="T:System.Collections.ICollection"></see>.</summary>
121 <param name="items">An instance of the <see cref="T:System.Collections.ICollection"></see> class that contains the specified values of service names to be used to initialize the class.</param>
122 <exception cref="T:System.ArgumentNullException"><paramref name="item">item</paramref> is null.</exception>
123 <exception cref="T:System.ArgumentException"><paramref name="item">item</paramref> is empty.</exception>
125 <member name="M:System.Security.Authentication.ExtendedProtection.ServiceNameCollection.Contains(System.String)">
126 <summary>Returns a value indicating whether the specified string occurs within this <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection"></see> instance.</summary>
127 <param name="searchServiceName">The string to seek.</param>
128 <returns>Returns <see cref="System.Boolean"></see>.
129 true if the <paramref name="searchServiceName">searchServiceName</paramref> parameter occurs within this <see cref="System.Security.Authentication.ExtendedProtection.ServiceNameCollection"></see> instance; otherwise, false.</returns>
131 <member name="P:System.Security.Authentication.ExtendedProtection.ServiceNameCollection.Count">
134 <member name="M:System.Security.Authentication.ExtendedProtection.ServiceNameCollection.GetEnumerator">
137 <member name="M:System.Security.Authentication.ExtendedProtection.ServiceNameCollection.Merge(System.Collections.IEnumerable)">
138 <summary>Merges the current <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection"></see> with the specified values to create a new <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection"></see> containing the union.</summary>
139 <param name="serviceNames">An instance of the <see cref="T:System.Collections.IEnumerable"></see> class that contains the specified values of service names to be merged.</param>
140 <returns>A new <see cref="System.Security.Authentication.ExtendedProtection.ServiceNameCollection"></see> instance that contains the union of the existing <see cref="System.Security.Authentication.ExtendedProtection.ServiceNameCollection"></see> instance merged with the specified values.</returns>
141 <exception cref="T:System.ArgumentNullException"><paramref name="serviceNames">serviceNames</paramref> is null.</exception>
142 <exception cref="T:System.ArgumentException"><paramref name="serviceNames">serviceNames</paramref> is empty.</exception>
144 <member name="M:System.Security.Authentication.ExtendedProtection.ServiceNameCollection.Merge(System.String)">
145 <summary>Merges the current <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection"></see> with the specified values to create a new <see cref="T:System.Security.Authentication.ExtendedProtection.ServiceNameCollection"></see> containing the union.</summary>
146 <param name="serviceName">A string that contains the specified values of service names to be used to initialize the class.</param>
147 <returns>A new <see cref="System.Security.Authentication.ExtendedProtection.ServiceNameCollection"></see> instance that contains the union of the existing <see cref="System.Security.Authentication.ExtendedProtection.ServiceNameCollection"></see> instance merged with the specified values.</returns>
148 <exception cref="T:System.ArgumentNullException"><paramref name="serviceNames">serviceNames</paramref> is null.</exception>
149 <exception cref="T:System.ArgumentException"><paramref name="serviceNames">serviceNames</paramref> is empty.</exception>
151 <member name="M:System.Security.Authentication.ExtendedProtection.ServiceNameCollection.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
152 <param name="array"></param>
153 <param name="index"></param>
155 <member name="P:System.Security.Authentication.ExtendedProtection.ServiceNameCollection.System#Collections#ICollection#IsSynchronized">
158 <member name="P:System.Security.Authentication.ExtendedProtection.ServiceNameCollection.System#Collections#ICollection#SyncRoot">
161 <member name="T:System.Security.Authentication.InvalidCredentialException">
162 <summary>The exception that is thrown when authentication fails for an authentication stream and cannot be retried.</summary>
164 <member name="M:System.Security.Authentication.InvalidCredentialException.#ctor">
165 <summary>Initializes a new instance of the <see cref="T:System.Security.Authentication.InvalidCredentialException"></see> class with no message.</summary>
167 <member name="M:System.Security.Authentication.InvalidCredentialException.#ctor(System.String)">
168 <summary>Initializes a new instance of the <see cref="T:System.Security.Authentication.InvalidCredentialException"></see> class with the specified message.</summary>
169 <param name="message">A <see cref="T:System.String"></see> that describes the authentication failure.</param>
171 <member name="M:System.Security.Authentication.InvalidCredentialException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
172 <summary>Initializes a new instance of the <see cref="T:System.Security.Authentication.InvalidCredentialException"></see> class from the specified instances of the <see cref="T:System.Runtime.Serialization.SerializationInfo"></see> and <see cref="T:System.Runtime.Serialization.StreamingContext"></see> classes.</summary>
173 <param name="serializationInfo">A <see cref="T:System.Runtime.Serialization.SerializationInfo"></see> instance that contains the information required to deserialize the new <see cref="T:System.Security.Authentication.InvalidCredentialException"></see> instance.</param>
174 <param name="streamingContext">A <see cref="T:System.Runtime.Serialization.StreamingContext"></see> instance.</param>
176 <member name="M:System.Security.Authentication.InvalidCredentialException.#ctor(System.String,System.Exception)">
177 <summary>Initializes a new instance of the <see cref="T:System.Security.Authentication.InvalidCredentialException"></see> class with the specified message and inner exception.</summary>
178 <param name="message">A <see cref="T:System.String"></see> that describes the authentication failure.</param>
179 <param name="innerException">The <see cref="T:System.Exception"></see> that is the cause of the current exception.</param>
181 <member name="T:System.Net.Security.AuthenticatedStream">
182 <summary>Provides methods for passing credentials across a stream and requesting or performing authentication for client-server applications.</summary>
184 <member name="M:System.Net.Security.AuthenticatedStream.#ctor(System.IO.Stream,System.Boolean)">
185 <summary>Initializes a new instance of the <see cref="T:System.Net.Security.AuthenticatedStream"></see> class.</summary>
186 <param name="innerStream">A <see cref="T:System.IO.Stream"></see> object used by the <see cref="T:System.Net.Security.AuthenticatedStream"></see> for sending and receiving data.</param>
187 <param name="leaveInnerStreamOpen">A <see cref="T:System.Boolean"></see> that indicates whether closing this <see cref="T:System.Net.Security.AuthenticatedStream"></see> object also closes innerStream.</param>
188 <exception cref="T:System.ArgumentNullException"><paramref name="innerStream">innerStream</paramref> is null.
190 <paramref name="innerStream">innerStream</paramref> is equal to <see cref="System.IO.Stream.Null"></see>.</exception>
192 <member name="M:System.Net.Security.AuthenticatedStream.Dispose(System.Boolean)">
193 <summary>Releases the unmanaged resources used by the <see cref="T:System.Net.Security.AuthenticatedStream"></see> and optionally releases the managed resources.</summary>
194 <param name="disposing">true to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
196 <member name="P:System.Net.Security.AuthenticatedStream.InnerStream">
197 <summary>Gets the stream used by this <see cref="T:System.Net.Security.AuthenticatedStream"></see> for sending and receiving data.</summary>
198 <returns>A <see cref="System.IO.Stream"></see> object.</returns>
200 <member name="P:System.Net.Security.AuthenticatedStream.IsAuthenticated">
201 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether authentication was successful.</summary>
202 <returns>true if successful authentication occurred; otherwise, false.</returns>
204 <member name="P:System.Net.Security.AuthenticatedStream.IsEncrypted">
205 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether data sent using this <see cref="T:System.Net.Security.AuthenticatedStream"></see> is encrypted.</summary>
206 <returns>true if data is encrypted before being transmitted over the network and decrypted when it reaches the remote endpoint; otherwise, false.</returns>
208 <member name="P:System.Net.Security.AuthenticatedStream.IsMutuallyAuthenticated">
209 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether both server and client have been authenticated.</summary>
210 <returns>true if the client and server have been authenticated; otherwise, false.</returns>
212 <member name="P:System.Net.Security.AuthenticatedStream.IsServer">
213 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether the local side of the connection was authenticated as the server.</summary>
214 <returns>true if the local endpoint was authenticated as the server side of a client-server authenticated connection; false if the local endpoint was authenticated as the client.</returns>
216 <member name="P:System.Net.Security.AuthenticatedStream.IsSigned">
217 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether the data sent using this stream is signed.</summary>
218 <returns>true if the data is signed before being transmitted; otherwise, false.</returns>
220 <member name="P:System.Net.Security.AuthenticatedStream.LeaveInnerStreamOpen">
221 <summary>Gets whether the stream used by this <see cref="T:System.Net.Security.AuthenticatedStream"></see> for sending and receiving data has been left open.</summary>
222 <returns>true if the inner stream has been left open; otherwise, false.</returns>
224 <member name="T:System.Net.Security.EncryptionPolicy">
225 <summary>The EncryptionPolicy to use.</summary>
227 <member name="F:System.Net.Security.EncryptionPolicy.AllowNoEncryption">
228 <summary>Prefer that full encryption be used, but allow a NULL cipher (no encryption) if the server agrees.</summary>
231 <member name="F:System.Net.Security.EncryptionPolicy.NoEncryption">
232 <summary>Allow no encryption and request that a NULL cipher be used if the other endpoint can handle a NULL cipher.</summary>
235 <member name="F:System.Net.Security.EncryptionPolicy.RequireEncryption">
236 <summary>Require encryption and never allow a NULL cipher.</summary>
239 <member name="T:System.Net.Security.LocalCertificateSelectionCallback">
240 <summary>Selects the local Secure Sockets Layer (SSL) certificate used for authentication.</summary>
241 <param name="sender">An object that contains state information for this validation.</param>
242 <param name="targetHost">The host server specified by the client.</param>
243 <param name="localCertificates">An <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection"></see> containing local certificates.</param>
244 <param name="remoteCertificate">The certificate used to authenticate the remote party.</param>
245 <param name="acceptableIssuers">A <see cref="T:System.String"></see> array of certificate issuers acceptable to the remote party.</param>
246 <returns>An <see cref="System.Security.Cryptography.X509Certificates.X509Certificate"></see> used for establishing an SSL connection.</returns>
248 <member name="T:System.Net.Security.NegotiateStream">
249 <summary>Provides a stream that uses the Negotiate security protocol to authenticate the client, and optionally the server, in client-server communication.</summary>
251 <member name="M:System.Net.Security.NegotiateStream.#ctor(System.IO.Stream)">
252 <summary>Initializes a new instance of the <see cref="T:System.Net.Security.NegotiateStream"></see> class using the specified <see cref="T:System.IO.Stream"></see>.</summary>
253 <param name="innerStream">A <see cref="T:System.IO.Stream"></see> object used by the <see cref="T:System.Net.Security.NegotiateStream"></see> for sending and receiving data.</param>
255 <member name="M:System.Net.Security.NegotiateStream.#ctor(System.IO.Stream,System.Boolean)">
256 <summary>Initializes a new instance of the <see cref="T:System.Net.Security.NegotiateStream"></see> class using the specified <see cref="T:System.IO.Stream"></see> and stream closure behavior.</summary>
257 <param name="innerStream">A <see cref="T:System.IO.Stream"></see> object used by the <see cref="T:System.Net.Security.NegotiateStream"></see> for sending and receiving data.</param>
258 <param name="leaveInnerStreamOpen">true to indicate that closing this <see cref="T:System.Net.Security.NegotiateStream"></see> has no effect on innerstream; false to indicate that closing this <see cref="T:System.Net.Security.NegotiateStream"></see> also closes innerStream.</param>
259 <exception cref="T:System.ArgumentNullException"><paramref name="innerStream">innerStream</paramref> is null.
261 <paramref name="innerStream">innerStream</paramref> is equal to <see cref="System.IO.Stream.Null"></see>.</exception>
263 <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsClient">
264 <summary>Called by clients to authenticate the client, and optionally the server, in a client-server connection.</summary>
265 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
266 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
267 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
268 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
270 This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
272 <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsClient(System.Net.NetworkCredential,System.String)">
273 <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.</summary>
274 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the client.</param>
275 <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
276 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
277 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
278 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
279 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
281 This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
282 <exception cref="T:System.ArgumentNullException"><paramref name="targetName">targetName</paramref> is null.</exception>
284 <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsClient(System.Net.NetworkCredential,System.Security.Authentication.ExtendedProtection.ChannelBinding,System.String)">
285 <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>
286 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the client.</param>
287 <param name="binding">The <see cref="T:System.Security.Authentication.ExtendedProtection.ChannelBinding"></see> that is used for extended protection.</param>
288 <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
289 <exception cref="T:System.ArgumentNullException"><paramref name="targetName">targetName</paramref> is null.
291 <paramref name="credential">credential</paramref> is null.</exception>
292 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
293 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
294 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
296 This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
297 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
299 <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsClient(System.Net.NetworkCredential,System.String,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel)">
300 <summary>Called by clients to authenticate the client, and optionally the server, in a client-server connection. The authentication process uses the specified credentials and authentication options.</summary>
301 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the client.</param>
302 <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
303 <param name="requiredProtectionLevel">One of the <see cref="T:System.Net.Security.ProtectionLevel"></see> values, indicating the security services for the stream.</param>
304 <param name="allowedImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel"></see> values, indicating how the server can use the client&#39;s credentials to access resources.</param>
305 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="allowedImpersonationLevel">allowedImpersonationLevel</paramref> is not a valid value.</exception>
306 <exception cref="T:System.ArgumentNullException"><paramref name="targetName">targetName</paramref> is null.</exception>
307 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
308 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
309 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
310 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
312 This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
314 <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)">
315 <summary>Called by clients to authenticate the client, and optionally the server, in a client-server connection. The authentication process uses the specified credential, authentication options, and channel binding.</summary>
316 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the client.</param>
317 <param name="binding">The <see cref="T:System.Security.Authentication.ExtendedProtection.ChannelBinding"></see> that is used for extended protection.</param>
318 <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
319 <param name="requiredProtectionLevel">One of the <see cref="T:System.Net.Security.ProtectionLevel"></see> values, indicating the security services for the stream.</param>
320 <param name="allowedImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel"></see> values, indicating how the server can use the client&#39;s credentials to access resources.</param>
321 <exception cref="T:System.ArgumentNullException"><paramref name="targetName">targetName</paramref> is null.
323 <paramref name="credential">credential</paramref> is null.</exception>
324 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="allowedImpersonationLevel">allowedImpersonationLevel</paramref> is not a valid value.</exception>
325 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
326 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
327 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
329 This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
330 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
332 <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsClientAsync">
333 <summary>Called by clients to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation.</summary>
334 <returns>Returns <see cref="System.Threading.Tasks.Task"></see>
335 The task object representing the asynchronous operation.</returns>
336 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
337 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
338 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
339 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
341 This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
343 <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsClientAsync(System.Net.NetworkCredential,System.String)">
344 <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>
345 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the client.</param>
346 <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
347 <returns>Returns <see cref="System.Threading.Tasks.Task"></see>
348 The task object representing the asynchronous operation.</returns>
349 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
350 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
351 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
352 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
354 This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
355 <exception cref="T:System.ArgumentNullException"><paramref name="targetName">targetName</paramref> is null.</exception>
357 <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsClientAsync(System.Net.NetworkCredential,System.Security.Authentication.ExtendedProtection.ChannelBinding,System.String)">
358 <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>
359 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the client.</param>
360 <param name="binding">The <see cref="T:System.Security.Authentication.ExtendedProtection.ChannelBinding"></see> that is used for extended protection.</param>
361 <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
362 <returns>Returns <see cref="System.Threading.Tasks.Task"></see>
363 The task object representing the asynchronous operation.</returns>
364 <exception cref="T:System.ArgumentNullException"><paramref name="targetName">targetName</paramref> is null.
366 <paramref name="credential">credential</paramref> is null.</exception>
367 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
368 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
369 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
371 This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
372 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
374 <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsClientAsync(System.Net.NetworkCredential,System.String,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel)">
375 <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>
376 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the client.</param>
377 <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
378 <param name="requiredProtectionLevel">One of the <see cref="T:System.Net.Security.ProtectionLevel"></see> values, indicating the security services for the stream.</param>
379 <param name="allowedImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel"></see> values, indicating how the server can use the client&#39;s credentials to access resources.</param>
380 <returns>Returns <see cref="System.Threading.Tasks.Task"></see>
381 The task object representing the asynchronous operation.</returns>
382 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="allowedImpersonationLevel">allowedImpersonationLevel</paramref> is not a valid value.</exception>
383 <exception cref="T:System.ArgumentNullException"><paramref name="targetName">targetName</paramref> is null.</exception>
384 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
385 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
386 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
387 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
389 This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
391 <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)">
392 <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>
393 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the client.</param>
394 <param name="binding">The <see cref="T:System.Security.Authentication.ExtendedProtection.ChannelBinding"></see> that is used for extended protection.</param>
395 <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
396 <param name="requiredProtectionLevel">One of the <see cref="T:System.Net.Security.ProtectionLevel"></see> values, indicating the security services for the stream.</param>
397 <param name="allowedImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel"></see> values, indicating how the server can use the client&#39;s credentials to access resources.</param>
398 <returns>Returns <see cref="System.Threading.Tasks.Task"></see>
399 The task object representing the asynchronous operation.</returns>
400 <exception cref="T:System.ArgumentNullException"><paramref name="targetName">targetName</paramref> is null.
402 <paramref name="credential">credential</paramref> is null.</exception>
403 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="allowedImpersonationLevel">allowedImpersonationLevel</paramref> is not a valid value.</exception>
404 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
405 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
406 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
408 This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
409 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
411 <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsServer(System.Net.NetworkCredential,System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel)">
412 <summary>Called by servers 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.</summary>
413 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the client.</param>
414 <param name="policy">The <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> that is used for extended protection.</param>
415 <param name="requiredProtectionLevel">One of the <see cref="T:System.Net.Security.ProtectionLevel"></see> values, indicating the security services for the stream.</param>
416 <param name="requiredImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel"></see> values, indicating how the server can use the client&#39;s credentials to access resources.</param>
417 <exception cref="T:System.ArgumentException">The <see cref="System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomChannelBinding"></see> and <see cref="System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomServiceNames"></see> on the extended protection policy passed in the <paramref name="policy">policy</paramref> parameter are both null.</exception>
418 <exception cref="T:System.ArgumentNullException"><paramref name="credential">credential</paramref> is null.</exception>
419 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="requiredImpersonationLevel">requiredImpersonationLevel</paramref> must be <see cref="System.Security.Principal.TokenImpersonationLevel.Identification"></see>, <see cref="System.Security.Principal.TokenImpersonationLevel.Impersonation"></see>, or <see cref="System.Security.Principal.TokenImpersonationLevel.Delegation"></see>,</exception>
420 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to try to r-authenticate.</exception>
421 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
422 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
424 This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
425 <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
426 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
427 <exception cref="T:System.PlatformNotSupportedException">The <paramref name="policy">policy</paramref> parameter was set to <see cref="System.Security.Authentication.ExtendedProtection.PolicyEnforcement.Always"></see> on a platform that does not support extended protection.</exception>
429 <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsServer(System.Net.NetworkCredential,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel)">
430 <summary>Called by servers to authenticate the client, and optionally the server, in a client-server connection. The authentication process uses the specified server credentials and authentication options.</summary>
431 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the server.</param>
432 <param name="requiredProtectionLevel">One of the <see cref="T:System.Net.Security.ProtectionLevel"></see> values, indicating the security services for the stream.</param>
433 <param name="requiredImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel"></see> values, indicating how the server can use the client&#39;s credentials to access resources.</param>
434 <exception cref="T:System.ArgumentNullException"><paramref name="credential">credential</paramref> is null.</exception>
435 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="requiredImpersonationLevel">requiredImpersonationLevel</paramref> must be <see cref="System.Security.Principal.TokenImpersonationLevel.Identification"></see>, <see cref="System.Security.Principal.TokenImpersonationLevel.Impersonation"></see>, or <see cref="System.Security.Principal.TokenImpersonationLevel.Delegation"></see>,</exception>
436 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to try to r-authenticate.</exception>
437 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
438 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
439 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
441 This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
442 <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
444 <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsServer">
445 <summary>Called by servers to authenticate the client, and optionally the server, in a client-server connection.</summary>
446 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
447 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
448 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
449 <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
451 <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsServer(System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy)">
452 <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>
453 <param name="policy">The <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> that is used for extended protection.</param>
454 <exception cref="T:System.ArgumentException">The <see cref="System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomChannelBinding"></see> and <see cref="System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomServiceNames"></see> on the extended protection policy passed in the <paramref name="policy">policy</paramref> parameter are both null.</exception>
455 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
456 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
457 <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
458 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
459 <exception cref="T:System.PlatformNotSupportedException">The <paramref name="policy">policy</paramref> parameter was set to <see cref="System.Security.Authentication.ExtendedProtection.PolicyEnforcement.Always"></see> on a platform that does not support extended protection.</exception>
461 <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsServerAsync">
462 <summary>Called by servers to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation.</summary>
463 <returns>Returns <see cref="System.Threading.Tasks.Task"></see>
464 The task object representing the asynchronous operation.</returns>
465 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
466 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
467 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
468 <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
470 <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsServerAsync(System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy)">
471 <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>
472 <param name="policy">The <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> that is used for extended protection.</param>
473 <returns>Returns <see cref="System.Threading.Tasks.Task"></see>
474 The task object representing the asynchronous operation.</returns>
475 <exception cref="T:System.ArgumentException">The <see cref="System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomChannelBinding"></see> and <see cref="System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomServiceNames"></see> on the extended protection policy passed in the <paramref name="policy">policy</paramref> parameter are both null.</exception>
476 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
477 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
478 <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
479 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
480 <exception cref="T:System.PlatformNotSupportedException">The <paramref name="policy">policy</paramref> parameter was set to <see cref="System.Security.Authentication.ExtendedProtection.PolicyEnforcement.Always"></see> on a platform that does not support extended protection.</exception>
482 <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsServerAsync(System.Net.NetworkCredential,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel)">
483 <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>
484 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the server.</param>
485 <param name="requiredProtectionLevel">One of the <see cref="T:System.Net.Security.ProtectionLevel"></see> values, indicating the security services for the stream.</param>
486 <param name="requiredImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel"></see> values, indicating how the server can use the client&#39;s credentials to access resources.</param>
487 <returns>Returns <see cref="System.Threading.Tasks.Task"></see>
488 The task object representing the asynchronous operation.</returns>
489 <exception cref="T:System.ArgumentNullException"><paramref name="credential">credential</paramref> is null.</exception>
490 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="requiredImpersonationLevel">requiredImpersonationLevel</paramref> must be <see cref="System.Security.Principal.TokenImpersonationLevel.Identification"></see>, <see cref="System.Security.Principal.TokenImpersonationLevel.Impersonation"></see>, or <see cref="System.Security.Principal.TokenImpersonationLevel.Delegation"></see>,</exception>
491 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to try to r-authenticate.</exception>
492 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
493 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
494 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
496 This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
497 <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
499 <member name="M:System.Net.Security.NegotiateStream.AuthenticateAsServerAsync(System.Net.NetworkCredential,System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel)">
500 <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>
501 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the client.</param>
502 <param name="policy">The <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> that is used for extended protection.</param>
503 <param name="requiredProtectionLevel">One of the <see cref="T:System.Net.Security.ProtectionLevel"></see> values, indicating the security services for the stream.</param>
504 <param name="requiredImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel"></see> values, indicating how the server can use the client&#39;s credentials to access resources.</param>
505 <returns>Returns <see cref="System.Threading.Tasks.Task"></see>
506 The task object representing the asynchronous operation.</returns>
507 <exception cref="T:System.ArgumentException">The <see cref="System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomChannelBinding"></see> and <see cref="System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomServiceNames"></see> on the extended protection policy passed in the <paramref name="policy">policy</paramref> parameter are both null.</exception>
508 <exception cref="T:System.ArgumentNullException"><paramref name="credential">credential</paramref> is null.</exception>
509 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="requiredImpersonationLevel">requiredImpersonationLevel</paramref> must be <see cref="System.Security.Principal.TokenImpersonationLevel.Identification"></see>, <see cref="System.Security.Principal.TokenImpersonationLevel.Impersonation"></see>, or <see cref="System.Security.Principal.TokenImpersonationLevel.Delegation"></see>,</exception>
510 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to try to r-authenticate.</exception>
511 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
512 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
514 This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
515 <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
516 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
517 <exception cref="T:System.PlatformNotSupportedException">The <paramref name="policy">policy</paramref> parameter was set to <see cref="System.Security.Authentication.ExtendedProtection.PolicyEnforcement.Always"></see> on a platform that does not support extended protection.</exception>
519 <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)">
520 <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>
521 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the client.</param>
522 <param name="binding">The <see cref="T:System.Security.Authentication.ExtendedProtection.ChannelBinding"></see> that is used for extended protection.</param>
523 <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
524 <param name="requiredProtectionLevel">One of the <see cref="T:System.Net.Security.ProtectionLevel"></see> values, indicating the security services for the stream.</param>
525 <param name="allowedImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel"></see> values, indicating how the server can use the client&#39;s credentials to access resources.</param>
526 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the authentication is complete.</param>
527 <param name="asyncState">A user-defined object containing information about the write operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
528 <returns>An <see cref="System.IAsyncResult"></see> object indicating the status of the asynchronous operation.</returns>
529 <exception cref="T:System.ArgumentNullException"><paramref name="credential">credential</paramref> is null.
531 <paramref name="targetName">targetName</paramref> is null.</exception>
532 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
533 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
534 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
536 This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
537 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
539 <member name="M:System.Net.Security.NegotiateStream.BeginAuthenticateAsClient(System.AsyncCallback,System.Object)">
540 <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>
541 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the authentication is complete.</param>
542 <param name="asyncState">A user-defined object containing information about the operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
543 <returns>An <see cref="System.IAsyncResult"></see> object indicating the status of the asynchronous operation.</returns>
544 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
545 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
546 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
547 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
549 This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
551 <member name="M:System.Net.Security.NegotiateStream.BeginAuthenticateAsClient(System.Net.NetworkCredential,System.String,System.AsyncCallback,System.Object)">
552 <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>
553 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the client.</param>
554 <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
555 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the authentication is complete.</param>
556 <param name="asyncState">A user-defined object containing information about the write operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
557 <returns>An <see cref="System.IAsyncResult"></see> object indicating the status of the asynchronous operation.</returns>
558 <exception cref="T:System.ArgumentNullException"><paramref name="credential">credential</paramref> is null.
560 <paramref name="targetName">targetName</paramref> is null.</exception>
561 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
562 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
563 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
564 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
566 This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
568 <member name="M:System.Net.Security.NegotiateStream.BeginAuthenticateAsClient(System.Net.NetworkCredential,System.Security.Authentication.ExtendedProtection.ChannelBinding,System.String,System.AsyncCallback,System.Object)">
569 <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>
570 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the client.</param>
571 <param name="binding">The <see cref="T:System.Security.Authentication.ExtendedProtection.ChannelBinding"></see> that is used for extended protection.</param>
572 <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
573 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the authentication is complete.</param>
574 <param name="asyncState">A user-defined object containing information about the write operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
575 <returns>An <see cref="System.IAsyncResult"></see> object indicating the status of the asynchronous operation.</returns>
576 <exception cref="T:System.ArgumentNullException"><paramref name="credential">credential</paramref> is null.
578 <paramref name="targetName">targetName</paramref> is null.</exception>
579 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
580 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
581 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
583 This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
584 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
586 <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)">
587 <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>
588 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the client.</param>
589 <param name="targetName">The Service Principal Name (SPN) that uniquely identifies the server to authenticate.</param>
590 <param name="requiredProtectionLevel">One of the <see cref="T:System.Net.Security.ProtectionLevel"></see> values, indicating the security services for the stream.</param>
591 <param name="allowedImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel"></see> values, indicating how the server can use the client&#39;s credentials to access resources.</param>
592 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the authentication is complete.</param>
593 <param name="asyncState">A user-defined object containing information about the write operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
594 <returns>An <see cref="System.IAsyncResult"></see> object indicating the status of the asynchronous operation.</returns>
595 <exception cref="T:System.ArgumentNullException"><paramref name="credential">credential</paramref> is null.
597 <paramref name="targetName">targetName</paramref> is null.</exception>
598 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
599 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
600 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
601 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
603 This stream was used previously to attempt authentication as the server. You cannot use the stream to retry authentication as the client.</exception>
605 <member name="M:System.Net.Security.NegotiateStream.BeginAuthenticateAsServer(System.Net.NetworkCredential,System.Net.Security.ProtectionLevel,System.Security.Principal.TokenImpersonationLevel,System.AsyncCallback,System.Object)">
606 <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>
607 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the client.</param>
608 <param name="requiredProtectionLevel">One of the <see cref="T:System.Net.Security.ProtectionLevel"></see> values, indicating the security services for the stream.</param>
609 <param name="requiredImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel"></see> values, indicating how the server can use the client&#39;s credentials to access resources.</param>
610 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the authentication is complete.</param>
611 <param name="asyncState">A user-defined object containing information about the operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
612 <returns>An <see cref="System.IAsyncResult"></see> object indicating the status of the asynchronous operation.</returns>
613 <exception cref="T:System.ArgumentNullException"><paramref name="credential">credential</paramref> is null.</exception>
614 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="requiredImpersonationLevel">requiredImpersonationLevel</paramref> must be <see cref="System.Security.Principal.TokenImpersonationLevel.Identification"></see>, <see cref="System.Security.Principal.TokenImpersonationLevel.Impersonation"></see>, or <see cref="System.Security.Principal.TokenImpersonationLevel.Delegation"></see>,</exception>
615 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
616 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
617 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
618 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
620 This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
621 <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
623 <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)">
624 <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>
625 <param name="credential">The <see cref="T:System.Net.NetworkCredential"></see> that is used to establish the identity of the client.</param>
626 <param name="policy">The <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> that is used for extended protection.</param>
627 <param name="requiredProtectionLevel">One of the <see cref="T:System.Net.Security.ProtectionLevel"></see> values, indicating the security services for the stream.</param>
628 <param name="requiredImpersonationLevel">One of the <see cref="T:System.Security.Principal.TokenImpersonationLevel"></see> values, indicating how the server can use the client&#39;s credentials to access resources.</param>
629 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the authentication is complete.</param>
630 <param name="asyncState">A user-defined object containing information about the write operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
631 <returns>An <see cref="System.IAsyncResult"></see> object indicating the status of the asynchronous operation.</returns>
632 <exception cref="T:System.ArgumentException">The <see cref="System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomChannelBinding"></see> and <see cref="System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomServiceNames"></see> on the extended protection policy passed in the <paramref name="policy">policy</paramref> parameter are both null.</exception>
633 <exception cref="T:System.ArgumentNullException"><paramref name="credential">credential</paramref> is null.</exception>
634 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="requiredImpersonationLevel">requiredImpersonationLevel</paramref> must be <see cref="System.Security.Principal.TokenImpersonationLevel.Identification"></see>, <see cref="System.Security.Principal.TokenImpersonationLevel.Impersonation"></see>, or <see cref="System.Security.Principal.TokenImpersonationLevel.Delegation"></see>,</exception>
635 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
636 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
637 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
639 This stream was used previously to attempt authentication as the client. You cannot use the stream to retry authentication as the server.</exception>
640 <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
641 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
642 <exception cref="T:System.PlatformNotSupportedException">The <paramref name="policy">policy</paramref> parameter was set to <see cref="System.Security.Authentication.ExtendedProtection.PolicyEnforcement.Always"></see> on a platform that does not support extended protection.</exception>
644 <member name="M:System.Net.Security.NegotiateStream.BeginAuthenticateAsServer(System.AsyncCallback,System.Object)">
645 <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>
646 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the authentication is complete.</param>
647 <param name="asyncState">A user-defined object containing information about the operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
648 <returns>An <see cref="System.IAsyncResult"></see> object indicating the status of the asynchronous operation.</returns>
649 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
650 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
651 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
652 <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
654 <member name="M:System.Net.Security.NegotiateStream.BeginAuthenticateAsServer(System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy,System.AsyncCallback,System.Object)">
655 <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>
656 <param name="policy">The <see cref="T:System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy"></see> that is used for extended protection.</param>
657 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the authentication is complete.</param>
658 <param name="asyncState">A user-defined object containing information about the write operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
659 <returns>An <see cref="System.IAsyncResult"></see> object indicating the status of the asynchronous operation.</returns>
660 <exception cref="T:System.ArgumentException">The <see cref="System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomChannelBinding"></see> and <see cref="System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy.CustomServiceNames"></see> on the extended protection policy passed in the <paramref name="policy">policy</paramref> parameter are both null.</exception>
661 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
662 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
663 <exception cref="T:System.NotSupportedException">Windows 95 and Windows 98 are not supported.</exception>
664 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
665 <exception cref="T:System.PlatformNotSupportedException">The <paramref name="policy">policy</paramref> parameter was set to <see cref="System.Security.Authentication.ExtendedProtection.PolicyEnforcement.Always"></see> on a platform that does not support extended protection.</exception>
667 <member name="M:System.Net.Security.NegotiateStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)">
668 <summary>Begins an asynchronous read operation that reads data from the stream and stores it in the specified array.</summary>
669 <param name="buffer">A <see cref="T:System.Byte"></see> array that receives the bytes read from the stream.</param>
670 <param name="offset">The zero-based location in buffer at which to begin storing the data read from this stream.</param>
671 <param name="count">The maximum number of bytes to read from the stream.</param>
672 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the read operation is complete.</param>
673 <param name="asyncState">A user-defined object containing information about the read operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
674 <returns>An <see cref="System.IAsyncResult"></see> object indicating the status of the asynchronous operation.</returns>
675 <exception cref="T:System.ArgumentNullException"><paramref name="buffer">buffer</paramref> is null.</exception>
676 <exception cref="T:System.ArgumentException"><paramref name="offset">offset</paramref> is less than 0.
678 <paramref name="offset">offset</paramref> is greater than the length of <paramref name="buffer">buffer</paramref>.
680 <paramref name="offset">offset</paramref> plus <paramref name="count">count</paramref> is greater than the length of <paramref name="buffer">buffer</paramref>.</exception>
681 <exception cref="T:System.IO.IOException">The read operation failed.
683 Encryption is in use, but the data could not be decrypted.</exception>
684 <exception cref="T:System.NotSupportedException">There is already a read operation in progress.</exception>
685 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
686 <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
688 <member name="M:System.Net.Security.NegotiateStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)">
689 <summary>Begins an asynchronous write operation that writes <see cref="T:System.Byte"></see>s from the specified buffer to the stream.</summary>
690 <param name="buffer">A <see cref="T:System.Byte"></see> array that supplies the bytes to be written to the stream.</param>
691 <param name="offset">The zero-based location in buffer at which to begin reading bytes to be written to the stream.</param>
692 <param name="count">An <see cref="T:System.Int32"></see> value that specifies the number of bytes to read from buffer.</param>
693 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the write operation is complete.</param>
694 <param name="asyncState">A user-defined object containing information about the write operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
695 <returns>An <see cref="System.IAsyncResult"></see> object indicating the status of the asynchronous operation.</returns>
696 <exception cref="T:System.ArgumentNullException"><paramref name="buffer">buffer</paramref> is null.</exception>
697 <exception cref="T:System.ArgumentException"><paramref name="offset is less than 0">offset is less than 0</paramref>.
699 <paramref name="offset">offset</paramref> is greater than the length of <paramref name="buffer">buffer</paramref>.
701 <paramref name="offset">offset</paramref> plus count is greater than the length of <paramref name="buffer">buffer</paramref>.</exception>
702 <exception cref="T:System.IO.IOException">The write operation failed.
704 Encryption is in use, but the data could not be encrypted.</exception>
705 <exception cref="T:System.NotSupportedException">There is already a write operation in progress.</exception>
706 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
707 <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
709 <member name="P:System.Net.Security.NegotiateStream.CanRead">
710 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether the underlying stream is readable.</summary>
711 <returns>true if authentication has occurred and the underlying stream is readable; otherwise, false.</returns>
713 <member name="P:System.Net.Security.NegotiateStream.CanSeek">
714 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether the underlying stream is seekable.</summary>
715 <returns>This property always returns false.</returns>
717 <member name="P:System.Net.Security.NegotiateStream.CanTimeout">
718 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether the underlying stream supports time-outs.</summary>
719 <returns>true if the underlying stream supports time-outs; otherwise, false.</returns>
721 <member name="P:System.Net.Security.NegotiateStream.CanWrite">
722 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether the underlying stream is writable.</summary>
723 <returns>true if authentication has occurred and the underlying stream is writable; otherwise, false.</returns>
725 <member name="M:System.Net.Security.NegotiateStream.Dispose(System.Boolean)">
726 <summary>Releases the unmanaged resources used by the <see cref="T:System.Net.Security.NegotiateStream"></see> and optionally releases the managed resources.</summary>
727 <param name="disposing">true to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
729 <member name="M:System.Net.Security.NegotiateStream.EndAuthenticateAsClient(System.IAsyncResult)">
730 <summary>Ends a pending asynchronous client authentication operation that was started with a call to <see cref="Overload:System.Net.Security.NegotiateStream.BeginAuthenticateAsClient"></see>.</summary>
731 <param name="asyncResult">An <see cref="T:System.IAsyncResult"></see> instance returned by a call to <see cref="Overload:System.Net.Security.NegotiateStream.BeginAuthenticateAsClient"></see>.</param>
732 <exception cref="T:System.ArgumentNullException"><paramref name="asyncResult">asyncResult</paramref> is null.</exception>
733 <exception cref="T:System.ArgumentException"><paramref name="asyncResult">asyncResult</paramref> was not created by a call to <see cref="System.Net.Security.NegotiateStream.BeginAuthenticateAsClient*"></see>.</exception>
734 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
735 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
736 <exception cref="T:System.InvalidOperationException">There is no pending client authentication to complete.</exception>
738 <member name="M:System.Net.Security.NegotiateStream.EndAuthenticateAsServer(System.IAsyncResult)">
739 <summary>Ends a pending asynchronous client authentication operation that was started with a call to <see cref="Overload:System.Net.Security.NegotiateStream.BeginAuthenticateAsServer"></see>.</summary>
740 <param name="asyncResult">An <see cref="T:System.IAsyncResult"></see> instance returned by a call to <see cref="Overload:System.Net.Security.NegotiateStream.BeginAuthenticateAsServer"></see>.</param>
741 <exception cref="T:System.ArgumentNullException"><paramref name="asyncResult">asyncResult</paramref> is null.</exception>
742 <exception cref="T:System.ArgumentException"><paramref name="asyncResult">asyncResult</paramref> was not created by a call to <see cref="System.Net.Security.NegotiateStream.BeginAuthenticateAsServer*"></see>.</exception>
743 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed. You can use this object to retry the authentication.</exception>
744 <exception cref="T:System.Security.Authentication.InvalidCredentialException">The authentication failed. You can use this object to retry the authentication.</exception>
745 <exception cref="T:System.InvalidOperationException">There is no pending authentication to complete.</exception>
747 <member name="M:System.Net.Security.NegotiateStream.EndRead(System.IAsyncResult)">
748 <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)"></see>.</summary>
749 <param name="asyncResult">An <see cref="T:System.IAsyncResult"></see> instance returned by a call to <see cref="M:System.Net.Security.NegotiateStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)"></see></param>
750 <returns>A <see cref="System.Int32"></see> value that specifies the number of bytes read from the underlying stream.</returns>
751 <exception cref="T:System.ArgumentNullException"><paramref name="asyncResult">asyncResult</paramref> is null.</exception>
752 <exception cref="T:System.ArgumentException">The asyncResult was not created by a call to <see cref="System.Net.Security.NegotiateStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)"></see>.</exception>
753 <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
754 <exception cref="T:System.IO.IOException">The read operation failed.</exception>
756 <member name="M:System.Net.Security.NegotiateStream.EndWrite(System.IAsyncResult)">
757 <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)"></see>.</summary>
758 <param name="asyncResult">An <see cref="T:System.IAsyncResult"></see> instance returned by a call to <see cref="M:System.Net.Security.NegotiateStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)"></see></param>
759 <exception cref="T:System.ArgumentNullException"><paramref name="asyncResult">asyncResult</paramref> is null.</exception>
760 <exception cref="T:System.ArgumentException">The asyncResult was not created by a call to <see cref="System.Net.Security.NegotiateStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)"></see>.</exception>
761 <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
762 <exception cref="T:System.IO.IOException">The write operation failed.</exception>
764 <member name="M:System.Net.Security.NegotiateStream.Flush">
765 <summary>Causes any buffered data to be written to the underlying device.</summary>
767 <member name="M:System.Net.Security.NegotiateStream.FlushAsync(System.Threading.CancellationToken)">
768 <param name="cancellationToken"></param>
771 <member name="P:System.Net.Security.NegotiateStream.ImpersonationLevel">
772 <summary>Gets a value that indicates how the server can use the client&#39;s credentials.</summary>
773 <returns>One of the <see cref="System.Security.Principal.TokenImpersonationLevel"></see> values.</returns>
774 <exception cref="T:System.InvalidOperationException">Authentication failed or has not occurred.</exception>
776 <member name="P:System.Net.Security.NegotiateStream.IsAuthenticated">
777 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether authentication was successful.</summary>
778 <returns>true if successful authentication occurred; otherwise, false.</returns>
780 <member name="P:System.Net.Security.NegotiateStream.IsEncrypted">
781 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether this <see cref="T:System.Net.Security.NegotiateStream"></see> uses data encryption.</summary>
782 <returns>true if data is encrypted before being transmitted over the network and decrypted when it reaches the remote endpoint; otherwise, false.</returns>
784 <member name="P:System.Net.Security.NegotiateStream.IsMutuallyAuthenticated">
785 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether both the server and the client have been authenticated.</summary>
786 <returns>true if the server has been authenticated; otherwise, false.</returns>
788 <member name="P:System.Net.Security.NegotiateStream.IsServer">
789 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether the local side of the connection used by this <see cref="T:System.Net.Security.NegotiateStream"></see> was authenticated as the server.</summary>
790 <returns>true if the local endpoint was successfully authenticated as the server side of the authenticated connection; otherwise, false.</returns>
792 <member name="P:System.Net.Security.NegotiateStream.IsSigned">
793 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether the data sent using this stream is signed.</summary>
794 <returns>true if the data is signed before being transmitted; otherwise, false.</returns>
796 <member name="P:System.Net.Security.NegotiateStream.Length">
797 <summary>Gets the length of the underlying stream.</summary>
798 <returns>A <see cref="System.Int64"></see> that specifies the length of the underlying stream.</returns>
799 <exception cref="T:System.NotSupportedException">Getting the value of this property is not supported when the underlying stream is a <see cref="System.Net.Sockets.NetworkStream"></see>.</exception>
801 <member name="P:System.Net.Security.NegotiateStream.Position">
802 <summary>Gets or sets the current position in the underlying stream.</summary>
803 <returns>A <see cref="System.Int64"></see> that specifies the current position in the underlying stream.</returns>
804 <exception cref="T:System.NotSupportedException">Setting this property is not supported.
806 Getting the value of this property is not supported when the underlying stream is a <see cref="System.Net.Sockets.NetworkStream"></see>.</exception>
808 <member name="M:System.Net.Security.NegotiateStream.Read(System.Byte[],System.Int32,System.Int32)">
809 <summary>Reads data from this stream and stores it in the specified array.</summary>
810 <param name="buffer">A <see cref="T:System.Byte"></see> array that receives the bytes read from the stream.</param>
811 <param name="offset">A <see cref="T:System.Int32"></see> containing the zero-based location in buffer at which to begin storing the data read from this stream.</param>
812 <param name="count">A <see cref="T:System.Int32"></see> containing the maximum number of bytes to read from the stream.</param>
813 <returns>A <see cref="System.Int32"></see> value that specifies the number of bytes read from the underlying stream. When there is no more data to be read, returns 0.</returns>
814 <exception cref="T:System.IO.IOException">The read operation failed.</exception>
815 <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
816 <exception cref="T:System.NotSupportedException">A <see cref="System.Net.Security.NegotiateStream.Read(System.Byte[],System.Int32,System.Int32)"></see> operation is already in progress.</exception>
818 <member name="P:System.Net.Security.NegotiateStream.ReadTimeout">
819 <summary>Gets or sets the amount of time a read operation blocks waiting for data.</summary>
820 <returns>A <see cref="System.Int32"></see> that specifies the amount of time that will elapse before a read operation fails.</returns>
822 <member name="P:System.Net.Security.NegotiateStream.RemoteIdentity">
823 <summary>Gets information about the identity of the remote party sharing this authenticated stream.</summary>
824 <returns>An <see cref="System.Security.Principal.IIdentity"></see> object that describes the identity of the remote endpoint.</returns>
825 <exception cref="T:System.InvalidOperationException">Authentication failed or has not occurred.</exception>
827 <member name="M:System.Net.Security.NegotiateStream.Seek(System.Int64,System.IO.SeekOrigin)">
828 <summary>Throws <see cref="T:System.NotSupportedException"></see>.</summary>
829 <param name="offset">This value is ignored.</param>
830 <param name="origin">This value is ignored.</param>
831 <returns>Always throws a <see cref="System.NotSupportedException"></see>.</returns>
832 <exception cref="T:System.NotSupportedException">Seeking is not supported on <see cref="System.Net.Security.NegotiateStream"></see>.</exception>
834 <member name="M:System.Net.Security.NegotiateStream.SetLength(System.Int64)">
835 <summary>Sets the length of the underlying stream.</summary>
836 <param name="value">An <see cref="T:System.Int64"></see> value that specifies the length of the stream.</param>
838 <member name="M:System.Net.Security.NegotiateStream.Write(System.Byte[],System.Int32,System.Int32)">
839 <summary>Write the specified number of <see cref="T:System.Byte"></see>s to the underlying stream using the specified buffer and offset.</summary>
840 <param name="buffer">A <see cref="T:System.Byte"></see> array that supplies the bytes written to the stream.</param>
841 <param name="offset">An <see cref="T:System.Int32"></see> containing the zero-based location in buffer at which to begin reading bytes to be written to the stream.</param>
842 <param name="count">A <see cref="T:System.Int32"></see> containing the number of bytes to read from buffer.</param>
843 <exception cref="T:System.ArgumentNullException"><paramref name="buffer">buffer</paramref> is null.</exception>
844 <exception cref="T:System.ArgumentException"><paramref name="offset is less than 0">offset is less than 0</paramref>.
846 <paramref name="offset">offset</paramref> is greater than the length of <paramref name="buffer">buffer</paramref>.
848 <paramref name="offset">offset</paramref> plus count is greater than the length of <paramref name="buffer">buffer</paramref>.</exception>
849 <exception cref="T:System.IO.IOException">The write operation failed.
851 Encryption is in use, but the data could not be encrypted.</exception>
852 <exception cref="T:System.NotSupportedException">There is already a write operation in progress.</exception>
853 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
854 <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
856 <member name="P:System.Net.Security.NegotiateStream.WriteTimeout">
857 <summary>Gets or sets the amount of time a write operation blocks waiting for data.</summary>
858 <returns>A <see cref="System.Int32"></see> that specifies the amount of time that will elapse before a write operation fails.</returns>
860 <member name="T:System.Net.Security.ProtectionLevel">
861 <summary>Indicates the security services requested for an authenticated stream.</summary>
863 <member name="F:System.Net.Security.ProtectionLevel.EncryptAndSign">
864 <summary>Encrypt and sign data to help ensure the confidentiality and integrity of transmitted data.</summary>
867 <member name="F:System.Net.Security.ProtectionLevel.None">
868 <summary>Authentication only.</summary>
871 <member name="F:System.Net.Security.ProtectionLevel.Sign">
872 <summary>Sign data to help ensure the integrity of transmitted data.</summary>
875 <member name="T:System.Net.Security.RemoteCertificateValidationCallback">
876 <summary>Verifies the remote Secure Sockets Layer (SSL) certificate used for authentication.</summary>
877 <param name="sender">An object that contains state information for this validation.</param>
878 <param name="certificate">The certificate used to authenticate the remote party.</param>
879 <param name="chain">The chain of certificate authorities associated with the remote certificate.</param>
880 <param name="sslPolicyErrors">One or more errors associated with the remote certificate.</param>
881 <returns>A <see cref="System.Boolean"></see> value that determines whether the specified certificate is accepted for authentication.</returns>
883 <member name="T:System.Net.Security.SslStream">
884 <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>
886 <member name="M:System.Net.Security.SslStream.#ctor(System.IO.Stream)">
887 <summary>Initializes a new instance of the <see cref="T:System.Net.Security.SslStream"></see> class using the specified <see cref="T:System.IO.Stream"></see>.</summary>
888 <param name="innerStream">A <see cref="T:System.IO.Stream"></see> object used by the <see cref="T:System.Net.Security.SslStream"></see> for sending and receiving data.</param>
889 <exception cref="T:System.ArgumentException"><paramref name="innerStream">innerStream</paramref> is not readable.
891 <paramref name="innerStream">innerStream</paramref> is not writable.</exception>
892 <exception cref="T:System.ArgumentNullException"><paramref name="innerStream">innerStream</paramref> is null.
894 <paramref name="innerStream">innerStream</paramref> is equal to <see cref="System.IO.Stream.Null"></see>.</exception>
896 <member name="M:System.Net.Security.SslStream.#ctor(System.IO.Stream,System.Boolean)">
897 <summary>Initializes a new instance of the <see cref="T:System.Net.Security.SslStream"></see> class using the specified <see cref="T:System.IO.Stream"></see> and stream closure behavior.</summary>
898 <param name="innerStream">A <see cref="T:System.IO.Stream"></see> object used by the <see cref="T:System.Net.Security.SslStream"></see> for sending and receiving data.</param>
899 <param name="leaveInnerStreamOpen">A Boolean value that indicates the closure behavior of the <see cref="T:System.IO.Stream"></see> object used by the <see cref="T:System.Net.Security.SslStream"></see> for sending and receiving data. This parameter indicates if the inner stream is left open.</param>
900 <exception cref="T:System.ArgumentException"><paramref name="innerStream">innerStream</paramref> is not readable.
902 <paramref name="innerStream">innerStream</paramref> is not writable.</exception>
903 <exception cref="T:System.ArgumentNullException"><paramref name="innerStream">innerStream</paramref> is null.
905 <paramref name="innerStream">innerStream</paramref> is equal to <see cref="System.IO.Stream.Null"></see>.</exception>
907 <member name="M:System.Net.Security.SslStream.#ctor(System.IO.Stream,System.Boolean,System.Net.Security.RemoteCertificateValidationCallback)">
908 <summary>Initializes a new instance of the <see cref="T:System.Net.Security.SslStream"></see> class using the specified <see cref="T:System.IO.Stream"></see>, stream closure behavior and certificate validation delegate.</summary>
909 <param name="innerStream">A <see cref="T:System.IO.Stream"></see> object used by the <see cref="T:System.Net.Security.SslStream"></see> for sending and receiving data.</param>
910 <param name="leaveInnerStreamOpen">A Boolean value that indicates the closure behavior of the <see cref="T:System.IO.Stream"></see> object used by the <see cref="T:System.Net.Security.SslStream"></see> for sending and receiving data. This parameter indicates if the inner stream is left open.</param>
911 <param name="userCertificateValidationCallback">A <see cref="T:System.Net.Security.RemoteCertificateValidationCallback"></see> delegate responsible for validating the certificate supplied by the remote party.</param>
912 <exception cref="T:System.ArgumentException"><paramref name="innerStream">innerStream</paramref> is not readable.
914 <paramref name="innerStream">innerStream</paramref> is not writable.</exception>
915 <exception cref="T:System.ArgumentNullException"><paramref name="innerStream">innerStream</paramref> is null.
917 <paramref name="innerStream">innerStream</paramref> is equal to <see cref="System.IO.Stream.Null"></see>.</exception>
919 <member name="M:System.Net.Security.SslStream.#ctor(System.IO.Stream,System.Boolean,System.Net.Security.RemoteCertificateValidationCallback,System.Net.Security.LocalCertificateSelectionCallback)">
920 <summary>Initializes a new instance of the <see cref="T:System.Net.Security.SslStream"></see> class using the specified <see cref="T:System.IO.Stream"></see>, stream closure behavior, certificate validation delegate and certificate selection delegate.</summary>
921 <param name="innerStream">A <see cref="T:System.IO.Stream"></see> object used by the <see cref="T:System.Net.Security.SslStream"></see> for sending and receiving data.</param>
922 <param name="leaveInnerStreamOpen">A Boolean value that indicates the closure behavior of the <see cref="T:System.IO.Stream"></see> object used by the <see cref="T:System.Net.Security.SslStream"></see> for sending and receiving data. This parameter indicates if the inner stream is left open.</param>
923 <param name="userCertificateValidationCallback">A <see cref="T:System.Net.Security.RemoteCertificateValidationCallback"></see> delegate responsible for validating the certificate supplied by the remote party.</param>
924 <param name="userCertificateSelectionCallback">A <see cref="T:System.Net.Security.LocalCertificateSelectionCallback"></see> delegate responsible for selecting the certificate used for authentication.</param>
925 <exception cref="T:System.ArgumentException"><paramref name="innerStream">innerStream</paramref> is not readable.
927 <paramref name="innerStream">innerStream</paramref> is not writable.</exception>
928 <exception cref="T:System.ArgumentNullException"><paramref name="innerStream">innerStream</paramref> is null.
930 <paramref name="innerStream">innerStream</paramref> is equal to <see cref="System.IO.Stream.Null"></see>.</exception>
932 <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)">
933 <summary>Initializes a new instance of the <see cref="T:System.Net.Security.SslStream"></see> class using the specified <see cref="T:System.IO.Stream"></see></summary>
934 <param name="innerStream">A <see cref="T:System.IO.Stream"></see> object used by the <see cref="T:System.Net.Security.SslStream"></see> for sending and receiving data.</param>
935 <param name="leaveInnerStreamOpen">A Boolean value that indicates the closure behavior of the <see cref="T:System.IO.Stream"></see> object used by the <see cref="T:System.Net.Security.SslStream"></see> for sending and receiving data. This parameter indicates if the inner stream is left open.</param>
936 <param name="userCertificateValidationCallback">A <see cref="T:System.Net.Security.RemoteCertificateValidationCallback"></see> delegate responsible for validating the certificate supplied by the remote party.</param>
937 <param name="userCertificateSelectionCallback">A <see cref="T:System.Net.Security.LocalCertificateSelectionCallback"></see> delegate responsible for selecting the certificate used for authentication.</param>
938 <param name="encryptionPolicy">The <see cref="T:System.Net.Security.EncryptionPolicy"></see> to use.</param>
939 <exception cref="T:System.ArgumentException"><paramref name="innerStream">innerStream</paramref> is not readable.
941 <paramref name="innerStream">innerStream</paramref> is not writable.
943 <paramref name="encryptionPolicy">encryptionPolicy</paramref> is not valid.</exception>
944 <exception cref="T:System.ArgumentNullException"><paramref name="innerStream">innerStream</paramref> is null.
946 <paramref name="innerStream">innerStream</paramref> is equal to <see cref="System.IO.Stream.Null"></see>.</exception>
948 <member name="M:System.Net.Security.SslStream.AuthenticateAsClient(System.String)">
949 <summary>Called by clients to authenticate the server and optionally the client in a client-server connection.</summary>
950 <param name="targetHost">The name of the server that shares this <see cref="T:System.Net.Security.SslStream"></see>.</param>
951 <exception cref="T:System.ArgumentNullException"><paramref name="targetHost">targetHost</paramref> is null.</exception>
952 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
953 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
955 Server authentication using this <see cref="System.Net.Security.SslStream"></see> was tried previously.
957 Authentication is already in progress.</exception>
958 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
960 <member name="M:System.Net.Security.SslStream.AuthenticateAsClient(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Boolean)">
961 <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 the system default SSL protocol.</summary>
962 <param name="targetHost">The name of the server that will share this <see cref="T:System.Net.Security.SslStream"></see>.</param>
963 <param name="clientCertificates">The <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection"></see> that contains client certificates.</param>
964 <param name="checkCertificateRevocation">A <see cref="T:System.Boolean"></see> value that specifies whether the certificate revocation list is checked during authentication.</param>
966 <member name="M:System.Net.Security.SslStream.AuthenticateAsClient(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Security.Authentication.SslProtocols,System.Boolean)">
967 <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>
968 <param name="targetHost">The name of the server that will share this <see cref="T:System.Net.Security.SslStream"></see>.</param>
969 <param name="clientCertificates">The <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection"></see> that contains client certificates.</param>
970 <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols"></see> value that represents the protocol used for authentication.</param>
971 <param name="checkCertificateRevocation">A <see cref="T:System.Boolean"></see> value that specifies whether the certificate revocation list is checked during authentication.</param>
973 <member name="M:System.Net.Security.SslStream.AuthenticateAsClientAsync(System.String)">
974 <summary>Called by clients to authenticate the server and optionally the client in a client-server connection as an asynchronous operation.</summary>
975 <param name="targetHost">The name of the server that shares this <see cref="T:System.Net.Security.SslStream"></see>.</param>
976 <returns>Returns <see cref="System.Threading.Tasks.Task"></see>
977 The task object representing the asynchronous operation.</returns>
978 <exception cref="T:System.ArgumentNullException"><paramref name="targetHost">targetHost</paramref> is null.</exception>
979 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
980 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
982 Server authentication using this <see cref="System.Net.Security.SslStream"></see> was tried previously.
984 Authentication is already in progress.</exception>
985 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
987 <member name="M:System.Net.Security.SslStream.AuthenticateAsClientAsync(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Boolean)">
988 <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>
989 <param name="targetHost">The name of the server that will share this <see cref="T:System.Net.Security.SslStream"></see>.</param>
990 <param name="clientCertificates">The <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection"></see> that contains client certificates.</param>
991 <param name="checkCertificateRevocation">A <see cref="T:System.Boolean"></see> value that specifies whether the certificate revocation list is checked during authentication.</param>
992 <returns>The task object representing the asynchronous operation.</returns>
994 <member name="M:System.Net.Security.SslStream.AuthenticateAsClientAsync(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Security.Authentication.SslProtocols,System.Boolean)">
995 <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>
996 <param name="targetHost">The name of the server that will share this <see cref="T:System.Net.Security.SslStream"></see>.</param>
997 <param name="clientCertificates">The <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection"></see> that contains client certificates.</param>
998 <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols"></see> value that represents the protocol used for authentication.</param>
999 <param name="checkCertificateRevocation">A <see cref="T:System.Boolean"></see> value that specifies whether the certificate revocation list is checked during authentication.</param>
1000 <returns>Returns <see cref="System.Threading.Tasks.Task"></see>
1001 The task object representing the asynchronous operation.</returns>
1003 <member name="M:System.Net.Security.SslStream.AuthenticateAsServer(System.Security.Cryptography.X509Certificates.X509Certificate)">
1004 <summary>Called by servers to authenticate the server and optionally the client in a client-server connection using the specified certificate.</summary>
1005 <param name="serverCertificate">The certificate used to authenticate the server.</param>
1006 <exception cref="T:System.ArgumentNullException"><paramref name="serverCertificate">serverCertificate</paramref> is null.</exception>
1007 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
1008 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
1010 Client authentication using this <see cref="System.Net.Security.SslStream"></see> was tried previously.
1012 Authentication is already in progress.</exception>
1013 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
1014 <exception cref="T:System.PlatformNotSupportedException">The <see cref="System.Net.Security.SslStream.AuthenticateAsServer*"></see> method is not supported on Windows 95, Windows 98, or Windows Millennium.</exception>
1016 <member name="M:System.Net.Security.SslStream.AuthenticateAsServer(System.Security.Cryptography.X509Certificates.X509Certificate,System.Boolean,System.Boolean)">
1017 <summary>Called by servers to authenticate the server and optionally the client in a client-server connection using the specified certificates and requirements, and using the sytem default security protocol.</summary>
1018 <param name="serverCertificate">The X509Certificate used to authenticate the server.</param>
1019 <param name="clientCertificateRequired">A <see cref="T:System.Boolean"></see> 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>
1020 <param name="checkCertificateRevocation">A <see cref="T:System.Boolean"></see> value that specifies whether the certificate revocation list is checked during authentication.</param>
1021 <exception cref="T:System.ArgumentNullException"><paramref name="serverCertificate">serverCertificate</paramref> is null.</exception>
1022 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
1023 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
1025 Client authentication using this <see cref="System.Net.Security.SslStream"></see> was tried previously.
1027 Authentication is already in progress.</exception>
1028 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
1029 <exception cref="T:System.PlatformNotSupportedException">The <see cref="System.Net.Security.SslStream.AuthenticateAsServer*"></see> method is not supported on Windows 95, Windows 98, or Windows Millennium.</exception>
1031 <member name="M:System.Net.Security.SslStream.AuthenticateAsServer(System.Security.Cryptography.X509Certificates.X509Certificate,System.Boolean,System.Security.Authentication.SslProtocols,System.Boolean)">
1032 <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>
1033 <param name="serverCertificate">The X509Certificate used to authenticate the server.</param>
1034 <param name="clientCertificateRequired">A <see cref="T:System.Boolean"></see> 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>
1035 <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols"></see> value that represents the protocol used for authentication.</param>
1036 <param name="checkCertificateRevocation">A <see cref="T:System.Boolean"></see> value that specifies whether the certificate revocation list is checked during authentication.</param>
1037 <exception cref="T:System.ArgumentNullException"><paramref name="serverCertificate">serverCertificate</paramref> is null.</exception>
1038 <exception cref="T:System.ArgumentException"><paramref name="enabledSslProtocols">enabledSslProtocols</paramref> is not a valid <see cref="System.Security.Authentication.SslProtocols"></see> value.</exception>
1039 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
1040 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
1042 Client authentication using this <see cref="System.Net.Security.SslStream"></see> was tried previously.
1044 Authentication is already in progress.</exception>
1045 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
1046 <exception cref="T:System.PlatformNotSupportedException">The <see cref="System.Net.Security.SslStream.AuthenticateAsServer*"></see> method is not supported on Windows 95, Windows 98, or Windows Millennium.</exception>
1048 <member name="M:System.Net.Security.SslStream.AuthenticateAsServerAsync(System.Security.Cryptography.X509Certificates.X509Certificate,System.Boolean,System.Security.Authentication.SslProtocols,System.Boolean)">
1049 <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>
1050 <param name="serverCertificate">The X509Certificate used to authenticate the server.</param>
1051 <param name="clientCertificateRequired">A <see cref="T:System.Boolean"></see> 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>
1052 <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols"></see> value that represents the protocol used for authentication.</param>
1053 <param name="checkCertificateRevocation">A <see cref="T:System.Boolean"></see> value that specifies whether the certificate revocation list is checked during authentication.</param>
1054 <returns>Returns <see cref="System.Threading.Tasks.Task"></see>
1055 The task object representing the asynchronous operation.</returns>
1057 <member name="M:System.Net.Security.SslStream.AuthenticateAsServerAsync(System.Security.Cryptography.X509Certificates.X509Certificate)">
1058 <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>
1059 <param name="serverCertificate">The certificate used to authenticate the server.</param>
1060 <returns>Returns <see cref="System.Threading.Tasks.Task"></see>
1061 The task object representing the asynchronous operation.</returns>
1062 <exception cref="T:System.ArgumentNullException"><paramref name="serverCertificate">serverCertificate</paramref> is null.</exception>
1063 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
1064 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
1066 Client authentication using this <see cref="System.Net.Security.SslStream"></see> was tried previously.
1068 Authentication is already in progress.</exception>
1069 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
1070 <exception cref="T:System.PlatformNotSupportedException">The <see cref="System.Net.Security.SslStream.AuthenticateAsServerAsync*"></see> method is not supported on Windows 95, Windows 98, or Windows Millennium.</exception>
1072 <member name="M:System.Net.Security.SslStream.AuthenticateAsServerAsync(System.Security.Cryptography.X509Certificates.X509Certificate,System.Boolean,System.Boolean)">
1073 <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>
1074 <param name="serverCertificate">The X509Certificate used to authenticate the server.</param>
1075 <param name="clientCertificateRequired">A <see cref="T:System.Boolean"></see> 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>
1076 <param name="checkCertificateRevocation">A <see cref="T:System.Boolean"></see> value that specifies whether the certificate revocation list is checked during authentication.</param>
1077 <returns>The task object representing the asynchronous operation.</returns>
1079 <member name="M:System.Net.Security.SslStream.BeginAuthenticateAsClient(System.String,System.AsyncCallback,System.Object)">
1080 <summary>Called by clients to begin an asynchronous operation to authenticate the server and optionally the client.</summary>
1081 <param name="targetHost">The name of the server that shares this <see cref="T:System.Net.Security.SslStream"></see>.</param>
1082 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the authentication is complete.</param>
1083 <param name="asyncState">A user-defined object that contains information about the operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
1084 <returns>An <see cref="System.IAsyncResult"></see> object that indicates the status of the asynchronous operation.</returns>
1085 <exception cref="T:System.ArgumentNullException"><paramref name="targetHost">targetHost</paramref> is null.</exception>
1086 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
1087 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
1089 Server authentication using this <see cref="System.Net.Security.SslStream"></see> was tried previously.
1091 Authentication is already in progress.</exception>
1092 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
1094 <member name="M:System.Net.Security.SslStream.BeginAuthenticateAsClient(System.String,System.Security.Cryptography.X509Certificates.X509CertificateCollection,System.Boolean,System.AsyncCallback,System.Object)">
1095 <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>
1096 <param name="targetHost">The name of the server that shares this <see cref="T:System.Net.Security.SslStream"></see>.</param>
1097 <param name="clientCertificates">The <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection"></see> containing client certificates.</param>
1098 <param name="checkCertificateRevocation">A <see cref="T:System.Boolean"></see> value that specifies whether the certificate revocation list is checked during authentication.</param>
1099 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the authentication is complete.</param>
1100 <param name="asyncState">A user-defined object that contains information about the operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
1101 <returns>An <see cref="System.IAsyncResult"></see> object that indicates the status of the asynchronous operation.</returns>
1102 <exception cref="T:System.ArgumentNullException"><paramref name="targetHost">targetHost</paramref> is null.</exception>
1103 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
1104 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
1106 Server authentication using this <see cref="System.Net.Security.SslStream"></see> was tried previously.
1108 Authentication is already in progress.</exception>
1109 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
1111 <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)">
1112 <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>
1113 <param name="targetHost">The name of the server that shares this <see cref="T:System.Net.Security.SslStream"></see>.</param>
1114 <param name="clientCertificates">The <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection"></see> containing client certificates.</param>
1115 <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols"></see> value that represents the protocol used for authentication.</param>
1116 <param name="checkCertificateRevocation">A <see cref="T:System.Boolean"></see> value that specifies whether the certificate revocation list is checked during authentication.</param>
1117 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the authentication is complete.</param>
1118 <param name="asyncState">A user-defined object that contains information about the operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
1119 <returns>An <see cref="System.IAsyncResult"></see> object that indicates the status of the asynchronous operation.</returns>
1120 <exception cref="T:System.ArgumentNullException"><paramref name="targetHost">targetHost</paramref> is null.</exception>
1121 <exception cref="T:System.ArgumentException"><paramref name="enabledSslProtocols">enabledSslProtocols</paramref> is not a valid <see cref="System.Security.Authentication.SslProtocols"></see> value.</exception>
1122 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
1123 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
1125 Server authentication using this <see cref="System.Net.Security.SslStream"></see> was tried previously.
1127 Authentication is already in progress.</exception>
1128 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
1130 <member name="M:System.Net.Security.SslStream.BeginAuthenticateAsServer(System.Security.Cryptography.X509Certificates.X509Certificate,System.AsyncCallback,System.Object)">
1131 <summary>Called by servers to begin an asynchronous operation to authenticate the client and optionally the server in a client-server connection.</summary>
1132 <param name="serverCertificate">The X509Certificate used to authenticate the server.</param>
1133 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the authentication is complete.</param>
1134 <param name="asyncState">A user-defined object that contains information about the operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
1135 <returns>An <see cref="System.IAsyncResult"></see> object indicating the status of the asynchronous operation.</returns>
1136 <exception cref="T:System.ArgumentNullException"><paramref name="serverCertificate">serverCertificate</paramref> is null.</exception>
1137 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
1138 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
1140 Client authentication using this <see cref="System.Net.Security.SslStream"></see> was tried previously.
1142 Authentication is already in progress.</exception>
1143 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
1144 <exception cref="T:System.PlatformNotSupportedException">The <see cref="System.Net.Security.SslStream.BeginAuthenticateAsServer*"></see> method is not supported on Windows 95, Windows 98, or Windows Millennium.</exception>
1146 <member name="M:System.Net.Security.SslStream.BeginAuthenticateAsServer(System.Security.Cryptography.X509Certificates.X509Certificate,System.Boolean,System.Boolean,System.AsyncCallback,System.Object)">
1147 <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>
1148 <param name="serverCertificate">The X509Certificate used to authenticate the server.</param>
1149 <param name="clientCertificateRequired">A <see cref="T:System.Boolean"></see> 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>
1150 <param name="checkCertificateRevocation">A <see cref="T:System.Boolean"></see> value that specifies whether the certificate revocation list is checked during authentication.</param>
1151 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the authentication is complete.</param>
1152 <param name="asyncState">A user-defined object that contains information about the operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
1153 <returns>An <see cref="System.IAsyncResult"></see> object that indicates the status of the asynchronous operation.</returns>
1154 <exception cref="T:System.ArgumentNullException"><paramref name="serverCertificate">serverCertificate</paramref> is null.</exception>
1155 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
1156 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
1158 Server authentication using this <see cref="System.Net.Security.SslStream"></see> was tried previously.
1160 Authentication is already in progress.</exception>
1161 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
1162 <exception cref="T:System.PlatformNotSupportedException">The <see cref="System.Net.Security.SslStream.BeginAuthenticateAsServer*"></see> method is not supported on Windows 95, Windows 98, or Windows Millennium.</exception>
1164 <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)">
1165 <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>
1166 <param name="serverCertificate">The X509Certificate used to authenticate the server.</param>
1167 <param name="clientCertificateRequired">A <see cref="T:System.Boolean"></see> 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>
1168 <param name="enabledSslProtocols">The <see cref="T:System.Security.Authentication.SslProtocols"></see> value that represents the protocol used for authentication.</param>
1169 <param name="checkCertificateRevocation">A <see cref="T:System.Boolean"></see> value that specifies whether the certificate revocation list is checked during authentication.</param>
1170 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the authentication is complete.</param>
1171 <param name="asyncState">A user-defined object that contains information about the operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
1172 <returns>An <see cref="System.IAsyncResult"></see> object that indicates the status of the asynchronous operation.</returns>
1173 <exception cref="T:System.ArgumentNullException"><paramref name="serverCertificate">serverCertificate</paramref> is null.</exception>
1174 <exception cref="T:System.ArgumentException"><paramref name="enabledSslProtocols">enabledSslProtocols</paramref> is not a valid <see cref="System.Security.Authentication.SslProtocols"></see> value.</exception>
1175 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
1176 <exception cref="T:System.InvalidOperationException">Authentication has already occurred.
1178 Server authentication using this <see cref="System.Net.Security.SslStream"></see> was tried previously.
1180 Authentication is already in progress.</exception>
1181 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
1182 <exception cref="T:System.PlatformNotSupportedException">The <see cref="System.Net.Security.SslStream.BeginAuthenticateAsServer*"></see> method is not supported on Windows 95, Windows 98, or Windows Millennium.</exception>
1184 <member name="M:System.Net.Security.SslStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)">
1185 <summary>Begins an asynchronous read operation that reads data from the stream and stores it in the specified array.</summary>
1186 <param name="buffer">A <see cref="T:System.Byte"></see> array that receives the bytes read from the stream.</param>
1187 <param name="offset">The zero-based location in buffer at which to begin storing the data read from this stream.</param>
1188 <param name="count">The maximum number of bytes to read from the stream.</param>
1189 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the read operation is complete.</param>
1190 <param name="asyncState">A user-defined object that contains information about the read operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
1191 <returns>An <see cref="System.IAsyncResult"></see> object that indicates the status of the asynchronous operation.</returns>
1192 <exception cref="T:System.ArgumentNullException"><paramref name="buffer">buffer</paramref> is null.</exception>
1193 <exception cref="T:System.ArgumentException"><paramref name="offset">offset</paramref>
1194 <paramref name="&lt;">&lt;</paramref>
1195 <paramref name="0">0</paramref>.
1196 <paramref name="-or-">-or-</paramref><paramref name="offset">offset</paramref> &gt; the length of <paramref name="buffer">buffer</paramref>.
1198 <paramref name="offset">offset</paramref> + count &gt; the length of <paramref name="buffer">buffer</paramref>.</exception>
1199 <exception cref="T:System.IO.IOException">The read operation failed.
1201 Encryption is in use, but the data could not be decrypted.</exception>
1202 <exception cref="T:System.NotSupportedException">There is already a read operation in progress.</exception>
1203 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
1204 <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
1206 <member name="M:System.Net.Security.SslStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)">
1207 <summary>Begins an asynchronous write operation that writes <see cref="T:System.Byte"></see>s from the specified buffer to the stream.</summary>
1208 <param name="buffer">A <see cref="T:System.Byte"></see> array that supplies the bytes to be written to the stream.</param>
1209 <param name="offset">The zero-based location in buffer at which to begin reading bytes to be written to the stream.</param>
1210 <param name="count">An <see cref="T:System.Int32"></see> value that specifies the number of bytes to read from buffer.</param>
1211 <param name="asyncCallback">An <see cref="T:System.AsyncCallback"></see> delegate that references the method to invoke when the write operation is complete.</param>
1212 <param name="asyncState">A user-defined object that contains information about the write operation. This object is passed to the asyncCallback delegate when the operation completes.</param>
1213 <returns>An <see cref="System.IAsyncResult"></see> object indicating the status of the asynchronous operation.</returns>
1214 <exception cref="T:System.ArgumentNullException"><paramref name="buffer">buffer</paramref> is null.</exception>
1215 <exception cref="T:System.ArgumentException"><paramref name="offset">offset</paramref>
1216 <paramref name="&lt;">&lt;</paramref>
1217 <paramref name="0">0</paramref>.
1218 <paramref name="-or-">-or-</paramref><paramref name="offset">offset</paramref> &gt; the length of <paramref name="buffer">buffer</paramref>.
1220 <paramref name="offset">offset</paramref> + count &gt; the length of <paramref name="buffer">buffer</paramref>.</exception>
1221 <exception cref="T:System.IO.IOException">The write operation failed.</exception>
1222 <exception cref="T:System.NotSupportedException">There is already a write operation in progress.</exception>
1223 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
1224 <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
1226 <member name="P:System.Net.Security.SslStream.CanRead">
1227 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether the underlying stream is readable.</summary>
1228 <returns>true if authentication has occurred and the underlying stream is readable; otherwise false.</returns>
1230 <member name="P:System.Net.Security.SslStream.CanSeek">
1231 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether the underlying stream is seekable.</summary>
1232 <returns>This property always returns false.</returns>
1234 <member name="P:System.Net.Security.SslStream.CanTimeout">
1235 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether the underlying stream supports time-outs.</summary>
1236 <returns>true if the underlying stream supports time-outs; otherwise, false.</returns>
1238 <member name="P:System.Net.Security.SslStream.CanWrite">
1239 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether the underlying stream is writable.</summary>
1240 <returns>true if authentication has occurred and the underlying stream is writable; otherwise false.</returns>
1242 <member name="P:System.Net.Security.SslStream.CheckCertRevocationStatus">
1243 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether the certificate revocation list is checked during the certificate validation process.</summary>
1244 <returns>true if the certificate revocation list is checked; otherwise, false.</returns>
1246 <member name="P:System.Net.Security.SslStream.CipherAlgorithm">
1247 <summary>Gets a value that identifies the bulk encryption algorithm used by this <see cref="T:System.Net.Security.SslStream"></see>.</summary>
1248 <returns>A <see cref="System.Security.Authentication.CipherAlgorithmType"></see> value.</returns>
1249 <exception cref="T:System.InvalidOperationException">The <see cref="System.Net.Security.SslStream.CipherAlgorithm"></see> property was accessed before the completion of the authentication process or the authentication process failed.</exception>
1251 <member name="P:System.Net.Security.SslStream.CipherStrength">
1252 <summary>Gets a value that identifies the strength of the cipher algorithm used by this <see cref="T:System.Net.Security.SslStream"></see>.</summary>
1253 <returns>An <see cref="System.Int32"></see> value that specifies the strength of the algorithm, in bits.</returns>
1255 <member name="M:System.Net.Security.SslStream.Dispose(System.Boolean)">
1256 <summary>Releases the unmanaged resources used by the <see cref="T:System.Net.Security.SslStream"></see> and optionally releases the managed resources.</summary>
1257 <param name="disposing">true to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
1259 <member name="M:System.Net.Security.SslStream.EndAuthenticateAsClient(System.IAsyncResult)">
1260 <summary>Ends a pending asynchronous server authentication operation started with a previous call to <see cref="Overload:System.Net.Security.SslStream.BeginAuthenticateAsServer"></see>.</summary>
1261 <param name="asyncResult">An <see cref="T:System.IAsyncResult"></see> instance returned by a call to <see cref="Overload:System.Net.Security.SslStream.BeginAuthenticateAsServer"></see>.</param>
1262 <exception cref="T:System.ArgumentNullException"><paramref name="asyncResult">asyncResult</paramref> is null.</exception>
1263 <exception cref="T:System.ArgumentException"><paramref name="asyncResult">asyncResult</paramref> was not created by a call to <see cref="System.Net.Security.SslStream.BeginAuthenticateAsServer*"></see>.</exception>
1264 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
1265 <exception cref="T:System.InvalidOperationException">There is no pending server authentication to complete.</exception>
1267 <member name="M:System.Net.Security.SslStream.EndAuthenticateAsServer(System.IAsyncResult)">
1268 <summary>Ends a pending asynchronous client authentication operation started with a previous call to <see cref="Overload:System.Net.Security.SslStream.BeginAuthenticateAsClient"></see>.</summary>
1269 <param name="asyncResult">An <see cref="T:System.IAsyncResult"></see> instance returned by a call to <see cref="Overload:System.Net.Security.SslStream.BeginAuthenticateAsClient"></see>.</param>
1270 <exception cref="T:System.ArgumentNullException"><paramref name="asyncResult">asyncResult</paramref> is null.</exception>
1271 <exception cref="T:System.ArgumentException"><paramref name="asyncResult">asyncResult</paramref> was not created by a call to <see cref="System.Net.Security.SslStream.BeginAuthenticateAsClient*"></see>.</exception>
1272 <exception cref="T:System.Security.Authentication.AuthenticationException">The authentication failed and left this object in an unusable state.</exception>
1273 <exception cref="T:System.InvalidOperationException">There is no pending client authentication to complete.</exception>
1275 <member name="M:System.Net.Security.SslStream.EndRead(System.IAsyncResult)">
1276 <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)"></see>.</summary>
1277 <param name="asyncResult">An <see cref="T:System.IAsyncResult"></see> instance returned by a call to <see cref="M:System.Net.Security.SslStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)"></see></param>
1278 <returns>A <see cref="System.Int32"></see> value that specifies the number of bytes read from the underlying stream.</returns>
1279 <exception cref="T:System.ArgumentNullException"><paramref name="asyncResult">asyncResult</paramref> is null.</exception>
1280 <exception cref="T:System.ArgumentException"><paramref name="asyncResult">asyncResult</paramref> was not created by a call to <see cref="System.Net.Security.SslStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)"></see>.</exception>
1281 <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
1282 <exception cref="T:System.IO.IOException">The read operation failed.</exception>
1284 <member name="M:System.Net.Security.SslStream.EndWrite(System.IAsyncResult)">
1285 <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)"></see>.</summary>
1286 <param name="asyncResult">An <see cref="T:System.IAsyncResult"></see> instance returned by a call to <see cref="M:System.Net.Security.SslStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)"></see></param>
1287 <exception cref="T:System.ArgumentNullException"><paramref name="asyncResult">asyncResult</paramref> is null.</exception>
1288 <exception cref="T:System.ArgumentException"><paramref name="asyncResult">asyncResult</paramref> was not created by a call to <see cref="System.Net.Security.SslStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)"></see>.</exception>
1289 <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
1290 <exception cref="T:System.IO.IOException">The write operation failed.</exception>
1292 <member name="M:System.Net.Security.SslStream.Flush">
1293 <summary>Causes any buffered data to be written to the underlying device.</summary>
1295 <member name="M:System.Net.Security.SslStream.FlushAsync(System.Threading.CancellationToken)">
1296 <param name="cancellationToken"></param>
1299 <member name="P:System.Net.Security.SslStream.HashAlgorithm">
1300 <summary>Gets the algorithm used for generating message authentication codes (MACs).</summary>
1301 <returns>A <see cref="System.Security.Authentication.HashAlgorithmType"></see> value.</returns>
1302 <exception cref="T:System.InvalidOperationException">The <see cref="System.Net.Security.SslStream.HashAlgorithm"></see> property was accessed before the completion of the authentication process or the authentication process failed.</exception>
1304 <member name="P:System.Net.Security.SslStream.HashStrength">
1305 <summary>Gets a value that identifies the strength of the hash algorithm used by this instance.</summary>
1306 <returns>An <see cref="System.Int32"></see> value that specifies the strength of the <see cref="System.Security.Authentication.HashAlgorithmType"></see> algorithm, in bits. Valid values are 128 or 160.</returns>
1308 <member name="P:System.Net.Security.SslStream.IsAuthenticated">
1309 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether authentication was successful.</summary>
1310 <returns>true if successful authentication occurred; otherwise, false.</returns>
1312 <member name="P:System.Net.Security.SslStream.IsEncrypted">
1313 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether this <see cref="T:System.Net.Security.SslStream"></see> uses data encryption.</summary>
1314 <returns>true if data is encrypted before being transmitted over the network and decrypted when it reaches the remote endpoint; otherwise false.</returns>
1316 <member name="P:System.Net.Security.SslStream.IsMutuallyAuthenticated">
1317 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether both server and client have been authenticated.</summary>
1318 <returns>true if the server has been authenticated; otherwise false.</returns>
1320 <member name="P:System.Net.Security.SslStream.IsServer">
1321 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether the local side of the connection used by this <see cref="T:System.Net.Security.SslStream"></see> was authenticated as the server.</summary>
1322 <returns>true if the local endpoint was successfully authenticated as the server side of the authenticated connection; otherwise false.</returns>
1324 <member name="P:System.Net.Security.SslStream.IsSigned">
1325 <summary>Gets a <see cref="T:System.Boolean"></see> value that indicates whether the data sent using this stream is signed.</summary>
1326 <returns>true if the data is signed before being transmitted; otherwise false.</returns>
1328 <member name="P:System.Net.Security.SslStream.KeyExchangeAlgorithm">
1329 <summary>Gets the key exchange algorithm used by this <see cref="T:System.Net.Security.SslStream"></see>.</summary>
1330 <returns>An <see cref="System.Security.Authentication.ExchangeAlgorithmType"></see> value.</returns>
1332 <member name="P:System.Net.Security.SslStream.KeyExchangeStrength">
1333 <summary>Gets a value that identifies the strength of the key exchange algorithm used by this instance.</summary>
1334 <returns>An <see cref="System.Int32"></see> value that specifies the strength of the <see cref="System.Security.Authentication.ExchangeAlgorithmType"></see> algorithm, in bits.</returns>
1336 <member name="P:System.Net.Security.SslStream.Length">
1337 <summary>Gets the length of the underlying stream.</summary>
1338 <returns>A <see cref="System.Int64"></see>.
1339 The length of the underlying stream.</returns>
1340 <exception cref="T:System.NotSupportedException">Getting the value of this property is not supported when the underlying stream is a <see cref="System.Net.Sockets.NetworkStream"></see>.</exception>
1342 <member name="P:System.Net.Security.SslStream.LocalCertificate">
1343 <summary>Gets the certificate used to authenticate the local endpoint.</summary>
1344 <returns>An X509Certificate object that represents the certificate supplied for authentication or null if no certificate was supplied.</returns>
1345 <exception cref="T:System.InvalidOperationException">Authentication failed or has not occurred.</exception>
1347 <member name="P:System.Net.Security.SslStream.Position">
1348 <summary>Gets or sets the current position in the underlying stream.</summary>
1349 <returns>A <see cref="System.Int64"></see>.
1350 The current position in the underlying stream.</returns>
1351 <exception cref="T:System.NotSupportedException">Setting this property is not supported.
1353 Getting the value of this property is not supported when the underlying stream is a <see cref="System.Net.Sockets.NetworkStream"></see>.</exception>
1355 <member name="M:System.Net.Security.SslStream.Read(System.Byte[],System.Int32,System.Int32)">
1356 <summary>Reads data from this stream and stores it in the specified array.</summary>
1357 <param name="buffer">A <see cref="T:System.Byte"></see> array that receives the bytes read from this stream.</param>
1358 <param name="offset">A <see cref="T:System.Int32"></see> that contains the zero-based location in buffer at which to begin storing the data read from this stream.</param>
1359 <param name="count">A <see cref="T:System.Int32"></see> that contains the maximum number of bytes to read from this stream.</param>
1360 <returns>A <see cref="System.Int32"></see> value that specifies the number of bytes read. When there is no more data to be read, returns 0.</returns>
1361 <exception cref="T:System.ArgumentNullException"><paramref name="buffer">buffer</paramref> is null.</exception>
1362 <exception cref="T:System.ArgumentException"><paramref name="offset">offset</paramref>
1363 <paramref name="&lt;">&lt;</paramref>
1364 <paramref name="0">0</paramref>.
1365 <paramref name="-or-">-or-</paramref><paramref name="offset">offset</paramref> &gt; the length of <paramref name="buffer">buffer</paramref>.
1367 <paramref name="offset">offset</paramref> + count &gt; the length of <paramref name="buffer">buffer</paramref>.</exception>
1368 <exception cref="T:System.IO.IOException">The read operation failed. Check the inner exception, if present to determine the cause of the failure.</exception>
1369 <exception cref="T:System.NotSupportedException">There is already a read operation in progress.</exception>
1370 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
1371 <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
1373 <member name="P:System.Net.Security.SslStream.ReadTimeout">
1374 <summary>Gets or sets the amount of time a read operation blocks waiting for data.</summary>
1375 <returns>A <see cref="System.Int32"></see> that specifies the amount of time that elapses before a synchronous read operation fails.</returns>
1377 <member name="P:System.Net.Security.SslStream.RemoteCertificate">
1378 <summary>Gets the certificate used to authenticate the remote endpoint.</summary>
1379 <returns>An X509Certificate object that represents the certificate supplied for authentication or null if no certificate was supplied.</returns>
1380 <exception cref="T:System.InvalidOperationException">Authentication failed or has not occurred.</exception>
1382 <member name="M:System.Net.Security.SslStream.Seek(System.Int64,System.IO.SeekOrigin)">
1383 <summary>Throws a <see cref="T:System.NotSupportedException"></see>.</summary>
1384 <param name="offset">This value is ignored.</param>
1385 <param name="origin">This value is ignored.</param>
1386 <returns>Always throws a <see cref="System.NotSupportedException"></see>.</returns>
1387 <exception cref="T:System.NotSupportedException">Seeking is not supported by <see cref="System.Net.Security.SslStream"></see> objects.</exception>
1389 <member name="M:System.Net.Security.SslStream.SetLength(System.Int64)">
1390 <summary>Sets the length of the underlying stream.</summary>
1391 <param name="value">An <see cref="T:System.Int64"></see> value that specifies the length of the stream.</param>
1393 <member name="M:System.Net.Security.SslStream.ShutdownAsync">
1394 <summary>Shuts down this SslStream.</summary>
1395 <returns>The task object representing the asynchronous operation.</returns>
1397 <member name="P:System.Net.Security.SslStream.SslProtocol">
1398 <summary>Gets a value that indicates the security protocol used to authenticate this connection.</summary>
1399 <returns>The <see cref="System.Security.Authentication.SslProtocols"></see> value that represents the protocol used for authentication.</returns>
1401 <member name="P:System.Net.Security.SslStream.TransportContext">
1402 <summary>Gets the <see cref="T:System.Net.TransportContext"></see> used for authentication using extended protection.</summary>
1403 <returns>The <see cref="System.Net.TransportContext"></see> object that contains the channel binding token (CBT) used for extended protection.</returns>
1405 <member name="M:System.Net.Security.SslStream.Write(System.Byte[])">
1406 <summary>Writes the specified data to this stream.</summary>
1407 <param name="buffer">A <see cref="T:System.Byte"></see> array that supplies the bytes written to the stream.</param>
1408 <exception cref="T:System.ArgumentNullException"><paramref name="buffer">buffer</paramref> is null.</exception>
1409 <exception cref="T:System.IO.IOException">The write operation failed.</exception>
1410 <exception cref="T:System.NotSupportedException">There is already a write operation in progress.</exception>
1411 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
1412 <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
1414 <member name="M:System.Net.Security.SslStream.Write(System.Byte[],System.Int32,System.Int32)">
1415 <summary>Write the specified number of <see cref="T:System.Byte"></see>s to the underlying stream using the specified buffer and offset.</summary>
1416 <param name="buffer">A <see cref="T:System.Byte"></see> array that supplies the bytes written to the stream.</param>
1417 <param name="offset">A <see cref="T:System.Int32"></see> that contains the zero-based location in buffer at which to begin reading bytes to be written to the stream.</param>
1418 <param name="count">A <see cref="T:System.Int32"></see> that contains the number of bytes to read from buffer.</param>
1419 <exception cref="T:System.ArgumentNullException"><paramref name="buffer">buffer</paramref> is null.</exception>
1420 <exception cref="T:System.ArgumentException"><paramref name="offset">offset</paramref>
1421 <paramref name="&lt;">&lt;</paramref>
1422 <paramref name="0">0</paramref>.
1423 <paramref name="-or-">-or-</paramref><paramref name="offset">offset</paramref> &gt; the length of <paramref name="buffer">buffer</paramref>.
1425 <paramref name="offset">offset</paramref> + count &gt; the length of <paramref name="buffer">buffer</paramref>.</exception>
1426 <exception cref="T:System.IO.IOException">The write operation failed.</exception>
1427 <exception cref="T:System.NotSupportedException">There is already a write operation in progress.</exception>
1428 <exception cref="T:System.ObjectDisposedException">This object has been closed.</exception>
1429 <exception cref="T:System.InvalidOperationException">Authentication has not occurred.</exception>
1431 <member name="P:System.Net.Security.SslStream.WriteTimeout">
1432 <summary>Gets or sets the amount of time a write operation blocks waiting for data.</summary>
1433 <returns>A <see cref="System.Int32"></see> that specifies the amount of time that elapses before a synchronous write operation fails.</returns>