Skip to content

Commit fbe36a3

Browse files
authored
Merge pull request #3570 from dotnet/master
update live with current master
2 parents 47aee60 + 3c03165 commit fbe36a3

File tree

7 files changed

+510
-210
lines changed

7 files changed

+510
-210
lines changed

xml/System.Net.WebSockets/WebSocketProtocol.xml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
</Base>
1717
<Interfaces />
1818
<Docs>
19-
<summary>To be added.</summary>
19+
<summary>The WebSocket class allows applications to send and receive data after the WebSocket upgrade has completed.</summary>
2020
<remarks>To be added.</remarks>
2121
</Docs>
2222
<Members>
@@ -43,12 +43,12 @@
4343
<Parameter Name="keepAliveInterval" Type="System.TimeSpan" />
4444
</Parameters>
4545
<Docs>
46-
<param name="stream">To be added.</param>
47-
<param name="isServer">To be added.</param>
48-
<param name="subProtocol">To be added.</param>
49-
<param name="keepAliveInterval">To be added.</param>
50-
<summary>To be added.</summary>
51-
<returns>To be added.</returns>
46+
<param name="stream">The stream for the connection.</param>
47+
<param name="isServer"><see langword="true" /> to indicate it's the server-side of the connection; <see langword="false" /> if it's the client-side.</param>
48+
<param name="subProtocol">The agreed upon sub-protocol that was used when creating the connection.</param>
49+
<param name="keepAliveInterval">The keep-alive interval to use, or <see cref="F:System.Threading.Timeout.InfiniteTimeSpan" /> to disable keep-alives.</param>
50+
<summary>Creates a new WebSocket connection that operates on the specified stream.</summary>
51+
<returns>The new WebSocket connection.</returns>
5252
<remarks>To be added.</remarks>
5353
</Docs>
5454
</Member>

