Add S.S.C.Pkcs and S.S.C.Cng netstandard2.1 ref and lib (dotnet/corefx#38439)
authorJeremy Barton <jbarton@microsoft.com>
Sat, 15 Jun 2019 17:28:23 +0000 (10:28 -0700)
committermsftbot[bot] <msftbot[bot]@users.noreply.github.com>
Sat, 15 Jun 2019 17:28:23 +0000 (17:28 +0000)
commitb00417b88b4824233d98c71413c3bae8f38f2ad0
tree4d0033b869428db797b3e5f718b52a8eb47a8fd4
parent81a4124270b4b743363dcf8bf057a8d0c9a69ce0
Add S.S.C.Pkcs and S.S.C.Cng netstandard2.1 ref and lib (dotnet/corefx#38439)

* Add S.S.C.Pkcs and S.S.C.Cng netstandard2.1 ref and lib

The netstandard2.1 ref is equivalent to the netcoreapp3.0 ref in these two
OOB packages.

Ref changes:

Cng:
* Adds DSACng and ECDiffieHellmanCng (and related types)

Pkcs:
* Adds RSA-OAEP option to CmsRecipient
* Adds custom private key option to CmsSigner
* Adds custom private key decrypt option to EnvelopedCms
* Adds Pkcs12Info and Pkcs12Builder (and associated types)
* Adds Pkcs8PrivateKeyInfo
* Adds RFC3161 timestamp types
* Adds AddCertificate/RemoveCertificate to SignedCms
* Adds AddUnsignedAttribute/RemoveUnsignedAttribute to SignerInfo
* Adds SignatureAlgorithm/GetSignature to SignerInfo
* Adds MatchesCertificate to SubjectIdentifier

Impl changes:

Cng:
* The netstandard2.1 impl is a generated PNSE, the real impl is inbox on Windows.

Pkcs:
* The impls are the same as the netcoreapp3.0 impls, but are required
because netstandard2.0 is a better match for netstandard2.1 than netcoreapp3.0 is.

* Use shared netstandard21 DefineConstant

* Add netstandard2.1 to ref AdditionalBuildConfigurations

Commit migrated from https://github.com/dotnet/corefx/commit/985334c90d6b181cd47cd42c4c958d9dd34ab90b
20 files changed:
src/libraries/Common/src/System/Security/Cryptography/Asn1Reader/AsnCharacterStringEncodings.cs
src/libraries/Common/src/System/Security/Cryptography/Asn1Reader/AsnWriter.BitString.cs
src/libraries/Common/src/System/Security/Cryptography/CryptoPool.cs
src/libraries/System.Security.Cryptography.Cng/ref/Configurations.props
src/libraries/System.Security.Cryptography.Cng/ref/System.Security.Cryptography.Cng.csproj
src/libraries/System.Security.Cryptography.Cng/src/Configurations.props
src/libraries/System.Security.Cryptography.Cng/src/System.Security.Cryptography.Cng.csproj
src/libraries/System.Security.Cryptography.Pkcs/ref/Configurations.props
src/libraries/System.Security.Cryptography.Pkcs/ref/System.Security.Cryptography.Pkcs.csproj
src/libraries/System.Security.Cryptography.Pkcs/src/Configurations.props
src/libraries/System.Security.Cryptography.Pkcs/src/Internal/Cryptography/Pal/AnyOS/ManagedPal.KeyTrans.cs
src/libraries/System.Security.Cryptography.Pkcs/src/Internal/Cryptography/Pal/AnyOS/ManagedPal.cs
src/libraries/System.Security.Cryptography.Pkcs/src/Internal/Cryptography/PkcsHelpers.cs
src/libraries/System.Security.Cryptography.Pkcs/src/System.Security.Cryptography.Pkcs.csproj
src/libraries/System.Security.Cryptography.Pkcs/src/System/Security/Cryptography/Pkcs/CmsSignature.DSA.cs
src/libraries/System.Security.Cryptography.Pkcs/src/System/Security/Cryptography/Pkcs/CmsSignature.ECDsa.cs
src/libraries/System.Security.Cryptography.Pkcs/src/System/Security/Cryptography/Pkcs/CmsSignature.RSA.cs
src/libraries/System.Security.Cryptography.Pkcs/src/System/Security/Cryptography/Pkcs/CmsSignature.cs
src/libraries/System.Security.Cryptography.Pkcs/src/System/Security/Cryptography/Pkcs/SignerInfo.cs
src/libraries/ref.builds