This commit is contained in:
Drechsler, Meik
2025-10-15 14:56:07 +02:00
commit f563d78417
896 changed files with 654481 additions and 0 deletions

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@@ -0,0 +1,23 @@
The MIT License (MIT)
Copyright (c) .NET Foundation and Contributors
All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@@ -0,0 +1,39 @@
## About
This library provides some cryptographic types and functionality for .NET Standard and .NET Framework. This library is not necessary nor recommended when targeting versions of .NET that include the relevant support.
## Key Features
* Enables the use of some cryptographic functionality on older .NET platforms.
## How to Use
This package should only be used by platforms where the desired functionality is not built-in.
```C#
using System.Security.Cryptography;
internal static class Program
{
private static void Main()
{
byte[] key = LoadKey();
SP800108HmacCounterKdf kbkdf = new(key, HashAlgorithmName.SHA256);
byte[] derivedKey = kbkdf.DeriveKey("label"u8, "context"u8, derivedKeyLengthInBytes: 32);
}
}
```
## Main Types
The main types provided by this library are:
* `System.Security.Cryptography.SP800108HmacCounterKdf`
## Additional Documentation
* [API documentation](https://learn.microsoft.com/dotnet/api/System.Security.Cryptography)
## Feedback & Contributing
Microsoft.Bcl.Cryptography is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime).

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,6 @@
<Project InitialTargets="NETStandardCompatError_Microsoft_Bcl_Cryptography_net462">
<Target Name="NETStandardCompatError_Microsoft_Bcl_Cryptography_net462"
Condition="'$(SuppressTfmSupportBuildWarnings)' == ''">
<Warning Text="Microsoft.Bcl.Cryptography 9.0.4 doesn't support $(TargetFramework) and has not been tested with it. Consider upgrading your TargetFramework to net462 or later. You may also set &lt;SuppressTfmSupportBuildWarnings&gt;true&lt;/SuppressTfmSupportBuildWarnings&gt; in the project file to ignore this warning and attempt to run in this unsupported configuration at your own risk." />
</Target>
</Project>

View File