xml/System.Reflection.Metadata.Ecma335/MetadataBuilder.xml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -730,8 +730,7 @@ Constraints must be added in the same order as the corresponding generic paramet
730730
<summary>Adds local scope debug information.</summary>
731731
<returns>A handle to the added import scope.</returns>
732732
<remarks>
733-
<format type="text/markdown">
734-
<![CDATA[
733+
<format type="text/markdown"><![CDATA[
735734
736735
## Remarks
737736

xml/System.Security.Cryptography/ECDiffieHellman.xml

Lines changed: 150 additions & 45 deletions
Large diffs are not rendered by default.

xml/System.Security.Cryptography/ECDiffieHellmanCng.xml

Lines changed: 86 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,7 @@
224224
<AssemblyVersion>4.0.0.0</AssemblyVersion>
225225
</AssemblyInfo>
226226
<Docs>
227-
<summary>Derives bytes that can be used as a key using a hash function .</summary>
227+
<summary>Performs key derivation using a specified hash algorithm.</summary>
228228
</Docs>
229229
</MemberGroup>
230230
<Member MemberName="DeriveKeyFromHash">
@@ -260,28 +260,26 @@
260260
</Parameters>
261261
<Docs>
262262
<param name="otherPartyPublicKey">The other party's public key.</param>
263-
<param name="hashAlgorithm">The hash algorithm to use to derive the key material.</param>
263+
<param name="hashAlgorithm">The hash algorithm to use to derive the key material.</param>
264264
<param name="secretPrepend">A value to prepend to the derived secret before hashing.</param>
265265
<param name="secretAppend">A value to append to the derived secret before hashing.</param>
266-
<summary>Derives bytes that can be used as a key using a hash function, given another party's public key, hash algorithm's name, a prepend value and an append value.</summary>
267-
<returns>The key material from the key exchange with the other party's public key.</returns>
268-
<remarks>
269-
<format type="text/markdown"><![CDATA[
270-
271-
## Remarks
272-
If the value of `secretPrepend` or `secretAppend` is `null`, they are treated as empty arrays.
273-
274-
]]></format>
275-
</remarks>
266+
<summary>Performs key derivation using a specified hash algorithm with optional prepended or appended data.</summary>
267+
<returns>The hash of the shared secret after prepending or appending data as requested.</returns>
268+
<remarks>To be added.</remarks>
269+
<exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
270+
<exception cref="T:System.ArgumentException">The curve used by <paramref name="otherPartyPublicKey" /> has a different size than the curve from this key.
271+
272+
-or-
273+
274+
The <paramref name="hashAlgorithm"/> parameter does not specify a hash.
275+
</exception>
276276
<exception cref="T:System.ArgumentNullException">
277-
<paramref name="otherPartyPublicKey" /> is <see langword="null" />.</exception>
278-
<exception cref="T:System.ArgumentException">
279-
<paramref name="otherPartyPublicKey" /> is not an ECDH key, or it is not the correct size.
280-
281-
-or-
282-
283-
<paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
284-
<exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
277+
<paramref name="otherPartyPublicKey" /> is <see langword="null"/>.</exception>
278+
<exception cref="T:System.Security.Cryptography.CryptographicException">The curve used by <paramref name="otherPartyPublicKey" /> is different than the curve from this key.
279+
280+
-or-
281+
282+
This instance represents only a public key.</exception>
285283
</Docs>
286284
</Member>
287285
<MemberGroup MemberName="DeriveKeyFromHmac">
@@ -331,25 +329,21 @@
331329
<param name="hmacKey">The key for the HMAC.</param>
332330
<param name="secretPrepend">A value to prepend to the derived secret before hashing.</param>
333331
<param name="secretAppend">A value to append to the derived secret before hashing.</param>
334-
<summary>Derives bytes that can be used as a key using a Hash-based Message Authentication Code (HMAC).</summary>
335-
<returns>The key material from the key exchange with the other party's public key.</returns>
336-
<remarks>
337-
<format type="text/markdown"><![CDATA[
338-
339-
## Remarks
340-
If the value of `secretPrepend` or `secretAppend` is `null`, they are treated as empty arrays. If the value of `hmacKey` is `null`, the result of the Elliptic Curve Diffie-Hellman (ECDH) algorithm will be used as the HMAC key.
341-
342-
]]></format>
343-
</remarks>
332+
<summary>Performs key derivation using a specified HMAC (Hash-based Message Authentication Code) algorithm with optional prepended or appended data.</summary>
333+
<returns>The HMAC of the shared secret after prepending or appending data as requested.</returns>
334+
<remarks>To be added.</remarks>
335+
<exception cref="T:System.ArgumentException">The curve used by <paramref name="otherPartyPublicKey" /> has a different size than the curve from this key.
336+
337+
-or-
338+
339+
The <paramref name="hashAlgorithm"/> parameter does not specify a hash.</exception>
344340
<exception cref="T:System.ArgumentNullException">
345-
<paramref name="otherPartyPublicKey" /> is <see langword="null" />.</exception>
346-
<exception cref="T:System.ArgumentException">
347-
<paramref name="otherPartyPublicKey" /> is not an ECDH key, or it is not the correct size.
348-
349-
-or-
350-
351-
<paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
352-
<exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
341+
<paramref name="otherPartyPublicKey" /> is <see langword="null"/>.</exception>
342+
<exception cref="T:System.Security.Cryptography.CryptographicException">The curve used by <paramref name="otherPartyPublicKey" /> is different than the curve from this key.
343+
344+
-or-
345+
346+
This instance represents only a public key.</exception>
353347
</Docs>
354348
</Member>
355349
<MemberGroup MemberName="DeriveKeyMaterial">
@@ -483,27 +477,24 @@
483477
<param name="otherPartyPublicKey">The other party's public key.</param>
484478
<param name="prfLabel">The ASCII-encoded PRF label.</param>
485479
<param name="prfSeed">The 64-byte PRF seed.</param>
486-
<summary>Derives bytes that can be used as a key using a Transport Layer Security (TLS) Pseudo-Random Function (PRF) derivation algorithm.</summary>
487-
<returns>The key material from the key exchange with the other party's public key.</returns>
480+
<summary>Performs key derivation using the TLS (Transport Layer Security) 1.1 PRF (Pseudo-Random Function).</summary>
481+
<returns>The first 48 bytes from the TLS 1.1 PRF, using the shared secret as the key.</returns>
488482
<remarks>To be added.</remarks>
489-
<exception cref="T:System.ArgumentNullException">
490-
<paramref name="otherPartyPublicKey" /> is <see langword="null" />.
491-
492-
-or-
493-
494-
<paramref name="prfLabel" /> is <see langword="null" />.
495-
496-
-or-
497-
498-
<paramref name="prfSeed" /> is <see langword="null" />.</exception>
483+
<exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
499484
<exception cref="T:System.ArgumentException">
500-
<paramref name="otherPartyPublicKey" /> is not an ECDH key, or it is not the correct size.</exception>
485+
The curve used by <paramref name="otherPartyPublicKey" /> has a different size than the curve from this key.</exception>
486+
<exception cref="T:System.ArgumentNullException">
487+
<paramref name="otherPartyPublicKey"/>, <paramref name="prfLabel" /> or <paramref name="prfSeed" /> is <see langword="null" />.</exception>
501488
<exception cref="T:System.Security.Cryptography.CryptographicException">
502-
<paramref name="prfSeed" /> is not exactly 64 bytes in length.
503-
504-
-or-
505-
506-
All other cryptographic errors.</exception>
489+
<paramref name="prfSeed" /> is not exactly 64 bytes in length.
490+
491+
-or-
492+
493+
The curve used by <paramref name="otherPartyPublicKey" /> is different than the curve from this key.
494+
495+
-or-
496+
497+
This instance represents only a public key.</exception>
507498
</Docs>
508499
</Member>
509500
<MemberGroup MemberName="DeriveSecretAgreementHandle">
@@ -625,8 +616,9 @@
625616
<Parameter Name="disposing" Type="System.Boolean" />
626617
</Parameters>
627618
<Docs>
628-
<param name="disposing">To be added.</param>
629-
<summary>To be added.</summary>
619+
<param name="disposing">
620+
<see langword="true"/> to release managed and unmanaged resources; <see langword="false"/> to release only unmanaged resources.</param>
621+
<summary>Releases the resources used by the current instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellmanCng"/> class.</summary>
630622
<remarks>To be added.</remarks>
631623
</Docs>
632624
</Member>
@@ -1043,9 +1035,22 @@
10431035
<ReturnType>System.Int32</ReturnType>
10441036
</ReturnValue>
10451037
<Docs>
1046-
<summary>To be added.</summary>
1047-
<value>To be added.</value>
1048-
<remarks>To be added.</remarks>
1038+
<summary>Gets or sets the size, in bits, of the key modulus used by the asymmetric algorithm.</summary>
1039+
<value>The size, in bits, of the key modulus used by the asymmetric algorithm.</value>
1040+
<remarks>
1041+
<format type="text/markdown"><![CDATA[
1042+
1043+
## Remarks
1044+
Setting this property to its current value has no visible effect.
1045+
Setting this property to a new legal value discards the current key, but defers creation of a new key until one is needed.
1046+
1047+
Because key sizes do not uniquely identify elliptic curves, the use of the property setter is discouraged. To generate a new key on a specific curve, use the <xref:System.Security.Cryptography.ECDiffieHellmanCng.GenerateKey%2A> method.
1048+
1049+
]]></format>
1050+
</remarks>
1051+
<exception cref="T:System.Security.Cryptography.CryptographicException">
1052+
<paramref name="value" /> is not permitted by <see cref="P:System.Security.Cryptography.ECDiffieHellmanCng.LegalKeySizes" />.</exception>
1053+
<altmember cref="M:System.Security.Cryptography.ECDiffieHellmanCng.GenerateKey(System.Security.Cryptography.ECCurve)" />
10491054
</Docs>
10501055
</Member>
10511056
<Member MemberName="Label">
@@ -1109,9 +1114,25 @@
11091114
<ReturnType>System.Security.Cryptography.KeySizes[]</ReturnType>
11101115
</ReturnValue>
11111116
<Docs>
1112-
<summary>To be added.</summary>
1113-
<value>To be added.</value>
1114-
<remarks>To be added.</remarks>
1117+
<summary>Gets the key sizes, in bits, that are supported by the <see cref="P:System.Security.Cryptography.ECDiffieHellmanCng.KeySize"/> property setter.</summary>
1118+
<value>An array that contains the key sizes supported by the <see cref="P:System.Security.Cryptography.ECDiffieHellmanCng.KeySize"/> property setter.</value>
1119+
<remarks>
1120+
<format type="text/markdown"><![CDATA[
1121+
1122+
## Remarks
1123+
1124+
In Elliptic Curve Cryptography (ECC) the key size is not the only input into the key generation process,
1125+
it is derived from the curve parameters for a specific elliptic curve.
1126+
This property reports only three sizes for LegalKeySizes: 256, 384, and 521 bits.
1127+
When the key size is used alone as a basis for key generation,
1128+
the supported sizes map to the named curves secp256r1 (aka NIST P-256), secp384r1 (aka NIST P-384), and secp521r1 (aka NIST P-521).
1129+
1130+
When executed on Windows 10, this class supports many additional named curves,
1131+
but that is not reflected in this property.
1132+
1133+
]]></format>
1134+
</remarks>
1135+
<altmember cref="M:System.Security.Cryptography.ECDiffieHellmanCng.GenerateKey(System.Security.Cryptography.ECCurve)" />
11151136
</Docs>
11161137
</Member>
11171138
<Member MemberName="PublicKey">
@@ -1388,7 +1409,7 @@
13881409
13891410
## Remarks
13901411
1391-
- This value is used for key derivation if the <xref:System.Security.Cryptography.ECDiffieHellmanCng.KeyDerivationFunction%2A> property is set to <xref:System.Security.Cryptography.ECDiffieHellmanKeyDerivationFunction.Hmac>. By default, the value is `false`.
1412+
This value is used for key derivation if the <xref:System.Security.Cryptography.ECDiffieHellmanCng.KeyDerivationFunction%2A> property is set to <xref:System.Security.Cryptography.ECDiffieHellmanKeyDerivationFunction.Hmac>. By default, the value is `false`.
13921413
13931414
]]></format>
13941415
</remarks>

0 commit comments

Comments
 (0)