fix: await exchange permission resolution
This commit is contained in:
4
.gitignore
vendored
4
.gitignore
vendored
@@ -1 +1,3 @@
|
|||||||
.vs/
|
.vs/
|
||||||
|
bin/
|
||||||
|
obj/
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@@ -1,4 +0,0 @@
|
|||||||
// <autogenerated />
|
|
||||||
using System;
|
|
||||||
using System.Reflection;
|
|
||||||
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.6.2", FrameworkDisplayName = ".NET Framework 4.6.2")]
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
// <autogenerated />
|
|
||||||
using System;
|
|
||||||
using System.Reflection;
|
|
||||||
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")]
|
|
||||||
Binary file not shown.
Binary file not shown.
@@ -1,28 +0,0 @@
|
|||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Debug\LiamActiveDirectory.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Debug\LiamActiveDirectory.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Debug\LiamBaseClasses.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Debug\LiamHelper.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Debug\Newtonsoft.Json.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Debug\LiamBaseClasses.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Debug\LiamHelper.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\obj\Debug\LiamActiveDirectory.csproj.AssemblyReference.cache
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\obj\Debug\LiamActiveDirectory.csproj.CoreCompileInputs.cache
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\obj\Debug\LiamActi.8091FDFC.Up2Date
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\obj\Debug\LiamActiveDirectory.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\obj\Debug\LiamActiveDirectory.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Debug\System.ValueTuple.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Debug\System.ValueTuple.xml
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Debug\LiamActiveDirectory.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Debug\LiamActiveDirectory.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Debug\LiamBaseClasses.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Debug\LiamHelper.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Debug\System.ValueTuple.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Debug\Newtonsoft.Json.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Debug\LiamBaseClasses.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Debug\LiamHelper.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Debug\System.ValueTuple.xml
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\obj\Debug\LiamActiveDirectory.csproj.AssemblyReference.cache
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\obj\Debug\LiamActiveDirectory.csproj.CoreCompileInputs.cache
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\obj\Debug\LiamActi.8091FDFC.Up2Date
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\obj\Debug\LiamActiveDirectory.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\obj\Debug\LiamActiveDirectory.pdb
|
|
||||||
Binary file not shown.
@@ -1 +0,0 @@
|
|||||||
aa9cb3ed771c2dc7a76cdf042c310aacff1068e60b2a8fcac5cb49a4c4e70d41
|
|
||||||
Binary file not shown.
Binary file not shown.
@@ -1,4 +0,0 @@
|
|||||||
// <autogenerated />
|
|
||||||
using System;
|
|
||||||
using System.Reflection;
|
|
||||||
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.6.2", FrameworkDisplayName = ".NET Framework 4.6.2")]
|
|
||||||
Binary file not shown.
@@ -1,28 +0,0 @@
|
|||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Release\LIAMActiveDirectory.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Release\LIAMActiveDirectory.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Release\LiamBaseClasses.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Release\LiamHelper.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Release\Newtonsoft.Json.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Release\LiamBaseClasses.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Release\LiamHelper.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\obj\Release\LIAMActiveDirectory.csproj.AssemblyReference.cache
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\obj\Release\LIAMActiveDirectory.csproj.CoreCompileInputs.cache
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\obj\Release\LIAMActiveDirectory.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\obj\Release\LIAMActiveDirectory.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\obj\Release\LiamActi.8091FDFC.Up2Date
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Release\System.ValueTuple.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LIAMActiveDirectory\bin\Release\System.ValueTuple.xml
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\obj\Release\LiamActiveDirectory.csproj.AssemblyReference.cache
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\obj\Release\LiamActiveDirectory.csproj.CoreCompileInputs.cache
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\obj\Release\LiamActiveDirectory.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\obj\Release\LiamActiveDirectory.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Release\LiamActiveDirectory.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Release\LiamActiveDirectory.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Release\LiamBaseClasses.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Release\LiamHelper.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Release\System.ValueTuple.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Release\Newtonsoft.Json.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Release\LiamBaseClasses.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Release\LiamHelper.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\bin\Release\System.ValueTuple.xml
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LIAMActiveDirectory\obj\Release\LiamActi.8091FDFC.Up2Date
|
|
||||||
Binary file not shown.
@@ -1 +0,0 @@
|
|||||||
e6f9f5153aa55a3a910f7c5ef0287e4500a3f354c3a1c3198c24d7eea04e0de2
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,4 +0,0 @@
|
|||||||
// <autogenerated />
|
|
||||||
using System;
|
|
||||||
using System.Reflection;
|
|
||||||
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.6.2", FrameworkDisplayName = ".NET Framework 4.6.2")]
|
|
||||||
Binary file not shown.
Binary file not shown.
@@ -1 +0,0 @@
|
|||||||
d0283af9d4075f4a557253c483f33e9a0d4fae295f6ce748fa39a1e639aafbb6
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\bin\Debug\LiamBaseClasses.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\bin\Debug\LiamBaseClasses.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\bin\Debug\LiamHelper.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\bin\Debug\Newtonsoft.Json.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\bin\Debug\LiamHelper.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\obj\Debug\LiamBaseClasses.csproj.AssemblyReference.cache
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\obj\Debug\LiamBaseClasses.csproj.CoreCompileInputs.cache
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\obj\Debug\LiamBase.24B0A51E.Up2Date
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\obj\Debug\LiamBaseClasses.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\obj\Debug\LiamBaseClasses.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\bin\Debug\LiamBaseClasses.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\bin\Debug\LiamBaseClasses.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\bin\Debug\LiamHelper.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\bin\Debug\Newtonsoft.Json.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\bin\Debug\LiamHelper.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\obj\Debug\LiamBaseClasses.csproj.AssemblyReference.cache
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\obj\Debug\LiamBaseClasses.csproj.CoreCompileInputs.cache
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\obj\Debug\LiamBase.24B0A51E.Up2Date
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\obj\Debug\LiamBaseClasses.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\obj\Debug\LiamBaseClasses.pdb
|
|
||||||
Binary file not shown.
Binary file not shown.
@@ -1,4 +0,0 @@
|
|||||||
// <autogenerated />
|
|
||||||
using System;
|
|
||||||
using System.Reflection;
|
|
||||||
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.6.2", FrameworkDisplayName = ".NET Framework 4.6.2")]
|
|
||||||
Binary file not shown.
Binary file not shown.
@@ -1 +0,0 @@
|
|||||||
135510e8387d9e004d20f72096af679b01eba0ea20db7534ef81cc95461b16c6
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\bin\Release\LiamBaseClasses.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\bin\Release\LiamBaseClasses.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\bin\Release\LiamHelper.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\bin\Release\Newtonsoft.Json.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\bin\Release\LiamHelper.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\obj\Release\LiamBaseClasses.csproj.AssemblyReference.cache
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\obj\Release\LiamBaseClasses.csproj.CoreCompileInputs.cache
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\obj\Release\LiamBase.24B0A51E.Up2Date
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\obj\Release\LiamBaseClasses.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service\LiamBaseClasses\obj\Release\LiamBaseClasses.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\bin\Release\LiamBaseClasses.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\bin\Release\LiamBaseClasses.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\bin\Release\LiamHelper.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\bin\Release\Newtonsoft.Json.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\bin\Release\LiamHelper.pdb
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\obj\Release\LiamBaseClasses.csproj.AssemblyReference.cache
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\obj\Release\LiamBaseClasses.csproj.CoreCompileInputs.cache
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\obj\Release\LiamBase.24B0A51E.Up2Date
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\obj\Release\LiamBaseClasses.dll
|
|
||||||
C:\Workspace\C4IT DEV LIAM WEB Service_git\LiamBaseClasses\obj\Release\LiamBaseClasses.pdb
|
|
||||||
Binary file not shown.
Binary file not shown.
@@ -23,12 +23,12 @@ namespace C4IT.LIAM
|
|||||||
public readonly ExchangeManager exchangeManager;
|
public readonly ExchangeManager exchangeManager;
|
||||||
internal readonly cActiveDirectoryBase activeDirectoryBase = new cActiveDirectoryBase();
|
internal readonly cActiveDirectoryBase activeDirectoryBase = new cActiveDirectoryBase();
|
||||||
|
|
||||||
private string exchangeUri;
|
private string exchangeUri;
|
||||||
private PSCredential credential;
|
private PSCredential credential;
|
||||||
private string organizationalUnit;
|
private string organizationalUnit;
|
||||||
private string lastErrorCode = string.Empty;
|
private string lastErrorCode = string.Empty;
|
||||||
private string lastErrorMessage;
|
private string lastErrorMessage;
|
||||||
private bool isLoggedOn = false;
|
private bool isLoggedOn = false;
|
||||||
|
|
||||||
public cLiamProviderExchange(cLiamConfiguration LiamConfiguration, cLiamProviderData ProviderData) :
|
public cLiamProviderExchange(cLiamConfiguration LiamConfiguration, cLiamProviderData ProviderData) :
|
||||||
base(LiamConfiguration, ProviderData)
|
base(LiamConfiguration, ProviderData)
|
||||||
@@ -66,8 +66,8 @@ namespace C4IT.LIAM
|
|||||||
/// Extrahiert den GUID-Wert aus den Properties.
|
/// Extrahiert den GUID-Wert aus den Properties.
|
||||||
/// Zunächst wird versucht, "objectGUID" zu lesen – ist dieser leer, wird "GUID" verwendet.
|
/// Zunächst wird versucht, "objectGUID" zu lesen – ist dieser leer, wird "GUID" verwendet.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
internal static string ExtractObjectGuid(dynamic properties)
|
internal static string ExtractObjectGuid(dynamic properties)
|
||||||
{
|
{
|
||||||
// Erstversuch: objectGUID (wie in AD)
|
// Erstversuch: objectGUID (wie in AD)
|
||||||
var value = properties["objectGUID"]?.Value;
|
var value = properties["objectGUID"]?.Value;
|
||||||
if (value == null || string.IsNullOrEmpty(value.ToString()))
|
if (value == null || string.IsNullOrEmpty(value.ToString()))
|
||||||
@@ -79,80 +79,80 @@ namespace C4IT.LIAM
|
|||||||
return new Guid(guidBytes).ToString();
|
return new Guid(guidBytes).ToString();
|
||||||
if (value is Guid guid)
|
if (value is Guid guid)
|
||||||
return guid.ToString();
|
return guid.ToString();
|
||||||
return value?.ToString() ?? string.Empty;
|
return value?.ToString() ?? string.Empty;
|
||||||
}
|
}
|
||||||
|
|
||||||
public string GetLastErrorCode()
|
|
||||||
{
|
|
||||||
return lastErrorCode;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void ClearLastError()
|
|
||||||
{
|
|
||||||
lastErrorCode = string.Empty;
|
|
||||||
lastErrorMessage = string.Empty;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void SetLastError(string code, string message)
|
|
||||||
{
|
|
||||||
lastErrorCode = string.IsNullOrWhiteSpace(code) ? "EXCH_UNKNOWN_ERROR" : code;
|
|
||||||
lastErrorMessage = message ?? string.Empty;
|
|
||||||
LogEntry($"[{lastErrorCode}] {lastErrorMessage}", LogLevels.Error);
|
|
||||||
}
|
|
||||||
|
|
||||||
public override async Task<bool> LogonAsync()
|
public string GetLastErrorCode()
|
||||||
{
|
{
|
||||||
var CM = MethodBase.GetCurrentMethod();
|
return lastErrorCode;
|
||||||
LogMethodBegin(CM);
|
}
|
||||||
try
|
|
||||||
{
|
private void ClearLastError()
|
||||||
ClearLastError();
|
{
|
||||||
if (!cC4ITLicenseM42ESM.Instance.IsValid)
|
lastErrorCode = string.Empty;
|
||||||
{
|
lastErrorMessage = string.Empty;
|
||||||
SetLastError("EXCH_LOGON_LICENSE_INVALID", "License not valid or Exchange module not licensed");
|
}
|
||||||
return false;
|
|
||||||
}
|
private void SetLastError(string code, string message)
|
||||||
|
{
|
||||||
try
|
lastErrorCode = string.IsNullOrWhiteSpace(code) ? "EXCH_UNKNOWN_ERROR" : code;
|
||||||
{
|
lastErrorMessage = message ?? string.Empty;
|
||||||
var testMailboxes = exchangeManager.GetSharedMailboxes(
|
LogEntry($"[{lastErrorCode}] {lastErrorMessage}", LogLevels.Error);
|
||||||
"Name -like '*'",
|
}
|
||||||
out string errorCode,
|
|
||||||
out string errorMessage);
|
public override async Task<bool> LogonAsync()
|
||||||
if (testMailboxes == null)
|
{
|
||||||
{
|
var CM = MethodBase.GetCurrentMethod();
|
||||||
SetLastError(errorCode, $"Failed to connect to Exchange: {errorMessage}");
|
LogMethodBegin(CM);
|
||||||
isLoggedOn = false;
|
try
|
||||||
return false;
|
{
|
||||||
}
|
ClearLastError();
|
||||||
|
if (!cC4ITLicenseM42ESM.Instance.IsValid)
|
||||||
if (testMailboxes != null)
|
{
|
||||||
{
|
SetLastError("EXCH_LOGON_LICENSE_INVALID", "License not valid or Exchange module not licensed");
|
||||||
LogEntry("Successfully connected to Exchange", LogLevels.Info);
|
return false;
|
||||||
isLoggedOn = true;
|
}
|
||||||
ClearLastError();
|
|
||||||
return true;
|
try
|
||||||
}
|
{
|
||||||
}
|
var testMailboxes = exchangeManager.GetSharedMailboxes(
|
||||||
catch (Exception ex)
|
"Name -like '*'",
|
||||||
{
|
out string errorCode,
|
||||||
LogException(ex);
|
out string errorMessage);
|
||||||
SetLastError("EXCH_LOGON_EXCEPTION", $"Failed to connect to Exchange: {ex.Message}");
|
if (testMailboxes == null)
|
||||||
isLoggedOn = false;
|
{
|
||||||
return false;
|
SetLastError(errorCode, $"Failed to connect to Exchange: {errorMessage}");
|
||||||
}
|
isLoggedOn = false;
|
||||||
|
return false;
|
||||||
SetLastError("EXCH_LOGON_FAILED", "Unknown error connecting to Exchange");
|
}
|
||||||
return false;
|
|
||||||
}
|
if (testMailboxes != null)
|
||||||
catch (Exception E)
|
{
|
||||||
{
|
LogEntry("Successfully connected to Exchange", LogLevels.Info);
|
||||||
LogException(E);
|
isLoggedOn = true;
|
||||||
SetLastError("EXCH_LOGON_EXCEPTION", $"Exception during Exchange logon: {E.Message}");
|
ClearLastError();
|
||||||
return false;
|
return true;
|
||||||
}
|
}
|
||||||
finally
|
}
|
||||||
{
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
LogException(ex);
|
||||||
|
SetLastError("EXCH_LOGON_EXCEPTION", $"Failed to connect to Exchange: {ex.Message}");
|
||||||
|
isLoggedOn = false;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
SetLastError("EXCH_LOGON_FAILED", "Unknown error connecting to Exchange");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
catch (Exception E)
|
||||||
|
{
|
||||||
|
LogException(E);
|
||||||
|
SetLastError("EXCH_LOGON_EXCEPTION", $"Exception during Exchange logon: {E.Message}");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
LogMethodEnd(CM);
|
LogMethodEnd(CM);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -162,88 +162,90 @@ namespace C4IT.LIAM
|
|||||||
return lastErrorMessage;
|
return lastErrorMessage;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override async Task<List<cLiamDataAreaBase>> getDataAreasAsync(int MaxDepth = -1)
|
public override async Task<List<cLiamDataAreaBase>> getDataAreasAsync(int MaxDepth = -1)
|
||||||
{
|
{
|
||||||
var CM = MethodBase.GetCurrentMethod();
|
var CM = MethodBase.GetCurrentMethod();
|
||||||
LogMethodBegin(CM);
|
LogMethodBegin(CM);
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
ClearLastError();
|
ClearLastError();
|
||||||
if (!cC4ITLicenseM42ESM.Instance.IsValid)
|
if (!cC4ITLicenseM42ESM.Instance.IsValid)
|
||||||
{
|
{
|
||||||
SetLastError("EXCH_GET_DATAAREAS_LICENSE_INVALID", "License not valid or Exchange module not licensed");
|
SetLastError("EXCH_GET_DATAAREAS_LICENSE_INVALID", "License not valid or Exchange module not licensed");
|
||||||
return new List<cLiamDataAreaBase>();
|
return new List<cLiamDataAreaBase>();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!isLoggedOn && !await LogonAsync())
|
if (!isLoggedOn && !await LogonAsync())
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
var DataAreas = new List<cLiamDataAreaBase>();
|
var DataAreas = new List<cLiamDataAreaBase>();
|
||||||
|
|
||||||
// Shared Mailboxes
|
// Shared Mailboxes
|
||||||
var sharedMailboxes = exchangeManager.GetSharedMailboxes(
|
var sharedMailboxes = exchangeManager.GetSharedMailboxes(
|
||||||
null,
|
null,
|
||||||
out string sharedErrorCode,
|
out string sharedErrorCode,
|
||||||
out string sharedErrorMessage);
|
out string sharedErrorMessage);
|
||||||
if (sharedMailboxes == null)
|
if (sharedMailboxes == null)
|
||||||
{
|
{
|
||||||
SetLastError(sharedErrorCode, $"Failed to read shared mailboxes: {sharedErrorMessage}");
|
SetLastError(sharedErrorCode, $"Failed to read shared mailboxes: {sharedErrorMessage}");
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach (var mailbox in sharedMailboxes)
|
foreach (var mailbox in sharedMailboxes)
|
||||||
{
|
{
|
||||||
var displayName = mailbox.Properties["DisplayName"]?.Value?.ToString();
|
var displayName = mailbox.Properties["DisplayName"]?.Value?.ToString();
|
||||||
var alias = mailbox.Properties["Alias"]?.Value?.ToString();
|
var alias = mailbox.Properties["Alias"]?.Value?.ToString();
|
||||||
var primarySmtpAddress = mailbox.Properties["PrimarySmtpAddress"]?.Value?.ToString();
|
var primarySmtpAddress = mailbox.Properties["PrimarySmtpAddress"]?.Value?.ToString();
|
||||||
var objectGuid = ExtractObjectGuid(mailbox.Properties);
|
var objectGuid = ExtractObjectGuid(mailbox.Properties);
|
||||||
|
|
||||||
// Filterung via Regex
|
// Filterung via Regex
|
||||||
if (!string.IsNullOrEmpty(this.DataAreaRegEx) &&
|
if (!string.IsNullOrEmpty(this.DataAreaRegEx) &&
|
||||||
!Regex.Match(displayName, this.DataAreaRegEx).Success)
|
!Regex.Match(displayName, this.DataAreaRegEx).Success)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
var exchangeMailbox = new cLiamExchangeSharedMailbox(this, displayName, primarySmtpAddress, alias, objectGuid);
|
var exchangeMailbox = new cLiamExchangeSharedMailbox(this, displayName, primarySmtpAddress, alias, objectGuid);
|
||||||
DataAreas.Add(exchangeMailbox);
|
await exchangeMailbox.ResolvePermissionGroupsAsync();
|
||||||
}
|
DataAreas.Add(exchangeMailbox);
|
||||||
|
}
|
||||||
// Distribution Groups
|
|
||||||
var distributionGroups = exchangeManager.GetDistributionGroups(
|
// Distribution Groups
|
||||||
null,
|
var distributionGroups = exchangeManager.GetDistributionGroups(
|
||||||
out string distErrorCode,
|
null,
|
||||||
out string distErrorMessage);
|
out string distErrorCode,
|
||||||
if (distributionGroups == null)
|
out string distErrorMessage);
|
||||||
{
|
if (distributionGroups == null)
|
||||||
SetLastError(distErrorCode, $"Failed to read distribution groups: {distErrorMessage}");
|
{
|
||||||
return null;
|
SetLastError(distErrorCode, $"Failed to read distribution groups: {distErrorMessage}");
|
||||||
}
|
return null;
|
||||||
|
}
|
||||||
foreach (var group in distributionGroups)
|
|
||||||
{
|
foreach (var group in distributionGroups)
|
||||||
var displayName = group.Properties["DisplayName"]?.Value?.ToString();
|
{
|
||||||
var alias = group.Properties["Alias"]?.Value?.ToString();
|
var displayName = group.Properties["DisplayName"]?.Value?.ToString();
|
||||||
var primarySmtpAddress = group.Properties["PrimarySmtpAddress"]?.Value?.ToString();
|
var alias = group.Properties["Alias"]?.Value?.ToString();
|
||||||
var objectGuid = ExtractObjectGuid(group.Properties);
|
var primarySmtpAddress = group.Properties["PrimarySmtpAddress"]?.Value?.ToString();
|
||||||
|
var objectGuid = ExtractObjectGuid(group.Properties);
|
||||||
if (!string.IsNullOrEmpty(this.DataAreaRegEx) &&
|
|
||||||
!Regex.Match(displayName, this.DataAreaRegEx).Success)
|
if (!string.IsNullOrEmpty(this.DataAreaRegEx) &&
|
||||||
continue;
|
!Regex.Match(displayName, this.DataAreaRegEx).Success)
|
||||||
|
continue;
|
||||||
var exchangeGroup = new cLiamExchangeDistributionGroup(this, displayName, primarySmtpAddress, alias, objectGuid);
|
|
||||||
DataAreas.Add(exchangeGroup);
|
var exchangeGroup = new cLiamExchangeDistributionGroup(this, displayName, primarySmtpAddress, alias, objectGuid);
|
||||||
}
|
await exchangeGroup.ResolvePermissionGroupsAsync();
|
||||||
|
DataAreas.Add(exchangeGroup);
|
||||||
ClearLastError();
|
}
|
||||||
return DataAreas;
|
|
||||||
}
|
ClearLastError();
|
||||||
catch (Exception E)
|
return DataAreas;
|
||||||
{
|
}
|
||||||
LogException(E);
|
catch (Exception E)
|
||||||
SetLastError("EXCH_GET_DATAAREAS_EXCEPTION", E.Message);
|
{
|
||||||
}
|
LogException(E);
|
||||||
finally
|
SetLastError("EXCH_GET_DATAAREAS_EXCEPTION", E.Message);
|
||||||
{
|
}
|
||||||
LogMethodEnd(CM);
|
finally
|
||||||
|
{
|
||||||
|
LogMethodEnd(CM);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -289,59 +291,59 @@ namespace C4IT.LIAM
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public override async Task<List<cLiamDataAreaBase>> getSecurityGroupsAsync(string groupFilter)
|
public override async Task<List<cLiamDataAreaBase>> getSecurityGroupsAsync(string groupFilter)
|
||||||
{
|
{
|
||||||
var CM = MethodBase.GetCurrentMethod();
|
var CM = MethodBase.GetCurrentMethod();
|
||||||
LogMethodBegin(CM);
|
LogMethodBegin(CM);
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
ClearLastError();
|
ClearLastError();
|
||||||
if (!cC4ITLicenseM42ESM.Instance.IsValid)
|
if (!cC4ITLicenseM42ESM.Instance.IsValid)
|
||||||
{
|
{
|
||||||
SetLastError("EXCH_GET_SECURITYGROUPS_LICENSE_INVALID", "License not valid or Exchange module not licensed");
|
SetLastError("EXCH_GET_SECURITYGROUPS_LICENSE_INVALID", "License not valid or Exchange module not licensed");
|
||||||
return new List<cLiamDataAreaBase>();
|
return new List<cLiamDataAreaBase>();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!isLoggedOn && !await LogonAsync())
|
if (!isLoggedOn && !await LogonAsync())
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
var securityGroups = new List<cLiamDataAreaBase>();
|
var securityGroups = new List<cLiamDataAreaBase>();
|
||||||
var groups = exchangeManager.GetSecurityGroups(
|
var groups = exchangeManager.GetSecurityGroups(
|
||||||
groupFilter,
|
groupFilter,
|
||||||
out string errorCode,
|
out string errorCode,
|
||||||
out string errorMessage);
|
out string errorMessage);
|
||||||
if (groups == null)
|
if (groups == null)
|
||||||
{
|
{
|
||||||
SetLastError(errorCode, $"Failed to read security groups: {errorMessage}");
|
SetLastError(errorCode, $"Failed to read security groups: {errorMessage}");
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach (var group in groups)
|
foreach (var group in groups)
|
||||||
{
|
{
|
||||||
var displayName = group.Properties["DisplayName"]?.Value?.ToString();
|
var displayName = group.Properties["DisplayName"]?.Value?.ToString();
|
||||||
var sid = group.Properties["Sid"]?.Value?.ToString();
|
var sid = group.Properties["Sid"]?.Value?.ToString();
|
||||||
var dn = group.Properties["DistinguishedName"]?.Value?.ToString();
|
var dn = group.Properties["DistinguishedName"]?.Value?.ToString();
|
||||||
var objectGuid = ExtractObjectGuid(group.Properties);
|
var objectGuid = ExtractObjectGuid(group.Properties);
|
||||||
|
|
||||||
if (!string.IsNullOrEmpty(this.GroupRegEx) &&
|
if (!string.IsNullOrEmpty(this.GroupRegEx) &&
|
||||||
!Regex.Match(displayName, this.GroupRegEx).Success)
|
!Regex.Match(displayName, this.GroupRegEx).Success)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
var securityGroup = new cLiamExchangeSecurityGroup(this, displayName, sid, dn, objectGuid);
|
var securityGroup = new cLiamExchangeSecurityGroup(this, displayName, sid, dn, objectGuid);
|
||||||
securityGroups.Add(securityGroup);
|
securityGroups.Add(securityGroup);
|
||||||
}
|
}
|
||||||
|
|
||||||
ClearLastError();
|
ClearLastError();
|
||||||
return securityGroups;
|
return securityGroups;
|
||||||
}
|
}
|
||||||
catch (Exception E)
|
catch (Exception E)
|
||||||
{
|
{
|
||||||
LogException(E);
|
LogException(E);
|
||||||
SetLastError("EXCH_GET_SECURITYGROUPS_EXCEPTION", E.Message);
|
SetLastError("EXCH_GET_SECURITYGROUPS_EXCEPTION", E.Message);
|
||||||
}
|
}
|
||||||
finally
|
finally
|
||||||
{
|
{
|
||||||
LogMethodEnd(CM);
|
LogMethodEnd(CM);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -496,7 +498,6 @@ namespace C4IT.LIAM
|
|||||||
this.DataType = eLiamDataAreaTypes.ExchangeSharedMailbox;
|
this.DataType = eLiamDataAreaTypes.ExchangeSharedMailbox;
|
||||||
this.SupportsOwners = true;
|
this.SupportsOwners = true;
|
||||||
this.SupportsPermissions = true;
|
this.SupportsPermissions = true;
|
||||||
_ = assignPermissionGroups(Provider).ConfigureAwait(false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
internal static string getUID(string primarySmtpAddress)
|
internal static string getUID(string primarySmtpAddress)
|
||||||
@@ -518,7 +519,9 @@ namespace C4IT.LIAM
|
|||||||
var alias = mailbox.Properties["Alias"]?.Value?.ToString();
|
var alias = mailbox.Properties["Alias"]?.Value?.ToString();
|
||||||
var objectGuid = cLiamProviderExchange.ExtractObjectGuid(mailbox.Properties);
|
var objectGuid = cLiamProviderExchange.ExtractObjectGuid(mailbox.Properties);
|
||||||
|
|
||||||
return new cLiamExchangeSharedMailbox(Provider, displayName, primarySmtpAddress, alias, objectGuid);
|
var mailboxDataArea = new cLiamExchangeSharedMailbox(Provider, displayName, primarySmtpAddress, alias, objectGuid);
|
||||||
|
await mailboxDataArea.ResolvePermissionGroupsAsync();
|
||||||
|
return mailboxDataArea;
|
||||||
}
|
}
|
||||||
catch (Exception E)
|
catch (Exception E)
|
||||||
{
|
{
|
||||||
@@ -639,7 +642,7 @@ namespace C4IT.LIAM
|
|||||||
return new List<cLiamDataAreaBase>();
|
return new List<cLiamDataAreaBase>();
|
||||||
}
|
}
|
||||||
|
|
||||||
private async Task assignPermissionGroups(cLiamProviderExchange Provider)
|
public async Task ResolvePermissionGroupsAsync()
|
||||||
{
|
{
|
||||||
var CM = MethodBase.GetCurrentMethod();
|
var CM = MethodBase.GetCurrentMethod();
|
||||||
LogMethodBegin(CM);
|
LogMethodBegin(CM);
|
||||||
@@ -745,7 +748,6 @@ namespace C4IT.LIAM
|
|||||||
this.DataType = eLiamDataAreaTypes.ExchangeDistributionGroup;
|
this.DataType = eLiamDataAreaTypes.ExchangeDistributionGroup;
|
||||||
this.SupportsOwners = true;
|
this.SupportsOwners = true;
|
||||||
this.SupportsPermissions = true;
|
this.SupportsPermissions = true;
|
||||||
_ = assignPermissionGroups(Provider).ConfigureAwait(false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
internal static string getUID(string primarySmtpAddress)
|
internal static string getUID(string primarySmtpAddress)
|
||||||
@@ -767,7 +769,9 @@ namespace C4IT.LIAM
|
|||||||
var alias = group.Properties["Alias"]?.Value?.ToString();
|
var alias = group.Properties["Alias"]?.Value?.ToString();
|
||||||
var objectGuid = cLiamProviderExchange.ExtractObjectGuid(group.Properties);
|
var objectGuid = cLiamProviderExchange.ExtractObjectGuid(group.Properties);
|
||||||
|
|
||||||
return new cLiamExchangeDistributionGroup(Provider, displayName, primarySmtpAddress, alias, objectGuid);
|
var groupDataArea = new cLiamExchangeDistributionGroup(Provider, displayName, primarySmtpAddress, alias, objectGuid);
|
||||||
|
await groupDataArea.ResolvePermissionGroupsAsync();
|
||||||
|
return groupDataArea;
|
||||||
}
|
}
|
||||||
catch (Exception E)
|
catch (Exception E)
|
||||||
{
|
{
|
||||||
@@ -875,7 +879,7 @@ namespace C4IT.LIAM
|
|||||||
return new List<cLiamDataAreaBase>();
|
return new List<cLiamDataAreaBase>();
|
||||||
}
|
}
|
||||||
|
|
||||||
private async Task assignPermissionGroups(cLiamProviderExchange Provider)
|
public async Task ResolvePermissionGroupsAsync()
|
||||||
{
|
{
|
||||||
var CM = MethodBase.GetCurrentMethod();
|
var CM = MethodBase.GetCurrentMethod();
|
||||||
LogMethodBegin(CM);
|
LogMethodBegin(CM);
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,11 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<configuration>
|
|
||||||
<runtime>
|
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
</configuration>
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,38 +0,0 @@
|
|||||||
<?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&#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.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@@ -1,355 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?><doc>
|
|
||||||
<assembly>
|
|
||||||
<name>System.Memory</name>
|
|
||||||
</assembly>
|
|
||||||
<members>
|
|
||||||
<member name="T:System.Span`1">
|
|
||||||
<typeparam name="T"></typeparam>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.#ctor(`0[])">
|
|
||||||
<param name="array"></param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.#ctor(System.Void*,System.Int32)">
|
|
||||||
<param name="pointer"></param>
|
|
||||||
<param name="length"></param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.#ctor(`0[],System.Int32)">
|
|
||||||
<param name="array"></param>
|
|
||||||
<param name="start"></param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.#ctor(`0[],System.Int32,System.Int32)">
|
|
||||||
<param name="array"></param>
|
|
||||||
<param name="start"></param>
|
|
||||||
<param name="length"></param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.Clear">
|
|
||||||
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.CopyTo(System.Span{`0})">
|
|
||||||
<param name="destination"></param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.DangerousCreate(System.Object,`0@,System.Int32)">
|
|
||||||
<param name="obj"></param>
|
|
||||||
<param name="objectData"></param>
|
|
||||||
<param name="length"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.DangerousGetPinnableReference">
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="P:System.Span`1.Empty">
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.Equals(System.Object)">
|
|
||||||
<param name="obj"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.Fill(`0)">
|
|
||||||
<param name="value"></param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.GetHashCode">
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="P:System.Span`1.IsEmpty">
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="P:System.Span`1.Item(System.Int32)">
|
|
||||||
<param name="index"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="P:System.Span`1.Length">
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.op_Equality(System.Span{`0},System.Span{`0})">
|
|
||||||
<param name="left"></param>
|
|
||||||
<param name="right"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.op_Implicit(System.ArraySegment{T})~System.Span{T}">
|
|
||||||
<param name="arraySegment"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.op_Implicit(System.Span{T})~System.ReadOnlySpan{T}">
|
|
||||||
<param name="span"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.op_Implicit(T[])~System.Span{T}">
|
|
||||||
<param name="array"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.op_Inequality(System.Span{`0},System.Span{`0})">
|
|
||||||
<param name="left"></param>
|
|
||||||
<param name="right"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.Slice(System.Int32)">
|
|
||||||
<param name="start"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.Slice(System.Int32,System.Int32)">
|
|
||||||
<param name="start"></param>
|
|
||||||
<param name="length"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.ToArray">
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Span`1.TryCopyTo(System.Span{`0})">
|
|
||||||
<param name="destination"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="T:System.SpanExtensions">
|
|
||||||
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.AsBytes``1(System.ReadOnlySpan{``0})">
|
|
||||||
<param name="source"></param>
|
|
||||||
<typeparam name="T"></typeparam>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.AsBytes``1(System.Span{``0})">
|
|
||||||
<param name="source"></param>
|
|
||||||
<typeparam name="T"></typeparam>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.AsSpan(System.String)">
|
|
||||||
<param name="text"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.AsSpan``1(System.ArraySegment{``0})">
|
|
||||||
<param name="arraySegment"></param>
|
|
||||||
<typeparam name="T"></typeparam>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.AsSpan``1(``0[])">
|
|
||||||
<param name="array"></param>
|
|
||||||
<typeparam name="T"></typeparam>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.CopyTo``1(``0[],System.Span{``0})">
|
|
||||||
<param name="array"></param>
|
|
||||||
<param name="destination"></param>
|
|
||||||
<typeparam name="T"></typeparam>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.IndexOf(System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="value"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.IndexOf(System.Span{System.Byte},System.Byte)">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="value"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.IndexOf(System.ReadOnlySpan{System.Byte},System.Byte)">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="value"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.IndexOf(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="value"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.IndexOf``1(System.ReadOnlySpan{``0},System.ReadOnlySpan{``0})">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="value"></param>
|
|
||||||
<typeparam name="T"></typeparam>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.IndexOf``1(System.ReadOnlySpan{``0},``0)">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="value"></param>
|
|
||||||
<typeparam name="T"></typeparam>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.IndexOf``1(System.Span{``0},System.ReadOnlySpan{``0})">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="value"></param>
|
|
||||||
<typeparam name="T"></typeparam>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.IndexOf``1(System.Span{``0},``0)">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="value"></param>
|
|
||||||
<typeparam name="T"></typeparam>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.IndexOfAny(System.ReadOnlySpan{System.Byte},System.Byte,System.Byte,System.Byte)">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="value0"></param>
|
|
||||||
<param name="value1"></param>
|
|
||||||
<param name="value2"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.IndexOfAny(System.Span{System.Byte},System.Byte,System.Byte,System.Byte)">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="value0"></param>
|
|
||||||
<param name="value1"></param>
|
|
||||||
<param name="value2"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.IndexOfAny(System.Span{System.Byte},System.Byte,System.Byte)">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="value0"></param>
|
|
||||||
<param name="value1"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.IndexOfAny(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="values"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.IndexOfAny(System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="values"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.IndexOfAny(System.ReadOnlySpan{System.Byte},System.Byte,System.Byte)">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="value0"></param>
|
|
||||||
<param name="value1"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.NonPortableCast``2(System.ReadOnlySpan{``0})">
|
|
||||||
<param name="source"></param>
|
|
||||||
<typeparam name="TFrom"></typeparam>
|
|
||||||
<typeparam name="TTo"></typeparam>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.NonPortableCast``2(System.Span{``0})">
|
|
||||||
<param name="source"></param>
|
|
||||||
<typeparam name="TFrom"></typeparam>
|
|
||||||
<typeparam name="TTo"></typeparam>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.SequenceEqual(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
|
|
||||||
<param name="first"></param>
|
|
||||||
<param name="second"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.SequenceEqual(System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
|
|
||||||
<param name="first"></param>
|
|
||||||
<param name="second"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.SequenceEqual``1(System.ReadOnlySpan{``0},System.ReadOnlySpan{``0})">
|
|
||||||
<param name="first"></param>
|
|
||||||
<param name="second"></param>
|
|
||||||
<typeparam name="T"></typeparam>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.SequenceEqual``1(System.Span{``0},System.ReadOnlySpan{``0})">
|
|
||||||
<param name="first"></param>
|
|
||||||
<param name="second"></param>
|
|
||||||
<typeparam name="T"></typeparam>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.StartsWith(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="value"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.StartsWith(System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="value"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.StartsWith``1(System.ReadOnlySpan{``0},System.ReadOnlySpan{``0})">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="value"></param>
|
|
||||||
<typeparam name="T"></typeparam>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.SpanExtensions.StartsWith``1(System.Span{``0},System.ReadOnlySpan{``0})">
|
|
||||||
<param name="span"></param>
|
|
||||||
<param name="value"></param>
|
|
||||||
<typeparam name="T"></typeparam>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="T:System.ReadOnlySpan`1">
|
|
||||||
<typeparam name="T"></typeparam>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.ReadOnlySpan`1.#ctor(`0[])">
|
|
||||||
<param name="array"></param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.ReadOnlySpan`1.#ctor(System.Void*,System.Int32)">
|
|
||||||
<param name="pointer"></param>
|
|
||||||
<param name="length"></param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.ReadOnlySpan`1.#ctor(`0[],System.Int32)">
|
|
||||||
<param name="array"></param>
|
|
||||||
<param name="start"></param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.ReadOnlySpan`1.#ctor(`0[],System.Int32,System.Int32)">
|
|
||||||
<param name="array"></param>
|
|
||||||
<param name="start"></param>
|
|
||||||
<param name="length"></param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.ReadOnlySpan`1.CopyTo(System.Span{`0})">
|
|
||||||
<param name="destination"></param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.ReadOnlySpan`1.DangerousCreate(System.Object,`0@,System.Int32)">
|
|
||||||
<param name="obj"></param>
|
|
||||||
<param name="objectData"></param>
|
|
||||||
<param name="length"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.ReadOnlySpan`1.DangerousGetPinnableReference">
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="P:System.ReadOnlySpan`1.Empty">
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.ReadOnlySpan`1.Equals(System.Object)">
|
|
||||||
<param name="obj"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.ReadOnlySpan`1.GetHashCode">
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="P:System.ReadOnlySpan`1.IsEmpty">
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="P:System.ReadOnlySpan`1.Item(System.Int32)">
|
|
||||||
<param name="index"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="P:System.ReadOnlySpan`1.Length">
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.ReadOnlySpan`1.op_Equality(System.ReadOnlySpan{`0},System.ReadOnlySpan{`0})">
|
|
||||||
<param name="left"></param>
|
|
||||||
<param name="right"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.ReadOnlySpan`1.op_Implicit(System.ArraySegment{T})~System.ReadOnlySpan{T}">
|
|
||||||
<param name="arraySegment"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.ReadOnlySpan`1.op_Implicit(T[])~System.ReadOnlySpan{T}">
|
|
||||||
<param name="array"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.ReadOnlySpan`1.op_Inequality(System.ReadOnlySpan{`0},System.ReadOnlySpan{`0})">
|
|
||||||
<param name="left"></param>
|
|
||||||
<param name="right"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.ReadOnlySpan`1.Slice(System.Int32)">
|
|
||||||
<param name="start"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.ReadOnlySpan`1.Slice(System.Int32,System.Int32)">
|
|
||||||
<param name="start"></param>
|
|
||||||
<param name="length"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.ReadOnlySpan`1.ToArray">
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.ReadOnlySpan`1.TryCopyTo(System.Span{`0})">
|
|
||||||
<param name="destination"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
</members>
|
|
||||||
</doc>
|
|
||||||
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@@ -1,291 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<doc>
|
|
||||||
<assembly>
|
|
||||||
<name>System.Runtime.CompilerServices.Unsafe</name>
|
|
||||||
</assembly>
|
|
||||||
<members>
|
|
||||||
<member name="T:System.Runtime.CompilerServices.Unsafe">
|
|
||||||
<summary>Contains generic, low-level functionality for manipulating pointers.</summary>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(``0@,System.Int32)">
|
|
||||||
<summary>Adds an element offset to the given reference.</summary>
|
|
||||||
<param name="source">The reference to add the offset to.</param>
|
|
||||||
<param name="elementOffset">The offset to add.</param>
|
|
||||||
<typeparam name="T">The type of reference.</typeparam>
|
|
||||||
<returns>A new reference that reflects the addition of offset to pointer.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(``0@,System.IntPtr)">
|
|
||||||
<summary>Adds an element offset to the given reference.</summary>
|
|
||||||
<param name="source">The reference to add the offset to.</param>
|
|
||||||
<param name="elementOffset">The offset to add.</param>
|
|
||||||
<typeparam name="T">The type of reference.</typeparam>
|
|
||||||
<returns>A new reference that reflects the addition of offset to pointer.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(``0@,System.UIntPtr)">
|
|
||||||
<summary>Adds an element offset to the given reference.</summary>
|
|
||||||
<param name="source">The reference to add the offset to.</param>
|
|
||||||
<param name="elementOffset">The offset to add.</param>
|
|
||||||
<typeparam name="T">The type of reference.</typeparam>
|
|
||||||
<returns>A new reference that reflects the addition of offset to pointer.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(System.Void*,System.Int32)">
|
|
||||||
<summary>Adds an element offset to the given void pointer.</summary>
|
|
||||||
<param name="source">The void pointer to add the offset to.</param>
|
|
||||||
<param name="elementOffset">The offset to add.</param>
|
|
||||||
<typeparam name="T">The type of void pointer.</typeparam>
|
|
||||||
<returns>A new void pointer that reflects the addition of offset to the specified pointer.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.AddByteOffset``1(``0@,System.IntPtr)">
|
|
||||||
<summary>Adds a byte offset to the given reference.</summary>
|
|
||||||
<param name="source">The reference to add the offset to.</param>
|
|
||||||
<param name="byteOffset">The offset to add.</param>
|
|
||||||
<typeparam name="T">The type of reference.</typeparam>
|
|
||||||
<returns>A new reference that reflects the addition of byte offset to pointer.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.AddByteOffset``1(``0@,System.UIntPtr)">
|
|
||||||
<summary>Adds a byte offset to the given reference.</summary>
|
|
||||||
<param name="source">The reference to add the offset to.</param>
|
|
||||||
<param name="byteOffset">The offset to add.</param>
|
|
||||||
<typeparam name="T">The type of reference.</typeparam>
|
|
||||||
<returns>A new reference that reflects the addition of byte offset to pointer.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.AreSame``1(``0@,``0@)">
|
|
||||||
<summary>Determines whether the specified references point to the same location.</summary>
|
|
||||||
<param name="left">The first reference to compare.</param>
|
|
||||||
<param name="right">The second reference to compare.</param>
|
|
||||||
<typeparam name="T">The type of reference.</typeparam>
|
|
||||||
<returns>
|
|
||||||
<see langword="true" /> if <paramref name="left" /> and <paramref name="right" /> point to the same location; otherwise, <see langword="false" />.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.As``1(System.Object)">
|
|
||||||
<summary>Casts the given object to the specified type.</summary>
|
|
||||||
<param name="o">The object to cast.</param>
|
|
||||||
<typeparam name="T">The type which the object will be cast to.</typeparam>
|
|
||||||
<returns>The original object, casted to the given type.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.As``2(``0@)">
|
|
||||||
<summary>Reinterprets the given reference as a reference to a value of type <typeparamref name="TTo" />.</summary>
|
|
||||||
<param name="source">The reference to reinterpret.</param>
|
|
||||||
<typeparam name="TFrom">The type of reference to reinterpret.</typeparam>
|
|
||||||
<typeparam name="TTo">The desired type of the reference.</typeparam>
|
|
||||||
<returns>A reference to a value of type <typeparamref name="TTo" />.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.AsPointer``1(``0@)">
|
|
||||||
<summary>Returns a pointer to the given by-ref parameter.</summary>
|
|
||||||
<param name="value">The object whose pointer is obtained.</param>
|
|
||||||
<typeparam name="T">The type of object.</typeparam>
|
|
||||||
<returns>A pointer to the given value.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.AsRef``1(``0@)">
|
|
||||||
<summary>Reinterprets the given read-only reference as a reference.</summary>
|
|
||||||
<param name="source">The read-only reference to reinterpret.</param>
|
|
||||||
<typeparam name="T">The type of reference.</typeparam>
|
|
||||||
<returns>A reference to a value of type <typeparamref name="T" />.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.AsRef``1(System.Void*)">
|
|
||||||
<summary>Reinterprets the given location as a reference to a value of type <typeparamref name="T" />.</summary>
|
|
||||||
<param name="source">The location of the value to reference.</param>
|
|
||||||
<typeparam name="T">The type of the interpreted location.</typeparam>
|
|
||||||
<returns>A reference to a value of type <typeparamref name="T" />.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.ByteOffset``1(``0@,``0@)">
|
|
||||||
<summary>Determines the byte offset from origin to target from the given references.</summary>
|
|
||||||
<param name="origin">The reference to origin.</param>
|
|
||||||
<param name="target">The reference to target.</param>
|
|
||||||
<typeparam name="T">The type of reference.</typeparam>
|
|
||||||
<returns>Byte offset from origin to target i.e. <paramref name="target" /> - <paramref name="origin" />.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Copy``1(``0@,System.Void*)">
|
|
||||||
<summary>Copies a value of type <typeparamref name="T" /> to the given location.</summary>
|
|
||||||
<param name="destination">The location to copy to.</param>
|
|
||||||
<param name="source">A pointer to the value to copy.</param>
|
|
||||||
<typeparam name="T">The type of value to copy.</typeparam>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Copy``1(System.Void*,``0@)">
|
|
||||||
<summary>Copies a value of type <typeparamref name="T" /> to the given location.</summary>
|
|
||||||
<param name="destination">The location to copy to.</param>
|
|
||||||
<param name="source">A reference to the value to copy.</param>
|
|
||||||
<typeparam name="T">The type of value to copy.</typeparam>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlock(System.Byte@,System.Byte@,System.UInt32)">
|
|
||||||
<summary>Copies bytes from the source address to the destination address.</summary>
|
|
||||||
<param name="destination">The destination address to copy to.</param>
|
|
||||||
<param name="source">The source address to copy from.</param>
|
|
||||||
<param name="byteCount">The number of bytes to copy.</param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlock(System.Void*,System.Void*,System.UInt32)">
|
|
||||||
<summary>Copies bytes from the source address to the destination address.</summary>
|
|
||||||
<param name="destination">The destination address to copy to.</param>
|
|
||||||
<param name="source">The source address to copy from.</param>
|
|
||||||
<param name="byteCount">The number of bytes to copy.</param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlockUnaligned(System.Byte@,System.Byte@,System.UInt32)">
|
|
||||||
<summary>Copies bytes from the source address to the destination address without assuming architecture dependent alignment of the addresses.</summary>
|
|
||||||
<param name="destination">The destination address to copy to.</param>
|
|
||||||
<param name="source">The source address to copy from.</param>
|
|
||||||
<param name="byteCount">The number of bytes to copy.</param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlockUnaligned(System.Void*,System.Void*,System.UInt32)">
|
|
||||||
<summary>Copies bytes from the source address to the destination address without assuming architecture dependent alignment of the addresses.</summary>
|
|
||||||
<param name="destination">The destination address to copy to.</param>
|
|
||||||
<param name="source">The source address to copy from.</param>
|
|
||||||
<param name="byteCount">The number of bytes to copy.</param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlock(System.Byte@,System.Byte,System.UInt32)">
|
|
||||||
<summary>Initializes a block of memory at the given location with a given initial value.</summary>
|
|
||||||
<param name="startAddress">The address of the start of the memory block to initialize.</param>
|
|
||||||
<param name="value">The value to initialize the block to.</param>
|
|
||||||
<param name="byteCount">The number of bytes to initialize.</param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlock(System.Void*,System.Byte,System.UInt32)">
|
|
||||||
<summary>Initializes a block of memory at the given location with a given initial value.</summary>
|
|
||||||
<param name="startAddress">The address of the start of the memory block to initialize.</param>
|
|
||||||
<param name="value">The value to initialize the block to.</param>
|
|
||||||
<param name="byteCount">The number of bytes to initialize.</param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlockUnaligned(System.Byte@,System.Byte,System.UInt32)">
|
|
||||||
<summary>Initializes a block of memory at the given location with a given initial value without assuming architecture dependent alignment of the address.</summary>
|
|
||||||
<param name="startAddress">The address of the start of the memory block to initialize.</param>
|
|
||||||
<param name="value">The value to initialize the block to.</param>
|
|
||||||
<param name="byteCount">The number of bytes to initialize.</param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlockUnaligned(System.Void*,System.Byte,System.UInt32)">
|
|
||||||
<summary>Initializes a block of memory at the given location with a given initial value without assuming architecture dependent alignment of the address.</summary>
|
|
||||||
<param name="startAddress">The address of the start of the memory block to initialize.</param>
|
|
||||||
<param name="value">The value to initialize the block to.</param>
|
|
||||||
<param name="byteCount">The number of bytes to initialize.</param>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.IsAddressGreaterThan``1(``0@,``0@)">
|
|
||||||
<summary>Returns a value that indicates whether a specified reference is greater than another specified reference.</summary>
|
|
||||||
<param name="left">The first value to compare.</param>
|
|
||||||
<param name="right">The second value to compare.</param>
|
|
||||||
<typeparam name="T">The type of the reference.</typeparam>
|
|
||||||
<returns>
|
|
||||||
<see langword="true" /> if <paramref name="left" /> is greater than <paramref name="right" />; otherwise, <see langword="false" />.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.IsAddressLessThan``1(``0@,``0@)">
|
|
||||||
<summary>Returns a value that indicates whether a specified reference is less than another specified reference.</summary>
|
|
||||||
<param name="left">The first value to compare.</param>
|
|
||||||
<param name="right">The second value to compare.</param>
|
|
||||||
<typeparam name="T">The type of the reference.</typeparam>
|
|
||||||
<returns>
|
|
||||||
<see langword="true" /> if <paramref name="left" /> is less than <paramref name="right" />; otherwise, <see langword="false" />.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.IsNullRef``1(``0@)">
|
|
||||||
<summary>Determines if a given reference to a value of type <typeparamref name="T" /> is a null reference.</summary>
|
|
||||||
<param name="source">The reference to check.</param>
|
|
||||||
<typeparam name="T">The type of the reference.</typeparam>
|
|
||||||
<returns>
|
|
||||||
<see langword="true" /> if <paramref name="source" /> is a null reference; otherwise, <see langword="false" />.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.NullRef``1">
|
|
||||||
<summary>Returns a reference to a value of type <typeparamref name="T" /> that is a null reference.</summary>
|
|
||||||
<typeparam name="T">The type of the reference.</typeparam>
|
|
||||||
<returns>A reference to a value of type <typeparamref name="T" /> that is a null reference.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Read``1(System.Void*)">
|
|
||||||
<summary>Reads a value of type <typeparamref name="T" /> from the given location.</summary>
|
|
||||||
<param name="source">The location to read from.</param>
|
|
||||||
<typeparam name="T">The type to read.</typeparam>
|
|
||||||
<returns>An object of type <typeparamref name="T" /> read from the given location.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.ReadUnaligned``1(System.Byte@)">
|
|
||||||
<summary>Reads a value of type <typeparamref name="T" /> from the given location without assuming architecture dependent alignment of the addresses.</summary>
|
|
||||||
<param name="source">The location to read from.</param>
|
|
||||||
<typeparam name="T">The type to read.</typeparam>
|
|
||||||
<returns>An object of type <typeparamref name="T" /> read from the given location.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.ReadUnaligned``1(System.Void*)">
|
|
||||||
<summary>Reads a value of type <typeparamref name="T" /> from the given location without assuming architecture dependent alignment of the addresses.</summary>
|
|
||||||
<param name="source">The location to read from.</param>
|
|
||||||
<typeparam name="T">The type to read.</typeparam>
|
|
||||||
<returns>An object of type <typeparamref name="T" /> read from the given location.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.SizeOf``1">
|
|
||||||
<summary>Returns the size of an object of the given type parameter.</summary>
|
|
||||||
<typeparam name="T">The type of object whose size is retrieved.</typeparam>
|
|
||||||
<returns>The size of an object of type <typeparamref name="T" />.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.SkipInit``1(``0@)">
|
|
||||||
<summary>Bypasses definite assignment rules for a given value.</summary>
|
|
||||||
<param name="value">The uninitialized object.</param>
|
|
||||||
<typeparam name="T">The type of the uninitialized object.</typeparam>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Subtract``1(``0@,System.Int32)">
|
|
||||||
<summary>Subtracts an element offset from the given reference.</summary>
|
|
||||||
<param name="source">The reference to subtract the offset from.</param>
|
|
||||||
<param name="elementOffset">The offset to subtract.</param>
|
|
||||||
<typeparam name="T">The type of reference.</typeparam>
|
|
||||||
<returns>A new reference that reflects the subtraction of offset from pointer.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Subtract``1(``0@,System.IntPtr)">
|
|
||||||
<summary>Subtracts an element offset from the given reference.</summary>
|
|
||||||
<param name="source">The reference to subtract the offset from.</param>
|
|
||||||
<param name="elementOffset">The offset to subtract.</param>
|
|
||||||
<typeparam name="T">The type of reference.</typeparam>
|
|
||||||
<returns>A new reference that reflects the subtraction of offset from pointer.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Subtract``1(``0@,System.UIntPtr)">
|
|
||||||
<summary>Subtracts an element offset from the given reference.</summary>
|
|
||||||
<param name="source">The reference to subtract the offset from.</param>
|
|
||||||
<param name="elementOffset">The offset to subtract.</param>
|
|
||||||
<typeparam name="T">The type of reference.</typeparam>
|
|
||||||
<returns>A new reference that reflects the subraction of offset from pointer.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Subtract``1(System.Void*,System.Int32)">
|
|
||||||
<summary>Subtracts an element offset from the given void pointer.</summary>
|
|
||||||
<param name="source">The void pointer to subtract the offset from.</param>
|
|
||||||
<param name="elementOffset">The offset to subtract.</param>
|
|
||||||
<typeparam name="T">The type of the void pointer.</typeparam>
|
|
||||||
<returns>A new void pointer that reflects the subtraction of offset from the specified pointer.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.SubtractByteOffset``1(``0@,System.IntPtr)">
|
|
||||||
<summary>Subtracts a byte offset from the given reference.</summary>
|
|
||||||
<param name="source">The reference to subtract the offset from.</param>
|
|
||||||
<param name="byteOffset">The offset to subtract.</param>
|
|
||||||
<typeparam name="T">The type of reference.</typeparam>
|
|
||||||
<returns>A new reference that reflects the subtraction of byte offset from pointer.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.SubtractByteOffset``1(``0@,System.UIntPtr)">
|
|
||||||
<summary>Subtracts a byte offset from the given reference.</summary>
|
|
||||||
<param name="source">The reference to subtract the offset from.</param>
|
|
||||||
<param name="byteOffset">The offset to subtract.</param>
|
|
||||||
<typeparam name="T">The type of reference.</typeparam>
|
|
||||||
<returns>A new reference that reflects the subraction of byte offset from pointer.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Unbox``1(System.Object)">
|
|
||||||
<summary>Returns a <see langword="mutable ref" /> to a boxed value.</summary>
|
|
||||||
<param name="box">The value to unbox.</param>
|
|
||||||
<typeparam name="T">The type to be unboxed.</typeparam>
|
|
||||||
<exception cref="T:System.NullReferenceException">
|
|
||||||
<paramref name="box" /> is <see langword="null" />, and <typeparamref name="T" /> is a non-nullable value type.</exception>
|
|
||||||
<exception cref="T:System.InvalidCastException">
|
|
||||||
<paramref name="box" /> is not a boxed value type.
|
|
||||||
|
|
||||||
-or-
|
|
||||||
|
|
||||||
<paramref name="box" /> is not a boxed <typeparamref name="T" />.</exception>
|
|
||||||
<exception cref="T:System.TypeLoadException">
|
|
||||||
<typeparamref name="T" /> cannot be found.</exception>
|
|
||||||
<returns>A <see langword="mutable ref" /> to the boxed value <paramref name="box" />.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Write``1(System.Void*,``0)">
|
|
||||||
<summary>Writes a value of type <typeparamref name="T" /> to the given location.</summary>
|
|
||||||
<param name="destination">The location to write to.</param>
|
|
||||||
<param name="value">The value to write.</param>
|
|
||||||
<typeparam name="T">The type of value to write.</typeparam>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.WriteUnaligned``1(System.Byte@,``0)">
|
|
||||||
<summary>Writes a value of type <typeparamref name="T" /> to the given location without assuming architecture dependent alignment of the addresses.</summary>
|
|
||||||
<param name="destination">The location to write to.</param>
|
|
||||||
<param name="value">The value to write.</param>
|
|
||||||
<typeparam name="T">The type of value to write.</typeparam>
|
|
||||||
</member>
|
|
||||||
<member name="M:System.Runtime.CompilerServices.Unsafe.WriteUnaligned``1(System.Void*,``0)">
|
|
||||||
<summary>Writes a value of type <typeparamref name="T" /> to the given location without assuming architecture dependent alignment of the addresses.</summary>
|
|
||||||
<param name="destination">The location to write to.</param>
|
|
||||||
<param name="value">The value to write.</param>
|
|
||||||
<typeparam name="T">The type of value to write.</typeparam>
|
|
||||||
</member>
|
|
||||||
</members>
|
|
||||||
</doc>
|
|
||||||
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@@ -1,8 +0,0 @@
|
|||||||
<?xml version="1.0"?>
|
|
||||||
<doc>
|
|
||||||
<assembly>
|
|
||||||
<name>System.ValueTuple</name>
|
|
||||||
</assembly>
|
|
||||||
<members>
|
|
||||||
</members>
|
|
||||||
</doc>
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,11 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<configuration>
|
|
||||||
<runtime>
|
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
</configuration>
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user