@@ -0,0 +1,6 @@
<Project InitialTargets="NETStandardCompatError_Microsoft_Bcl_Cryptography_net8_0">
<Target Name="NETStandardCompatError_Microsoft_Bcl_Cryptography_net8_0"
Condition="'$(SuppressTfmSupportBuildWarnings)' == ''">
<Warning Text="Microsoft.Bcl.Cryptography 9.0.4 doesn't support $(TargetFramework) and has not been tested with it. Consider upgrading your TargetFramework to net8.0 or later. You may also set &lt;SuppressTfmSupportBuildWarnings&gt;true&lt;/SuppressTfmSupportBuildWarnings&gt; in the project file to ignore this warning and attempt to run in this unsupported configuration at your own risk." />
</Target>
</Project>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,696 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>Microsoft.Bcl.Cryptography</name>
</assembly>
<members>
<member name="T:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits">
<summary>
Represents a set of constraints to apply when loading PKCS#12/PFX contents.
</summary>
</member>
<member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults">
<summary>
Gets a shared reference to the default loader limits.
</summary>
<remarks>
The singleton instance returned from this property is equivalent to an
instance produced via the default constructor, except the properties
prohibit reassignment. As with the default constructor, the individual
property values may change over time.
</remarks>
<value>A shared reference to the default loader limits.</value>
<seealso cref="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.IsReadOnly" />
</member>
<member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.DangerousNoLimits">
<summary>
Gets a shared reference to loader limits that indicate no
filtering or restrictions of the contents should be applied
before sending them to the underlying system loader.
</summary>
<value>
A shared reference to loader limits that indicate no
filtering or restrictions of the contents should be applied
before sending them to the underlying system loader.
</value>
<remarks>
<para>
The system loader may have its own limits where only part
of the contents are respected, or where the load is rejected.
Using this set of limits only affects the .NET layer of filtering.
</para>
<para>
The <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateLoader" /> class checks for reference
equality to this property to determine if filtering should be bypassed.
Making a new Pkcs12LoaderLimits value that has all of the same property
values may give different results for certain inputs.
</para>
</remarks>
</member>
<member name="M:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits"/> class
with default values.
</summary>
<remarks>
The default values for each property on a default instance of this class
are chosen as a compromise between maximizing compatibility and minimizing
"nuisance" work. The defaults for any given property may vary over time.
</remarks>
</member>
<member name="M:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.#ctor(System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
<summary>
Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits"/> class
by copying the values from another instance.
</summary>
<param name="copyFrom">The instance to copy the values from.</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="copyFrom"/> is <see langword="null" />.
</exception>
</member>
<member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.IsReadOnly">
<summary>
Gets a value indicating whether the instance is read-only.
</summary>
<value>
<see langword="true" /> if the instance is read-only; otherwise, <see langword="false" />.
</value>
</member>
<member name="M:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.MakeReadOnly">
<summary>
Makes the <see cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits"/> instance read-only.
</summary>
</member>
<member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.MacIterationLimit">
<summary>
Gets or sets the iteration limit for the MAC calculation.
</summary>
<value>The iteration limit for the MAC calculation, or <see langword="null" /> for no limit.</value>
</member>
<member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.IndividualKdfIterationLimit">
<summary>
Gets or sets the iteration limit for the individual Key Derivation Function (KDF) calculations.
</summary>
<value>
The iteration limit for the individual Key Derivation Function (KDF) calculations,
or <see langword="null" /> for no limit.
</value>
</member>
<member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.TotalKdfIterationLimit">
<summary>
Gets or sets the total iteration limit for the Key Derivation Function (KDF) calculations.
</summary>
<value>
The total iteration limit for the Key Derivation Function (KDF) calculations,
or <see langword="null" /> for no limit.
</value>
</member>
<member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.MaxKeys">
<summary>
Gets or sets the maximum number of keys permitted.
</summary>
<value>
The maximum number of keys permitted, or <see langword="null" /> for no maximum.
</value>
</member>
<member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.MaxCertificates">
<summary>
Gets or sets the maximum number of certificates permitted.
</summary>
<value>
The maximum number of certificates permitted, or <see langword="null" /> for no maximum.
</value>
</member>
<member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.PreserveStorageProvider">
<summary>
Gets or sets a value indicating whether to preserve the storage provider.
</summary>
<value>
<see langword="true" /> to respect the storage provider identifier for a
private key; <see langword="false" /> to ignore the storage provider
information and use the system defaults.
The default is <see langword="false" />.
</value>
<remarks>
Storage Provider values from the PFX are only processed on the
Microsoft Windows family of operating systems.
This property has no effect on non-Windows systems.
</remarks>
</member>
<member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.PreserveKeyName">
<summary>
Gets or sets a value indicating whether to preserve the key name.
</summary>
<value>
<see langword="true" /> to respect the key name identifier for a
private key; <see langword="false" /> to ignore the key name
information and use a randomly generated identifier.
The default is <see langword="false" />.
</value>
<remarks>
Key name identifier values from the PFX are only processed on the
Microsoft Windows family of operating systems.
This property has no effect on non-Windows systems.
</remarks>
</member>
<member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.PreserveCertificateAlias">
<summary>
Gets or sets a value indicating whether to preserve the certificate alias,
also known as the friendly name.
</summary>
<value>
<see langword="true" /> to respect the alias for a
certificate; <see langword="false" /> to ignore the alias
information.
The default is <see langword="false" />.
</value>
<remarks>
Certificate alias values from the PFX are only processed on the
Microsoft Windows family of operating systems.
This property has no effect on non-Windows systems.
</remarks>
<seealso cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.FriendlyName"/>
</member>
<member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.PreserveUnknownAttributes">
<summary>
Gets or sets a value indicating whether to preserve unknown attributes.
</summary>
<value>
<see langword="true" /> to keep any attributes of a certificate or
private key that are not described by another property on this type intact
when invoking the system PKCS#12/PFX loader;
<see langword="false" /> to remove the unknown attributes prior to invoking
the system loader.
The default is <see langword="false" />.
</value>
</member>
<member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.IgnorePrivateKeys">
<summary>
Gets or sets a value indicating whether to ignore private keys.
</summary>
<value>
<see langword="true" /> to skip loading private keys;
<see langword="false" /> to load both certificates and private keys.
The default is <see langword="false" />.
</value>
</member>
<member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.IgnoreEncryptedAuthSafes">
<summary>
Gets or sets a value indicating whether to ignore encrypted authentication safes.
</summary>
<value>
<see langword="true" /> to skip over encrypted PFX AuthSafe values;
<see langword="false" /> to decrypt encrypted PFX AuthSafe values to process their
contents.
The default is <see langword="false" />.
</value>
</member>
<member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.AllowDuplicateAttributes">
<summary>
Gets or sets a value indicating whether duplicate attributes are permitted.
</summary>
<value>
<see langword="true" /> to permit duplicate attributes;
<see langword="false" /> to fail loading when duplicate attributes are found.
The default is <see langword="false" />.
</value>
</member>
<member name="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
<summary>
The exception that is thrown when importing a PKCS#12/PFX has failed
due to violating a specified limit.
</summary>
</member>
<member name="M:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException"/>
class.
</summary>
<param name="propertyName">
The name of the property representing the limit that was exceeded.
</param>
</member>
<member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadCertificate(System.ReadOnlySpan{System.Byte})">
<summary>
Loads a single X.509 certificate from <paramref name="data"/>, in either the PEM
or DER encoding.
</summary>
<param name="data">The data to load.</param>
<returns>
The certificate loaded from <paramref name="data"/>.
</returns>
<exception cref="T:System.Security.Cryptography.CryptographicException">
The data did not load as a valid X.509 certificate.
</exception>
<remarks>
This method only loads plain certificates, which are identified as
<see cref="F:System.Security.Cryptography.X509Certificates.X509ContentType.Cert" /> by <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2.GetCertContentType(System.Byte[])"/>
</remarks>
<seealso cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2.GetCertContentType(System.String)"/>
</member>
<member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadCertificate(System.Byte[])">
<summary>
Loads a single X.509 certificate from <paramref name="data"/>, in either the PEM
or DER encoding.
</summary>
<param name="data">The data to load.</param>
<returns>
The certificate loaded from <paramref name="data"/>.
</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="data"/> is <see langword="null" />.
</exception>
<exception cref="T:System.Security.Cryptography.CryptographicException">
The data did not load as a valid X.509 certificate.
</exception>
<remarks>
This method only loads plain certificates, which are identified as
<see cref="F:System.Security.Cryptography.X509Certificates.X509ContentType.Cert" /> by <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2.GetCertContentType(System.Byte[])"/>
</remarks>
<seealso cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2.GetCertContentType(System.String)"/>
</member>
<member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadCertificateFromFile(System.String)">
<summary>
Loads a single X.509 certificate (in either the PEM or DER encoding)
from the specified file.
</summary>
<param name="path">The path of the file to open.</param>
<returns>
The loaded certificate.
</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="path"/> is <see langword="null" />.
</exception>
<exception cref="T:System.Security.Cryptography.CryptographicException">
The data did not load as a valid X.509 certificate.
</exception>
<exception cref="T:System.IO.IOException">
An error occurred while loading the specified file.
</exception>
<remarks>
This method only loads plain certificates, which are identified as
<see cref="F:System.Security.Cryptography.X509Certificates.X509ContentType.Cert" /> by <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2.GetCertContentType(System.String)"/>
</remarks>
<seealso cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2.GetCertContentType(System.String)"/>
</member>
<member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12(System.Byte[],System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
<summary>
Loads the provided data as a PKCS#12 PFX and extracts a certificate.
</summary>
<param name="data">The data to load.</param>
<param name="password">The password to decrypt the contents of the PFX.</param>
<param name="keyStorageFlags">
A bitwise combination of the enumeration values that control where and how to
import the private key associated with the returned certificate.
</param>
<param name="loaderLimits">
Limits to apply when loading the PFX. A <see langword="null" /> value, the default,
is equivalent to <see cref="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults"/>.
</param>
<returns>The loaded certificate.</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="data"/> is <see langword="null" />.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="keyStorageFlags"/> contains a value, or combination of values,
that is not valid.
</exception>
<exception cref="T:System.PlatformNotSupportedException">
<paramref name="keyStorageFlags"/> contains a value that is not valid for the
current platform.
</exception>
<exception cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
The PKCS#12/PFX violated one or more constraints of <paramref name="loaderLimits"/>.
</exception>
<exception cref="T:System.Security.Cryptography.CryptographicException">
An error occurred while loading the PKCS#12/PFX.
</exception>
<remarks>
A PKCS#12/PFX can contain multiple certificates.
Using the ordering that the certificates appear in the results of
<see cref="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12Collection(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Char},System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)" />,
this method returns the first
certificate where <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.HasPrivateKey" /> is
<see langword="true" />.
If no certificates have associated private keys, then the first
certificate is returned.
If the PKCS#12/PFX contains no certificates, a
<see cref="T:System.Security.Cryptography.CryptographicException" /> is thrown.
</remarks>
</member>
<member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Char},System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
<summary>
Loads the provided data as a PKCS#12 PFX and extracts a certificate.
</summary>
<param name="data">The data to load.</param>
<param name="password">The password to decrypt the contents of the PFX.</param>
<param name="keyStorageFlags">
A bitwise combination of the enumeration values that control where and how to
import the private key associated with the returned certificate.
</param>
<param name="loaderLimits">
Limits to apply when loading the PFX. A <see langword="null" /> value, the default,
is equivalent to <see cref="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults"/>.
</param>
<returns>The loaded certificate.</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="data"/> is <see langword="null" />.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="keyStorageFlags"/> contains a value, or combination of values,
that is not valid.
</exception>
<exception cref="T:System.PlatformNotSupportedException">
<paramref name="keyStorageFlags"/> contains a value that is not valid for the
current platform.
</exception>
<exception cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
The PKCS#12/PFX violated one or more constraints of <paramref name="loaderLimits"/>.
</exception>
<exception cref="T:System.Security.Cryptography.CryptographicException">
An error occurred while loading the PKCS#12/PFX.
</exception>
<remarks>
A PKCS#12/PFX can contain multiple certificates.
Using the ordering that the certificates appear in the results of
<see cref="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12Collection(System.Byte[],System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)" />,
this method returns the first
certificate where <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.HasPrivateKey" /> is
<see langword="true" />.
If no certificates have associated private keys, then the first
certificate is returned.
If the PKCS#12/PFX contains no certificates, a
<see cref="T:System.Security.Cryptography.CryptographicException" /> is thrown.
</remarks>
</member>
<member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12FromFile(System.String,System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
<summary>
Opens the specified file, reads the contents as a PKCS#12 PFX and extracts a certificate.
</summary>
<param name="path">The path of the file to open.</param>
<returns>
The loaded certificate.
</returns>
<param name="password">The password to decrypt the contents of the PFX.</param>
<param name="keyStorageFlags">
A bitwise combination of the enumeration values that control where and how to
import the private key associated with the returned certificate.
</param>
<param name="loaderLimits">
Limits to apply when loading the PFX. A <see langword="null" /> value, the default,
is equivalent to <see cref="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults"/>.
</param>
<returns>The loaded certificate.</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="path"/> is <see langword="null" />.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="keyStorageFlags"/> contains a value, or combination of values,
that is not valid.
</exception>
<exception cref="T:System.PlatformNotSupportedException">
<paramref name="keyStorageFlags"/> contains a value that is not valid for the
current platform.
</exception>
<exception cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
The PKCS#12/PFX violated one or more constraints of <paramref name="loaderLimits"/>.
</exception>
<exception cref="T:System.Security.Cryptography.CryptographicException">
An error occurred while loading the PKCS#12/PFX.
</exception>
<exception cref="T:System.IO.IOException">
An error occurred while loading the specified file.
</exception>
<remarks>
A PKCS#12/PFX can contain multiple certificates.
Using the ordering that the certificates appear in the results of
<see cref="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12CollectionFromFile(System.String,System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)" />,
this method returns the first
certificate where <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.HasPrivateKey" /> is
<see langword="true" />.
If no certificates have associated private keys, then the first
certificate is returned.
If the PKCS#12/PFX contains no certificates, a
<see cref="T:System.Security.Cryptography.CryptographicException" /> is thrown.
</remarks>
</member>
<member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12FromFile(System.String,System.ReadOnlySpan{System.Char},System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
<summary>
Opens the specified file, reads the contents as a PKCS#12 PFX and extracts a certificate.
</summary>
<param name="path">The path of the file to open.</param>
<returns>
The loaded certificate.
</returns>
<param name="password">The password to decrypt the contents of the PFX.</param>
<param name="keyStorageFlags">
A bitwise combination of the enumeration values that control where and how to
import the private key associated with the returned certificate.
</param>
<param name="loaderLimits">
Limits to apply when loading the PFX. A <see langword="null" /> value, the default,
is equivalent to <see cref="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults"/>.
</param>
<returns>The loaded certificate.</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="path"/> is <see langword="null" />.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="keyStorageFlags"/> contains a value, or combination of values,
that is not valid.
</exception>
<exception cref="T:System.PlatformNotSupportedException">
<paramref name="keyStorageFlags"/> contains a value that is not valid for the
current platform.
</exception>
<exception cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
The PKCS#12/PFX violated one or more constraints of <paramref name="loaderLimits"/>.
</exception>
<exception cref="T:System.Security.Cryptography.CryptographicException">
An error occurred while loading the PKCS#12/PFX.
</exception>
<exception cref="T:System.IO.IOException">
An error occurred while loading the specified file.
</exception>
<remarks>
A PKCS#12/PFX can contain multiple certificates.
Using the ordering that the certificates appear in the results of
<see cref="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12CollectionFromFile(System.String,System.ReadOnlySpan{System.Char},System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)" />,
this method returns the first
certificate where <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.HasPrivateKey" /> is
<see langword="true" />.
If no certificates have associated private keys, then the first
certificate is returned.
If the PKCS#12/PFX contains no certificates, a
<see cref="T:System.Security.Cryptography.CryptographicException" /> is thrown.
</remarks>
</member>
<member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12Collection(System.Byte[],System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
<summary>
Loads the provided data as a PKCS#12 PFX and returns a collection of
all of the certificates therein.
</summary>
<param name="data">The data to load.</param>
<param name="password">The password to decrypt the contents of the PFX.</param>
<param name="keyStorageFlags">
A bitwise combination of the enumeration values that control where and how to
import the private key associated with the returned certificate.
</param>
<param name="loaderLimits">
Limits to apply when loading the PFX. A <see langword="null" /> value, the default,
is equivalent to <see cref="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults"/>.
</param>
<returns>A collection of the certificates loaded from the input.</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="data"/> is <see langword="null" />.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="keyStorageFlags"/> contains a value, or combination of values,
that is not valid.
</exception>
<exception cref="T:System.PlatformNotSupportedException">
<paramref name="keyStorageFlags"/> contains a value that is not valid for the
current platform.
</exception>
<exception cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
The PKCS#12/PFX violated one or more constraints of <paramref name="loaderLimits"/>.
</exception>
<exception cref="T:System.Security.Cryptography.CryptographicException">
An error occurred while loading the PKCS#12/PFX.
</exception>
</member>
<member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12Collection(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Char},System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
<summary>
Loads the provided data as a PKCS#12 PFX and returns a collection of
all of the certificates therein.
</summary>
<param name="data">The data to load.</param>
<param name="password">The password to decrypt the contents of the PFX.</param>
<param name="keyStorageFlags">
A bitwise combination of the enumeration values that control where and how to
import the private key associated with the returned certificate.
</param>
<param name="loaderLimits">
Limits to apply when loading the PFX. A <see langword="null" /> value, the default,
is equivalent to <see cref="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults"/>.
</param>
<returns>A collection of the certificates loaded from the input.</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="data"/> is <see langword="null" />.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="keyStorageFlags"/> contains a value, or combination of values,
that is not valid.
</exception>
<exception cref="T:System.PlatformNotSupportedException">
<paramref name="keyStorageFlags"/> contains a value that is not valid for the
current platform.
</exception>
<exception cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
The PKCS#12/PFX violated one or more constraints of <paramref name="loaderLimits"/>.
</exception>
<exception cref="T:System.Security.Cryptography.CryptographicException">
An error occurred while loading the PKCS#12/PFX.
</exception>
</member>
<member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12CollectionFromFile(System.String,System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
<summary>
Opens the specified file, reads the contents as a PKCS#12 PFX and extracts a certificate.
Loads the provided data as a PKCS#12 PFX and returns a collection of
all of the certificates therein.
</summary>
<param name="path">The path of the file to open.</param>
<returns>
The loaded certificate.
</returns>
<param name="password">The password to decrypt the contents of the PFX.</param>
<param name="keyStorageFlags">
A bitwise combination of the enumeration values that control where and how to
import the private key associated with the returned certificate.
</param>
<param name="loaderLimits">
Limits to apply when loading the PFX. A <see langword="null" /> value, the default,
is equivalent to <see cref="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults"/>.
</param>
<returns>The loaded certificate.</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="path"/> is <see langword="null" />.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="keyStorageFlags"/> contains a value, or combination of values,
that is not valid.
</exception>
<exception cref="T:System.PlatformNotSupportedException">
<paramref name="keyStorageFlags"/> contains a value that is not valid for the
current platform.
</exception>
<exception cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
The PKCS#12/PFX violated one or more constraints of <paramref name="loaderLimits"/>.
</exception>
<exception cref="T:System.Security.Cryptography.CryptographicException">
An error occurred while loading the PKCS#12/PFX.
</exception>
<exception cref="T:System.IO.IOException">
An error occurred while loading the specified file.
</exception>
</member>
<member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12CollectionFromFile(System.String,System.ReadOnlySpan{System.Char},System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
<summary>
Opens the specified file, reads the contents as a PKCS#12 PFX and extracts a certificate.
Loads the provided data as a PKCS#12 PFX and returns a collection of
all of the certificates therein.
</summary>
<param name="path">The path of the file to open.</param>
<returns>
The loaded certificate.
</returns>
<param name="password">The password to decrypt the contents of the PFX.</param>
<param name="keyStorageFlags">
A bitwise combination of the enumeration values that control where and how to
import the private key associated with the returned certificate.
</param>
<param name="loaderLimits">
Limits to apply when loading the PFX. A <see langword="null" /> value, the default,
is equivalent to <see cref="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults"/>.
</param>
<returns>The loaded certificate.</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="path"/> is <see langword="null" />.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="keyStorageFlags"/> contains a value, or combination of values,
that is not valid.
</exception>
<exception cref="T:System.PlatformNotSupportedException">
<paramref name="keyStorageFlags"/> contains a value that is not valid for the
current platform.
</exception>
<exception cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
The PKCS#12/PFX violated one or more constraints of <paramref name="loaderLimits"/>.
</exception>
<exception cref="T:System.Security.Cryptography.CryptographicException">
An error occurred while loading the PKCS#12/PFX.
</exception>
<exception cref="T:System.IO.IOException">
An error occurred while loading the specified file.
</exception>
</member>
<member name="P:System.SR.Arg_CryptographyException">
<summary>Error occurred during a cryptographic operation.</summary>
</member>
<member name="P:System.SR.Argument_InvalidOffLen">
<summary>Offset and length were out of bounds for the array or count is greater than the number of elements from index to the end of the source collection.</summary>
</member>
<member name="P:System.SR.Argument_InvalidValue">
<summary>Value was invalid.</summary>
</member>
<member name="P:System.SR.ArgumentOutOfRange_Generic_MustBeNonNegativeNonZero">
<summary>{0} ('{1}') must be a non-negative and non-zero value.</summary>
</member>
<member name="P:System.SR.ArgumentOutOfRange_NeedNonNegNum">
<summary>Non-negative number required.</summary>
</member>
<member name="P:System.SR.ArgumentOutOfRange_KOut_Too_Large">
<summary>The number of bytes requested is too large. The number of bytes produced by SP800108HmacCounterKdf cannot exceed 536,870,911 bytes.</summary>
</member>
<member name="P:System.SR.Argument_EmptyString">
<summary>The value cannot be an empty string.</summary>
</member>
<member name="P:System.SR.Cryptography_AlgKdfRequiresChars">
<summary>The KDF for algorithm '{0}' requires a char-based password input.</summary>
</member>
<member name="P:System.SR.Cryptography_AlgorithmNotSupported">
<summary>Algorithm '{0}' is not supported on this platform.</summary>
</member>
<member name="P:System.SR.Cryptography_Der_Invalid_Encoding">
<summary>ASN1 corrupted data.</summary>
</member>
<member name="P:System.SR.Cryptography_HashAlgorithmNameNullOrEmpty">
<summary>The hash algorithm name cannot be null or empty.</summary>
</member>
<member name="P:System.SR.Cryptography_NotValidPublicOrPrivateKey">
<summary>Key is not a valid public or private key.</summary>
</member>
<member name="P:System.SR.Cryptography_Pfx_BadPassword">
<summary>The certificate data cannot be read with the provided password, the password may be incorrect.</summary>
</member>
<member name="P:System.SR.Cryptography_Pfx_NoCertificates">
<summary>The provided PFX data contains no certificates.</summary>
</member>
<member name="P:System.SR.Cryptography_Pkcs8_EncryptedReadFailed">
<summary>The EncryptedPrivateKeyInfo structure was decoded but was not successfully interpreted, the password may be incorrect.</summary>
</member>
<member name="P:System.SR.Cryptography_UnknownAlgorithmIdentifier">
<summary>The algorithm identified by '{0}' is unknown, not valid for the requested usage, or was not handled.</summary>
</member>
<member name="P:System.SR.Cryptography_UnknownHashAlgorithm">
<summary>'{0}' is not a known hash algorithm.</summary>
</member>
<member name="P:System.SR.Cryptography_X509_PKCS12_LimitExceeded">
<summary>The PKCS#12/PFX violated the '{0}' limit.</summary>
</member>
<member name="P:System.SR.Cryptography_X509_PKCS12_LimitsReadOnly">
<summary>This Pkcs12LoaderLimits object has been made read-only and can no longer be modified.</summary>
</member>
</members>
</doc>

View File

@@ -0,0 +1,8 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>Microsoft.Bcl.Cryptography</name>
</assembly>
<members>
</members>
</doc>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,303 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>Microsoft.PowerShell.Diagnostics.Activities</name>
</assembly>
<members>
<member name="T:Microsoft.PowerShell.Diagnostics.Activities.ExportCounter">
<summary>
Activity to invoke the Microsoft.PowerShell.Diagnostics\Export-Counter command in a Workflow.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Diagnostics.Activities.ExportCounter.#ctor">
<summary>
Gets the display name of the command invoked by this activity.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Diagnostics.Activities.ExportCounter.GetPowerShell(System.Activities.NativeActivityContext)">
<summary>
Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run.
</summary>
<param name="context">The NativeActivityContext for the currently running activity.</param>
<returns>A populated instance of Sytem.Management.Automation.PowerShell</returns>
<remarks>The infrastructure takes responsibility for closing and disposing the PowerShell instance returned.</remarks>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.ExportCounter.PSCommandName">
<summary>
Gets the fully qualified name of the command invoked by this activity.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.ExportCounter.Path">
<summary>
Provides access to the Path parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.ExportCounter.FileFormat">
<summary>
Provides access to the FileFormat parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.ExportCounter.MaxSize">
<summary>
Provides access to the MaxSize parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.ExportCounter.InputObject">
<summary>
Provides access to the InputObject parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.ExportCounter.Force">
<summary>
Provides access to the Force parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.ExportCounter.Circular">
<summary>
Provides access to the Circular parameter.
</summary>
</member>
<member name="T:Microsoft.PowerShell.Diagnostics.Activities.GetCounter">
<summary>
Activity to invoke the Microsoft.PowerShell.Diagnostics\Get-Counter command in a Workflow.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Diagnostics.Activities.GetCounter.#ctor">
<summary>
Gets the display name of the command invoked by this activity.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Diagnostics.Activities.GetCounter.GetPowerShell(System.Activities.NativeActivityContext)">
<summary>
Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run.
</summary>
<param name="context">The NativeActivityContext for the currently running activity.</param>
<returns>A populated instance of Sytem.Management.Automation.PowerShell</returns>
<remarks>The infrastructure takes responsibility for closing and disposing the PowerShell instance returned.</remarks>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetCounter.PSCommandName">
<summary>
Gets the fully qualified name of the command invoked by this activity.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetCounter.ListSet">
<summary>
Provides access to the ListSet parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetCounter.Counter">
<summary>
Provides access to the Counter parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetCounter.SampleInterval">
<summary>
Provides access to the SampleInterval parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetCounter.MaxSamples">
<summary>
Provides access to the MaxSamples parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetCounter.Continuous">
<summary>
Provides access to the Continuous parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetCounter.SupportsCustomRemoting">
<summary>
Declares that this activity supports its own remoting.
</summary>
</member>
<member name="T:Microsoft.PowerShell.Diagnostics.Activities.GetWinEvent">
<summary>
Activity to invoke the Microsoft.PowerShell.Diagnostics\Get-WinEvent command in a Workflow.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Diagnostics.Activities.GetWinEvent.#ctor">
<summary>
Gets the display name of the command invoked by this activity.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Diagnostics.Activities.GetWinEvent.GetPowerShell(System.Activities.NativeActivityContext)">
<summary>
Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run.
</summary>
<param name="context">The NativeActivityContext for the currently running activity.</param>
<returns>A populated instance of Sytem.Management.Automation.PowerShell</returns>
<remarks>The infrastructure takes responsibility for closing and disposing the PowerShell instance returned.</remarks>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetWinEvent.PSCommandName">
<summary>
Gets the fully qualified name of the command invoked by this activity.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetWinEvent.ListLog">
<summary>
Provides access to the ListLog parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetWinEvent.LogName">
<summary>
Provides access to the LogName parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetWinEvent.ListProvider">
<summary>
Provides access to the ListProvider parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetWinEvent.ProviderName">
<summary>
Provides access to the ProviderName parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetWinEvent.Path">
<summary>
Provides access to the Path parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetWinEvent.MaxEvents">
<summary>
Provides access to the MaxEvents parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetWinEvent.Credential">
<summary>
Provides access to the Credential parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetWinEvent.FilterXPath">
<summary>
Provides access to the FilterXPath parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetWinEvent.FilterXml">
<summary>
Provides access to the FilterXml parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetWinEvent.FilterHashtable">
<summary>
Provides access to the FilterHashtable parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetWinEvent.Force">
<summary>
Provides access to the Force parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetWinEvent.Oldest">
<summary>
Provides access to the Oldest parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.GetWinEvent.SupportsCustomRemoting">
<summary>
Declares that this activity supports its own remoting.
</summary>
</member>
<member name="T:Microsoft.PowerShell.Diagnostics.Activities.NewWinEvent">
<summary>
Activity to invoke the Microsoft.PowerShell.Diagnostics\New-WinEvent command in a Workflow.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Diagnostics.Activities.NewWinEvent.#ctor">
<summary>
Gets the display name of the command invoked by this activity.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Diagnostics.Activities.NewWinEvent.GetPowerShell(System.Activities.NativeActivityContext)">
<summary>
Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run.
</summary>
<param name="context">The NativeActivityContext for the currently running activity.</param>
<returns>A populated instance of Sytem.Management.Automation.PowerShell</returns>
<remarks>The infrastructure takes responsibility for closing and disposing the PowerShell instance returned.</remarks>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.NewWinEvent.PSCommandName">
<summary>
Gets the fully qualified name of the command invoked by this activity.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.NewWinEvent.ProviderName">
<summary>
Provides access to the ProviderName parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.NewWinEvent.WinEventId">
<summary>
Provides access to the WinEventId parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.NewWinEvent.Version">
<summary>
Provides access to the Version parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.NewWinEvent.Payload">
<summary>
Provides access to the Payload parameter.
</summary>
</member>
<member name="T:Microsoft.PowerShell.Diagnostics.Activities.ImportCounter">
<summary>
Activity to invoke the Microsoft.PowerShell.Diagnostics\Import-Counter command in a Workflow.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Diagnostics.Activities.ImportCounter.#ctor">
<summary>
Gets the display name of the command invoked by this activity.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Diagnostics.Activities.ImportCounter.GetPowerShell(System.Activities.NativeActivityContext)">
<summary>
Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run.
</summary>
<param name="context">The NativeActivityContext for the currently running activity.</param>
<returns>A populated instance of Sytem.Management.Automation.PowerShell</returns>
<remarks>The infrastructure takes responsibility for closing and disposing the PowerShell instance returned.</remarks>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.ImportCounter.PSCommandName">
<summary>
Gets the fully qualified name of the command invoked by this activity.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.ImportCounter.Path">
<summary>
Provides access to the Path parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.ImportCounter.ListSet">
<summary>
Provides access to the ListSet parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.ImportCounter.StartTime">
<summary>
Provides access to the StartTime parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.ImportCounter.EndTime">
<summary>
Provides access to the EndTime parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.ImportCounter.Counter">
<summary>
Provides access to the Counter parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.ImportCounter.Summary">
<summary>
Provides access to the Summary parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Diagnostics.Activities.ImportCounter.MaxSamples">
<summary>
Provides access to the MaxSamples parameter.
</summary>
</member>
</members>
</doc>

View File

@@ -0,0 +1,430 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>Microsoft.PowerShell.Security.Activities</name>
</assembly>
<members>
<member name="T:Microsoft.PowerShell.Security.Activities.ConvertFromSecureString">
<summary>
Activity to invoke the Microsoft.PowerShell.Security\ConvertFrom-SecureString command in a Workflow.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.ConvertFromSecureString.#ctor">
<summary>
Gets the display name of the command invoked by this activity.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.ConvertFromSecureString.GetPowerShell(System.Activities.NativeActivityContext)">
<summary>
Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run.
</summary>
<param name="context">The NativeActivityContext for the currently running activity.</param>
<returns>A populated instance of Sytem.Management.Automation.PowerShell</returns>
<remarks>The infrastructure takes responsibility for closing and disposing the PowerShell instance returned.</remarks>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.ConvertFromSecureString.PSCommandName">
<summary>
Gets the fully qualified name of the command invoked by this activity.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.ConvertFromSecureString.SecureString">
<summary>
Provides access to the SecureString parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.ConvertFromSecureString.SecureKey">
<summary>
Provides access to the SecureKey parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.ConvertFromSecureString.Key">
<summary>
Provides access to the Key parameter.
</summary>
</member>
<member name="T:Microsoft.PowerShell.Security.Activities.ConvertToSecureString">
<summary>
Activity to invoke the Microsoft.PowerShell.Security\ConvertTo-SecureString command in a Workflow.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.ConvertToSecureString.#ctor">
<summary>
Gets the display name of the command invoked by this activity.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.ConvertToSecureString.GetPowerShell(System.Activities.NativeActivityContext)">
<summary>
Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run.
</summary>
<param name="context">The NativeActivityContext for the currently running activity.</param>
<returns>A populated instance of Sytem.Management.Automation.PowerShell</returns>
<remarks>The infrastructure takes responsibility for closing and disposing the PowerShell instance returned.</remarks>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.ConvertToSecureString.PSCommandName">
<summary>
Gets the fully qualified name of the command invoked by this activity.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.ConvertToSecureString.String">
<summary>
Provides access to the String parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.ConvertToSecureString.AsPlainText">
<summary>
Provides access to the AsPlainText parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.ConvertToSecureString.Force">
<summary>
Provides access to the Force parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.ConvertToSecureString.SecureKey">
<summary>
Provides access to the SecureKey parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.ConvertToSecureString.Key">
<summary>
Provides access to the Key parameter.
</summary>
</member>
<member name="T:Microsoft.PowerShell.Security.Activities.GetAcl">
<summary>
Activity to invoke the Microsoft.PowerShell.Security\Get-Acl command in a Workflow.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.GetAcl.#ctor">
<summary>
Gets the display name of the command invoked by this activity.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.GetAcl.GetPowerShell(System.Activities.NativeActivityContext)">
<summary>
Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run.
</summary>
<param name="context">The NativeActivityContext for the currently running activity.</param>
<returns>A populated instance of Sytem.Management.Automation.PowerShell</returns>
<remarks>The infrastructure takes responsibility for closing and disposing the PowerShell instance returned.</remarks>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetAcl.PSCommandName">
<summary>
Gets the fully qualified name of the command invoked by this activity.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetAcl.Path">
<summary>
Provides access to the Path parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetAcl.InputObject">
<summary>
Provides access to the InputObject parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetAcl.LiteralPath">
<summary>
Provides access to the LiteralPath parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetAcl.Audit">
<summary>
Provides access to the Audit parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetAcl.AllCentralAccessPolicies">
<summary>
Provides access to the AllCentralAccessPolicies parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetAcl.Filter">
<summary>
Provides access to the Filter parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetAcl.Include">
<summary>
Provides access to the Include parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetAcl.Exclude">
<summary>
Provides access to the Exclude parameter.
</summary>
</member>
<member name="T:Microsoft.PowerShell.Security.Activities.GetAuthenticodeSignature">
<summary>
Activity to invoke the Microsoft.PowerShell.Security\Get-AuthenticodeSignature command in a Workflow.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.GetAuthenticodeSignature.#ctor">
<summary>
Gets the display name of the command invoked by this activity.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.GetAuthenticodeSignature.GetPowerShell(System.Activities.NativeActivityContext)">
<summary>
Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run.
</summary>
<param name="context">The NativeActivityContext for the currently running activity.</param>
<returns>A populated instance of Sytem.Management.Automation.PowerShell</returns>
<remarks>The infrastructure takes responsibility for closing and disposing the PowerShell instance returned.</remarks>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetAuthenticodeSignature.PSCommandName">
<summary>
Gets the fully qualified name of the command invoked by this activity.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetAuthenticodeSignature.FilePath">
<summary>
Provides access to the FilePath parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetAuthenticodeSignature.LiteralPath">
<summary>
Provides access to the LiteralPath parameter.
</summary>
</member>
<member name="T:Microsoft.PowerShell.Security.Activities.GetExecutionPolicy">
<summary>
Activity to invoke the Microsoft.PowerShell.Security\Get-ExecutionPolicy command in a Workflow.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.GetExecutionPolicy.#ctor">
<summary>
Gets the display name of the command invoked by this activity.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.GetExecutionPolicy.GetPowerShell(System.Activities.NativeActivityContext)">
<summary>
Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run.
</summary>
<param name="context">The NativeActivityContext for the currently running activity.</param>
<returns>A populated instance of Sytem.Management.Automation.PowerShell</returns>
<remarks>The infrastructure takes responsibility for closing and disposing the PowerShell instance returned.</remarks>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetExecutionPolicy.PSCommandName">
<summary>
Gets the fully qualified name of the command invoked by this activity.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetExecutionPolicy.Scope">
<summary>
Provides access to the Scope parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetExecutionPolicy.List">
<summary>
Provides access to the List parameter.
</summary>
</member>
<member name="T:Microsoft.PowerShell.Security.Activities.GetPfxCertificate">
<summary>
Activity to invoke the Microsoft.PowerShell.Security\Get-PfxCertificate command in a Workflow.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.GetPfxCertificate.#ctor">
<summary>
Gets the display name of the command invoked by this activity.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.GetPfxCertificate.GetPowerShell(System.Activities.NativeActivityContext)">
<summary>
Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run.
</summary>
<param name="context">The NativeActivityContext for the currently running activity.</param>
<returns>A populated instance of Sytem.Management.Automation.PowerShell</returns>
<remarks>The infrastructure takes responsibility for closing and disposing the PowerShell instance returned.</remarks>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetPfxCertificate.PSCommandName">
<summary>
Gets the fully qualified name of the command invoked by this activity.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetPfxCertificate.FilePath">
<summary>
Provides access to the FilePath parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.GetPfxCertificate.LiteralPath">
<summary>
Provides access to the LiteralPath parameter.
</summary>
</member>
<member name="T:Microsoft.PowerShell.Security.Activities.SetAcl">
<summary>
Activity to invoke the Microsoft.PowerShell.Security\Set-Acl command in a Workflow.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.SetAcl.#ctor">
<summary>
Gets the display name of the command invoked by this activity.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.SetAcl.GetPowerShell(System.Activities.NativeActivityContext)">
<summary>
Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run.
</summary>
<param name="context">The NativeActivityContext for the currently running activity.</param>
<returns>A populated instance of Sytem.Management.Automation.PowerShell</returns>
<remarks>The infrastructure takes responsibility for closing and disposing the PowerShell instance returned.</remarks>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAcl.PSCommandName">
<summary>
Gets the fully qualified name of the command invoked by this activity.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAcl.Path">
<summary>
Provides access to the Path parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAcl.InputObject">
<summary>
Provides access to the InputObject parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAcl.LiteralPath">
<summary>
Provides access to the LiteralPath parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAcl.AclObject">
<summary>
Provides access to the AclObject parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAcl.SecurityDescriptor">
<summary>
Provides access to the SecurityDescriptor parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAcl.CentralAccessPolicy">
<summary>
Provides access to the CentralAccessPolicy parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAcl.ClearCentralAccessPolicy">
<summary>
Provides access to the ClearCentralAccessPolicy parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAcl.Passthru">
<summary>
Provides access to the Passthru parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAcl.Filter">
<summary>
Provides access to the Filter parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAcl.Include">
<summary>
Provides access to the Include parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAcl.Exclude">
<summary>
Provides access to the Exclude parameter.
</summary>
</member>
<member name="T:Microsoft.PowerShell.Security.Activities.SetAuthenticodeSignature">
<summary>
Activity to invoke the Microsoft.PowerShell.Security\Set-AuthenticodeSignature command in a Workflow.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.SetAuthenticodeSignature.#ctor">
<summary>
Gets the display name of the command invoked by this activity.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.SetAuthenticodeSignature.GetPowerShell(System.Activities.NativeActivityContext)">
<summary>
Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run.
</summary>
<param name="context">The NativeActivityContext for the currently running activity.</param>
<returns>A populated instance of Sytem.Management.Automation.PowerShell</returns>
<remarks>The infrastructure takes responsibility for closing and disposing the PowerShell instance returned.</remarks>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAuthenticodeSignature.PSCommandName">
<summary>
Gets the fully qualified name of the command invoked by this activity.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAuthenticodeSignature.Certificate">
<summary>
Provides access to the Certificate parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAuthenticodeSignature.IncludeChain">
<summary>
Provides access to the IncludeChain parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAuthenticodeSignature.TimestampServer">
<summary>
Provides access to the TimestampServer parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAuthenticodeSignature.HashAlgorithm">
<summary>
Provides access to the HashAlgorithm parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAuthenticodeSignature.Force">
<summary>
Provides access to the Force parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAuthenticodeSignature.FilePath">
<summary>
Provides access to the FilePath parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetAuthenticodeSignature.LiteralPath">
<summary>
Provides access to the LiteralPath parameter.
</summary>
</member>
<member name="T:Microsoft.PowerShell.Security.Activities.SetExecutionPolicy">
<summary>
Activity to invoke the Microsoft.PowerShell.Security\Set-ExecutionPolicy command in a Workflow.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.SetExecutionPolicy.#ctor">
<summary>
Gets the display name of the command invoked by this activity.
</summary>
</member>
<member name="M:Microsoft.PowerShell.Security.Activities.SetExecutionPolicy.GetPowerShell(System.Activities.NativeActivityContext)">
<summary>
Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run.
</summary>
<param name="context">The NativeActivityContext for the currently running activity.</param>
<returns>A populated instance of Sytem.Management.Automation.PowerShell</returns>
<remarks>The infrastructure takes responsibility for closing and disposing the PowerShell instance returned.</remarks>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetExecutionPolicy.PSCommandName">
<summary>
Gets the fully qualified name of the command invoked by this activity.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetExecutionPolicy.ExecutionPolicy">
<summary>
Provides access to the ExecutionPolicy parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetExecutionPolicy.Scope">
<summary>
Provides access to the Scope parameter.
</summary>
</member>
<member name="P:Microsoft.PowerShell.Security.Activities.SetExecutionPolicy.Force">
<summary>
Provides access to the Force parameter.
</summary>
</member>
</members>
</doc>

Binary file not shown.

View File

@@ -0,0 +1,23 @@
The MIT License (MIT)
Copyright (c) .NET Foundation and Contributors
All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

Binary file not shown.

View File

@@ -0,0 +1,309 @@
.NET Core uses third-party libraries or other resources that may be
distributed under licenses different than the .NET Core software.
In the event that we accidentally failed to list a required notice, please
bring it to our attention. Post an issue or email us:
dotnet@microsoft.com
The attached notices are provided for information only.
License notice for Slicing-by-8
-------------------------------
http://sourceforge.net/projects/slicing-by-8/
Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved
This software program is licensed subject to the BSD License, available at
http://www.opensource.org/licenses/bsd-license.html.
License notice for Unicode data
-------------------------------
http://www.unicode.org/copyright.html#License
Copyright © 1991-2017 Unicode, Inc. All rights reserved.
Distributed under the Terms of Use in http://www.unicode.org/copyright.html.
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Unicode data files and any associated documentation
(the "Data Files") or Unicode software and any associated documentation
(the "Software") to deal in the Data Files or Software
without restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, and/or sell copies of
the Data Files or Software, and to permit persons to whom the Data Files
or Software are furnished to do so, provided that either
(a) this copyright and permission notice appear with all copies
of the Data Files or Software, or
(b) this copyright and permission notice appear in associated
Documentation.
THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT OF THIRD PARTY RIGHTS.
IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS
NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL
DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THE DATA FILES OR SOFTWARE.
Except as contained in this notice, the name of a copyright holder
shall not be used in advertising or otherwise to promote the sale,
use or other dealings in these Data Files or Software without prior
written authorization of the copyright holder.
License notice for Zlib
-----------------------
https://github.com/madler/zlib
http://zlib.net/zlib_license.html
/* zlib.h -- interface of the 'zlib' general purpose compression library
version 1.2.11, January 15th, 2017
Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
Jean-loup Gailly Mark Adler
jloup@gzip.org madler@alumni.caltech.edu
*/
License notice for Mono
-------------------------------
http://www.mono-project.com/docs/about-mono/
Copyright (c) .NET Foundation Contributors
MIT License
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the Software), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
License notice for International Organization for Standardization
-----------------------------------------------------------------
Portions (C) International Organization for Standardization 1986:
Permission to copy in any form is granted for use with
conforming SGML systems and applications as defined in
ISO 8879, provided this notice is included in all copies.
License notice for Intel
------------------------
"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
License notice for Xamarin and Novell
-------------------------------------
Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
Copyright (c) 2011 Novell, Inc (http://www.novell.com)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
Third party notice for W3C
--------------------------
"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE
Status: This license takes effect 13 May, 2015.
This work is being provided by the copyright holders under the following license.
License
By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions.
Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications:
The full text of this NOTICE in a location viewable to users of the redistributed or derivative work.
Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included.
Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)."
Disclaimers
THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT.
The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders."
License notice for Bit Twiddling Hacks
--------------------------------------
Bit Twiddling Hacks
By Sean Eron Anderson
seander@cs.stanford.edu
Individually, the code snippets here are in the public domain (unless otherwise
noted) — feel free to use them however you please. The aggregate collection and
descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are
distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and
without even the implied warranty of merchantability or fitness for a particular
purpose.
License notice for Brotli
--------------------------------------
Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
compress_fragment.c:
Copyright (c) 2011, Google Inc.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of Google Inc. nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
decode_fuzzer.c:
Copyright (c) 2015 The Chromium Authors. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of Google Inc. nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."

Binary file not shown.

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="utf-8"?><doc>
<assembly>
<name>System.Buffers</name>
</assembly>
<members>
<member name="T:System.Buffers.ArrayPool`1">
<summary>Provides a resource pool that enables reusing instances of type <see cref="T[]"></see>.</summary>
<typeparam name="T">The type of the objects that are in the resource pool.</typeparam>
</member>
<member name="M:System.Buffers.ArrayPool`1.#ctor">
<summary>Initializes a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class.</summary>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create">
<summary>Creates a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class.</summary>
<returns>A new instance of the <see cref="System.Buffers.ArrayPool`1"></see> class.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create(System.Int32,System.Int32)">
<summary>Creates a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class using the specifed configuration.</summary>
<param name="maxArrayLength">The maximum length of an array instance that may be stored in the pool.</param>
<param name="maxArraysPerBucket">The maximum number of array instances that may be stored in each bucket in the pool. The pool groups arrays of similar lengths into buckets for faster access.</param>
<returns>A new instance of the <see cref="System.Buffers.ArrayPool`1"></see> class with the specified configuration.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Rent(System.Int32)">
<summary>Retrieves a buffer that is at least the requested length.</summary>
<param name="minimumLength">The minimum length of the array.</param>
<returns>An array of type <see cref="T[]"></see> that is at least <paramref name="minimumLength">minimumLength</paramref> in length.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)">
<summary>Returns an array to the pool that was previously obtained using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method on the same <see cref="T:System.Buffers.ArrayPool`1"></see> instance.</summary>
<param name="array">A buffer to return to the pool that was previously obtained using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method.</param>
<param name="clearArray">Indicates whether the contents of the buffer should be cleared before reuse. If <paramref name="clearArray">clearArray</paramref> is set to true, and if the pool will store the buffer to enable subsequent reuse, the <see cref="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)"></see> method will clear the <paramref name="array">array</paramref> of its contents so that a subsequent caller using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method will not see the content of the previous caller. If <paramref name="clearArray">clearArray</paramref> is set to false or if the pool will release the buffer, the array&amp;#39;s contents are left unchanged.</param>
</member>
<member name="P:System.Buffers.ArrayPool`1.Shared">
<summary>Gets a shared <see cref="T:System.Buffers.ArrayPool`1"></see> instance.</summary>
<returns>A shared <see cref="System.Buffers.ArrayPool`1"></see> instance.</returns>
</member>
</members>
</doc>

View File

Binary file not shown.

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="utf-8"?><doc>
<assembly>
<name>System.Buffers</name>
</assembly>
<members>
<member name="T:System.Buffers.ArrayPool`1">
<summary>Provides a resource pool that enables reusing instances of type <see cref="T[]"></see>.</summary>
<typeparam name="T">The type of the objects that are in the resource pool.</typeparam>
</member>
<member name="M:System.Buffers.ArrayPool`1.#ctor">
<summary>Initializes a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class.</summary>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create">
<summary>Creates a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class.</summary>
<returns>A new instance of the <see cref="System.Buffers.ArrayPool`1"></see> class.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create(System.Int32,System.Int32)">
<summary>Creates a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class using the specifed configuration.</summary>
<param name="maxArrayLength">The maximum length of an array instance that may be stored in the pool.</param>
<param name="maxArraysPerBucket">The maximum number of array instances that may be stored in each bucket in the pool. The pool groups arrays of similar lengths into buckets for faster access.</param>
<returns>A new instance of the <see cref="System.Buffers.ArrayPool`1"></see> class with the specified configuration.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Rent(System.Int32)">
<summary>Retrieves a buffer that is at least the requested length.</summary>
<param name="minimumLength">The minimum length of the array.</param>
<returns>An array of type <see cref="T[]"></see> that is at least <paramref name="minimumLength">minimumLength</paramref> in length.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)">
<summary>Returns an array to the pool that was previously obtained using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method on the same <see cref="T:System.Buffers.ArrayPool`1"></see> instance.</summary>
<param name="array">A buffer to return to the pool that was previously obtained using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method.</param>
<param name="clearArray">Indicates whether the contents of the buffer should be cleared before reuse. If <paramref name="clearArray">clearArray</paramref> is set to true, and if the pool will store the buffer to enable subsequent reuse, the <see cref="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)"></see> method will clear the <paramref name="array">array</paramref> of its contents so that a subsequent caller using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method will not see the content of the previous caller. If <paramref name="clearArray">clearArray</paramref> is set to false or if the pool will release the buffer, the array&amp;#39;s contents are left unchanged.</param>
</member>
<member name="P:System.Buffers.ArrayPool`1.Shared">
<summary>Gets a shared <see cref="T:System.Buffers.ArrayPool`1"></see> instance.</summary>
<returns>A shared <see cref="System.Buffers.ArrayPool`1"></see> instance.</returns>
</member>
</members>
</doc>

Binary file not shown.

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="utf-8"?><doc>
<assembly>
<name>System.Buffers</name>
</assembly>
<members>
<member name="T:System.Buffers.ArrayPool`1">
<summary>Provides a resource pool that enables reusing instances of type <see cref="T[]"></see>.</summary>
<typeparam name="T">The type of the objects that are in the resource pool.</typeparam>
</member>
<member name="M:System.Buffers.ArrayPool`1.#ctor">
<summary>Initializes a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class.</summary>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create">
<summary>Creates a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class.</summary>
<returns>A new instance of the <see cref="System.Buffers.ArrayPool`1"></see> class.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create(System.Int32,System.Int32)">
<summary>Creates a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class using the specifed configuration.</summary>
<param name="maxArrayLength">The maximum length of an array instance that may be stored in the pool.</param>
<param name="maxArraysPerBucket">The maximum number of array instances that may be stored in each bucket in the pool. The pool groups arrays of similar lengths into buckets for faster access.</param>
<returns>A new instance of the <see cref="System.Buffers.ArrayPool`1"></see> class with the specified configuration.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Rent(System.Int32)">
<summary>Retrieves a buffer that is at least the requested length.</summary>
<param name="minimumLength">The minimum length of the array.</param>
<returns>An array of type <see cref="T[]"></see> that is at least <paramref name="minimumLength">minimumLength</paramref> in length.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)">
<summary>Returns an array to the pool that was previously obtained using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method on the same <see cref="T:System.Buffers.ArrayPool`1"></see> instance.</summary>
<param name="array">A buffer to return to the pool that was previously obtained using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method.</param>
<param name="clearArray">Indicates whether the contents of the buffer should be cleared before reuse. If <paramref name="clearArray">clearArray</paramref> is set to true, and if the pool will store the buffer to enable subsequent reuse, the <see cref="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)"></see> method will clear the <paramref name="array">array</paramref> of its contents so that a subsequent caller using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method will not see the content of the previous caller. If <paramref name="clearArray">clearArray</paramref> is set to false or if the pool will release the buffer, the array&amp;#39;s contents are left unchanged.</param>
</member>
<member name="P:System.Buffers.ArrayPool`1.Shared">
<summary>Gets a shared <see cref="T:System.Buffers.ArrayPool`1"></see> instance.</summary>
<returns>A shared <see cref="System.Buffers.ArrayPool`1"></see> instance.</returns>
</member>
</members>
</doc>

View File

Binary file not shown.

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="utf-8"?><doc>
<assembly>
<name>System.Buffers</name>
</assembly>
<members>
<member name="T:System.Buffers.ArrayPool`1">
<summary>Provides a resource pool that enables reusing instances of type <see cref="T[]"></see>.</summary>
<typeparam name="T">The type of the objects that are in the resource pool.</typeparam>
</member>
<member name="M:System.Buffers.ArrayPool`1.#ctor">
<summary>Initializes a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class.</summary>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create">
<summary>Creates a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class.</summary>
<returns>A new instance of the <see cref="System.Buffers.ArrayPool`1"></see> class.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create(System.Int32,System.Int32)">
<summary>Creates a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class using the specifed configuration.</summary>
<param name="maxArrayLength">The maximum length of an array instance that may be stored in the pool.</param>
<param name="maxArraysPerBucket">The maximum number of array instances that may be stored in each bucket in the pool. The pool groups arrays of similar lengths into buckets for faster access.</param>
<returns>A new instance of the <see cref="System.Buffers.ArrayPool`1"></see> class with the specified configuration.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Rent(System.Int32)">
<summary>Retrieves a buffer that is at least the requested length.</summary>
<param name="minimumLength">The minimum length of the array.</param>
<returns>An array of type <see cref="T[]"></see> that is at least <paramref name="minimumLength">minimumLength</paramref> in length.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)">
<summary>Returns an array to the pool that was previously obtained using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method on the same <see cref="T:System.Buffers.ArrayPool`1"></see> instance.</summary>
<param name="array">A buffer to return to the pool that was previously obtained using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method.</param>
<param name="clearArray">Indicates whether the contents of the buffer should be cleared before reuse. If <paramref name="clearArray">clearArray</paramref> is set to true, and if the pool will store the buffer to enable subsequent reuse, the <see cref="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)"></see> method will clear the <paramref name="array">array</paramref> of its contents so that a subsequent caller using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method will not see the content of the previous caller. If <paramref name="clearArray">clearArray</paramref> is set to false or if the pool will release the buffer, the array&amp;#39;s contents are left unchanged.</param>
</member>
<member name="P:System.Buffers.ArrayPool`1.Shared">
<summary>Gets a shared <see cref="T:System.Buffers.ArrayPool`1"></see> instance.</summary>
<returns>A shared <see cref="System.Buffers.ArrayPool`1"></see> instance.</returns>
</member>
</members>
</doc>

View File

Binary file not shown.

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="utf-8"?><doc>
<assembly>
<name>System.Buffers</name>
</assembly>
<members>
<member name="T:System.Buffers.ArrayPool`1">
<summary>Provides a resource pool that enables reusing instances of type <see cref="T[]"></see>.</summary>
<typeparam name="T">The type of the objects that are in the resource pool.</typeparam>
</member>
<member name="M:System.Buffers.ArrayPool`1.#ctor">
<summary>Initializes a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class.</summary>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create">
<summary>Creates a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class.</summary>
<returns>A new instance of the <see cref="System.Buffers.ArrayPool`1"></see> class.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create(System.Int32,System.Int32)">
<summary>Creates a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class using the specifed configuration.</summary>
<param name="maxArrayLength">The maximum length of an array instance that may be stored in the pool.</param>
<param name="maxArraysPerBucket">The maximum number of array instances that may be stored in each bucket in the pool. The pool groups arrays of similar lengths into buckets for faster access.</param>
<returns>A new instance of the <see cref="System.Buffers.ArrayPool`1"></see> class with the specified configuration.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Rent(System.Int32)">
<summary>Retrieves a buffer that is at least the requested length.</summary>
<param name="minimumLength">The minimum length of the array.</param>
<returns>An array of type <see cref="T[]"></see> that is at least <paramref name="minimumLength">minimumLength</paramref> in length.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)">
<summary>Returns an array to the pool that was previously obtained using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method on the same <see cref="T:System.Buffers.ArrayPool`1"></see> instance.</summary>
<param name="array">A buffer to return to the pool that was previously obtained using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method.</param>
<param name="clearArray">Indicates whether the contents of the buffer should be cleared before reuse. If <paramref name="clearArray">clearArray</paramref> is set to true, and if the pool will store the buffer to enable subsequent reuse, the <see cref="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)"></see> method will clear the <paramref name="array">array</paramref> of its contents so that a subsequent caller using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method will not see the content of the previous caller. If <paramref name="clearArray">clearArray</paramref> is set to false or if the pool will release the buffer, the array&amp;#39;s contents are left unchanged.</param>
</member>
<member name="P:System.Buffers.ArrayPool`1.Shared">
<summary>Gets a shared <see cref="T:System.Buffers.ArrayPool`1"></see> instance.</summary>
<returns>A shared <see cref="System.Buffers.ArrayPool`1"></see> instance.</returns>
</member>
</members>
</doc>

Binary file not shown.

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="utf-8"?><doc>
<assembly>
<name>System.Buffers</name>
</assembly>
<members>
<member name="T:System.Buffers.ArrayPool`1">
<summary>Provides a resource pool that enables reusing instances of type <see cref="T[]"></see>.</summary>
<typeparam name="T">The type of the objects that are in the resource pool.</typeparam>
</member>
<member name="M:System.Buffers.ArrayPool`1.#ctor">
<summary>Initializes a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class.</summary>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create">
<summary>Creates a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class.</summary>
<returns>A new instance of the <see cref="System.Buffers.ArrayPool`1"></see> class.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create(System.Int32,System.Int32)">
<summary>Creates a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class using the specifed configuration.</summary>
<param name="maxArrayLength">The maximum length of an array instance that may be stored in the pool.</param>
<param name="maxArraysPerBucket">The maximum number of array instances that may be stored in each bucket in the pool. The pool groups arrays of similar lengths into buckets for faster access.</param>
<returns>A new instance of the <see cref="System.Buffers.ArrayPool`1"></see> class with the specified configuration.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Rent(System.Int32)">
<summary>Retrieves a buffer that is at least the requested length.</summary>
<param name="minimumLength">The minimum length of the array.</param>
<returns>An array of type <see cref="T[]"></see> that is at least <paramref name="minimumLength">minimumLength</paramref> in length.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)">
<summary>Returns an array to the pool that was previously obtained using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method on the same <see cref="T:System.Buffers.ArrayPool`1"></see> instance.</summary>
<param name="array">A buffer to return to the pool that was previously obtained using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method.</param>
<param name="clearArray">Indicates whether the contents of the buffer should be cleared before reuse. If <paramref name="clearArray">clearArray</paramref> is set to true, and if the pool will store the buffer to enable subsequent reuse, the <see cref="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)"></see> method will clear the <paramref name="array">array</paramref> of its contents so that a subsequent caller using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method will not see the content of the previous caller. If <paramref name="clearArray">clearArray</paramref> is set to false or if the pool will release the buffer, the array&amp;#39;s contents are left unchanged.</param>
</member>
<member name="P:System.Buffers.ArrayPool`1.Shared">
<summary>Gets a shared <see cref="T:System.Buffers.ArrayPool`1"></see> instance.</summary>
<returns>A shared <see cref="System.Buffers.ArrayPool`1"></see> instance.</returns>
</member>
</members>
</doc>

View File

View File

@@ -0,0 +1 @@
7601f4f6225089ffb291dc7d58293c7bbf5c5d4f

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@@ -0,0 +1,23 @@
The MIT License (MIT)
Copyright (c) .NET Foundation and Contributors
All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@@ -0,0 +1,74 @@
## About
<!-- A description of the package and where one can find more documentation -->
Provides uniform access and manipulation of security principals across multiple principal stores. The principal objects in the Account Management API include computer, group and user objects. The principal stores includes:
* Active Directory Domain Services (AD DS)
* Active Directory Lightweight Directory Services (AD LDS)
* Machine SAM (MSAM).
## Key Features
<!-- The key features of this package -->
* Basic directory operations such as creating and updating security principals. The application requires less knowledge of the underlying stores to perform these operations.
* Applications can extend the object model to include new types of directory objects.
* Account management tasks, such as enabling and disabling a user account.
* Cross-store support allows group objects in the Active Directory Domain Services (AD DS), Active Directory Lightweight Directory Services (AD LDS), and Machine SAM (MSAM) databases to contain members from different types of stores.
* Query by example searching, available on the PrincipalSearcher class, enables applications to set properties on a principal object and search the selected store for other objects that contain matching property values.
* Enhanced search on computer, user and group principal objects enables applications to search the selected store for matching principal objects.
* Recursive search, available on the group principal object, enables applications to search a group recursively and return only principal objects that are leaf nodes.
* Credential validation against the Machine SAM, AD DS, and AD LS stores.
* Connections speeds are increased by using the Fast Concurrent Bind (FSB) feature when available. Connection caching decreases the number of ports used.
## How to Use
<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
```cs
// Create the principal context for the usr object.
PrincipalContext ctx = new PrincipalContext(ContextType.Domain, "fabrikam.com", "CN=Users,DC=fabrikam,DC=com", "administrator", "securelyStoredPassword");
// Create the principal user object from the context.
UserPrincipal usr = new UserPrincipal(ctx);
usr.AdvancedSearchFilter.LastLogonTime(DateTime.Now, MatchType.LessThan);
usr.AdvancedSearchFilter.LastLogonTime(DateTime.Yesterday, MatchType.GreaterThan);
// Create a PrincipalSearcher object.
PrincipalSearcher ps = new PrincipalSearcher(usr);
PrincipalSearchResult<Principal> fr = ps.FindAll();
foreach (UserPrincipal u in results)
{
Console.WriteLine(u.Name);
}
```
## Main Types
<!-- The main types provided in this library -->
The main types provided by this library are:
* `System.DirectoryServices.AccountManagement.PrincipalContext`
* `System.DirectoryServices.AccountManagement.PrincipalSearcher`
* `System.DirectoryServices.AccountManagement.Principal` and its subclasses: `System.DirectoryServices.AccountManagement.UserPrincipal`, `System.DirectoryServices.AccountManagement.GroupPrincipal` and `System.DirectoryServices.AccountManagement.ComputerPrincipal`
## Additional Documentation
<!-- Links to further documentation. Remove conceptual documentation if not available for the library. -->
* Conceptual documentations:
- [System.DirectoryServices.AccountManagement Namespace Overview](https://learn.microsoft.com/previous-versions/bb384379(v=vs.90))
- [About System.DirectoryServices.AccountManagement](https://learn.microsoft.com//previous-versions/bb384375(v=vs.90))
- [Using System.DirectoryServices.AccountManagement](https://learn.microsoft.com/previous-versions/bb384384(v=vs.90))
* API documentation
- [System.DirectoryServices.AccountManagement namespace](https://learn.microsoft.com/dotnet/api/system.directoryservices.accountmanagement)
## Related Packages
[System.DirectoryServices](https://learn.microsoft.com/dotnet/api/system.directoryservices)
## Feedback & Contributing
<!-- How to provide feedback on this package and contribute to it -->
System.DirectoryServices.AccountManagement is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime).

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,6 @@
<Project InitialTargets="NETStandardCompatError_System_DirectoryServices_AccountManagement_net8_0">
<Target Name="NETStandardCompatError_System_DirectoryServices_AccountManagement_net8_0"
Condition="'$(SuppressTfmSupportBuildWarnings)' == ''">
<Warning Text="System.DirectoryServices.AccountManagement 9.0.4 doesn't support $(TargetFramework) and has not been tested with it. Consider upgrading your TargetFramework to net8.0 or later. You may also set &lt;SuppressTfmSupportBuildWarnings&gt;true&lt;/SuppressTfmSupportBuildWarnings&gt; in the project file to ignore this warning and attempt to run in this unsupported configuration at your own risk." />
</Target>
</Project>

View File

@@ -0,0 +1,708 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>System.DirectoryServices.AccountManagement</name>
</assembly>
<members>
<member name="M:System.DirectoryServices.AccountManagement.Utils.AreBytesEqual(System.Byte[],System.Byte[])">
<summary>
Performs bytewise comparison of two byte[] arrays
</summary>
<param name="src">Array to compare</param>
<param name="tgt">Array to compare against src</param>
<returns>true if identical, false otherwise</returns>
</member>
<member name="M:System.DirectoryServices.AccountManagement.PrincipalContext.ValidateCredentials(System.String,System.String)">
<summary>
Validate the passed credentials against the directory supplied.
This function will use the best determined method to do the evaluation.
</summary>
</member>
<member name="M:System.DirectoryServices.AccountManagement.PrincipalContext.ValidateCredentials(System.String,System.String,System.DirectoryServices.AccountManagement.ContextOptions)">
<summary>
Validate the passed credentials against the directory supplied.
The supplied options will determine the directory method for credential validation.
</summary>
</member>
<member name="F:System.DirectoryServices.AccountManagement.GroupPrincipal._isSmallGroup">
<summary>
if isSmallGroup has a value, it means we already checked if the group is small
</summary>
</member>
<member name="P:System.DirectoryServices.AccountManagement.GroupPrincipal.SmallGroupMemberSearchResult">
<summary>
cache the search result for the member attribute
it will only be set for small groups!
</summary>
</member>
<member name="M:System.DirectoryServices.AccountManagement.GroupPrincipal.IsSmallGroup">
<summary>
Finds if the group is "small", meaning that it has less than MaxValRange values (usually 1500)
The property list for the searcher of a group has "member" attribute. if there are more results than MaxValRange, there will also be a "member;range=..." attribute
we can cache the result and don't fear from changes through Add/Remove/Save because the completed/pending lists are looked up before the actual values are
</summary>
</member>
<member name="T:System.DirectoryServices.AccountManagement.ADDNConstraintLinkedAttrSet.ResultValidator">
<summary>
Result validator - Delegate function signature.
The result validator should return true if the result is valid
and false if the result is invalid and needs to be skipped.
</summary>
<param name="resultPropCollection">
Directory entry object of the result.
NOTE: ADDNLinkedAttrSet class is responsible for disposing this DirectoryEntry object.
</param>
<returns>
True - if the result is valid (further processing with the result will happen in this case)
False - If the result is invalid. In this case the result will skipped.
</returns>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.EnablePrincipalIfNecessary(System.DirectoryServices.AccountManagement.Principal)">
<summary>
If The enabled property was set on the principal then perform actions
necessary on the principal to set the enabled status to match
the set value.
</summary>
<param name="p"></param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.SetAuthPrincipalEnableStatus(System.DirectoryServices.AccountManagement.AuthenticablePrincipal,System.Boolean)">
<summary>
Read the Account Control From the Directory entry. If the control is read then set or
clear bit 0x2 corresponding to the enable parameter
</summary>
<param name="ap">Principal to modify</param>
<param name="enable">New state of the enable bit</param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.Update(System.DirectoryServices.AccountManagement.Principal)">
<summary>
Apply all changed properties on the principal to the Directory Entry.
Reset the changed status on all the properties
</summary>
<param name="p">Principal to update</param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.Delete(System.DirectoryServices.AccountManagement.Principal)">
<summary>
Delete the directory entry that corresponds to the principal
</summary>
<param name="p">Principal to delete</param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.InitializeUserAccountControl(System.DirectoryServices.AccountManagement.AuthenticablePrincipal)">
<summary>
This method sets the default user account control bits for the new principal
being created in this account store.
</summary>
<param name="p"> Principal to set the user account control bits for </param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.IsLockedOut(System.DirectoryServices.AccountManagement.AuthenticablePrincipal)">
<summary>
Determine if principal account is locked.
First read User-Account-control-computed from the DE. On Uplevel platforms this computed attribute will exist and we can
just check bit 0x0010. On DL platforms this attribute does not exist so we must read lockoutTime and return locked if
this is greater than 0
</summary>
<param name="p">Principal to check status</param>
<returns>true is account is locked, false if not</returns>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.UnlockAccount(System.DirectoryServices.AccountManagement.AuthenticablePrincipal)">
<summary>
Unlock account by setting LockoutTime to 0
</summary>
<param name="p">Principal to unlock</param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.SetPassword(System.DirectoryServices.AccountManagement.AuthenticablePrincipal,System.String)">
<summary>
Set the password on the principal. This function requires administrator privileges
</summary>
<param name="p">Principal to modify</param>
<param name="newPassword">New password</param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.ChangePassword(System.DirectoryServices.AccountManagement.AuthenticablePrincipal,System.String,System.String)">
<summary>
Change the password on the principal
</summary>
<param name="p">Principal to modify</param>
<param name="oldPassword">Current password</param>
<param name="newPassword">New password</param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.ExpirePassword(System.DirectoryServices.AccountManagement.AuthenticablePrincipal)">
<summary>
Expire password by setting pwdLastSet to 0
</summary>
<param name="p"></param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.UnexpirePassword(System.DirectoryServices.AccountManagement.AuthenticablePrincipal)">
<summary>
Unexpire password by setting pwdLastSet to -1
</summary>
<param name="p"></param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.WriteAttribute(System.DirectoryServices.AccountManagement.Principal,System.String,System.Int32)">
<summary>
Set value for attribute on the passed principal. This is only valid for integer attribute types
</summary>
<param name="p"></param>
<param name="attribute"></param>
<param name="value"></param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.IsMemberOfInStore(System.DirectoryServices.AccountManagement.GroupPrincipal,System.DirectoryServices.AccountManagement.Principal)">
First check direct group membership by using DE.IsMember
If this fails then we may have a ForeignSecurityPrincipal so search for Foreign Security Principals
With the p's SID and then call IsMember with the ADS Path returned from the search.
</member>
<member name="P:System.DirectoryServices.AccountManagement.ADStoreCtx.ContextBasePartitionDN">
<summary>
Returns the DN of the Partition to which the user supplied
context base (this.ctxBase) belongs.
</summary>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.AddPropertySetToTypePropListMap(System.Type,System.Collections.Specialized.StringCollection)">
<summary>
Adds the specified Property set to the TypeToPropListMap data structure.
</summary>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.GetEscapedDN(System.String)">
<summary>
This Calls the Native API to Escape the DN
</summary>
<param name="dn"></param>
<returns>Escaped DN</returns>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADUtils.AreSidsInSameDomain(System.Security.Principal.SecurityIdentifier,System.Security.Principal.SecurityIdentifier)">
<summary>
Returns true if the specified SIDs are from the same domain.
Otherwise return false.
</summary>
<param name="sid1"></param>
<param name="sid2"></param>
<returns>Returns true if the specified SIDs are from the same domain.
Otherwise return false
</returns>
</member>
<member name="T:System.DirectoryServices.AccountManagement.SDSCache">
<summary>
This is a class designed to cache DirectoryEntries instead of creating them every time.
</summary>
</member>
<member name="T:System.DirectoryServices.AccountManagement.RangeRetriever">
<summary>
Retrieves all the values of the specified attribute using the supplied DirectoryEntry object.
This function would additionally dispose the supplied DirectoryEntry object in its Dispose() method
if disposeDirEntry parameter is set to true in its constructor.
</summary>
</member>
<member name="M:System.DirectoryServices.AccountManagement.RangeRetriever.#ctor(System.DirectoryServices.DirectoryEntry,System.String,System.Boolean)">
<summary>
Creates a new RangeRetriever object.
</summary>
<param name="de">DirectoryEntry object whose attribute needs to be range retrieved</param>
<param name="propertyName">name of the attribute that needs to be range retrieved, ex: "memberOf"</param>
<param name="disposeDirEntry">
If set to true, the supplied DirectoryEntry will be disposed,
by this object's Dispose() method
</param>
</member>
<member name="P:System.DirectoryServices.AccountManagement.RangeRetriever.CacheValues">
<summary>
If set to true then the attribute values will be cached in the InnerList
</summary>
<remarks>
By default caching is turned off.
</remarks>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADAMStoreCtx.ChangePassword(System.DirectoryServices.AccountManagement.AuthenticablePrincipal,System.String,System.String)">
<summary>
Change the password on the principal
</summary>
<param name="p">Principal to modify</param>
<param name="oldPassword">Current password</param>
<param name="newPassword">New password</param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADAMStoreCtx.InitializeUserAccountControl(System.DirectoryServices.AccountManagement.AuthenticablePrincipal)">
<summary>
This method sets the default user account control bits for the new principal
being created in this account store.
</summary>
<param name="p"> Principal to set the user account control bits for </param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.SAMStoreCtx.InitializeUserAccountControl(System.DirectoryServices.AccountManagement.AuthenticablePrincipal)">
<summary>
This method sets the default user account control bits for the new principal
being created in this account store.
</summary>
<param name="p"> Principal to set the user account control bits for </param>
</member>
<member name="P:System.SR.ContextNoWellKnownObjects">
<summary>The domain's wellKnownObjects attribute does not contain values for the well-known users and/or computers containers.</summary>
</member>
<member name="P:System.SR.ContextNoContainerForMachineCtx">
<summary>A container cannot be specified when using the Machine context.</summary>
</member>
<member name="P:System.SR.ContextNoContainerForApplicationDirectoryCtx">
<summary>A container and name must be specified when using the Application Directory context.</summary>
</member>
<member name="P:System.SR.ContextBadUserPwdCombo">
<summary>The user name and password must either both be null or both must be non-null.</summary>
</member>
<member name="P:System.SR.StoreNotSupportMethod">
<summary>This store does not support this method.</summary>
</member>
<member name="P:System.SR.PrincipalUnsupportPropertyForPlatform">
<summary>Principals in this version of the store do not support the property '{0}'.</summary>
</member>
<member name="P:System.SR.PrincipalUnsupportPropertyForType">
<summary>Principal objects of type {0} in this type of store do not support the property '{1}'.</summary>
</member>
<member name="P:System.SR.PrincipalMustSetContextForSave">
<summary>A PrincipalContext must first be assigned to an unpersisted Principal object before the Principal can be saved.</summary>
</member>
<member name="P:System.SR.PrincipalMustSetContextForNative">
<summary>A PrincipalContext must first be assigned to an unpersisted Principal object before the type of the underlying object can be retrieved.</summary>
</member>
<member name="P:System.SR.PrincipalMustSetContextForProperty">
<summary>A PrincipalContext must first be assigned to the unpersisted Principal object before this property can be accessed.</summary>
</member>
<member name="P:System.SR.PrincipalCantDeleteUnpersisted">
<summary>Unpersisted Principal objects can not be deleted.</summary>
</member>
<member name="P:System.SR.PrincipalAccessedAfterBeingDeleted">
<summary>Cannot access an already deleted object</summary>
</member>
<member name="P:System.SR.PrincipalNotSupportedOnFakePrincipal">
<summary>This Principal object represents a well-known SID and does not correspond to an actual store object. This operation is not supported on it.</summary>
</member>
<member name="P:System.SR.PrincipalMustPersistFirst">
<summary>The Principal object must be persisted before this method can be called.</summary>
</member>
<member name="P:System.SR.PrincipalSearcherPersistedPrincipal">
<summary>Persisted Principal objects cannot be used as query filters.</summary>
</member>
<member name="P:System.SR.PrincipalSearcherMustSetFilter">
<summary>A QueryFilter must first be assigned to the PrincipalSearcher before the query can be performed.</summary>
</member>
<member name="P:System.SR.PrincipalSearcherNoUnderlying">
<summary>There is no underlying searcher for the type of store associated with the PrincipalContext.</summary>
</member>
<member name="P:System.SR.PrincipalSearcherNonReferentialProps">
<summary>Only non-referential properties (properties which do not contain or refer to Principal objects) can be used in the query filter. The Principal object specified as the query filter has referential properties set.</summary>
</member>
<member name="P:System.SR.FindResultEnumInvalidPos">
<summary>The enumerator is positioned before the first element of the collection or after the last element.</summary>
</member>
<member name="P:System.SR.TrackedCollectionNotOneDimensional">
<summary>The destination array must be one-dimensional.</summary>
</member>
<member name="P:System.SR.TrackedCollectionIndexNotInArray">
<summary>The specified index is greater than or equal to than the length of the destination array.</summary>
</member>
<member name="P:System.SR.TrackedCollectionArrayTooSmall">
<summary>The number of elements to copy is greater than the available space in the destination array.</summary>
</member>
<member name="P:System.SR.TrackedCollectionEnumHasChanged">
<summary>The collection was modified after the enumerator was created.</summary>
</member>
<member name="P:System.SR.TrackedCollectionEnumInvalidPos">
<summary>The enumerator is positioned before the first element of the collection or after the last element.</summary>
</member>
<member name="P:System.SR.MultipleMatchingPrincipals">
<summary>Multiple principals contain a matching Identity.</summary>
</member>
<member name="P:System.SR.NoMatchingPrincipalExceptionText">
<summary>No principal matching the specified parameters was found.</summary>
</member>
<member name="P:System.SR.NoMatchingGroupExceptionText">
<summary>No group matching the specified parameters was found.</summary>
</member>
<member name="P:System.SR.PrincipalExistsExceptionText">
<summary>The principal already exists in the store.</summary>
</member>
<member name="P:System.SR.PrincipalCollectionNotOneDimensional">
<summary>The destination array must be one-dimensional.</summary>
</member>
<member name="P:System.SR.PrincipalCollectionIndexNotInArray">
<summary>The specified index is greater than or equal to than the length of the destination array.</summary>
</member>
<member name="P:System.SR.PrincipalCollectionArrayTooSmall">
<summary>The number of elements to copy is greater than the available space in the destination array.</summary>
</member>
<member name="P:System.SR.PrincipalCollectionEnumHasChanged">
<summary>The collection was modified after the enumerator was created.</summary>
</member>
<member name="P:System.SR.PrincipalCollectionEnumInvalidPos">
<summary>The enumerator is positioned before the first element of the collection or after the last element.</summary>
</member>
<member name="P:System.SR.AuthenticablePrincipalMustBeSubtypeOfAuthPrinc">
<summary>The subtype parameter must be either AuthenticablePrincipal or a subtype of AuthenticablePrincipal.</summary>
</member>
<member name="P:System.SR.PasswordInfoChangePwdOnUnpersistedPrinc">
<summary>The ChangePassword method can not be called on an unpersisted Principal object.</summary>
</member>
<member name="P:System.SR.UserMustSetContextForMethod">
<summary>A PrincipalContext must first be assigned to the unpersisted User object before this method can be called.</summary>
</member>
<member name="P:System.SR.UserCouldNotFindCurrent">
<summary>The User object for the current user could not be found. You may not have access to it.</summary>
</member>
<member name="P:System.SR.UnableToRetrieveDomainInfo">
<summary>Information about the domain could not be retrieved ({0}).</summary>
</member>
<member name="P:System.SR.UnableToOpenToken">
<summary>The thread or process token could not be accessed ({0}).</summary>
</member>
<member name="P:System.SR.UnableToRetrieveTokenInfo">
<summary>Information from the thread token could not be retrieved ({0}).</summary>
</member>
<member name="P:System.SR.UnableToRetrievePolicy">
<summary>This computer's policy information could not be retrieved ({0}).</summary>
</member>
<member name="P:System.SR.UnableToImpersonateCredentials">
<summary>The supplied credentials could not be impersonated.</summary>
</member>
<member name="P:System.SR.StoreCtxUnsupportedPrincipalTypeForSave">
<summary>Principal objects of type {0} can not be saved in this store.</summary>
</member>
<member name="P:System.SR.StoreCtxUnsupportedPrincipalTypeForGroupInsert">
<summary>Principal objects of type {0} can not be inserted into groups in this store</summary>
</member>
<member name="P:System.SR.StoreCtxUnsupportedPrincipalTypeForQuery">
<summary>Principal objects of type {0} can not be used in a query against this store.</summary>
</member>
<member name="P:System.SR.StoreCtxUnsupportedPropertyForQuery">
<summary>The property '{0}' can not be used in a query against this store.</summary>
</member>
<member name="P:System.SR.StoreCtxUnsupportedIdentityClaimForQuery">
<summary>This IdentityType can not be used in a query against this store.</summary>
</member>
<member name="P:System.SR.StoreCtxIdentityClaimMustHaveScheme">
<summary>The IdentityClaim to use in the query must have a UrnScheme specified.</summary>
</member>
<member name="P:System.SR.StoreCtxSecurityIdentityClaimBadFormat">
<summary>The SID is not in a valid format.</summary>
</member>
<member name="P:System.SR.StoreCtxGuidIdentityClaimBadFormat">
<summary>The GUID is not in a valid format.</summary>
</member>
<member name="P:System.SR.StoreCtxNT4IdentityClaimWrongForm">
<summary>The samAccountName IdentityType must be in the form "domainname\\userName", "machinename\\userName", or "userName".</summary>
</member>
<member name="P:System.SR.StoreCtxGroupHasUnpersistedInsertedPrincipal">
<summary>The Group object can not be saved until the unpersisted Principal object in its Members property is either saved or removed from the collection.</summary>
</member>
<member name="P:System.SR.StoreCtxNeedValueSecurityIdentityClaimToQuery">
<summary>The Principal object must have a valid SID IdentityType in order to perform this operation.</summary>
</member>
<member name="P:System.SR.ADStoreCtxUnsupportedPrincipalContextForGroupInsert">
<summary>Only domain Principal objects can be inserted into groups in this store.</summary>
</member>
<member name="P:System.SR.ADStoreCtxCouldntGetSIDForGroupMember">
<summary>The SID for one of the Principal objects to be inserted into the group could not be retrieved from the store.</summary>
</member>
<member name="P:System.SR.ADStoreCtxMustBeContainer">
<summary>Domain PrincipalContext objects must be rooted at a directory entry that is a container.</summary>
</member>
<member name="P:System.SR.ADStoreCtxCantRetrieveObjectSidForCrossStore">
<summary>While trying to resolve a cross-store reference, the objectSid could not be retrieved from the representation of the target principal.</summary>
</member>
<member name="P:System.SR.ADStoreCtxCantResolveSidForCrossStore">
<summary>While trying to resolve a cross-store reference, the SID of the target principal could not be resolved. The error code is {0}.</summary>
</member>
<member name="P:System.SR.ADStoreCtxFailedFindCrossStoreTarget">
<summary>While trying to resolve a cross-store reference, the target principal could not be found in the domain indicated by the principal's SID.</summary>
</member>
<member name="P:System.SR.ADStoreCtxUnableToReadExistingAccountControlFlagsToEnable">
<summary>The principal could not be enabled because the existing account control flags could not be read.</summary>
</member>
<member name="P:System.SR.ADStoreCtxUnableToReadExistingAccountControlFlagsForUpdate">
<summary>The principal could not be updated because the existing account control flags could not be read.</summary>
</member>
<member name="P:System.SR.ADStoreCtxUnableToReadExistingGroupTypeFlagsForUpdate">
<summary>The group could not be updated because the existing group type flags could not be read.</summary>
</member>
<member name="P:System.SR.ADStoreCtxCantClearGroup">
<summary>The Group object's Members property can not be cleared because one or more of the group's members have this group as their primary group.</summary>
</member>
<member name="P:System.SR.ADStoreCtxCantRemoveMemberFromGroup">
<summary>The member can not be removed from the Group object's Members property because it has this group as its primary group.</summary>
</member>
<member name="P:System.SR.ADStoreCtxNoComputerPasswordChange">
<summary>Password change operation is not supported for Computer accounts in this store.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxUnableToRetrieveVersion">
<summary>The operating system version of the target computer could not be retrieved.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxUnableToRetrieveMachineName">
<summary>The name of the target computer could not be retrieved.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxUnableToRetrieveFlatMachineName">
<summary>The flat name of the target computer could not be retrieved ({0}).</summary>
</member>
<member name="P:System.SR.SAMStoreCtxNoComputerPasswordSet">
<summary>Computer accounts in this store can not have their passwords reset or changed.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxNoComputerPasswordExpire">
<summary>Computer accounts in this store can not have their passwords expired.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxCouldntGetSIDForGroupMember">
<summary>One of the Principal objects to be inserted into or removed from the group's membership does not contain a SID.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxFailedToClearGroup">
<summary>An error ({0}) occurred while trying to clear the group membership.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxCantRetrieveObjectSidForCrossStore">
<summary>While trying to resolve a cross-store reference, the objectSid could not be retrieved from the representation of the target principal.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxCantResolveSidForCrossStore">
<summary>While trying to resolve a cross-store reference, the SID of the target principal could not be resolved. The error code is {0}.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxFailedFindCrossStoreTarget">
<summary>While trying to resolve a cross-store reference, the target principal could not be found in the domain indicated by the principal's SID.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxErrorEnumeratingGroup">
<summary>An error ({0}) occurred while enumerating the group membership. The member's SID could not be resolved.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxLocalGroupsOnly">
<summary>Only local groups are supported by this store.</summary>
</member>
<member name="P:System.SR.AuthZFailedToRetrieveGroupList">
<summary>While trying to retrieve the authorization groups, an error ({0}) occurred.</summary>
</member>
<member name="P:System.SR.AuthZNotSupported">
<summary>Retrieval of authorization groups is not supported by this platform.</summary>
</member>
<member name="P:System.SR.AuthZErrorEnumeratingGroups">
<summary>An error ({0}) occurred while enumerating the groups. The group's SID could not be resolved.</summary>
</member>
<member name="P:System.SR.AuthZCantFindGroup">
<summary>An error occurred while enumerating the groups. The group could not be found.</summary>
</member>
<member name="P:System.SR.ContextOptionsNotValidForMachineStore">
<summary>The options value is invalid. The Machine store only supports Negotiate.</summary>
</member>
<member name="P:System.SR.PassedContextTypeDoesNotMatchDetectedType">
<summary>The supplied context type does not match the server contacted. The server type is {0}.</summary>
</member>
<member name="P:System.SR.NullArguments">
<summary>The supplied arguments cannot be null.</summary>
</member>
<member name="P:System.SR.InvalidStringValueForStore">
<summary>Empty string is not supported by the property {0} for this store type.</summary>
</member>
<member name="P:System.SR.ServerDown">
<summary>The server could not be contacted.</summary>
</member>
<member name="P:System.SR.InvalidPropertyForStore">
<summary>Property is not valid for this store type.</summary>
</member>
<member name="P:System.SR.NameMustBeSetToPersistPrincipal">
<summary>SamAccountName or Name must be assigned to a newly-created Principal object in this store prior to saving.</summary>
</member>
<member name="P:System.SR.ExtensionInvalidClassDefinitionConstructor">
<summary>Extension class must define a constructor that accepts a PrincipalContext argument.</summary>
</member>
<member name="P:System.SR.ExtensionInvalidClassAttributes">
<summary>Extension class must set DirectoryObjectClassAttribute and DirectoryRdnPrefixAttribute.</summary>
</member>
<member name="P:System.SR.SaveToMustHaveSamecontextType">
<summary>The target context must have the same type as the object's current context.</summary>
</member>
<member name="P:System.SR.ComputerInvalidForAppDirectoryStore">
<summary>The ComputerPrincipal object is not supported by the ApplicationDirectory store.</summary>
</member>
<member name="P:System.SR.SaveToNotSupportedAgainstMachineStore">
<summary>Saving to an alternate context is not supported by the Machine store.</summary>
</member>
<member name="P:System.SR.InvalidContextOptionsForMachine">
<summary>The ContextOptions passed are invalid for the Machine store. Only ContextOptions.Negotiate is supported.</summary>
</member>
<member name="P:System.SR.InvalidContextOptionsForAD">
<summary>The ContextOptions passed are invalid for this store type. Either Negotiate or SimpleBind must be specified and they cannot be combined.</summary>
</member>
<member name="P:System.SR.InvalidExtensionCollectionType">
<summary>Collections whose elements are another collection cannot be set by ExtensionClasses.</summary>
</member>
<member name="P:System.SR.ADAMStoreUnableToPopulateSchemaList">
<summary>The store is unable to populate a list of bindable object types. Check access to the Schema container.</summary>
</member>
<member name="P:System.SR.StoreCtxMultipleFiltersForPropertyUnsupported">
<summary>Multiple filters on the property {0} are not supported.</summary>
</member>
<member name="P:System.SR.AdsiNotInstalled">
<summary>Active Directory Client is not installed on this computer.</summary>
</member>
<member name="P:System.SR.DirectoryServicesAccountManagement_PlatformNotSupported">
<summary>System.DirectoryServices.AccountManagement is not supported on this platform.</summary>
</member>
<member name="T:Interop.BOOL">
<summary>
Blittable version of Windows BOOL type. It is convenient in situations where
manual marshalling is required, or to avoid overhead of regular bool marshalling.
</summary>
<remarks>
Some Windows APIs return arbitrary integer values although the return type is defined
as BOOL. It is best to never compare BOOL to TRUE. Always use bResult != BOOL.FALSE
or bResult == BOOL.FALSE .
</remarks>
</member>
<member name="T:Interop.BOOLEAN">
<summary>
Blittable version of Windows BOOLEAN type. It is convenient in situations where
manual marshalling is required, or to avoid overhead of regular bool marshalling.
</summary>
<remarks>
Some Windows APIs return arbitrary integer values although the return type is defined
as BOOLEAN. It is best to never compare BOOLEAN to TRUE. Always use bResult != BOOLEAN.FALSE
or bResult == BOOLEAN.FALSE .
</remarks>
</member>
<member name="T:Interop.OBJECT_ATTRIBUTES">
<summary>
<a href="https://msdn.microsoft.com/en-us/library/windows/hardware/ff557749.aspx">OBJECT_ATTRIBUTES</a> structure.
The OBJECT_ATTRIBUTES structure specifies attributes that can be applied to objects or object handles by routines
that create objects and/or return handles to objects.
</summary>
</member>
<member name="F:Interop.OBJECT_ATTRIBUTES.RootDirectory">
<summary>
Optional handle to root object directory for the given ObjectName.
Can be a file system directory or object manager directory.
</summary>
</member>
<member name="F:Interop.OBJECT_ATTRIBUTES.ObjectName">
<summary>
Name of the object. Must be fully qualified if RootDirectory isn't set.
Otherwise is relative to RootDirectory.
</summary>
</member>
<member name="F:Interop.OBJECT_ATTRIBUTES.SecurityDescriptor">
<summary>
If null, object will receive default security settings.
</summary>
</member>
<member name="F:Interop.OBJECT_ATTRIBUTES.SecurityQualityOfService">
<summary>
Optional quality of service to be applied to the object. Used to indicate
security impersonation level and context tracking mode (dynamic or static).
</summary>
</member>
<member name="M:Interop.OBJECT_ATTRIBUTES.#ctor(Interop.UNICODE_STRING*,Interop.ObjectAttributes,System.IntPtr,Interop.SECURITY_QUALITY_OF_SERVICE*)">
<summary>
Equivalent of InitializeObjectAttributes macro with the exception that you can directly set SQOS.
</summary>
</member>
<member name="F:Interop.ObjectAttributes.OBJ_INHERIT">
<summary>
This handle can be inherited by child processes of the current process.
</summary>
</member>
<member name="F:Interop.ObjectAttributes.OBJ_PERMANENT">
<summary>
This flag only applies to objects that are named within the object manager.
By default, such objects are deleted when all open handles to them are closed.
If this flag is specified, the object is not deleted when all open handles are closed.
</summary>
</member>
<member name="F:Interop.ObjectAttributes.OBJ_EXCLUSIVE">
<summary>
Only a single handle can be open for this object.
</summary>
</member>
<member name="F:Interop.ObjectAttributes.OBJ_CASE_INSENSITIVE">
<summary>
Lookups for this object should be case insensitive.
</summary>
</member>
<member name="F:Interop.ObjectAttributes.OBJ_OPENIF">
<summary>
Create on existing object should open, not fail with STATUS_OBJECT_NAME_COLLISION.
</summary>
</member>
<member name="F:Interop.ObjectAttributes.OBJ_OPENLINK">
<summary>
Open the symbolic link, not its target.
</summary>
</member>
<member name="T:Interop.SECURITY_QUALITY_OF_SERVICE">
<summary>
<a href="https://learn.microsoft.com/windows/win32/api/winnt/ns-winnt-security_quality_of_service">SECURITY_QUALITY_OF_SERVICE</a> structure.
Used to support client impersonation. Client specifies this to a server to allow
it to impersonate the client.
</summary>
</member>
<member name="T:Interop.ImpersonationLevel">
<summary>
<a href="https://msdn.microsoft.com/en-us/library/windows/desktop/aa379572.aspx">SECURITY_IMPERSONATION_LEVEL</a> enumeration values.
[SECURITY_IMPERSONATION_LEVEL]
</summary>
</member>
<member name="F:Interop.ImpersonationLevel.Anonymous">
<summary>
The server process cannot obtain identification information about the client and cannot impersonate the client.
[SecurityAnonymous]
</summary>
</member>
<member name="F:Interop.ImpersonationLevel.Identification">
<summary>
The server process can obtain identification information about the client, but cannot impersonate the client.
[SecurityIdentification]
</summary>
</member>
<member name="F:Interop.ImpersonationLevel.Impersonation">
<summary>
The server process can impersonate the client's security context on it's local system.
[SecurityImpersonation]
</summary>
</member>
<member name="F:Interop.ImpersonationLevel.Delegation">
<summary>
The server process can impersonate the client's security context on remote systems.
[SecurityDelegation]
</summary>
</member>
<member name="T:Interop.ContextTrackingMode">
<summary>
<a href="https://msdn.microsoft.com/en-us/library/cc234317.aspx">SECURITY_CONTEXT_TRACKING_MODE</a>
</summary>
</member>
<member name="F:Interop.ContextTrackingMode.Static">
<summary>
The server is given a snapshot of the client's security context.
[SECURITY_STATIC_TRACKING]
</summary>
</member>
<member name="F:Interop.ContextTrackingMode.Dynamic">
<summary>
The server is continually updated with changes.
[SECURITY_DYNAMIC_TRACKING]
</summary>
</member>
<member name="F:Interop.UNICODE_STRING.Length">
<summary>
Length in bytes, not including the null terminator, if any.
</summary>
</member>
<member name="F:Interop.UNICODE_STRING.MaximumLength">
<summary>
Max size of the buffer in bytes
</summary>
</member>
<member name="T:Interop.Advapi32.TOKEN_INFORMATION_CLASS">
<summary>
<a href="https://msdn.microsoft.com/en-us/library/windows/desktop/aa379626.aspx">TOKEN_INFORMATION_CLASS</a> enumeration.
</summary>
</member>
</members>
</doc>

View File

@@ -0,0 +1,708 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>System.DirectoryServices.AccountManagement</name>
</assembly>
<members>
<member name="M:System.DirectoryServices.AccountManagement.Utils.AreBytesEqual(System.Byte[],System.Byte[])">
<summary>
Performs bytewise comparison of two byte[] arrays
</summary>
<param name="src">Array to compare</param>
<param name="tgt">Array to compare against src</param>
<returns>true if identical, false otherwise</returns>
</member>
<member name="M:System.DirectoryServices.AccountManagement.PrincipalContext.ValidateCredentials(System.String,System.String)">
<summary>
Validate the passed credentials against the directory supplied.
This function will use the best determined method to do the evaluation.
</summary>
</member>
<member name="M:System.DirectoryServices.AccountManagement.PrincipalContext.ValidateCredentials(System.String,System.String,System.DirectoryServices.AccountManagement.ContextOptions)">
<summary>
Validate the passed credentials against the directory supplied.
The supplied options will determine the directory method for credential validation.
</summary>
</member>
<member name="F:System.DirectoryServices.AccountManagement.GroupPrincipal._isSmallGroup">
<summary>
if isSmallGroup has a value, it means we already checked if the group is small
</summary>
</member>
<member name="P:System.DirectoryServices.AccountManagement.GroupPrincipal.SmallGroupMemberSearchResult">
<summary>
cache the search result for the member attribute
it will only be set for small groups!
</summary>
</member>
<member name="M:System.DirectoryServices.AccountManagement.GroupPrincipal.IsSmallGroup">
<summary>
Finds if the group is "small", meaning that it has less than MaxValRange values (usually 1500)
The property list for the searcher of a group has "member" attribute. if there are more results than MaxValRange, there will also be a "member;range=..." attribute
we can cache the result and don't fear from changes through Add/Remove/Save because the completed/pending lists are looked up before the actual values are
</summary>
</member>
<member name="T:System.DirectoryServices.AccountManagement.ADDNConstraintLinkedAttrSet.ResultValidator">
<summary>
Result validator - Delegate function signature.
The result validator should return true if the result is valid
and false if the result is invalid and needs to be skipped.
</summary>
<param name="resultPropCollection">
Directory entry object of the result.
NOTE: ADDNLinkedAttrSet class is responsible for disposing this DirectoryEntry object.
</param>
<returns>
True - if the result is valid (further processing with the result will happen in this case)
False - If the result is invalid. In this case the result will skipped.
</returns>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.EnablePrincipalIfNecessary(System.DirectoryServices.AccountManagement.Principal)">
<summary>
If The enabled property was set on the principal then perform actions
necessary on the principal to set the enabled status to match
the set value.
</summary>
<param name="p"></param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.SetAuthPrincipalEnableStatus(System.DirectoryServices.AccountManagement.AuthenticablePrincipal,System.Boolean)">
<summary>
Read the Account Control From the Directory entry. If the control is read then set or
clear bit 0x2 corresponding to the enable parameter
</summary>
<param name="ap">Principal to modify</param>
<param name="enable">New state of the enable bit</param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.Update(System.DirectoryServices.AccountManagement.Principal)">
<summary>
Apply all changed properties on the principal to the Directory Entry.
Reset the changed status on all the properties
</summary>
<param name="p">Principal to update</param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.Delete(System.DirectoryServices.AccountManagement.Principal)">
<summary>
Delete the directory entry that corresponds to the principal
</summary>
<param name="p">Principal to delete</param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.InitializeUserAccountControl(System.DirectoryServices.AccountManagement.AuthenticablePrincipal)">
<summary>
This method sets the default user account control bits for the new principal
being created in this account store.
</summary>
<param name="p"> Principal to set the user account control bits for </param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.IsLockedOut(System.DirectoryServices.AccountManagement.AuthenticablePrincipal)">
<summary>
Determine if principal account is locked.
First read User-Account-control-computed from the DE. On Uplevel platforms this computed attribute will exist and we can
just check bit 0x0010. On DL platforms this attribute does not exist so we must read lockoutTime and return locked if
this is greater than 0
</summary>
<param name="p">Principal to check status</param>
<returns>true is account is locked, false if not</returns>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.UnlockAccount(System.DirectoryServices.AccountManagement.AuthenticablePrincipal)">
<summary>
Unlock account by setting LockoutTime to 0
</summary>
<param name="p">Principal to unlock</param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.SetPassword(System.DirectoryServices.AccountManagement.AuthenticablePrincipal,System.String)">
<summary>
Set the password on the principal. This function requires administrator privileges
</summary>
<param name="p">Principal to modify</param>
<param name="newPassword">New password</param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.ChangePassword(System.DirectoryServices.AccountManagement.AuthenticablePrincipal,System.String,System.String)">
<summary>
Change the password on the principal
</summary>
<param name="p">Principal to modify</param>
<param name="oldPassword">Current password</param>
<param name="newPassword">New password</param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.ExpirePassword(System.DirectoryServices.AccountManagement.AuthenticablePrincipal)">
<summary>
Expire password by setting pwdLastSet to 0
</summary>
<param name="p"></param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.UnexpirePassword(System.DirectoryServices.AccountManagement.AuthenticablePrincipal)">
<summary>
Unexpire password by setting pwdLastSet to -1
</summary>
<param name="p"></param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.WriteAttribute(System.DirectoryServices.AccountManagement.Principal,System.String,System.Int32)">
<summary>
Set value for attribute on the passed principal. This is only valid for integer attribute types
</summary>
<param name="p"></param>
<param name="attribute"></param>
<param name="value"></param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.IsMemberOfInStore(System.DirectoryServices.AccountManagement.GroupPrincipal,System.DirectoryServices.AccountManagement.Principal)">
First check direct group membership by using DE.IsMember
If this fails then we may have a ForeignSecurityPrincipal so search for Foreign Security Principals
With the p's SID and then call IsMember with the ADS Path returned from the search.
</member>
<member name="P:System.DirectoryServices.AccountManagement.ADStoreCtx.ContextBasePartitionDN">
<summary>
Returns the DN of the Partition to which the user supplied
context base (this.ctxBase) belongs.
</summary>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.AddPropertySetToTypePropListMap(System.Type,System.Collections.Specialized.StringCollection)">
<summary>
Adds the specified Property set to the TypeToPropListMap data structure.
</summary>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADStoreCtx.GetEscapedDN(System.String)">
<summary>
This Calls the Native API to Escape the DN
</summary>
<param name="dn"></param>
<returns>Escaped DN</returns>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADUtils.AreSidsInSameDomain(System.Security.Principal.SecurityIdentifier,System.Security.Principal.SecurityIdentifier)">
<summary>
Returns true if the specified SIDs are from the same domain.
Otherwise return false.
</summary>
<param name="sid1"></param>
<param name="sid2"></param>
<returns>Returns true if the specified SIDs are from the same domain.
Otherwise return false
</returns>
</member>
<member name="T:System.DirectoryServices.AccountManagement.SDSCache">
<summary>
This is a class designed to cache DirectoryEntries instead of creating them every time.
</summary>
</member>
<member name="T:System.DirectoryServices.AccountManagement.RangeRetriever">
<summary>
Retrieves all the values of the specified attribute using the supplied DirectoryEntry object.
This function would additionally dispose the supplied DirectoryEntry object in its Dispose() method
if disposeDirEntry parameter is set to true in its constructor.
</summary>
</member>
<member name="M:System.DirectoryServices.AccountManagement.RangeRetriever.#ctor(System.DirectoryServices.DirectoryEntry,System.String,System.Boolean)">
<summary>
Creates a new RangeRetriever object.
</summary>
<param name="de">DirectoryEntry object whose attribute needs to be range retrieved</param>
<param name="propertyName">name of the attribute that needs to be range retrieved, ex: "memberOf"</param>
<param name="disposeDirEntry">
If set to true, the supplied DirectoryEntry will be disposed,
by this object's Dispose() method
</param>
</member>
<member name="P:System.DirectoryServices.AccountManagement.RangeRetriever.CacheValues">
<summary>
If set to true then the attribute values will be cached in the InnerList
</summary>
<remarks>
By default caching is turned off.
</remarks>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADAMStoreCtx.ChangePassword(System.DirectoryServices.AccountManagement.AuthenticablePrincipal,System.String,System.String)">
<summary>
Change the password on the principal
</summary>
<param name="p">Principal to modify</param>
<param name="oldPassword">Current password</param>
<param name="newPassword">New password</param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.ADAMStoreCtx.InitializeUserAccountControl(System.DirectoryServices.AccountManagement.AuthenticablePrincipal)">
<summary>
This method sets the default user account control bits for the new principal
being created in this account store.
</summary>
<param name="p"> Principal to set the user account control bits for </param>
</member>
<member name="M:System.DirectoryServices.AccountManagement.SAMStoreCtx.InitializeUserAccountControl(System.DirectoryServices.AccountManagement.AuthenticablePrincipal)">
<summary>
This method sets the default user account control bits for the new principal
being created in this account store.
</summary>
<param name="p"> Principal to set the user account control bits for </param>
</member>
<member name="P:System.SR.ContextNoWellKnownObjects">
<summary>The domain's wellKnownObjects attribute does not contain values for the well-known users and/or computers containers.</summary>
</member>
<member name="P:System.SR.ContextNoContainerForMachineCtx">
<summary>A container cannot be specified when using the Machine context.</summary>
</member>
<member name="P:System.SR.ContextNoContainerForApplicationDirectoryCtx">
<summary>A container and name must be specified when using the Application Directory context.</summary>
</member>
<member name="P:System.SR.ContextBadUserPwdCombo">
<summary>The user name and password must either both be null or both must be non-null.</summary>
</member>
<member name="P:System.SR.StoreNotSupportMethod">
<summary>This store does not support this method.</summary>
</member>
<member name="P:System.SR.PrincipalUnsupportPropertyForPlatform">
<summary>Principals in this version of the store do not support the property '{0}'.</summary>
</member>
<member name="P:System.SR.PrincipalUnsupportPropertyForType">
<summary>Principal objects of type {0} in this type of store do not support the property '{1}'.</summary>
</member>
<member name="P:System.SR.PrincipalMustSetContextForSave">
<summary>A PrincipalContext must first be assigned to an unpersisted Principal object before the Principal can be saved.</summary>
</member>
<member name="P:System.SR.PrincipalMustSetContextForNative">
<summary>A PrincipalContext must first be assigned to an unpersisted Principal object before the type of the underlying object can be retrieved.</summary>
</member>
<member name="P:System.SR.PrincipalMustSetContextForProperty">
<summary>A PrincipalContext must first be assigned to the unpersisted Principal object before this property can be accessed.</summary>
</member>
<member name="P:System.SR.PrincipalCantDeleteUnpersisted">
<summary>Unpersisted Principal objects can not be deleted.</summary>
</member>
<member name="P:System.SR.PrincipalAccessedAfterBeingDeleted">
<summary>Cannot access an already deleted object</summary>
</member>
<member name="P:System.SR.PrincipalNotSupportedOnFakePrincipal">
<summary>This Principal object represents a well-known SID and does not correspond to an actual store object. This operation is not supported on it.</summary>
</member>
<member name="P:System.SR.PrincipalMustPersistFirst">
<summary>The Principal object must be persisted before this method can be called.</summary>
</member>
<member name="P:System.SR.PrincipalSearcherPersistedPrincipal">
<summary>Persisted Principal objects cannot be used as query filters.</summary>
</member>
<member name="P:System.SR.PrincipalSearcherMustSetFilter">
<summary>A QueryFilter must first be assigned to the PrincipalSearcher before the query can be performed.</summary>
</member>
<member name="P:System.SR.PrincipalSearcherNoUnderlying">
<summary>There is no underlying searcher for the type of store associated with the PrincipalContext.</summary>
</member>
<member name="P:System.SR.PrincipalSearcherNonReferentialProps">
<summary>Only non-referential properties (properties which do not contain or refer to Principal objects) can be used in the query filter. The Principal object specified as the query filter has referential properties set.</summary>
</member>
<member name="P:System.SR.FindResultEnumInvalidPos">
<summary>The enumerator is positioned before the first element of the collection or after the last element.</summary>
</member>
<member name="P:System.SR.TrackedCollectionNotOneDimensional">
<summary>The destination array must be one-dimensional.</summary>
</member>
<member name="P:System.SR.TrackedCollectionIndexNotInArray">
<summary>The specified index is greater than or equal to than the length of the destination array.</summary>
</member>
<member name="P:System.SR.TrackedCollectionArrayTooSmall">
<summary>The number of elements to copy is greater than the available space in the destination array.</summary>
</member>
<member name="P:System.SR.TrackedCollectionEnumHasChanged">
<summary>The collection was modified after the enumerator was created.</summary>
</member>
<member name="P:System.SR.TrackedCollectionEnumInvalidPos">
<summary>The enumerator is positioned before the first element of the collection or after the last element.</summary>
</member>
<member name="P:System.SR.MultipleMatchingPrincipals">
<summary>Multiple principals contain a matching Identity.</summary>
</member>
<member name="P:System.SR.NoMatchingPrincipalExceptionText">
<summary>No principal matching the specified parameters was found.</summary>
</member>
<member name="P:System.SR.NoMatchingGroupExceptionText">
<summary>No group matching the specified parameters was found.</summary>
</member>
<member name="P:System.SR.PrincipalExistsExceptionText">
<summary>The principal already exists in the store.</summary>
</member>
<member name="P:System.SR.PrincipalCollectionNotOneDimensional">
<summary>The destination array must be one-dimensional.</summary>
</member>
<member name="P:System.SR.PrincipalCollectionIndexNotInArray">
<summary>The specified index is greater than or equal to than the length of the destination array.</summary>
</member>
<member name="P:System.SR.PrincipalCollectionArrayTooSmall">
<summary>The number of elements to copy is greater than the available space in the destination array.</summary>
</member>
<member name="P:System.SR.PrincipalCollectionEnumHasChanged">
<summary>The collection was modified after the enumerator was created.</summary>
</member>
<member name="P:System.SR.PrincipalCollectionEnumInvalidPos">
<summary>The enumerator is positioned before the first element of the collection or after the last element.</summary>
</member>
<member name="P:System.SR.AuthenticablePrincipalMustBeSubtypeOfAuthPrinc">
<summary>The subtype parameter must be either AuthenticablePrincipal or a subtype of AuthenticablePrincipal.</summary>
</member>
<member name="P:System.SR.PasswordInfoChangePwdOnUnpersistedPrinc">
<summary>The ChangePassword method can not be called on an unpersisted Principal object.</summary>
</member>
<member name="P:System.SR.UserMustSetContextForMethod">
<summary>A PrincipalContext must first be assigned to the unpersisted User object before this method can be called.</summary>
</member>
<member name="P:System.SR.UserCouldNotFindCurrent">
<summary>The User object for the current user could not be found. You may not have access to it.</summary>
</member>
<member name="P:System.SR.UnableToRetrieveDomainInfo">
<summary>Information about the domain could not be retrieved ({0}).</summary>
</member>
<member name="P:System.SR.UnableToOpenToken">
<summary>The thread or process token could not be accessed ({0}).</summary>
</member>
<member name="P:System.SR.UnableToRetrieveTokenInfo">
<summary>Information from the thread token could not be retrieved ({0}).</summary>
</member>
<member name="P:System.SR.UnableToRetrievePolicy">
<summary>This computer's policy information could not be retrieved ({0}).</summary>
</member>
<member name="P:System.SR.UnableToImpersonateCredentials">
<summary>The supplied credentials could not be impersonated.</summary>
</member>
<member name="P:System.SR.StoreCtxUnsupportedPrincipalTypeForSave">
<summary>Principal objects of type {0} can not be saved in this store.</summary>
</member>
<member name="P:System.SR.StoreCtxUnsupportedPrincipalTypeForGroupInsert">
<summary>Principal objects of type {0} can not be inserted into groups in this store</summary>
</member>
<member name="P:System.SR.StoreCtxUnsupportedPrincipalTypeForQuery">
<summary>Principal objects of type {0} can not be used in a query against this store.</summary>
</member>
<member name="P:System.SR.StoreCtxUnsupportedPropertyForQuery">
<summary>The property '{0}' can not be used in a query against this store.</summary>
</member>
<member name="P:System.SR.StoreCtxUnsupportedIdentityClaimForQuery">
<summary>This IdentityType can not be used in a query against this store.</summary>
</member>
<member name="P:System.SR.StoreCtxIdentityClaimMustHaveScheme">
<summary>The IdentityClaim to use in the query must have a UrnScheme specified.</summary>
</member>
<member name="P:System.SR.StoreCtxSecurityIdentityClaimBadFormat">
<summary>The SID is not in a valid format.</summary>
</member>
<member name="P:System.SR.StoreCtxGuidIdentityClaimBadFormat">
<summary>The GUID is not in a valid format.</summary>
</member>
<member name="P:System.SR.StoreCtxNT4IdentityClaimWrongForm">
<summary>The samAccountName IdentityType must be in the form "domainname\\userName", "machinename\\userName", or "userName".</summary>
</member>
<member name="P:System.SR.StoreCtxGroupHasUnpersistedInsertedPrincipal">
<summary>The Group object can not be saved until the unpersisted Principal object in its Members property is either saved or removed from the collection.</summary>
</member>
<member name="P:System.SR.StoreCtxNeedValueSecurityIdentityClaimToQuery">
<summary>The Principal object must have a valid SID IdentityType in order to perform this operation.</summary>
</member>
<member name="P:System.SR.ADStoreCtxUnsupportedPrincipalContextForGroupInsert">
<summary>Only domain Principal objects can be inserted into groups in this store.</summary>
</member>
<member name="P:System.SR.ADStoreCtxCouldntGetSIDForGroupMember">
<summary>The SID for one of the Principal objects to be inserted into the group could not be retrieved from the store.</summary>
</member>
<member name="P:System.SR.ADStoreCtxMustBeContainer">
<summary>Domain PrincipalContext objects must be rooted at a directory entry that is a container.</summary>
</member>
<member name="P:System.SR.ADStoreCtxCantRetrieveObjectSidForCrossStore">
<summary>While trying to resolve a cross-store reference, the objectSid could not be retrieved from the representation of the target principal.</summary>
</member>
<member name="P:System.SR.ADStoreCtxCantResolveSidForCrossStore">
<summary>While trying to resolve a cross-store reference, the SID of the target principal could not be resolved. The error code is {0}.</summary>
</member>
<member name="P:System.SR.ADStoreCtxFailedFindCrossStoreTarget">
<summary>While trying to resolve a cross-store reference, the target principal could not be found in the domain indicated by the principal's SID.</summary>
</member>
<member name="P:System.SR.ADStoreCtxUnableToReadExistingAccountControlFlagsToEnable">
<summary>The principal could not be enabled because the existing account control flags could not be read.</summary>
</member>
<member name="P:System.SR.ADStoreCtxUnableToReadExistingAccountControlFlagsForUpdate">
<summary>The principal could not be updated because the existing account control flags could not be read.</summary>
</member>
<member name="P:System.SR.ADStoreCtxUnableToReadExistingGroupTypeFlagsForUpdate">
<summary>The group could not be updated because the existing group type flags could not be read.</summary>
</member>
<member name="P:System.SR.ADStoreCtxCantClearGroup">
<summary>The Group object's Members property can not be cleared because one or more of the group's members have this group as their primary group.</summary>
</member>
<member name="P:System.SR.ADStoreCtxCantRemoveMemberFromGroup">
<summary>The member can not be removed from the Group object's Members property because it has this group as its primary group.</summary>
</member>
<member name="P:System.SR.ADStoreCtxNoComputerPasswordChange">
<summary>Password change operation is not supported for Computer accounts in this store.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxUnableToRetrieveVersion">
<summary>The operating system version of the target computer could not be retrieved.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxUnableToRetrieveMachineName">
<summary>The name of the target computer could not be retrieved.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxUnableToRetrieveFlatMachineName">
<summary>The flat name of the target computer could not be retrieved ({0}).</summary>
</member>
<member name="P:System.SR.SAMStoreCtxNoComputerPasswordSet">
<summary>Computer accounts in this store can not have their passwords reset or changed.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxNoComputerPasswordExpire">
<summary>Computer accounts in this store can not have their passwords expired.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxCouldntGetSIDForGroupMember">
<summary>One of the Principal objects to be inserted into or removed from the group's membership does not contain a SID.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxFailedToClearGroup">
<summary>An error ({0}) occurred while trying to clear the group membership.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxCantRetrieveObjectSidForCrossStore">
<summary>While trying to resolve a cross-store reference, the objectSid could not be retrieved from the representation of the target principal.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxCantResolveSidForCrossStore">
<summary>While trying to resolve a cross-store reference, the SID of the target principal could not be resolved. The error code is {0}.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxFailedFindCrossStoreTarget">
<summary>While trying to resolve a cross-store reference, the target principal could not be found in the domain indicated by the principal's SID.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxErrorEnumeratingGroup">
<summary>An error ({0}) occurred while enumerating the group membership. The member's SID could not be resolved.</summary>
</member>
<member name="P:System.SR.SAMStoreCtxLocalGroupsOnly">
<summary>Only local groups are supported by this store.</summary>
</member>
<member name="P:System.SR.AuthZFailedToRetrieveGroupList">
<summary>While trying to retrieve the authorization groups, an error ({0}) occurred.</summary>
</member>
<member name="P:System.SR.AuthZNotSupported">
<summary>Retrieval of authorization groups is not supported by this platform.</summary>
</member>
<member name="P:System.SR.AuthZErrorEnumeratingGroups">
<summary>An error ({0}) occurred while enumerating the groups. The group's SID could not be resolved.</summary>
</member>
<member name="P:System.SR.AuthZCantFindGroup">
<summary>An error occurred while enumerating the groups. The group could not be found.</summary>
</member>
<member name="P:System.SR.ContextOptionsNotValidForMachineStore">
<summary>The options value is invalid. The Machine store only supports Negotiate.</summary>
</member>
<member name="P:System.SR.PassedContextTypeDoesNotMatchDetectedType">
<summary>The supplied context type does not match the server contacted. The server type is {0}.</summary>
</member>
<member name="P:System.SR.NullArguments">
<summary>The supplied arguments cannot be null.</summary>
</member>
<member name="P:System.SR.InvalidStringValueForStore">
<summary>Empty string is not supported by the property {0} for this store type.</summary>
</member>
<member name="P:System.SR.ServerDown">
<summary>The server could not be contacted.</summary>
</member>
<member name="P:System.SR.InvalidPropertyForStore">
<summary>Property is not valid for this store type.</summary>
</member>
<member name="P:System.SR.NameMustBeSetToPersistPrincipal">
<summary>SamAccountName or Name must be assigned to a newly-created Principal object in this store prior to saving.</summary>
</member>
<member name="P:System.SR.ExtensionInvalidClassDefinitionConstructor">
<summary>Extension class must define a constructor that accepts a PrincipalContext argument.</summary>
</member>
<member name="P:System.SR.ExtensionInvalidClassAttributes">
<summary>Extension class must set DirectoryObjectClassAttribute and DirectoryRdnPrefixAttribute.</summary>
</member>
<member name="P:System.SR.SaveToMustHaveSamecontextType">
<summary>The target context must have the same type as the object's current context.</summary>
</member>
<member name="P:System.SR.ComputerInvalidForAppDirectoryStore">
<summary>The ComputerPrincipal object is not supported by the ApplicationDirectory store.</summary>
</member>
<member name="P:System.SR.SaveToNotSupportedAgainstMachineStore">
<summary>Saving to an alternate context is not supported by the Machine store.</summary>
</member>
<member name="P:System.SR.InvalidContextOptionsForMachine">
<summary>The ContextOptions passed are invalid for the Machine store. Only ContextOptions.Negotiate is supported.</summary>
</member>
<member name="P:System.SR.InvalidContextOptionsForAD">
<summary>The ContextOptions passed are invalid for this store type. Either Negotiate or SimpleBind must be specified and they cannot be combined.</summary>
</member>
<member name="P:System.SR.InvalidExtensionCollectionType">
<summary>Collections whose elements are another collection cannot be set by ExtensionClasses.</summary>
</member>
<member name="P:System.SR.ADAMStoreUnableToPopulateSchemaList">
<summary>The store is unable to populate a list of bindable object types. Check access to the Schema container.</summary>
</member>
<member name="P:System.SR.StoreCtxMultipleFiltersForPropertyUnsupported">
<summary>Multiple filters on the property {0} are not supported.</summary>
</member>
<member name="P:System.SR.AdsiNotInstalled">
<summary>Active Directory Client is not installed on this computer.</summary>
</member>
<member name="P:System.SR.DirectoryServicesAccountManagement_PlatformNotSupported">
<summary>System.DirectoryServices.AccountManagement is not supported on this platform.</summary>
</member>
<member name="T:Interop.BOOL">
<summary>
Blittable version of Windows BOOL type. It is convenient in situations where
manual marshalling is required, or to avoid overhead of regular bool marshalling.
</summary>
<remarks>
Some Windows APIs return arbitrary integer values although the return type is defined
as BOOL. It is best to never compare BOOL to TRUE. Always use bResult != BOOL.FALSE
or bResult == BOOL.FALSE .
</remarks>
</member>
<member name="T:Interop.BOOLEAN">
<summary>
Blittable version of Windows BOOLEAN type. It is convenient in situations where
manual marshalling is required, or to avoid overhead of regular bool marshalling.
</summary>
<remarks>
Some Windows APIs return arbitrary integer values although the return type is defined
as BOOLEAN. It is best to never compare BOOLEAN to TRUE. Always use bResult != BOOLEAN.FALSE
or bResult == BOOLEAN.FALSE .
</remarks>
</member>
<member name="T:Interop.OBJECT_ATTRIBUTES">
<summary>
<a href="https://msdn.microsoft.com/en-us/library/windows/hardware/ff557749.aspx">OBJECT_ATTRIBUTES</a> structure.
The OBJECT_ATTRIBUTES structure specifies attributes that can be applied to objects or object handles by routines
that create objects and/or return handles to objects.
</summary>
</member>
<member name="F:Interop.OBJECT_ATTRIBUTES.RootDirectory">
<summary>
Optional handle to root object directory for the given ObjectName.
Can be a file system directory or object manager directory.
</summary>
</member>
<member name="F:Interop.OBJECT_ATTRIBUTES.ObjectName">
<summary>
Name of the object. Must be fully qualified if RootDirectory isn't set.
Otherwise is relative to RootDirectory.
</summary>
</member>
<member name="F:Interop.OBJECT_ATTRIBUTES.SecurityDescriptor">
<summary>
If null, object will receive default security settings.
</summary>
</member>
<member name="F:Interop.OBJECT_ATTRIBUTES.SecurityQualityOfService">
<summary>
Optional quality of service to be applied to the object. Used to indicate
security impersonation level and context tracking mode (dynamic or static).
</summary>
</member>
<member name="M:Interop.OBJECT_ATTRIBUTES.#ctor(Interop.UNICODE_STRING*,Interop.ObjectAttributes,System.IntPtr,Interop.SECURITY_QUALITY_OF_SERVICE*)">
<summary>
Equivalent of InitializeObjectAttributes macro with the exception that you can directly set SQOS.
</summary>
</member>
<member name="F:Interop.ObjectAttributes.OBJ_INHERIT">
<summary>
This handle can be inherited by child processes of the current process.
</summary>
</member>
<member name="F:Interop.ObjectAttributes.OBJ_PERMANENT">
<summary>
This flag only applies to objects that are named within the object manager.
By default, such objects are deleted when all open handles to them are closed.
If this flag is specified, the object is not deleted when all open handles are closed.
</summary>
</member>
<member name="F:Interop.ObjectAttributes.OBJ_EXCLUSIVE">
<summary>
Only a single handle can be open for this object.
</summary>
</member>
<member name="F:Interop.ObjectAttributes.OBJ_CASE_INSENSITIVE">
<summary>
Lookups for this object should be case insensitive.
</summary>
</member>
<member name="F:Interop.ObjectAttributes.OBJ_OPENIF">
<summary>
Create on existing object should open, not fail with STATUS_OBJECT_NAME_COLLISION.
</summary>
</member>
<member name="F:Interop.ObjectAttributes.OBJ_OPENLINK">
<summary>
Open the symbolic link, not its target.
</summary>
</member>
<member name="T:Interop.SECURITY_QUALITY_OF_SERVICE">
<summary>
<a href="https://learn.microsoft.com/windows/win32/api/winnt/ns-winnt-security_quality_of_service">SECURITY_QUALITY_OF_SERVICE</a> structure.
Used to support client impersonation. Client specifies this to a server to allow
it to impersonate the client.
</summary>
</member>
<member name="T:Interop.ImpersonationLevel">
<summary>
<a href="https://msdn.microsoft.com/en-us/library/windows/desktop/aa379572.aspx">SECURITY_IMPERSONATION_LEVEL</a> enumeration values.
[SECURITY_IMPERSONATION_LEVEL]
</summary>
</member>
<member name="F:Interop.ImpersonationLevel.Anonymous">
<summary>
The server process cannot obtain identification information about the client and cannot impersonate the client.
[SecurityAnonymous]
</summary>
</member>
<member name="F:Interop.ImpersonationLevel.Identification">
<summary>
The server process can obtain identification information about the client, but cannot impersonate the client.
[SecurityIdentification]
</summary>
</member>
<member name="F:Interop.ImpersonationLevel.Impersonation">
<summary>
The server process can impersonate the client's security context on it's local system.
[SecurityImpersonation]
</summary>
</member>
<member name="F:Interop.ImpersonationLevel.Delegation">
<summary>
The server process can impersonate the client's security context on remote systems.
[SecurityDelegation]
</summary>
</member>
<member name="T:Interop.ContextTrackingMode">
<summary>
<a href="https://msdn.microsoft.com/en-us/library/cc234317.aspx">SECURITY_CONTEXT_TRACKING_MODE</a>
</summary>
</member>
<member name="F:Interop.ContextTrackingMode.Static">
<summary>
The server is given a snapshot of the client's security context.
[SECURITY_STATIC_TRACKING]
</summary>
</member>
<member name="F:Interop.ContextTrackingMode.Dynamic">
<summary>
The server is continually updated with changes.
[SECURITY_DYNAMIC_TRACKING]
</summary>
</member>
<member name="F:Interop.UNICODE_STRING.Length">
<summary>
Length in bytes, not including the null terminator, if any.
</summary>
</member>
<member name="F:Interop.UNICODE_STRING.MaximumLength">
<summary>
Max size of the buffer in bytes
</summary>
</member>
<member name="T:Interop.Advapi32.TOKEN_INFORMATION_CLASS">
<summary>
<a href="https://msdn.microsoft.com/en-us/library/windows/desktop/aa379626.aspx">TOKEN_INFORMATION_CLASS</a> enumeration.
</summary>
</member>
</members>
</doc>

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@@ -0,0 +1,23 @@
The MIT License (MIT)
Copyright (c) .NET Foundation and Contributors
All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@@ -0,0 +1,132 @@
## About
<!-- A description of the package and where one can find more documentation -->
Provides functionality for parsing, encoding, and decoding data using Abstract Syntax Notation One (ASN.1).
ASN.1 is a standard interface description language for defining data structures that can be serialized and deserialized in a cross-platform way.
## Key Features
<!-- The key features of this package -->
* Parse ASN.1 data into .NET types.
* Encode .NET types into ASN.1 format.
* Support for BER, CER, DER: Handles Basic Encoding Rules (BER), Canonical Encoding Rules (CER), and Distinguished Encoding Rules (DER).
## How to Use
<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
Parsing ASN.1 data:
```csharp
using System.Formats.Asn1;
using System.Numerics;
// Sample ASN.1 encoded data (DER format)
byte[] asn1Data = [0x30, 0x09, 0x02, 0x01, 0x01, 0x02, 0x01, 0x02, 0x02, 0x01, 0x03];
// Create an AsnReader to parse the data
AsnReader reader = new(asn1Data, AsnEncodingRules.DER);
// Parse the sequence
AsnReader sequenceReader = reader.ReadSequence();
// Read integers from the sequence
BigInteger firstInt = sequenceReader.ReadInteger();
BigInteger secondInt = sequenceReader.ReadInteger();
BigInteger thirdInt = sequenceReader.ReadInteger();
Console.WriteLine($"First integer: {firstInt}");
Console.WriteLine($"Second integer: {secondInt}");
Console.WriteLine($"Third integer: {thirdInt}");
// First integer: 1
// Second integer: 2
// Third integer: 3
```
Decoding ASN.1 data using `AsnDecoder`:
```csharp
using System.Formats.Asn1;
using System.Numerics;
using System.Text;
// Sample ASN.1 encoded data
byte[] booleanData = [0x01, 0x01, 0xFF]; // BOOLEAN TRUE
byte[] integerData = [0x02, 0x01, 0x05]; // INTEGER 5
byte[] octetStringData = [0x04, 0x03, 0x41, 0x42, 0x43]; // OCTET STRING "ABC"
byte[] objectIdentifierData = [0x06, 0x03, 0x2A, 0x03, 0x04]; // OBJECT IDENTIFIER 1.2.3.4
byte[] utf8StringData = [0x0C, 0x05, 0x48, 0x65, 0x6C, 0x6C, 0x6F]; // UTF8String "Hello"
int bytesConsumed;
bool booleanValue = AsnDecoder.ReadBoolean(booleanData, AsnEncodingRules.DER, out bytesConsumed);
Console.WriteLine($"Decoded BOOLEAN value: {booleanValue}, Bytes consumed: {bytesConsumed}");
// Decoded BOOLEAN value: True, Bytes consumed: 3
BigInteger integerValue = AsnDecoder.ReadInteger(integerData, AsnEncodingRules.DER, out bytesConsumed);
Console.WriteLine($"Decoded INTEGER value: {integerValue}, Bytes consumed: {bytesConsumed}");
// Decoded INTEGER value: 5, Bytes consumed: 3
byte[] octetStringValue = AsnDecoder.ReadOctetString(octetStringData, AsnEncodingRules.DER, out bytesConsumed);
Console.WriteLine($"Decoded OCTET STRING value: {Encoding.ASCII.GetString(octetStringValue)}, Bytes consumed: {bytesConsumed}");
// Decoded OCTET STRING value: ABC, Bytes consumed: 5
string objectIdentifierValue = AsnDecoder.ReadObjectIdentifier(objectIdentifierData, AsnEncodingRules.DER, out bytesConsumed);
Console.WriteLine($"Decoded OBJECT IDENTIFIER value: {objectIdentifierValue}, Bytes consumed: {bytesConsumed}");
// Decoded OBJECT IDENTIFIER value: 1.2.3.4, Bytes consumed: 5
string utf8StringValue = AsnDecoder.ReadCharacterString(utf8StringData, AsnEncodingRules.DER, UniversalTagNumber.UTF8String, out bytesConsumed);
Console.WriteLine($"Decoded UTF8String value: {utf8StringValue}, Bytes consumed: {bytesConsumed}");
// Decoded UTF8String value: Hello, Bytes consumed: 7
```
Encoding ASN.1 data:
```csharp
// Create an AsnWriter to encode data
AsnWriter writer = new(AsnEncodingRules.DER);
// Create a scope for the sequence
using (AsnWriter.Scope scope = writer.PushSequence())
{
// Write integers to the sequence
writer.WriteInteger(1);
writer.WriteInteger(2);
writer.WriteInteger(3);
}
// Get the encoded data
byte[] encodedData = writer.Encode();
Console.WriteLine($"Encoded ASN.1 Data: {BitConverter.ToString(encodedData)}");
// Encoded ASN.1 Data: 30-09-02-01-01-02-01-02-02-01-03
```
## Main Types
<!-- The main types provided in this library -->
The main types provided by this library are:
* `System.Formats.Asn1.AsnReader`
* `System.Formats.Asn1.AsnWriter`
* `System.Formats.Asn1.AsnDecoder`
* `System.Formats.Asn1.AsnEncodingRules`
## Additional Documentation
<!-- Links to further documentation. Remove conceptual documentation if not available for the library. -->
* [API documentation](https://learn.microsoft.com/dotnet/api/system.formats.asn1)
* [X.680 - Abstract Syntax Notation One (ASN.1): Specification of basic notation](https://www.itu.int/rec/T-REC-X.680)
* [X.690 - ASN.1 encoding rules: Specification of Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and Distinguished Encoding Rules (DER)](https://www.itu.int/rec/T-REC-X.690)
## Feedback & Contributing
<!-- How to provide feedback on this package and contribute to it -->
System.Formats.Asn1 is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime).

Binary file not shown.

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More